Saturday, August 10, 2024

How to add a number sequence in a new table in Dynamics 365 for Finance and Operations?

 In this blog , we will create a new number sequence in D365 Finance and Operations form. 

And this blog will contain below steps for the users and user will be able to understand below steps as well:


1. Create a EDT of String Type with Length 20
2. Create a Table
3. Create a List Form
4. Create a new module and attach a new form
5. Create a new class
6. Create a new runnable class , build and check the AR parameters > Number Sequence Form
7. Add the new number sequence code
        8. Go to Form and Click New.

Detailed steps are now below:

Step 1. Create a EDT of String Type with Length 20
         
a. To create a new EDT, Right click on solution and then add > New Item.

Step 2. Create a Table
    

a.  Add the new EDT on Fields and Index and on Field Groups as well. Update the properties as follows.
Step 3. Create a List Form with below pattern and details.
            Data Source = Table in above step
            

Step 4. Create a new module and attach a new form
            a. First create a display menu item.
b. Create a Menu Item Now and link the Display Menu Item now. 

c. Build the project and check the environment now.

    


Step 4. Create a new class with name VehicleIdNumSeq
   
b. Create a new method load Module with below code.

protected void loadModule()
    {
        NumberSeqDatatype datatype = NumberSeqDatatype::construct();
        datatype.parmDatatypeId(extendedTypeNum(AnandBook2_VehicleId));
        datatype.parmReferenceLabel("Anand Vehicle Id");
        datatype.parmReferenceHelp(literalStr("Unique key used for the cars."));
        datatype.parmWizardIsContinuous(false);
        datatype.parmWizardIsManual(NoYes::No);
        datatype.parmWizardFetchAheadQty(10);
        datatype.parmWizardIsChangeDownAllowed(NoYes::No);
        datatype.parmWizardIsChangeUpAllowed(NoYes::No);
        datatype.parmSortField(1);

        datatype.addParameterType(NumberSeqParameterType::DataArea, true, false);
        this.create(datatype);
    }

c. Create a Subscription and a method as follows:

[SubscribesTo(classstr(NumberSeqGlobal),delegatestr(NumberSeqGlobal,buildModulesMapDelegate))]
    static void buildModulesMapSubsciber(Map numberSeqModuleNamesMap)
    {
        NumberSeqGlobal::addModuleToMap(classnum(VehicleIdNumSeq), numberSeqModuleNamesMap);
    }
d. Create a final method on this class
public NumberSeqModule numberSeqModule()
    {
        return NumberSeqModule::Cust;
    }

Here Cust is for Accounts Receivables Parameters form to know all the codes we can check the designer. If I select Asset , then our Field of Code will be available in Fixed Assets Parameters form.

e. Create a new runnable class and add the code and set it as a startup object.

class LoadVehicleIdNumSeq
{
    /// <summary>
    /// Runs the class with the specified arguments.
    /// </summary>
    /// <param name = "_args">The specified arguments.</param>
    public static void main(Args _args)
    {
        VehicleIdNumSeq VehicleIdNumSeq = new VehicleIdNumSeq();
        VehicleIdNumSeq.load();
    }
}

f. To add it as Startup Object, right click on the solution and Set as Startup Object. 


17. Build and run the project from VS and check the AR parameters > Number Sequence Form.

18. Add the new number sequence code as shown in screenshot.
19.Go to your custom Form and Click New.

No comments:

Post a Comment

How to add a number sequence in a new table in Dynamics 365 for Finance and Operations?

 In this blog , we will create a new number sequence in D365 Finance and Operations form.  And this blog will contain below steps for the us...