Catalogus documentsjabloon: verschil tussen versies
(→Newline) |
(→Tabel) |
||
Regel 54: | Regel 54: | ||
|In de sjablonen kan een tekstblok herhaald worden voor elk van de gerelateerde of deelzaken die de zaak heeft. | |In de sjablonen kan een tekstblok herhaald worden voor elk van de gerelateerde of deelzaken die de zaak heeft. | ||
<ol> | <ol> | ||
− | <li>Maak een tabel die één rij hoog is</li> | + | <li>Maak een tabel die één rij hoog is</li> |
− | <li>Zet de cursor op een willekeurige plek in de tabel en selecteer in het menu Insert - Script...</li> | + | <li>Zet de cursor op een willekeurige plek in de tabel en selecteer in het menu Insert - Script...</li> |
− | <li>Verander de waarde van 'Script type' in 'zttscript'</li> | + | <li>Verander de waarde van 'Script type' in 'zttscript'</li> |
− | <li>Selecteer de 'Text' optie en vul in:<ul><li>Voor gerelateerde zaken: iterate case.related_cases</li><li>Voor deelzaken: iterate case.child_cases</li></ul></li> | + | <li> |
+ | Selecteer de 'Text' optie en vul in: | ||
+ | <ul> | ||
+ | <li>Voor gerelateerde zaken: <pre>iterate case.related_cases</pre></li> | ||
+ | <li>Voor deelzaken: <pre>iterate case.child_cases</pre></li> | ||
+ | </ul> | ||
+ | </li> | ||
</ol> | </ol> | ||
Versie van 11 jun 2015 om 13:46
Inhoud
Algemeen
Een van de unieke functionaliteiten van zaaksysteem.nl is dat het een eigen sjablonengenerator heeft op basis van LibreOffice. Dit maakt het mogelijk om geautomatiseerd documenten aan te maken op basis van een sjabloon. Denk hierbij aan een ontvangstbevestiging of een beschikking. Documentsjablonen worden centraal in de Catalogus beheerd, en in een Zaaktype geselecteerd om te gebruiken.
Nieuwe documentsjablonen worden gemaakt door documenten op te maken en deze op te slaan als een ODT-bestand. Je kunt hiervoor LibreOffice gebruiken (indien er geen mogelijkheid is tot het installeren van LibreOffice kan er ook gebruik gemaakt worden van de portable LibreOffice app), maar ook Microsoft Office 2010 kan documenten opslaan in dit formaat.
Een documentsjabloon werkt met ‘magicstrings’. Dit zijn de variabele die verwijzen naar de waarden van Kenmerken binnen een zaak, die het zaaksysteem kan invullen tijdens het genereren van een document.
Iteratie
De oude methode (t/m versie 3.21) is hier in te zien: Documentsjablonen - Iteratie.
Iteratie zorgt ervoor dat informatie voor de magicstrings niet uit de zaak zelf wordt opgehaald, maar uit alle Gerelateerde zaken. Dit kan vervolgens op drie manieren worden weergegeven:
- Inline itereren: Op één regel, gescheiden door <komma><spatie>
- Tekstblok newline itereren: Een tekstblok dat geïtereerd wordt voor elke gerelateerde zaak, gescheiden door <enter>
- Tabel itereren: Eén tabelrij itereren om één tabel te vormen met informatie uit de gerelateerde zaken
Inline
Input | Output | |
---|---|---|
Gerelateerde zaken | De volgende zaken zijn verwerkt: [[iterate:case.child_cases:zaaknummer]]. |
De volgende zaken zijn verwerkt: 2462, 2463, 2465, 2467. |
Deelzaken | De volgende zaken zijn verwerkt: [[iterate:case.child_cases:zaaknummer]]. |
De volgende zaken zijn verwerkt: 2462, 2463, 2465, 2467. |
Newline
In de sjablonen kan een tabellenrij herhaald worden voor elk van de gerelateerde of deelzaken die de zaak heeft.
Let op: De iteraties worden gescheiden door een return (enter). |
Tabel
In de sjablonen kan een tekstblok herhaald worden voor elk van de gerelateerde of deelzaken die de zaak heeft.
Tabellen hebben over het algemeen een titelrij, maar omdat een itererende tabel uit maar één rij mag bestaan kan deze niet in dezelfde tabel opgenomen worden. De oplossing is eenvoudig: Maak twee tabellen van elk één rij; één voor de titels en één voor de iteratie. Plak deze vervolgens tegen elkaar door de enters ertussen uit te verwijderen. |
Variabele teksten
De oude methode (t/m versie 3.21) is hier in te zien: Documentsjablonen Variabele teksten.
Voorbeeld inrichting:
|
Variabele newline iteratie
Newline iteratie en variabele teksten maken beide gebruik van secties met daarin een zttscript. Het is daarom mogelijk om deze te combineren met het volgende script:
show_when { voorbeeld_magicstring == "voorbeeld_waarde" } iterate case.child_cases
Let op: De volgorde is hier van belang.