Tekst in sjablonen

In een sjabloon komen meerdere blokken voor met tekst. Dat kan gewone platte tekst zijn, maar het kan ook tekst zijn met speciale instructies voor de software die de tekst verwerkt. Die instructies zorgen ervoor dat de tekst niet altijd exact gelijk is, maar zich aanpast aan de andere waarden in het sjabloon. Instructies in de teksten van een sjabloon kunnen worden vergeleken met formules in een spreadsheetprogramma (Microsoft Excel, LibreOffice Calc, Quattro Pro enz.). Op deze pagina wordt uitgelegd hoe instructies in de teksten van een sjabloon werken.

In dit document staan een heleboel voorbeelden om de syntax van instructies duidelijk te maken. Eigen teksten en instructies kunnen worden uitgeprobeerd in de try-out teksteditor.

Inhoud

  1. Instructies
    1. Expressies (expressions)
      1. Letterlijke expressies (literals)
      2. Namen (identifiers)
      3. Rekenkundige operatoren (arithmetic operators)
      4. Vergelijkende operatoren (comparison operators)
      5. Logische operatoren (logical operators)
      6. Andere operatoren
    2. Opdrachten (statements)
      1. if-opdracht
    3. Functies (functions)
  2. Bijlagen
    1. Bijlage 1: beschikbare namen/identifiers
      1. Eigen gegevens
      2. Klantgegevens
      3. Factuurgegevens
      4. Offertegegevens
      5. Aanmaningsgegevens
      6. Andere namen

Instructies

Om instructies van tekst te onderscheiden, beginnen instructies altijd met een openende accolade ('{') en eindigen ze met een afsluitende accolade ('}'). Tussen de accolades staat een expressie of een opdracht. Instructies in een tekst zien er als volgt uit:

Dit is gewone tekst.

Dit is gewone tekst met {} een lege instructie.

Mijn naam is {voornaam} {achternaam}.

