Modules > Geplande Taken
Met 'Geplande taken' beschikt nodum over een module die in de achtergrond taken kan uitvoeren. De instellingen en weergave van de logging worden in dit tabblad geregeld. Voor het instellen van de taken moet er eerst een nieuwe geplande taak worden aangemaakt. Door op de blauwe knop 'Nieuwe taak' te klikken kun je een taak aanmaken. Het enige wat je moet bedenken is een goede beschrijving voor de taak als taaknaam.
Wanneer de taak eenmaal is aangemaakt kun je hem selecteren om de rest van de instellingen te bewerken. Door de taak te selecteren krijg je het 'Geplande taken'-scherm te zien. Rechtsboven kun je het interval zien waarmee de taak draait, deze staat nu nog op 'configureer'. Dat is ook direct de taak die nog gedaan moet worden om de taak te kunnen laten starten. Onder 'code' maak je een keuze uit de beschikbare scripts. Zie ook Geplande taak in Mapstructuur voor meer uitleg omtrent de geplande taken.
Argumenten
In het script van de geplande taak kun je optionele argumenten meenemen. Deze argumenten definieer je in het tabblad Geplande taken waar we nu zitten. Een argument is een kleine letter voorafgegaan door een liggend streepje -
. Met deze argumenten zou je de volgende code kunnen laten uitvoeren: (kijk voor meer informatie over de Twig-syntax en het werken met loops in het hoofdstuk over Twig.)
{% if param.cli.a == 'Wietse' %}
<p>De parameter is: Wietse</p>
{% else %}
<p>De parameter is iets anders dan Wietse</p>
{% endif %}
Je kunt aan de hand van de argumenten code al dan niet laten uitvoeren. Dat maakt de kracht van de geplande taken alleen nog maar groter.
Schema en logging
Onder 'Schema' is het mogelijk om het interval te kiezen waarmee de taak moet draaien. De intervallen lopen van één keer per minuut tot één keer per uur. Je kunt uiteraard ook kiezen om de taak alleen handmatig aan te zetten. Wanneer een taak gedraaid heeft zal er onder 'Logging' een regel komen te staan met de loggegevens van de gedraaide taak. Het moment, de duur, het resultaat en de log wordt weergegeven. Als je de log opent zie je de output van het script dat je geschreven hebt. In bovenstaand voorbeeld zou er, met 'Wietse' als waarde in het argument '-a', moeten staan:
<p>'De parameter is: Wietse'</p>
Van iedere gedraaide taak wordt de logging bewaard. Het grootste deel van de pagina wordt dan ook gebruikt om de laatste tien logbestanden te laten zien. Wanneer er meer dan tien logbestanden zijn wordt het oudste bestand verwijderd en vervangen voor de logging van de meest recent gedraaide taak.
Tot slot kent een geplande taak nog enkele restricties. Een taak mag nooit langer dan 30 minuten duren. Een taak die langer duurt dan die 30 minuten wordt automatisch afgebroken zonder output-logging. Ook mag een taak niet vaker dan één keer per minuut draaien en zal er geen taak gestart worden als er nog een taak loopt. Taken die na elkaar dienen te worden uitgevoerd zullen dus netjes op elkaar wachten. Het is vanaf update 2.0.7 ook mogelijk om geplande taken met een schema handmatig te testen.
Je kan in nodum eenvoudig een project kopieren, echter als je een kopie maakte kwamen de geplande taken nog niet mee. Met de update van versie 2.1.0 worden ook de geplande taken mee gekopieeerd naar een volgend project. Het schema wordt niet mee gekopieert, dit moet je in je nieuwe project (project dat een kopie is) zelf instellen om te voorkomen dat hij meteen een geplande taak gaat uitvoeren. Vaak wil je eerst in je nieuwe gekopieerde project nog wat zaken aanpassen voordat de geplande taken al gaan draaien.