Date Manupulation

jayshyne
jayshyne Member Posts: 29
I am seriously learning Navision now. I need help.
How do I add to the month value of a date ?

Eg 24/06/06 (wants to 3 or --3mths--) so that it becomes 24/09/06 !!

Comments

  • kriki
    kriki Member, Moderator Posts: 9,132
    datNewDate := CALCDATE('<3M>',datOldDate);

    the <> makes that it is the same in all languages.
    Without it some e.g. the formula to add days would not work in other languages.
    eg. '1D' would not work in Italian (=Giorno) or french (Jour) or German (=Tag), but it would work in english (=Days), Dutch (=Dag).
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • jayshyne
    jayshyne Member Posts: 29
    I am seriously learning Navision now. I need help.
    How do I add to the month value of a date ?

    Eg 24/06/06 (wants to add 3 or --3mths--) so that it becomes 24/09/06 !!

    Thank very much. Your reply was :

    datNewDate := CALCDATE('<3M>',datOldDate);

    The value 3 is hardcoded here.

    MY proble is I have the value in a variable, eg I:=3 or the 3 is stored in a variable somewhere. can I code like:
    datNewDate := CALCDATE('<IM>',datOldDate); ?
    I tried but threw an exception. Pls help me.
  • kriki
    kriki Member, Moderator Posts: 9,132
    If it is always in months:
    datNewDate := CALCDATE(STRSUBSTNO('<%1M>',intNoOfMonths),datOldDate);
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • TikusJalang
    TikusJalang Member Posts: 12
    kriki wrote:
    If it is always in months:
    datNewDate := CALCDATE(STRSUBSTNO('<%1M>',intNoOfMonths),datOldDate);


    hmmm...thnks kriki....I've search this trick from navision 2.6 to automatic calculate employee absence..... =D>