The following function is useful when you need to run several tasks (Data Loads, Calculated Field Sets, Calculation Flows,...) in a sequence and ensure that they wait for each other.

Control Table

SequenceNameOrderTypeTaskNameStateLastRun
DM X load1DLSalesDFtoDS<no value> / RUNNING / DONE / ERROR
DM X load2DLSalesDStoDM

DM X load3DLSalesDMCalculation

Scheduler

Scheduler is a simple Calculation Flow Formula which is executed every minute and starts the tasks according to the Control Table. 

Installation

  1. In Groovy Library, add a new element called "Sequencer" with the following code: Sequencer Library Code.groovy
  2. Create a new Calculation Flow Formula, scheduled for every minute, with one element with this code: 

    lib.Sequencer.processAllSequences(actionBuilder)


  3. Import the Price Parameter called "SequenceControlTable". The import ZIP file is attached: PP_SequenceControlTable_for_Import.zip

Running Your Own Sequence

From your code (usually from a CFF but generally from any code which is allowed to modify Price Parameters) call the following:

lib.Sequencer.startSequence("<your sequence name>")