web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :

Advanced WHS Mobile Device Development: [Part 2] – How to Select the Sales Order

1ClickFactory Team Profile Picture 1ClickFactory Team 831

Welcome to the second part of our WHS mobile device development series where we will dive into how you can improve your mobile device development experience in Dynamics 365 Finance & Supply Chain management by building new process windows using the process guide framework. If you haven’t read Part 1 yet, check it out here!

Throughout this blog post, we will walk through the first step – Sales order selection. This consists of the Sales ID input field and details panel.

Dynamics 365 WHS Mobile Device Development - How to Select the Sales Order

Step 1  – Sales Order Selection

Let’s investigate the ERASalesProcessGuidePromptSalesIdPageBuilder class first. The two main methods that are used here are addDataControls() which is responsible for the main display fields and addActionControls() which is responsible for adding actionable controls like buttons and filters. For the main fields, we add an input for Sales ID and some additional fields for the details panel (this part is optional). For actionable controls, we add an OK button and a cancel button.

    protected void addDataControls(ProcessGuidePage _page)
    {
        _page.addTextBox(ProcessGuideDataTypeNames::SalesId, "@MCR12613", extendedTypeNum(SalesId));
 
        //Fill details panel
        _page.addLabel(ProcessGuideDataTypeNames::RFTitle, 'Instructions:', extendedTypeNum(Description));
        _page.addLabel(ProcessGuideDataTypeNames::RFDescription1, "@MCR35828", extendedTypeNum(Description));
    }
 
    protected void addActionControls(ProcessGuidePage _page)
    {
        #ProcessGuideActionNames
        _page.addButton(step.createAction(#ActionOK), true);
        _page.addButton(step.createAction(#ActionCancelExitProcess));
    }

As for ERASalesProcessGuidePromptSalesIdStep class, we must make sure that the value entered by the user is a valid one. The isComplete() method is used to evaluate if the step is completed and the validateControls() method is used to handle what we should do if the step is not valid.

    protected boolean isComplete()
    {
        WhsrfPassthrough pass    = controller.parmSessionState().parmPass();
        SalesId          salesId = pass.lookup(ProcessGuideDataTypeNames::SalesId);
 
        return SalesTable::exist(salesId);
    }
 
    protected void validateControls()
    {
        SalesId salesId = processingResult.fieldValues.lookupStr(ProcessGuideDataTypeNames::SalesId);
 
        if (!SalesTable::exist(salesId))
        {
            throw error(strFmt("@MCR10331", salesId));
        }
 
        super();
    }

The result of this step is the following:

Sales Order Selection Mobile Device Development in Dynamics 365 Finance & Supply chain
Figure 4. Step 1: Sales order selection and details

We hope that you have found these insights useful and that they help you to improve your Dynamics 365 Finance & Supply Chain WHS mobile device development process. Don’t hesitate to contact our team at service@1ClickFactory.com if you have any questions or need help with your development projects!

In case you missed part 1 of the blog series, check it out now to learn more about the process guide framework

Stay tuned for part three of this four-part blog series on Dynamics 365 Finance & Supply Chain Management WHS mobile device development process.

Comments

*This post is locked for comments