Microsoft Dynamics AX has a number sequence framework to generate alphanumeric number sequences that are used to identify records. It’s used to identify a multitude of documents such as sales orders and purchase orders. You can extend this framework to add your own number sequence module.
Here’s an example on how to add your own number sequence module to Microsoft Dynamics AX.
Creating a Number Sequence Module
Add enum value SebExample to NumberSeqModule enum.
Create a SebExampleParameters table. See BOMParameters table as an example.
Create the Key field. See BOMParameters Key field.
Create the Key index. See BOMParameters Key index.
Override delete method.
void delete() { throw error("@SYS23721"); }
Override update method.
void update() { super(); flush SebExampleParameters; }
Add find method.
public static SebExampleParameters find(boolean _forupdate = false) { SebExampleParameters parameter; parameter.selectForUpdate(_forupdate); select firstonly parameter index Key where parameter.Key == 0; if (!parameter && !parameter.isTmp()) { Company::createParameter(parameter); } return parameter; }
Add numberSeqModule method.
static client server NumberSeqModule numberSeqModule() { return NumberSeqModule::SebExample; }
Add NumberSeqModuleSebExample class. Extend NumberSeqApplicationModule.
class NumberSeqModuleSebExample extends NumberSeqApplicationModule { }
Override numberSeqModule method.
public NumberSeqModule numberSeqModule() { return NumberSeqModule::SebExample; }
Add SebExampleParameters form. See CustParameters form as an example.
The new number sequence module is established. You can add your own number sequence to your created number sequence module.