Generatieresultaten afhandelen
Nadat Valtimo documentgeneratie start, moet de zaak wachten tot Epistola de PDF heeft afgerond.
Wat een generatie achterlaat
De workflow bewaart de uitkomst in een procesvariabele die je zelf kiest. Zodra Epistola het verzoek accepteert, staat daarin een verzoek-id met de status PENDING. Bestaat het document, dan staat op dezelfde plek de eindstatus en het document-id — of, als het misging, de mislukking met een foutmelding.
Die status eindigt als voltooid of mislukt — er is geen derde uitkomst om af te handelen. Tot het zover is staat er PENDING in de variabele, zodat het proces direct op het verzoek verder kan zonder dat als resultaat te zien.
Aanbevolen flow
- Start documentgeneratie.
- Wacht op het voltooiingsbericht van Epistola.
- Download de PDF als generatie is gelukt.
- Toon de fout en routeer naar retry of handmatige review als generatie is mislukt.
- Sla het document pas op of verstuur het pas na een succesvolle download.
Twee dingen om op te letten:
- Het wachten wekt het proces; het resultaat wordt hoe dan ook opgeslagen. Het resultaat wekt de tak die erop wacht, en zolang de zaak loopt wordt het hoe dan ook in de resultaatvariabele gezet. Een zaak die al verder is kan de uitkomst dus alsnog lezen of de status opvragen, maar niets hervat het proces vanzelf — en is de zaak al afgerond, dan is er niets meer om het in te schrijven. Zet het wachten direct na de generatiestap, zonder asynchrone grens ertussen, zodat het resultaat bij de wachtende tak terechtkomt.
- Downloaden is niet hetzelfde als archiveren. De downloadstap maakt het document beschikbaar aan het proces, standaard als een tijdelijke resource met een korte levensduur. Het in het zaakdossier krijgen is een aparte stap daarna, en die moet gebeuren zolang de download er nog is.
Een mislukte generatie herstellen
Een mislukte poging is zelden het einde van de zaak. De gebruikerstaak kan een retry bieden met de velden die iemand moet herstellen, voorgevuld door de mapping opnieuw te evalueren tegen de zaak zoals die er nu voorstaat.
Wat zo’n retry doet, is het waard precies te benoemen. De gecorrigeerde waarden vervangen voor die poging de gemapte gegevens, en de retry is een nieuwe generatie in plaats van een tweede blik op de oorspronkelijke job. De mislukte poging blijft in de geschiedenis staan, en het document wordt opnieuw gegenereerd.
De foutmelding op die taak is de technische reden waarom de generatie mislukte. Nuttig voor wie de gegevens kan herstellen, en geen diagnosetekst voor de behandelaar.
Wat gebruikers moeten zien
Gebruikers hoeven geen technische jobdetails te zien. Toon of het document wacht, klaar is, mislukt is of correctie nodig heeft. Als correctie mogelijk is, stuur de gebruiker naar een retryformulier met de velden die hij kan herstellen.
Zolang er geen document is, valt er niets te tonen en zegt de documentcomponent dat in gewone taal in plaats van een lege viewer te tonen. Een mislukte generatie ziet er voor die component hetzelfde uit als een generatie die nog loopt — nog een reden om de fout expliciet te routeren in plaats van de taak te laten wachten.
Ontwikkelaarsnotitie
De Valtimo plugin bewaart de technische resultaatstatus voor de workflow. Modelleurs hebben meestal alleen de succes-, fout- en retrypaden nodig.
Blijft een zaak toch op een wachtstand staan, dan kan een beheerder die herstellen vanaf het scherm met openstaande jobs in de plugin.
Epistola bewaart een gegenereerd document een beperkte periode — standaard drie maanden. Zie dat exemplaar als iets om over te dragen, niet als het archief.