PrefixWith
This function is particularly useful in the situation where, say, you have an address consisting of data elements AddressLine1, AddressLine2, AddressLine3, and AddressLine4, but that perhaps lines 2, 3 and 4 are empty. Further, you want to present the address in a single line, with the different AddressLine data elements separated by commas.
You could code this as:
«
AddressLine1
»«If(AddressLine2 != '')
», «AddressLine2
»«End()»«If(AddressLine3 != '')
», «AddressLine3
»«End()
»«If(AddressLine4 != '')
», «AddressLine4
»«End()
»
which will work, but is tedious to type and not easy to read.
With PrefixWith you can now type this:
«
AddressLine1
»«PrefixWith(AddressLine2, ', ')
»«PrefixWith(AddressLine3, ', ')
»«PrefixWith(AddressLine4, ', ')
»
SuffixWith
Whereas PrefixWith is useful for structures like addresses where usually at least the first line will have a value, SuffixWith is handy for the case of parts of a name, where sometimes the first one or two parts are unknown or not specified. The following example shows how this function would be used:
«
SuffixWith(Title,' ')
»«SuffixWith(FirstNames,' ')
»«LastName
»
In the case where, say, the Title or FirstNames are empty, the trailing space will not be rendered into the assembled document.