Deadlines en time-outs definiƫren
Huidige datum/tijd + periode
Deadlines en time-outs worden gedefinieerd als
second(s) | minute(s) | hour(s) | day(s) | business day(s) | week(s) | month(s) | year(s)
Bijvoorbeeld:
- 2 days = 2 dagen
- 1 minute = 1 minuut
Gekozen datum + periode
Het is ook mogelijk om een datum op te halen uit een zaak- of taakformulier.Ā Aangezien het script nogal uitgebreid is voegen we eerst een weergaveveld toe om de timeout of deadline te berekenen. De waarde van het weergaveveld wordt als volgt samengesteld:Ā
#set ($date = $_date.get($!s.taskFormsFromLastRunMap.get('naam_van_de_taak').formDataFlexesMap.get('op_te_halen_datum').value)) Hiermee wordt de ingevulde datum opgehaald in het formaat 'dd-MM-yyyy 00:00:00'. Uren, minuten en seconden worden niet ingegeven in het formulier en moeten dus nog gelijk gesteld worden aan de huidige uren, minuten en seconden. #set ($seconds = $_date.get('now').seconds) #set ($minutes = $_date.get('now').minutes) #set ($hours = $_date.get('now').hours) #set ($date = $date.setSeconds($seconds)) Hiermee worden de seconden die opgehaald werden ingevuld in de datum (dd-MM-yyyy 00:00:ss). #set ($date = $date.setMinutes($minutes)) Hiermee worden de minuten die opgehaald werden ingevuld in de datum (dd-MM-yyyy 00:mm:ss). #set ($date = $date.setHours($hours)) Hiermee worden de uren die opgehaald werden ingevuld in de datum (dd-MM-yyyy hh:mm:ss). #set ($date = $date.addMinutes(5)) Er worden 5 minuten bijgeteld bij de ingegeven datum en de uren, minuten en seconden van het huidige moment. $_duration.get($date) Met deze laatste regel wordt de tijdsduur berekend. Indien je in het formulier de huidige datum ingeeft, gaat de taak in timeout of verloopt de deadline na 5 minuten vanaf het huidige moment.
Vervolgens wordt de berekende time-out of deadline opgehaald in respectievelijk de time-out transitie of de deadline van de taak, hiervoor wordt gebruik gemaakt vanĀ juel scripting.
${s.form.formDataFlexesMap['berekening_timeout'].value} Ā ${s.form.formDataFlexesMap['berekening_deadline'].value}
Waarbij:
- berekening time-out: Ā de naam is van het weergaveveld waarin we de time-out berekenen.Ā
- berekening deadline: de naam is van het weergaveveld waarin we de deadline berekenen.Ā
Gekozen datum
Gebruik onderstaande scripting om het aantal uren, minuten, ... te berekenen ten opzicht van een bepaalde datum.
${_duration[datum]}
Waarbij:
- datum: Ā deĀ datum is ten opzicht waarvan het aantal uren, minuten, ... berekend moeten worden. Deze datum kan opgehaald worden aan de hand vanĀ juel scripting.Ā
Voorbeeld
${_duration[$s.taskFormsFromLastRunMap['naam-van-de-taak'].formDataFlexesMap['vraagID'].value]}