Create Custom Number Sequence in d365fo x++
Create Custom Number Sequence in d365fo x++
Code:
public class DSAQRNumSequence extends NumberSeqApplicationModule
{
protected void loadModule()
{
NumberSeqDatatype datatype = NumberSeqDatatype::construct();
datatype.parmDatatypeId(extendedTypeNum(DSAQRSequenceNo));
datatype.parmReferenceHelp(literalStr("Unique Key for Purchase ID"));
datatype.parmWizardIsContinuous(false);
datatype.parmWizardfetchAheadQty(10);
datatype.parmWizardIsManual(NoYes::No);
datatype.parmWizardIsChangeDownAllowed(NoYes::No);
datatype.parmWizardIsChangeUpAllowed(NoYes::No);
datatype.parmSortField(1);
datatype.addParameterType(NumberSeqParameterType::DataArea,true,false);
this.create(datatype);
}
public NumberSeqModule numberSeqModule()
{
return NumberSeqModule::Invent;
}
[SubscribesTo(classstr(NumberSeqGlobal),delegateStr(NumberSeqGlobal,buildModulesMapDelegate))]
static void buildModulesMapSubscribes(Map numberSeqModuleNameMap)
{
NumberSeqGlobal::addModuleToMap(classNum(DSAQRNumSequence),numberSeqModuleNameMap);
}
}internal final class DSAQRNumSequenceLoad
{
public static void main(Args _args)
{
DSAQRNumSequence DSAQRNumSequence = new DSAQRNumSequence();
DSAQRNumSequence.load();
}
}[DataSource]
class DSADeliveryNoteLabelPrint
{
public void create(boolean _append = false)
{
super(_append);
NumberSequenceReference numberSequenceReference = NumberSeqReference::findReference(extendedTypeNum(DSAQRSequenceNo));
if (numberSequenceReference)
{
DSAQRSequenceNo QRSequenceNo = NumberSeq::newGetNum(numberSequenceReference).num();
DSADeliveryNoteLabelPrint.DSAQRSequenceNo = QRSequenceNo;
}
else
{
throw Error(strFmt("@SYS53911", "QR Sequence No", "Inventory management"));
}
}
}
Comments
Post a Comment