Office App Award Winner
iWRITER ACADEMY

Vraagvelden - Samenstelling

Het tabblad Samenstelling is waar je samenstellingen kunt maken als je waarden van vraagvelden, getallen of platte tekst wilt samenvoegen in één vraagveld.

Je kunt dit bijvoorbeeld gebruiken om automatisch een vervaldatum te berekenen, of om een standaardonderwerp te combineren met invoer van de gebruiker.

Het scherm bevat drie velden:

samenstelling
  • Expressie: Dit is waar je je samenstelling maakt.
  • Velden: Bevat vraagvelden die je kunt toevoegen aan je samenstelling.
  • Functies: Biedt de functies die je kunt gebruiken voor je samenstelling.
Laten we eens kijken naar alle beschikbare functies en hoe ze te gebruiken!

De volgende functies zijn beschikbaar:

functies
 
Als een sjabloon een herhalende groep bevat, dan zijn de extra functies Som, Gemiddelde, Optellen, Minimum en Maximum beschikbaar. Deze functies worden besproken in het onderwerp Herhalende groep.

Alle functies worden hieronder besproken, te beginnen met de functie Plus.

Plus
Je kunt Plus ('+') gebruiken om waarden op te tellen, bijvoorbeeld:

samenstelling expressie
Het resultaat ziet er in de wizard zo uit:

samenstelling wizard
 
Je kunt '+' toevoegen door te klikken op de knop Plus in het veld met functies, maar je kunt het ook handmatig toevoegen door te typen. Dit geldt ook voor alle andere functies: klik gewoon op de juiste knop of typ een waarde direct in het expressieveld.

Je kunt ook vraagvelden in een samenstelling gebruiken. In onderstaand voorbeeld worden de vraagvelden 'Getal 1' en 'Getal 2' gebruikt:

voorbeeld samenstelling
 
Je kunt vraagvelden toevoegen aan een samenstelling door op het juiste veld te klikken, of door de naam van het vraagveld direct in het expressieveld te typen. Merk op dat je haakjes '[' en ']' dient te gebruiken rondom een vraagveld.

Het is ook mogelijk om vraagvelden en waarden te combineren, bijvoorbeeld:

vraagvelden en waarden combineren
Ten slotte kun je ook platte tekst in een samenstelling gebruiken door aanhalingstekens te gebruiken:

platte tekst in samenstelling
Verschillende combinaties van vraagvelden en waarden (met of zonder gebruik van aanhalingstekens) zullen leiden tot verschillende resultaten.
Als een samenstelling bijvoorbeeld alleen getallen bevat dan zullen de waarden als cijfers worden geïnterpreteerd, maar als het een combinatie van getallen en platte tekst is, dan worden de getallen standaard als tekst geïnterpreteerd, tenzij je de getallen tussen haakjes plaatst.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Getal 1: Waarde '20'.
  • Getal 2: Waarde '17'.
  • Onderwerp: Waarde 'wereld'.

Expressie Resultaat
20 + 17 37
"20 + 17" 20 + 17
"20" + "17" 2017
[Getal 1] + [Getal 2] 37
"hallo " + [Onderwerp] hallo wereld
"hallo " + [Onderwerp] + " " + 20 + 17 hallo wereld 2017
"hallo " + [Onderwerp] + " " + (20 + 17) hallo wereld 37
"hallo " + [Onderwerp] + " " + ("20 + 17") hallo wereld 20 + 17
"hallo " + [Onderwerp] + " " + "(20 + 17)" hallo wereld (20 + 17)
"hallo " + [Onderwerp] + " " + "20 + 17" hallo wereld 20 + 17
"de man zegt "hallo" tegen de snelle bruine vos" de man zegt "hallo" tegen de snelle bruine vos
"kenmerk: ABC\123" kenmerk: ABC\123

Min
Je kunt Min ('-') gebruiken om waarden af te trekken. Dit geldt voor numerieke, valuta- en percentagewaarden.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Getal 1: Waarde '20'.
  • Getal 2: Waarde '17'.

