Support Dashboard Formulierrecepten Formules voor stappen in workflowprocessen

Formules voor stappen in workflowprocessen

Nu je bekend bent met de basis van het maken van een 2-Staps Workflow met behulp van het Process Field.

We gaan dieper in op de 3-Staps Workflow en formules die gebruikt worden om alleen-lezen en zichtbaarheid eigenschappen in verschillende processtappen te controleren. En, Form Connector voert voorwaarden uit om gegevens naar externe systemen per stap te pushen, in plaats van telkens wanneer het formulier wordt geüpload en naar een ander gebruiker als taak wordt verzonden.

Dit artikel verwijst naar onze Voorbeelden Catalogus > How Tos > 3-Staps Proces app die in jouw account kan worden geïnstalleerd.

Veldwaarden die via berekeningen in een vorige stap zijn vastgelegd, worden niet opnieuw geëvalueerd in volgende stappen. Dit is opzettelijk ontworpen om de initieel vastgelegde gegevens voor controles te behouden, of wanneer meerdere gebruikers hun proces voltoien, blijven de gegevens uit de vorige stap ongewijzigd. Als een scenario echter vereist dat eerder vastgestelde veldwaarden opnieuw worden berekend, is een mogelijke oplossing om de knop(pen) van een Action Field als trigger te gebruiken om veldwaarden opnieuw te berekenen wanneer erop wordt geklikt.


Alleen-lezen (Velden)

Afhankelijk van jouw stap in het proces, kun je velden alleen-lezen maken, waardoor eerder vastgelegde gegevens niet kunnen worden bewerkt, afhankelijk van de rol van een ander gebruiker in de workflow. In dit geval kan de initiële controleur verzonden gegevens niet bewerken.

De volgende twee voorbeelden tonen dit aan:

  • Gegevens vastgelegd door Gebruiker 1 kunnen niet worden bewerkt door Gebruiker 2.
  • Gegevens vastgelegd door Gebruiker 2 kunnen niet worden bewerkt door Gebruiker 3.

Pagina1 – Alleen-lezen voor Stap2

In de eigenschap Alleen-lezen op velden op Pagina 1 (Stap 0/1) kan een formule die controleert in welke huidige stap de workflow zich bevindt dit bereiken.

Formule:

(houd er rekening mee dat er vaak meerdere verschillende formule variaties zijn die hetzelfde resultaat kunnen bereiken)

STEP-CURRENT() = 'processStep2'
Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 1

Pagina2 – Alleen-lezen voor Stap3

Voor dit scenario zullen we de beperking afdwingen dat wanneer de workflow Gebruiker 3 bereikt, deze gebruiker geen velden op Pagina 2 mag bewerken (waar Gebruiker 2 van zou hebben ingediend).

Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 2Voor deze zichtbaarheidsregel, die Pagina 1 voor de gebruiker in Stap 3 verbergt, pas je de zichtbaarheidsregel toe op de pagina door op de pagina in de ontwerpweergave te klikken om de eigenschappen weer te geven zoals hieronder:

Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 3

Formule:

NOT(STEP-CURRENT() = 'processStep3')

Uitvoeringsvoorwaarden (Formulierconnectoren)

De huidige stap van een workflow wordt als voltooid beschouwd zodra de app-gebruiker de formulierinvoer uploadt. De huidige stap is daarom altijd voltooid VOORDAT connectoren worden uitgevoerd. Alle connectoren die je op specifieke stappen wilt uitvoeren, moeten een “uitvoeringsvoorwaarde” hebben. Dit doe je via de optie “Uitvoeringsvoorwaarde toevoegen” op de meeste formulierconnectoren. We raden aan STEP-COMPLETED() in je voorwaardeformule te gebruiken om nauwkeurig te bepalen wanneer een formulierconnector wordt uitgevoerd en op welke stap.

E-mailconnector – Stap 3 voltooid

Deze uitvoeringsvoorwaardeformule toont hoe je een e-mail kunt verzenden zodra Stap3 is voltooid met de status “Accepteren”.

Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 4

Formule:

STEP-COMPLETED() = 'step3' AND {{step3}} = 'Accept'

E-mailconnector – Stap2 resultaat = Geweigerd

De onderstaande uitvoeringsvoorwaarde zorgt ervoor dat de e-mailconnector alleen wordt uitgevoerd wanneer Stap2 is voltooid en de processtatus “Weigeren” is.

Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 5

Formule:

STEP-COMPLETED() = 'processStep2' AND {{processStep2}} = 'Reject'

Tip ’n Tricks

Hieronder staan enkele easter eggs die we in de voorbeeld-app (2-Staps workflow) verborgen hebben, die demonstreren hoe je formules kunt gebruiken om meer granulaire controle te krijgen over welke items zichtbaar of alleen-lezen zijn terwijl een werkitem door een workflow beweegt.

Zoals bij veel aspecten van ons platform, zijn er meerdere verschillende manieren waarop hetzelfde resultaat kon worden bereikt. Dit zijn slechts enkele bewezen formules voor processtromen die je bouwt.

Pagina 1 – Verzendknop alleen zichtbaar voor Gebruiker 1

Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 6

Met deze formule op de zichtbaarheidseigenschap van de verzendknop, kun je ervoor zorgen dat de gebruiker in de eerste stap van de workflow de enige zal zijn die de uploadknop kan zien. Wanneer een workflow start, heeft de processtap een blanco waarde en een waarde van de processtapnaam zodra een actie op de processtapknop is uitgevoerd. Deze formule controleert of het veld een blanco waarde of de naam van de eerste processtap retourneert waarop het van toepassing is.

Formule:

ISBLANK(STEP-CURRENT()) OR STEP-CURRENT() = 'processStep1'

Pagina 1 – Doorgaanknop is alleen zichtbaar voor Gebruiker 2

Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 7

Wanneer de workflow van processStep1 naar processStep2 is verplaatst, zorgt de bovenstaande formule, wanneer toegepast op de verzendknop, ervoor dat de knop alleen zichtbaar is voor Gebruiker 2 in de procesworkflow.

Formule:

STEP-CURRENT() = 'processStep2'

Pagina 2 – Doorgaan-knop alleen zichtbaar voor Gebruiker 3

Formulierrecepten: Formules voor stappen in workflowprocessen - schermafbeelding 8

Wanneer toegepast op de zichtbaarheidseigenschap van de Doorgaan-knop op processStep2, zorgt de formule ervoor dat alleen de gebruiker op processStep3 de knop kan bekijken.

Formule:

NOT(STEP-CURRENT() = 'processStep2')

Antwoord niet gevonden?

Staat jouw vraag er niet bij? Neem dan direct contact met ons op.

Contact opnemen