Monday, 31 March 2014

Generate next number sequence through code

When we create a new record from user interface(by using Forms) number sequence handles automatically by system. But Some time we need to assign a number sequence by code, like we create numbers of records by code and in this case we have to take care of number sequence.
Here a job to create next number from a number sequence by x++ code.

static void theaxapta_Nextnumseq(Args _args)
{
         NumberSeq num;
         DiscountTable  _DiscountTable; //Table Buffer
        ; 
        ttsbegin;
           num = NumberSeq::newGetNum(HrmParameters::numRefJournalNum()); // Parameters Table
          _DiscountTable.NextNumseq = num.num(); // Next NumberSeq generated
          _DiscountTable.insert();
          num.used(); // Mark the Number as Used
      ttscommit;
}

//The other Way is by using EDT

static void testnumseq(Args _args)
{
     theaxaptaEDT   _theaxaptaEDT   ;
     ExtendedTypeId id = TypeID2ExtendedTypeId(TypeId(theaxaptaEDT));//EDT NAME 
     NumberSeq num = NumberSeq::newGetNum(NumberSequenceReference::find(id));
     ;
     //_theaxaptaEDT.NextNumseq = num.num();//NEXT NUM SEQ
     num.used(); // mark the number as used
     info(num.num()); // NEXT NUM SEQ
}

No comments:

Post a Comment