Expressie Resultaat
20 - 17 3
"20" - "17" 3
"20 - 17" 20 - 17
[Getal 1] - [Getal 2] 3
20 - [Getal 2] 3


Delen door
Je kunt Delen door ('/') gebruiken om waarden te delen. Dit geldt voor numerieke, valuta- en percentagewaarden.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Getal 1: Waarde '20'.
  • Getal 2: Waarde '5'.

Expressie Resultaat
20 / 5 4
"20" / "5" 4
"20 / 5" 20 / 5
[Getal 1] / [Getal 2] 4
20 / [Getal 2] 4

 
Als een berekening onjuist is dan wordt een melding weergegeven in de wizard. Als de berekening bijvoorbeeld '0/0' is dan wordt de melding 'NaN' (Not a Number) weergegeven, wat betekent een niet gedefinieerd resultaat. Als de berekening '20/0' is dan wordt de melding 'Infinity' (oneindig) getoond, wat betekent dat het niet mogelijk is om door nul te delen.

Maal
Je kunt Maal ('*') gebruiken om waarden te vermenigvuldigen. Dit geldt voor numerieke, valuta- en percentagewaarden.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Getal 1: Waarde '20'.
  • Getal 2: Waarde '5'.

Expressie Resultaat
20 * 5 100
"20" * "5" 100
"20 * 5" 20 * 5
[Getal 1] * [Getal 2] 100
20 * [Getal 2] 100
-20 * 5 -100
-20 * -5 100

Het is uiteraard ook mogelijk om de functies Plus, Min, Delen door en Maal te combineren.
Je kunt haakjes '(' en ')' gebruiken om verschillende resultaten te krijgen:

Expressie Resultaat
24 / 8 * 3 + 6 - 4 11
(24 / 8) * (3 + 6 - 4) 15


Opmaak
Je kunt Opmaak gebruiken om opmaak toe te passen op waarden van numerieke en datumvelden. Standaard wordt de opmaak van het originele vraagveld gebruikt, maar je kunt deze overschrijven door een alternatieve opmaak op te geven.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke opmaak en waarden:
  • Datum: Waarde '7 februari 2017' (Opmaak: 'd MMMM yyyy').
  • Bedrag: Waarde '€ 12,34' (Opmaak: '€ #,##0.00').

Expressie Resultaat
[Datum] 1486422000000
FORMAT([Datum]) 7 februari 2017
FORMAT([Datum], "dd-MM-yy") 07-02-17
"De vervaldatum is " + FORMAT([Datum]) + "!" De vervaldatum is 7 februari 2017!
[Bedrag] 12,34
FORMAT([Bedrag]) € 12,34
FORMAT([Bedrag], "#,##0.00 Euro") 12,34 Euro

 
Als 'FORMAT' (Opmaak) wordt weggelaten bij het gebruik van een datum, dan toont het resultaat de werkelijke datum in milliseconden.
Als 'FORMAT' (Opmaak) wordt weggelaten bij het gebruik van valuta, dan toont het resultaat de waarde zonder valutasymbool.
Als je een alternatieve opmaak opgeeft ("dd-MM-yy" en "#,##0.00 Euro" in de voorbeelden hierboven) dan wordt de opmaak van het originele vraagveld overschreven.

Hyperlink
Je kunt Hyperlink gebruiken om platte tekst te veranderen in een klikbare link. Je kunt zowel de weergavetekst als de link definiëren.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Weergavetekst: Waarde 'Klik hier'.
  • Link: Waarde 'http://www.mijnbedrijf.com'.

Expressie Resultaat
HYPERLINK ([Weergavetekst] , [Link]) Klik hier
HYPERLINK ("Klik hier" , "http://www.mijnbedrijf.com") Klik hier
HYPERLINK ("Klik hier" , [Link]) Klik hier
HYPERLINK ([Weergavetekst] , "http://www.mijnbedrijf.com") Klik hier

 
De links in de voorbeelden zijn niet klikbaar. Deze dienen alleen ter illustratie.

