1.Create Number Sequence----In Ax 2012
If we want to create Number Sequence,
follow Below steps….
Step1: Create Edtà StuId(stringedit)
Step2: Create Table-à Class Table àin this Table Add Some Field and Then the Primary Field To extend
Above Edt.
Exp: StudentIdàExtendsàStuId.
Step3: Create New Form and add Data
Source Above Table (Class Table).
Step4: Based On Requirement
generate number sequence On Class Table Form in studentID…
So we will select Suitable Class and Add
Some Code on that class Load Method…
Example: NumberseqModuleCustomer (or)
NumberseqModuleProject (or)NumberSeqModuleBank (or) NumberSeqModuleGeneral…etc
Here I have taken NumberseqModuleCustomer àload Module()àAdd some code Here.
datatype.parmDatatypeId(extendedTypeNum(Studentid));
datatype.parmReferenceLabel(literalStr("Student
Id"));
datatype.parmReferenceHelp(literalStr("Unique
Student number"));
datatype.parmWizardIsContinuous(false);
datatype.parmWizardIsManual(NoYes::No);
datatype.parmWizardIsChangeDownAllowed(NoYes::Yes);
datatype.parmWizardIsChangeUpAllowed(NoYes::Yes);
datatype.parmWizardLowest(1);
datatype.parmWizardHighest(99999);
datatype.parmIsGroupEnabled(NoYes::Yes);
datatype.parmSortField(54);
datatype.addParameterType(NumberSeqParameterType::DataArea, true, false);
this.create(datatype);
Step5: Add Method in Parameter Table Like: CustParameters (or) Vend
Parameters (or) Projparameters.
Here I have Taken Custparameters table add Below code…
client server static
NumberSequenceReference numRefStuid()
{
return
NumberSeqReference::findReference(extendedTypeNum(Studentid));
}
//This Method Assign the Edt to Parameters
table.
Step6: Write
the job and Run the Job about Generating Number sequence.
static void Na_loadNumSeqstuid(Args _args)
{
//define the class variable
NumberSeqModuleCustomer seqMod = new NumberSeqModuleCustomer();
//load the number sequences that were not generated
seqMod.load();
info("Generated");
}
Step6: Run The Wizard…
Organization Administration >> CommonForms >>
Numbersequences>>Numbersequences>> Generate >> run the
wizard.
Step7: Now we have to Check Number Sequence Is Correctly working or not.
write Job Below
.
.
static void Na_number(Args _args)
{
NumberSeq numberSeq;
Studentid num;
;
numberSeq =
NumberSeq::newGetNum(CustParameters::numRefStuid());
num = numberSeq.num();
info(num);
}
Step8: Now we want to apply Number Sequence in form Level....Apply Below Code in
form Level.
Step9: Now We declare
NumberSeqFormhandler classes in form Declaration.
public class FormRun extends
ObjectRun
{
NumberSeqFormHandler numberSeqFormHandler;
}
Step10: Add NumberSeqFormHandler()
Method in Form Methods.
NumberSeqFormHandler numberSeqFormHandler()
{
if
(!numberSeqFormHandler)
{
numberSeqFormHandler =
NumberSeqFormHandler::newForm(CustParameters::numRefStuid().NumberSequenceId,
element,
Na_ClassDetails_DS,
fieldNum(Na_ClassTable, StudentId)
);
}
return
numberSeqFormHandler;
}
Step11: Add Close () method in
Form Method.
public void close()
{
if
(numberSeqFormHandler)
{
numberSeqFormHandler.formMethodClose();
}
super();
}
Step12: Add Create () method in
Form Data Source Methods.
public void create(boolean _append = false)
{
element.numberSeqFormHandler().formMethodDataSourceCreatePre();
super(_append);
element.numberSeqFormHandler().formMethodDataSourceCreate(true);
}
Step13: Add Write () method in
Form Data Source Methods.
public void write()
{
super();
element.numberSeqFormHandler().formMethodDataSourceWrite();
}
Step14: Add Validate Write ()
method in Form Data Source Methods.
public boolean validateWrite()
{
boolean
ret;
ret = super();
ret =
element.numberSeqFormHandler().formMethodDataSourceValidateWrite(ret)
&& ret;
return
ret;
}
Step15: Add Delete () method in
Form Data Source Methods.
public void delete()
{
element.numberSeqFormHandler().formMethodDataSourceDelete();
super();
}
Step16: Add link Active () method
in Form Data Source Methods.
public void linkActive()
{
element.numberSeqFormHandler().formMethodDataSourceLinkActive();
super();
}
Important Classes:
1.NumberSeqDataType -------> Class
2.NumberSeqModuleCustomer ------>Class
3.NumberSeqFormHandler -------->Class
Tables:
1.OurTable (class
Table) ------->Table
2.CustParameters ------->
Table
My Number
Sequence is Generated.
Set The Setup
in Account Receivable in Account Receivable Parameters
Set the Setup of Number Sequence Id