Een gewone tekst kan ook \{ accolades } bevatten.
Om een letterlijke accolade in een tekst te plaatsen moet de openende accolade vooraf worden gegaan door een backslash ('\') om te voorkomen dat de tekst die erop volgt als een expressie of een opdracht wordt behandeld.

Expressies (expressions)

Expressies of uitdrukkingen zijn combinaties van waarden, namen en operatoren die door de software worden geïnterpreteerd. Expressies hebben altijd een uitkomst of resultaat. De expressie 3 + 6 bestaat bijvoorbeeld uit de waarden 3 en 6 en de binaire operator +. De uitkomst of het resultaat van deze eenvoudige expressie is natuurlijk 9. Naarmate de informatie die in een sjabloon wordt weergegeven ingewikkelder wordt zullen ook de gebruikte expressies ingewikkelder worden.

Letterlijke expressies (literals)

Letterlijke expressies, of waarden, zijn de meest eenvoudige expressies, omdat hun resultaat altijd precies gelijk is aan hun waarde. Voorbeelden van letterlijke expressies zijn getallen, teksten en waarheidswaarden. Wanneer een instructie alleen een letterlijke expressie bevat, wordt de waarde direct opgenomen in de tekst:

Voorbeeld Resultaat Opmerkingen
{3}3
{3.14159}3.14159
{"hoi"}hoiTekst in een instructie moet tussen aanhalingstekens
{"dit is een korte zin"}dit is een korte zin
{true}1true (waarheidswaarde waar) wordt weergegeven als 1
{false}false (waarheidwaarde onwaar) wordt weergegeven als lege tekst
{null}null is een waarde wordt gebruikt om aan te geven dat een expressie geen waarde heeft. De waarde null wordt weergegeven als een lege tekst
deze factuur heeft {3} regelsdeze factuur heeft 3 regels
mijn naam is {"Kort"}mijn naam is Kort

Zoals in de laatste twee voorbeelden is te zien zijn los gebruikte letterlijke expressies niet erg nuttig. De instructies {3} en {"Kort"} hadden veel eenvoudiger zonder accolades en aanhalingstekens in de tekst kunnen worden gezet. Letterlijke expressies zijn vooral handig wanneer ze worden gecombineerd met de operatoren die verderop in dit hoofdstuk worden besproken.

Namen (identifiers)

Namen zijn verwijzingen naar waarden die niet vooraf bekend zijn zoals een het nummer van een factuur of het adres van een klant. Als een naam wordt gebruikt in een instructie dan wordt die naam bij het verwerken van de instructie vervangen door de waarde waar de naam naar verwijst.
Namen mogen alleen bestaan uit letters, cijfers en underscores ('_') en moeten altijd met een letter beginnen.
Stel dat we een klant hebben toegevoegd met de volgende klantgegevens:

Bedrijfsnaam
De Boer Producties
Contactpersoon
T. de Boer
Adres
Dorpstraat 347
Postcode
4329QQ
Plaats
Hindelopen

Dan kunnen die gegevens als volgt in de tekst van de factuur worden gezet:

Voorbeeld Resultaat Opmerkingen
{klant.naam}De Boer Producties
{klant.postcode} {klant.plaats}4329QQ Hindelopen
{onbekende_naam}Omdat de naam onbekende_naam niet herkend wordt is het resultaat van de expressie null
{klant.onbekende_naam}Omdat een klant geen veld met de naam onbekende_naam heeft is de waarde van de expressie null
De contactpersoon van {klant.naam} is {klant.contactpersoon}De contactpersoon van De Boer Producties is T. de Boer

Rekenkundige operatoren (arithmetic operators)

Rekenkundige operatoren worden gebruikt om operaties met getallen uit te voeren zoals optellen, aftrekken, vermenigvuldigen en delen. De enige rekenkundige operator die wordt ondersteund in sjablonen is de negatie-operator waarmee getallen negatief gemaakt kunnen worden:

Voorbeeld Resultaat Opmerkingen
{-3}-3
{-37.037}-37.037
{--3}3De negatie van een negatief getal is een positief getal
{---3}-3
{-factuur.betaaltermijn}-14Gesteld dat de betaaltermijn van de factuur 14 dagen is

Vergelijkende operatoren (comparison operators)

Vergelijkende operatoren vergelijken twee expressies met elkaar en geven een waarheidswaarde als resultaat. De volgende vergelijkende operatoren worden ondersteund:

==
Gelijk aan
!=
Ongelijk aan
===
Identiek, gelijk aan en van hetzelfde type
!==
Niet identiek, ongelijk aan of van verschillende types
<
Kleiner dan
>
Groter dan
<=
Kleiner of gelijk aan
>=
Groter of gelijk aan

Vergelijkende operatoren staan altijd tussen twee expressies in (infix-notatie). Ze vergelijken de expressie aan hun linkerkant met die aan hun rechterkant:

Voorbeeld Resultaat Opmerkingen
{7 == 7}1De waarheidwaarde true wordt weergegeven als 1
{7 != 7}De waarheidwaarde false wordt weergegeven als een lege tekst
{7 == "7"}1Het getal zeven is gelijk aan een tekst met alleen een zeven
{7 === "7"}Het getal zeven is niet identiek een tekst met alleen een zeven, want de types (getal of tekst) verschillen
{7 !== "7"}1
{5 > 7}1
{5 < 7}
{19 >= 19}1
{19 <= 19}1
{10.5 <= 3.73}Bij het vergelijken van kommagetallen is het verstandig om groter dan en kleiner dan te gebruiken
{10.5 <= 13.73}1
{factuur.betaaltermijn > 14}Alleen waar als de betaaltermijn van de factuur groter dan 14 dagen is
{klant.land === "Nederland"}Alleen waar als de klant van de factuur gevestigd is in Nederland
{"CONCEPT" === factuur.status}Alleen waar voor conceptfacturen die nog niet definitief zijn gemaakt

Logische operatoren (logical operators)

Logische operatoren voeren bewerkingen uit op waarheidswaarden. Zo kan bijvoobeeld worden vastgesteld of meerdere vergelijkingen allemaal waar zijn, of dat er tenminste één waar is. Het Wikipedia artikel over propositielogica geeft een uitgebreidere omschrijving van logische operatoren. In sjablonen worden de volgende logische operatoren ondersteund:

!
Negatie, het omgekeerde
&&
Conjuntie, beide
||
Disjunctie, tenminste een van beide

De volgende voorbeelden laten de werking van deze operatoren zien:

Voorbeeld Resultaat Opmerkingen
{!true}De waarheidwaarde false wordt weergegeven als een lege tekst
{!false}1De waarheidwaarde true wordt weergegeven als een 1
{!0}1Het getal 0 heeft waarheidwaarde false
{!5}Alle andere getallen hebben waarheidwaarde true
{!""}1Een lege tekst heeft waarheidwaarde false
{!null}1De speciale waarde null heeft waarheidwaarde false
{!!true}1Negaties heffen elkaar op (een dubbele ontkenning is een bekenning)
{true && true}1Beide expressies zijn waar
{true && false}Slechts een van beide expressies is waar
{false && true}Slechts een van beide expressies is waar
{false && false}Beide expressies zijn onwaar
{true || true}1Tenminste een van beide expressies is waar (ze zijn zelfs beide waar)
{true || false}1Tenminste een van beide expressies is waar
{false || true}1Tenminste een van beide expressies is waar
{false || false}Niet een van beide expressies is waar
Ingewikkeldere voorbeelden
{!true || !false}1Waar
{!true || false}Onwaar
{!false && true}1Waar
{!false && !true}Onwaar
Voorbeelden met namen
{factuur.bedragtype === "EXCLUSIVE" && factuur.betaaltermijn < 30}Alleen waar als de factuur bedragen zonder btw aangeeft en een betaaltermijn kleiner dan 30 dagen heeft
{klant.land !== "Nederland" || !klant.bankrekening}Waar als de klant niet uit Nederland komt of als er geen bankrekeningnummer is ingevuld voor de klant

Andere operatoren

Naast de bovengenoemde operatoren zijn er nog een aantal andere operatoren die in instructies kunnen worden gebruikt:

?
Het vraagteken maakt het mogelijk om als-dan constructies te gebruiken
? :
De conditionele operator maakt het mogelijk om als-dan-anders constructies te gebruiken
( en )
Haakjes (parenthesis) geven de volgorde van operatoren aan

Het gebruik van deze operatoren is gemakkelijk duidelijk te maken aan de hand van een aantal voorbeelden:

Voorbeeld Resultaat Opmerkingen
Vraagteken
{true ? 100}100Als true waar is dan is het resultaat 100, anders is het resultaat null
{false ? 100}
{3 < 5 ? "Ja"}JaDrie is kleiner dan vijf, het resultaat van de expressie is Ja
{3 > 5 ? "Ja"}Drie is niet groter dan vijf, het resultaat van de expressie is null
{6 === 6 && 5 > 1 ? "Beide waar"}Beide waar
{6 !== 6 || 5 > 1 ? "Tenminste een waar"}Tenminste een waarWant vijf is groter dan een
Conditionele operator
{50 < 70 ? "Ja" : "Nee"}Ja
{50 > 70 ? "Ja" : "Nee"}Nee
Haakjes
{!false || true}Onwaar, want negatie (!) gaat voor disjunctie (||)
{!(false || true)}1Waar, want door de haakjes gaat de disjunctie (||) voor de negatie (!)
Voorbeelden met namen
{klant.rekeningnummer ? klant.bank}Als het rekeningnummer van de klant is ingevoerd, dan is het resultaat de naam van de bank van de klant
{factuur.bedragtype=="INCLUSIVE" ? "Inclusief btw"}Als de factuur bedragen met btw weergeeft, dan is het resultaat de tekst Inclusief btw
{factuur.bedragtype=="INCLUSIVE" ? "Inclusief btw" : "Exclusief btw"}Als de factuur bedragen met btw weergeeft, dan is het resultaat de tekst Inclusief btw, anders is het resultaat de tekst Exclusief btw

Opdrachten (statements)

Opdrachten zijn constructies die aangeven dat een deel van een tekst op een speciale wijze behandeld moet worden. Opdrachten bestaan uit minimaal twee instructies. Ze beginnen met een instructie met een vooraf gedefinieerd woord en ze eindigen met een instructie waarin datzelfd woord word voorafgegaan door een schuine streep (/). In tegenstelling tot expressies hebben opdrachten geen resultaat. In sjablonen wordt alleen de if-opdracht ondersteund.

if-opdracht

De if-opdracht geeft aan dat een deel van een tekst wel of niet moet worden weergegeven op basis van een expressie. De functionaliteit van de if-opdracht lijkt erg op die van de conditionele operator uit het vorige hoofstuk. Een if-opdracht heeft een van de volgende vormen:

{if (expressie)} ... {/if}
Het if-blok tussen de instructies (hier afgekort met drie punten) wordt alleen weergegeven als expressie waar is, anders wordt er niets weergegeven.
{if (expressie)} ... {else} ... {/if}
Het if-blok tussen de eerste (if) en de tweede (else) instructie wordt weergegeven als expressie waar is, anders wordt het else-blok tussen de tweede (else) en de derde {/if} instructie weergegeven.

Het voordeel van de if-opdracht boven de conditionele operator is dat er in de tekst tussen de instructies (aangegeven door ...) ook andere instructies kunnen staan. In een if-blok of een else-blok kunnen alle instructies in dit artikel worden gebruikt. if-opdrachten kunnen zich dus ook binnen andere if-opdrachten bevinden. Een aantal voorbeelden:

Voorbeeld Resultaat Opmerkingen
Eenvoudig
{if (true)}Waar{/if}Waar
{if (false)}Waar{/if}
{if (true)}Waar{else}Onwaar{/if}Waar
{if (false)}Waar{else}Onwaar{/if}Onwaar
Expressies
{if (7 > 5)}Waar{else}Onwaar{/if}Waar
{if (7 > 5 && 9 < 3)}Waar{else}Onwaar{/if}OnwaarOnwaar, want negen is niet kleiner dan drie
Namen in expressies
{if (factuur.bedragtype == "EXCLUSIVE")}Exclusief{else}Inclsief{/if}Afhankelijk van het type bedragen in de factuur wordt Exlusief of Inclusief weergegeven
Instructies in het if-blok en het else-blok
{if (true)}Mijn bedrijfsnaam is {mijn.naam}.{/if}Mijn bedrijfsnaam is De Boer Producties.
{if (klant.bankrekening)}
Bankrekening: {klant.bankrekening}
{else}Geen bankrekening opgegeven{/if}
Met deze instructies wordt het bankrekeningnummer van een klant weergegeven, of een indicatie dat er geen bankrekening is opgegeven
{if (klant.bankrekening)}
{klant.land === "Nederland" ? "Nederlandse" : "Buitenlandse"} bankrekening: {klant.bankrekening}
{else}Geen bankrekening opgegeven{/if}
Met deze instructies wordt het bankrekeningnummer van een klant weergegeven, of een indicatie dat er geen bankrekening is opgegeven. Als er een rekeningnummer wordt weergegeven, dan wordt ook aangegeven of the een Nederlandse of een buitenlandse klant is.

Functies (functions)

Functies genereren uitvoer op basis van invoer. Stel bijvoorbeeld dat de naam van een klant met alleen kleine letters moet worden weergegeven, dan kan daarvoor de functie kleineletters worden gebruikt. Die functie heeft als invoer een tekst en als uitvoer diezelfde tekst met alleen kleine letters. Een functie-aanroep bestaat altijd uit de functienaam gevolgd door nul of meer parameters tussen haakjes (( en )). Parameters worden gescheiden door komma's, bijvoorbeeld deel(klant.naam, 0, 3) geeft de eerste drie letters van de naam van de klant. De volgende functies worden momenteel ondersteund:

beginletters(invoer: tekst) => tekst
Past de tekst invoer aan zodat alle woorden met hoofdletters beginnen.
hoofdletters(invoer: tekst) => tekst
Past de tekst invoer aan door alle kleine letters te vervangen door hoofdletters.
kleineletters(invoer: tekst) => tekst
Past de tekst invoer aan door alle hoofdletters te vervangen door kleine letters.
deel(invoer: tekst, start: getal[, lengte: getal]) => tekst
Geeft een deel van de tekst invoer terug. Het teruggegeven deel hangt af van de start en lengte parameters. start is de positie (vanaf nul) van het eerste karakter van het terug te geven deel. lengte is de lengte vanaf start. Als er geen lengte wordt opgegeven, dan wordt het deel vanaf de start tot het einde van de tekst teruggegeven.
samenvoegen(deel1: tekst, deel2: tekst, ...) => tekst
Voegt alle opgegeven delen samen tot één tekst in de volgorde zoals opgegeven.
vervangen(invoer: tekst, patroon: tekst, vervanging: tekst) => tekst
Vervangt alle voorkomingen van patroon in invoer door vervanging.
afronden(waarde: numeriek[, decimalen: integer]) => numeriek
Rondt waarde af op het aangegeven aantal decimalen. Als het aantal decimalen niet wordt opgegeven, dan wordt afgerond op een geheel getal. Deze functie rondt halven af naar boven.
vloer(waarde: numeriek) => integer
Rondt waarde af naar het kleinste gehele getal dat groter of gelijk is aan waarde.
plafond(waarde: numeriek) => integer
Rondt waarde af naar het grootste gehele getal dat kleiner of gelijk is aan waarde.
tekst(waarde: numeriek[, decimalen: integer[, decimaal_scheider: tekst[, duizend_scheider: tekst]]]) => tekst
Geeft een tekstuele representatie van de opgegeven numerieke waarde. Alle andere argumenten zijn optioneel. decimalen geeft aan hoeveel cijfers er achter de komma komen (standaard 0). decimaal_scheider is de tekst die wordt gebruikt om het gehele deel van waarde te scheiden van de fractie (standaard een punt). duizend_scheider is de tekst die wordt gebruikt tussen duizendgroepen (standaard een komma).
vermenigvuldigen(num1: numeriek, num2: numeriek, ...) => numeriek
Vermenigvuldigt alle opgegeven numerieke waarden.

Een aantal voorbeelden:

Voorbeeld Resultaat Opmerkingen
Eenvoudig
{kleineletters("Hallo")}hallo
{hoofdletters("Hallo")}HALLO
{beginletters("hallo allemaal")}Hallo Allemaal
{deel("hallo allemaal", 0, 5)}hallo
{deel("hallo allemaal", 6)}allemaal
{samenvoegen("hallo", " ", "allemaal")}hallo allemaal
{vervangen("hallo allemaal", "allemaal", "iedereen")}hallo iedereen
{tekst(1234.5678)}1,235
{tekst(1234.5678, 2)}1,234.57
{tekst(1234.5678, 2, ",", ".")}1.234,57
Uitgebreid
{hoofdletters(deel("hallo allemaal", 6))}ALLEMAALDe uitvoer van een functie kan als parameter worden doorgegeven aan een andere functie.
{vervangen("Beste NAAM,", "NAAM", klant.naam)}Beste De Boer Producties,
{hoofdletters(klant.plaats)}HINDELOPENNamen/identifiers kunnen als invoer voor functies worden gebruikt.

Bijlagen

Bijlage 1: Beschikbare namen/identifiers

Eigen gegevens

De eigen gegevens beschrijven de Proficact gebruiker. Ze zijn beschikbaar in elk sjabloon en hebben altijd de waarden zoals die waren op het moment dat de factuur, de offerte of de aanmaning definitief werd gemaakt. Zo wordt voorkomen dat het wijzigen van de eigen gegevens invloed heeft op eerder gemaakte documenten.

mijn.naam
De eigen bedrijfsnaam
mijn.adres
Het eigen adres (straat, huisnummer en toevoeging)
mijn.postcode
De postcode behorende bij het eigen adres
mijn.plaats
De plaats waar je bedrijf of organisatie is gevestigd
mijn.telefoon
Het eigen telefoonnummer
mijn.fax
Het eigen faxnummer
mijn.email
Het eigen emailadres
mijn.website
De eigen website
mijn.kvknummer
Het eigen Kamer van Koophandelnummer
mijn.btwnummer
Het eigen btw-nummer
mijn.bank
De naam van de eigen bank
mijn.bankrekening
Het eigen bankrekeningnummer

Klantgegevens

De klantgegevens beschrijven de klant waar het document naartoe gestuurd wordt. Klantgegevens zijn beschikbaar in elk sjabloon en hebben altijd de waarden zoals die waren op het moment dat de factuur, de offerte of de aanmaning definitief werd gemaakt. Zo wordt voorkomen dat het wijzigen van klantgegevens invloed heeft op eerder gemaakte documenten.

klant.naam
Naam van de klant
klant.kenmerk
Het klantnummer zoals toegewezen door de gebruiker
klant.contactpersoon
De naam van een contactpersoon van de klant
klant.adres
Het adres (straat, huisnummer en toevoeging) van de klant
klant.postcode
De postcode behorende bij het adres van de klant
klant.plaats
De plaats waar de klant is gevestigd
klant.land
Het land waarin de klant is gevestigd
klant.telefoon
Het telefoonnummer van de klant
klant.mobiel
Het mobiele telefoonnummer van de klant
klant.fax
Het faxnummer van de klant
klant.email
Het emailadres van de klant
klant.website
De website van de klant
klant.btwnummer
Het btw-nummer van de klant
klant.bank
De naam van de bank van de klant
klant.bankrekening
Het bankrekeningnummer van de klant
klant.opmerkingen
De bij de klant ingevoerde opmerkingen

Factuurgegevens

Factuurgegevens beschrijven een factuur. Deze namen/identifiers zijn alleen beschikbaar in factuursjablonen.

factuur.nummer
Het nummer van de factuur (deze waarde is leeg voor conceptfacturen)
factuur.datum
De factuurdatum in dd-mm-jjjj formaat (bijvoorbeeld: 13-10-2013)
factuur.langedatum
De factuurdatum in d mmm jjjj formaat (bijvoorbeeld: 13 oktober 2013)
factuur.vervaldatum
De vervaldatum van de factuur in dd-mm-jjjj formaat (bijvoorbeeld: 27-10-2013)
factuur.langevervaldatum
De vervaldatum van de factuur in d mmm jjjj formaat (bijvoorbeeld: 27 oktober 2013)
factuur.status
De huidige status van de factuur ("CONCEPT","UNSETTLED","PAID" of "UNCOLLECTIBLE")
factuur.betaaltermijn
De betaaltermijn van de factuur in dagen
factuur.referentie
De referentie die is opgegeven bij het maken van de factuur
factuur.opmerkingen
De opmerkingen die zijn opgegeven bij het maken van de factuur
factuur.bedragtype
Geeft aan of de bedragen van de factuur exclusief of inclusief btw zijn ("EXCLUSIVE" of "INCLUSIVE")
factuur.btwverlegd
Geeft aan of de factuur tenminste één regel bevat met btw verlegd.
factuur.btwvrijgesteld
Geeft aan of de factuur tenministe één regel bevat met btw vrijgesteld
factuur.btwallevrijgesteld
Geeft aan of alle regels van de factuur btw vrijgesteld hebben
factuur.totaalinclusief
Het totaalbedrag van de factuur inclusief btw
factuur.totaalexclusief
Het totaalbedrag van de factuur exclusief btw

Offertegegevens

Offertegegevens beschrijven een offerte. Deze namen/identifiers zijn alleen beschikbaar in offertesjablonen.

offerte.nummer
Het nummer van de offerte (deze waarde is leeg voor conceptfacturen)
offerte.datum
De offertedatum in dd-mm-jjjj formaat (bijvoorbeeld: 13-10-2013)
offerte.langedatum
De offertedatum in d mmm jjjj formaat (bijvoorbeeld: 13 oktober 2013)
offerte.vervaldatum
De vervaldatum van de offerte in dd-mm-jjjj formaat (bijvoorbeeld: 27-10-2013)
offerte.langevervaldatum
De vervaldatum van de offerte in d mmm jjjj formaat (bijvoorbeeld: 27 oktober 2013)
offerte.status
De huidige status van de offerte ("CONCEPT","SENT","ACCEPTED","DENIED" of "INVOICED")
offerte.geldigheidstermijn
De geldigheidsduur van de offerte in dagen
offerte.referentie
De referentie die is opgegeven bij het maken van de offerte
offerte.opmerkingen
De opmerkingen die zijn opgegeven bij het maken van de offerte
offerte.bedragtype
Geeft aan of de bedragen van de offerte exclusief of inclusief btw zijn ("EXCLUSIVE" of "INCLUSIVE")
offerte.btwverlegd
Geeft aan of de offerte tenminste één regel bevat met btw verlegd.
offerte.btwvrijgesteld
Geeft aan of de offerte tenministe één regel bevat met btw vrijgesteld
offerte.btwallevrijgesteld
Geeft aan of alle regels van de offerte btw vrijgesteld hebben
offerte.totaalinclusief
Het totaalbedrag van de offerte inclusief btw
offerte.totaalexclusief
Het totaalbedrag van de offerte exclusief btw

Aanmaningsgegevens

Aanmaningsgegevens beschrijven een aanmaning. Deze namen/identifiers zijn alleen beschikbaar in aanmaningssjablonen.

aanmaning.nummer
Het nummer van de aanmaning
aanmaning.datum
De aanmaningsdatum in dd-mm-jjjj formaat (bijvoorbeeld: 13-10-2013)
aanmaning.langedatum
De aanmaningsdatum in d mmm jjjj formaat (bijvoorbeeld: 13 oktober 2013)
aanmaning.type
Het type van de aanmaning ("INFORMAL", "FORMAL" of "DEFAULT")

Andere namen

Tenslotte zijn er nog een aantal extra namen/identifiers. Ze zijn beschikbaar in elk sjabloon en verhogen de aanpasbaarheid van sjablonen.

vandaag
De huidige datum (bijvoorbeeld: 13 oktober 2013). Pas op bij het gebruik van deze naam/identifier, want hij is altijd gelijk aan de huidige datum. Stel dat een factuur is gemaakt op 1 juli 2016 en het sjabloon bevat de instructie {vandaag}, dan is de factuur elke keer anders wanneer hij wordt afgedrukt of verstuurd op een andere datum. Omdat facturen niet meer mogen worden aangepast nadat ze zijn verstuurd, is het opnemen van de instructie {vandaag} niet verstandig.
aantalPaginas
Het aantal pagina's waaruit het document bestaat
paginanummer
Het nummer van de huidige pagina (de eerste pagina heeft nummer 1)