E-mail naar
Je kunt E-mail naar gebruiken om platte tekst te veranderen in een klikbaar e-mailadres. Je kunt zowel de weergavetekst als het e-mailadres definiëren.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Weergavetekst: Waarde 'Neem contact op met Support'.
  • Link: Waarde 'support@mijnbedrijf.com'.

Expressie Resultaat
MAILTO ([Weergavetekst] , [Link]) Neem contact op met Support
MAILTO ("Neem contact op met Support" , "support@mijnbedrijf.com") Neem contact op met Support
MAILTO ("Neem contact op met Support" , [Link]) Neem contact op met Support
MAILTO ([Weergavetekst] , "support@mijnbedrijf.com") Neem contact op met Support

 
De links in de voorbeelden zijn niet klikbaar. Deze dienen alleen ter illustratie.

Spatie na
Je kunt Spatie na gebruiken om een spatie in te voegen na een waarde. Natuurlijk kun je ook een spatie invoegen door een spatie te typen tussen aanhalingstekens, maar het veld Spatie na voegt alleen een spatie in wanneer de waarde niet leeg is!

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Onderwerp 1: Waarde 'digitale'.
  • Onderwerp 2: Lege waarde.

Expressie Resultaat
"hallo " + SPACEAFTER([Onderwerp 1]) + "wereld" hallo digitale wereld
"hallo " + SPACEAFTER([Onderwerp 2]) + "wereld" hallo wereld
"hallo " + [Onderwerp 1] + " wereld" hallo digitale wereld
"hallo " + [Onderwerp 2] + " wereld" hallo  wereld

 
Merk op dat in het laatste voorbeeld er twee spaties staan tussen 'hallo' en 'wereld'. Dat is waarom je beter de functie Spatie na kunt gebruiken in plaats van het typen van een spatie.

Spatie voor
Je kunt Spatie voor gebruiken om een spatie in te voegen voor een waarde. Natuurlijk kun je ook een spatie invoegen door een spatie te typen tussen aanhalingstekens, maar het veld Spatie voor voegt alleen een spatie in wanneer de waarde niet leeg is!

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Onderwerp 1: Waarde 'wereld'.
  • Onderwerp 2: Lege waarde.

Expressie Resultaat
"hallo" + SPACEBEFORE([Onderwerp 1]) + "!" hallo wereld!
"hallo" + SPACEBEFORE([Onderwerp 2]) + "!" hallo!
"hallo" + " " + [Onderwerp 1] + "!" hallo wereld!
"hallo" + " " + [Onderwerp 2] + "!" hallo !

 
Merk op dat in het laatste voorbeeld er een spatie staat tussen 'hallo' en '!'. Dat is waarom je beter de functie Spatie voor kunt gebruiken in plaats van het typen van een spatie.

Enter na
Je kunt Enter na gebruiken om een nieuwe regel in te voegen na een waarde. Natuurlijk kun je ook een nieuwe regel invoegen door op <Enter> te drukken, maar het veld Enter na voegt alleen een nieuwe regel in wanneer de waarde niet leeg is!

Je kunt dit bijvoorbeeld gebruiken voor de adressering. Laten we zeggen dat deze er als volgt uitziet:

<Organisatienaam>
<Contactpersoon>
<Adres>
<Plaats>

Als je nu geen contactpersoon invult, wat gebeurt er dan? Er wordt een lege regel weergegeven tussen de organisatienaam en het adres!
Dat is niet het gewenste gedrag. Als er geen contactpersoon is, dan dienen het adres en de plaats één regel naar boven te verschuiven. Je kunt dit realiseren door de functie Enter na te gebruiken.

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:
  • Organisatienaam: Waarde '1-2-3 Transport'.
  • Contactpersoon 1: Waarde 'Ken de Mock'.
  • Contactpersoon 2: Lege waarde.
  • Adres: Waarde 'Dorpstraat 55'.
  • Plaats: Waarde 'Eindhoven'.

