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
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 met {} een lege instructie.
Mijn naam is {voornaam} {achternaam}.
Een gewone tekst kan ook \{ accolades } bevatten.
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"} | hoi | Tekst in een instructie moet tussen aanhalingstekens |
{"dit is een korte zin"} | dit is een korte zin | |
{true} | 1 | true (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} regels | deze 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} | 3 | De negatie van een negatief getal is een positief getal |
{---3} | -3 | |
{-factuur.betaaltermijn} | -14 | Gesteld 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} | 1 | De waarheidwaarde true wordt weergegeven als 1 |
{7 != 7} | De waarheidwaarde false wordt weergegeven als een lege tekst | |
{7 == "7"} | 1 | Het 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} | 1 | De waarheidwaarde true wordt weergegeven als een 1 |
{!0} | 1 | Het getal 0 heeft waarheidwaarde false |
{!5} | Alle andere getallen hebben waarheidwaarde true | |
{!""} | 1 | Een lege tekst heeft waarheidwaarde false |
{!null} | 1 | De speciale waarde null heeft waarheidwaarde false |
{!!true} | 1 | Negaties heffen elkaar op (een dubbele ontkenning is een bekenning) |
{true && true} | 1 | Beide 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} | 1 | Tenminste een van beide expressies is waar (ze zijn zelfs beide waar) |
{true || false} | 1 | Tenminste een van beide expressies is waar |
{false || true} | 1 | Tenminste een van beide expressies is waar |
{false || false} | Niet een van beide expressies is waar | |
Ingewikkeldere voorbeelden | ||
{!true || !false} | 1 | Waar |
{!true || false} | Onwaar | |
{!false && true} | 1 | Waar |
{!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} | 100 | Als true waar is dan is het resultaat 100, anders is het resultaat null |
{false ? 100} | ||
{3 < 5 ? "Ja"} | Ja | Drie 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 waar | Want 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)} | 1 | Waar, 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} | Onwaar | Onwaar, 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))} | ALLEMAAL | De 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)} | HINDELOPEN | Namen/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)