Stap 6: herstart de hoofdworkflow als er nog iteraties uitgevoerd moeten worden

In stap 6 wordt gekeken of de workflowvariabele $$VERDER_VERWERKEN 0 of 1 is. 0 is niet verder draaien, 1 is verder draaien.

Naast de controle of er meer data verwerkt moet worden, wordt gekeken welke instantie van de hoofdworkflow draait. De hoofdworkflow maakt gebruik van twee instances omdat een workflow alleen parallel kan draaien onder unieke instance namen. Instance 1 start dus instance 2 en omgekeerd. Hierdoor is de instance naam altijd uniek. De links bevatten de volgende code om te bepalen welke instance gestart moet worden.

Link naar LOOP1:

$$VERDER_VERWERKEN = 1 AND

$PMWorkflowRunInstanceName = 'LOOP2'

Link naar LOOP2:

$$VERDER_VERWERKEN = 1 AND

($PMWorkflowRunInstanceName = 'LOOP1' OR

$PMWorkflowRunInstanceName = '')

LOOP2 wordt ook opgestart als er geen instance gedefinieerd is. Dat is het geval bij de eerste keer starten vanuit de Workflow Manager of de Workflow Monitor.

De workflow wordt gestart met behulp van het volgende commando:

$INFA_SCRIPTS/startworkflow.sh $PMIntegrationServiceName $PMFolderName $PMWorkflowName LOOP1

Het startworkflow.sh script wordt gestart met allemaal automatische variabelen. Hierdoor wordt de hoofd workflow automatisch opnieuw gestart zonder dat de gebruiker iets hoeft in te stellen.

Het script voert de volgende commando’s uit:


    #!/bin/ksh

    # This script starts a workflow
    # Date: 16-3-2010
    # Writer: R.A. ten Hoope

    # -----------------------------------------------------------------
    # Getting the parameters
    # -----------------------------------------------------------------
    INT_SVC=$1
    FOLDER=$2
    PARAMETERFILE=$3
    WORKFLOW=$4
    INSTANCE=$5

    $PMCMD startworkflow -sv $INT_SVC -u PM_WF_Operator -p PM_WF_Operator -f $FOLDER -paramfile $PARAMETERFILE -nowait -rin $INSTANCE $WORKFLOW > /dev/null &

    exit 0