Expressie Resultaat
LINEAFTER([Organisatienaam]) + LINEAFTER([Contactpersoon 1]) +
LINEAFTER([Adres]) + [Plaats]
1-2-3 Transport
Ken de Mock
Dorpstraat 55
Eindhoven
LINEAFTER([Organisatienaam]) + LINEAFTER([Contactpersoon 2]) +
LINEAFTER([Adres]) + [Plaats]
1-2-3 Transport
Dorpstraat 55
Eindhoven

 
De functie Enter na heet 'LINEAFTER' in de expressie.

Enter voor
Je kunt Enter voor gebruiken om een nieuwe regel in te voegen voor een waarde. Een nieuwe regel wordt alleen ingevoegd als de waarde niet leeg is. Dit werkt op dezelfde manier als de hierboven beschreven functie 'Enter na'.

 
De functie Enter voor heet 'LINEBEFORE' in de expressie.

Trim extra spaties
Je kunt Trim extra spaties gebruiken om extra spaties van een waarde te trimmen.

In onderstaande voorbeelden wordt dit vraagveld gebruikt en deze waarde:
  • Onderwerp: Waarde ' ha    l lo '.

Expressie Resultaat
TRIMEXTRASPACES([Onderwerp]) + "!" ha l lo!
TRIMEXTRASPACES(" ha    l lo ") + "!" ha l lo!
TRIMEXTRASPACES("hallo    wereld") hallo wereld

 
Merk op dat alleen de extra spaties worden getrimd:

- Als er meer dan één spatie tussen twee woorden staat dan wordt alleen het teveel aan spaties verwijderd, dus er blijft één spatie over.
- Leidende
en volgende spaties worden verwijderd aan het begin en eind van een zin.

 

Trim regels

Je kunt Trim regels gebruiken om regels van een waarde te trimmen.

In onderstaande voorbeelden wordt dit vraagveld gebruikt en deze waarde:

  • Onderwerp: Waarde 'de snelle bruine vos

    springt over
    de luie hond'.

 

