Views:

Scenario Overview

In this business scenario you have a Quote with a large number of Quote Products/Line Items. You require that both the Quote and its Quote Products sync up the field Tax Rate so that when a Quote's Tax Rate is changed, the Quote Products Tax Rate changes as well. 

Performing an update on a 1000+ records could go over Dynamics 365 two minute execution limit and thus we will use North52 to circumvent this. 

Note: The field Tax Rate is custom but this formula will work for any field you may need to update. 

North52 Decision Suite Solution

The North52 Decision Suite solution works like this:

  • Each time a Quote's Tax Rate is changed, a workflow will trigger
  • This workflow will start a North52 formula 10 times
  • Each time the North52 formula will update the Quote Products Tax Rate field in batches of 100

North52 Decision Suite Steps

Create Formula

  • Create a new formula, setting the following values in the Formula Guide
    • Source Entity set to Quote
    • Set Formula Type to Process Genie
    • Select the Classic editor
  • Change the Name of the formula to Update Tax Rate of Line Items
  • Copy and paste into the editor this formula:
    Smartflow(
    
      SetVar('minRecordCount',  CalcMinRecordCount( GetSharedVariable('pageNumber', 1), 100)   ),
      SetVar('maxRecordCount',  CalcMaxRecordCount( GetSharedVariable('pageNumber', 1), 100)   ),
    
      /* Increments the page number Shared Variable each time the Process Genie STep executes in the workflow */
      SetSharedVariable('pageNumber', GetSharedVariable('pageNumber', 1) + 1), 
    
      ForEachRecord (
    
        FindRecords('quotedetail','quoteid',[quote.quoteid],SetFindSelect('new_taxrate','quotedetailid'),1000,'true'),
        
        Iftrue(RecordIndex() >=  GetVar('minRecordCount') && RecordIndex() <=  GetVar('maxRecordCount'),
          
             UpdateRecord('quotedetail', CurrentRecord('quotedetailid'),  SetAttribute('new_taxrate', [quote.new_taxrate]) ))
      )
    ) 
    
  • Click Save
  • Your formula should look like this:

Create the Workflow

  • Go to Settings > Processes 
  • Click on the New button and give it the name Quote Tax Rate Change
  • Set the Category to Workflow
  • Set the Entity to Quote
  • Check As an on-demand
  • Check Records fields change and then click the View link
    • Check 'Tax Rate' in the pop up
    • Click OK
  • Select Add Step > North52 > N52 Process Genie
  • Click Set Properties
    • For Formula Shortcode, enter the shortcode from the formula created above
    • Click OK
  • Repeat adding the same Process Genie step 9 more times
  • Click Save
  • Activate the workflow

Wizard - FindRecords

Please see below the wizard you can use to create the FindRecords() function call used in this formula.

Note: For the Equals Value, you will need to go to the Source tab and select the Quote field

 

Did you know?

You can Connect to 1000s of Web Services as part of your Decision Logic

When your advanced business rules and complex logic requries that you integrate with other systems North52's Web Fusion functionality can help.  It enables two-way data communication between your Dynamics 365/CRM system and another service or application.

Learn more and see examples of Web Fusion