Skip to main content
Skip table of contents

Cumul check integreren in hoofdproces

Vooraf

Vooraleer je onderstaand stappenplan uitvoert, moet je een cumul check workflow hebben opgezet. Zie de vorige pagina binnen deze sectie. De bedoeling is nu om via een call activity deze workflow aan te roepen en daarbij de juiste parameters mee te sturen.

Belangrijk is dat alle info die de uniciteit van een dossier bepaalt, aanwezig moet zijn vooraleer je de call activity definieert. Bijvoorbeeld, als elke burger slechts één dossier mag indienen per jaar, en je wil dit controleren via de cumul check workflow, dan moet je dus het rijksregisternummer en het jaar kennen vóór je de cumul check uitvoert.

Instellen call activity

Stap 1: definieer de call activity

Voeg een call activity toe in het hoofdproces en stel daarbij volgende eigenschappen in:

  • CallActivity type: BPMN

  • Called element: key van de cumul check workflow

  • Business key aangevinkt

  • Business key expression ${execution.processBusinessKey}

Stap 2: configureer de mee te sturen parameters

Onder het tabblad variables stel je nu de parameters in die je moet meegeven aan de cumul check workflow om deze werkende te krijgen.

In Mapping 1: cumulType

Source expression: ${'jouwCumulType'}

Target: cumulType

Het kan best zijn dat je slechts één cumul check workflow hebt voor alle dossiertypes (dienstverleningen) binnen je applicatie. In dat geval vul je steeds hetzelfde cumulType in. Als je meerdere cumul check workflows hebt (bijvoorbeeld één voor elk dossiertype), dan kan je meerdere types definiëren.

In Mapping 2: cumulKey

Source expression: ${cumulKey}

Target: cumulKey

Dit definieert de uniciteit van het dossier en wordt opgebouwd op basis van één of meerdere elementen. Zie Stap 3: 'configureer de cumulKey via een start listener' hieronder.

In Mapping 3: dossierId

Source expression: ${execution.processBusinessKey}

Target: dossierId

Dit is de dossierId van het dossier waarvoor je de cumul check wil uitvoeren.

In Mapping 4: cumulFormulier

Source expression: ${'keyVanHetDoelformulier'}

Target: cumulFormulier

Key van het formulier waarin je het resultaat van de cumul check wil neerschrijven.

In Mapping 5: cumulFormulierBoolean

Source expression: ${'keyVanBooleanVeldInDoelformulier'}

Target: cumulFormulierBoolean

Key van het boolean field in het formulier waar je het resultaat van de cumul check wil neerschrijven. Deze boolean zal aanduiden of er cumul dossiers gevonden zijn ('ja'), dan wel niet ('nee').

In Mapping 6: cumulFormulierDossiers

Source expression: ${'keyVanTekstVeldInDoelformulier'}

Target: cumulFormulierDossiers

Key van het tekstveld in het formulier waar je het resultaat van de cumul check wil neerschrijven. Dit tekstveld zal een string bevatten met daarin een opsomming van alle dossier labels van de gevonden cumul dossiers (duplicaten).

Stap 3: configureer de cumulKey via een start listener

Zoals hoger aangegeven, kan de cumulKey opgebouwd zijn uit meerdere elementen. Het idee is om deze elementen eerst apart te gaan isoleren in procesvariabelen, om dan vervolgens deze procesvariabelen te gaan concateneren en de resulterende string op te slaan onder de procesvariabele cumulKey. Deze wordt dan via In Mapping 2 (zie hoger) doorgegevan aan de cumul check workflow.

Voorbeeld waarbij elke vereniging slechts één aanvraag per jaar mag indienen.

Execution listener 1

Naam vereniging ophalen uit een formulierveld.

${execution.setVariable('naamVereniging',
skryv.dossierFromScope(execution).getOrCreateDocumentByDefinitionKey("aanvraagSportsubsidie").getField("naamVereniging"))}

Execution listener 2

Jaar van aanvraag ophalen uit een formulierveld.

${execution.setVariable('jaar', skryv.dossierFromScope(execution).getOrCreateDocumentByDefinitionKey("aanvraagSportsubsidie").getField("jaar"))}

Execution listener 3

Concateneren van beide input variabelen tot en toewijzen aan variabele cumulCheck.

${execution.setVariable('cumulKey', naamComite.concat('-').concat(jaar))}

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.