Expressie Resultaat
TRIMLINES([Onderwerp]) de snelle bruine vos springt over de luie hond
TRIMLINES("de snelle bruine vos

springt over
de luie hond")
de snelle bruine vos springt over de luie hond



Trim alles

Je kunt Trim alles gebruiken om zowel extra spaties als regels van een waarde te trimmen.

In onderstaande voorbeelden wordt dit vraagveld gebruikt en deze waarde:

  • Onderwerp: Waarde 'de snelle    bruine vos

    springt over
    de luie hond'.

 

Expressie Resultaat
TRIMALL([Onderwerp]) de snelle bruine vos springt over de luie hond
TRIMALL("de snelle    bruine vos

springt over
de luie hond")
de snelle bruine vos springt over de luie hond

 

 
Alle regels zijn verwijderd en het teveel aan spaties tussen 'snelle' en 'bruine', zodat er slechts één spatie overblijft.

 

Willekeurig nummer

Je kunt Willekeurig nummer gebruiken om een willekeurig getal te genereren. Standaard wordt een getal van 8 cijfers gegenereerd, maar je kunt maximaal 16 cijfers gebruiken.

In onderstaande voorbeelden wordt dit vraagveld gebruikt en deze waarde:

  • Getal: Waarde '14'.

 

Expressie Resultaat
GUIDASINT() 12345678
GUIDASINT([Getal]) 12345678901234
GUIDASINT(16) 1234567890123456

 

 
De functie Willekeurig nummer heet 'GUIDASINT' in de expressie.

 

Datum verschil

Je kunt Datum verschil gebruiken om het verschil tussen 2 datums te berekenen.
Standaard wordt het verschil in dagen berekend.

Je kunt ook een van deze parameters gebruiken als je een andere eenheid voor de berekening wilt gebruiken:

  • y: Jaren.
  • Q: Kwartalen.
  • M: Maanden.
  • w: Weken.
  • d: Dagen.
  • h: Uren.
  • m: Minuten.
  • s: Seconden.
  • fff: Milliseconden.


In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:

  • Datum 1: Waarde '7 februari 2017'.
  • Datum 2: Zie tabel.

 

Expressie Resultaat (Datum 2 = 8 februari 2017) Resultaat (Datum 2 = 7 februari 2018)
DATEDIFF([Datum 1], [Datum 2]) 1 365
DATEDIFF([Datum 1], [Datum 2], "y") 0 1
DATEDIFF([Datum 1], [Datum 2], "Q") 0 4
DATEDIFF([Datum 1], [Datum 2], "M") 0 12
DATEDIFF([Datum 1], [Datum 2], "w") 0 52
DATEDIFF([Datum 1], [Datum 2], "d") 1 365
DATEDIFF([Datum 1], [Datum 2], "h") 24 8760
DATEDIFF([Datum 1], [Datum 2], "m") 1440 525600
DATEDIFF([Datum 1], [Datum 2], "s") 86400 31536000
DATEDIFF([Datum 1], [Datum 2], "fff") 86400000 31536000000



Datum optelling

Je kunt Datum optelling gebruiken om een getal bij een datum op te tellen. Bijvoorbeeld als je een vervaldatum wilt berekenen, wat de datum 14 dagen na de huidige datum is. Standaard staat het getal voor het aantal dagen.

De parameters die je kunt gebruiken voor 'Datum verschil' kunnen ook gebruikt worden voor 'Datum optelling' (zie 'Datum verschil' voor een beschrijving van elke parameter).

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:

  • Datum: Waarde '7 februari 2017'.
  • Getal: Waarde '14'.

 

Expressie Resultaat
DATEADD([Datum], 14) 21 februari 2017
DATEADD([Datum], [Getal]) 21 februari 2017
DATEADD([Datum], 14, "y") 7 februari 2031
DATEADD([Datum], 14, "Q") 7 augustus 2020
DATEADD([Datum], 14, "M") 7 april 2018
DATEADD([Datum], 14, "w") 16 mei 2017
DATEADD([Datum], 14, "d") 21 februari 2017

 

 
Gebruik het veldtype 'Datum' voor je samenstellingsveld. Als je 'Tekst' als veldtype gebruikt dan zal het resultaat een getal tonen (wat de datum in milliseconden is) in plaats van een datum.

 

Datum aftrekking

Je kunt Datum aftrekking gebruiken om een getal van een datum af te trekken. Bijvoorbeeld als je de datum 14 dagen voor de huidige datum wilt berekenen. Standaard staat het getal voor het aantal dagen.

De parameters die je kunt gebruiken voor 'Datum verschil' kunnen ook gebruikt worden voor 'Datum aftrekking' (zie 'Datum verschil' voor een beschrijving van elke parameter).

In onderstaande voorbeelden worden deze vraagvelden gebruikt en hun respectievelijke waarden:

  • Datum: Waarde '7 februari 2017'.
  • Getal: Waarde '14'.

 

Expressie Resultaat
DATESUBTRACT([Datum], 14) 24 januari 2017
DATESUBTRACT([Datum], [Getal]) 24 januari 2017
DATESUBTRACT([Datum], 14, "y") 7 februari 2003
DATESUBTRACT([Datum], 14, "Q") 7 augustus 2013
DATESUBTRACT([Datum], 14, "M") 7 december 2015
DATESUBTRACT([Datum], 14, "w") 1 november 2016
DATESUBTRACT([Datum], 14, "d") 24 januari 2017

 

 
Gebruik het veldtype 'Datum' voor je samenstellingsveld. Als je 'Tekst' als veldtype gebruikt dan zal het resultaat een getal tonen (wat de datum in milliseconden is) in plaats van een datum.