Page History
...
If you are exporting a date field such as CreatedDate and LastUpdateDate, you can define how the date is displayed. All the patterns supported by the DateTimeFormatter Java API are supported.
Definition:
${dateformat("<Format>"):<Field name>} |
Code Block | ||||
---|---|---|---|---|
| ||||
${dateformat("yyyy-MM-dd"):Created} ${dateformat("EEE, MMM d, ''yy"):Created} ${dateformat("EEE, d MMM yyyy HH:mm:ss Z"):Updated} |
...
You can also specify the Locale you want to use. All the Locales in JRE 7 Supported Locales page are supported.
Definition:
|
Code Block | ||||
---|---|---|---|---|
| ||||
${numberformat("###,###.###"):Price} ${numberformat("\u20AC ###,###.###"):Price} ${numberformat("de_DE" , "###,###.###"):Price} ${numberformat("##0.#####E0"):Price} ${numberformat("en_UK" , "#0.#####%"):Price} |
...
If you are exporting a User Picker or Multiple Users custom field, you can output the Display Name using the fullname function.
Definition:
${fullname:<Field name>} |
Code Block | ||||
---|---|---|---|---|
| ||||
${fullname:UserCustomField} |
...
If you are exporting a User Picker or Multiple Users custom field, you can output the email using the emailaddress function.
Definition:
${emailaddress:<Field name>} |
Code Block | ||||
---|---|---|---|---|
| ||||
${emailaddress:UserCustomField} |
...
This function allows fields with line breaks or other special characters to be used inside JavaScript.
Definition:
${escape:<Field name>} |
Code Block | ||||
---|---|---|---|---|
| ||||
${escape:Description} ${escape:Custom Field} %{('${escape:Description}'.length > 0) ? 'This issue has description': 'This issue does not have description' |
...
Furthermore, this field allows you to execute JavaScript action on the duration time field and export the result.
Definition:
${durationformat:<Field name>} |
Code Block | ||||
---|---|---|---|---|
| ||||
${durationformat:Custom Field} ${durationformat:%{var timeValue="<Value>"; timeValue;}} |
Set
This function allows you to create new variables that will be treated as fields (mappings), and then use it to change the values of those variables.
The new value passed to the Set function can be plain text, an existing field (mapping) or a Helper Functions field.
In the case of templates having Static Sections, you can create new variables outside of said Static Sections and use those variables inside the same Static Sections.
Definition:
${set(<variable name>,<new value>)} |
Code Block | ||||
---|---|---|---|---|
| ||||
Define a variable "count" with value "0" and then use it as a normal field.
${set(count,0)}
${count}
Define a variable "newKey" with the value of field ${Key} and then use it as a normal field.
${set(newKey,${Key})}
${newKey}
Define a variable "TodayDate" with the value of the current date calculated with Javascript and then use it as a normal field
${set(TodayDate,%{(new Date()).getDate() + "/" + ((new Date()).getMonth()+1) + "/" + (new Date()).getFullYear()})}
${TodayDate}
|
Info | ||
---|---|---|
| ||
The function Set can be also used to change the value of existing fields (i.e., existing mappings), but it has a limitation: all occurrences of that field in the document will be replaced with the value of the latest Set that is applied. |
Info | ||
---|---|---|
| ||
The values of all the variables (mappings) created with the Set function and used on the header/footer of a template will correspond to the last value passed to the Set function. |
Prop
This function allows you to define properties that will be used later by Xporter during the document processing.
Usually, integrations require some extra configuration such as security tokens, API keys and others.
Specification
Function Name | prop |
---|---|
First Parameter | Key |
Second parameter | Value |
Notation
Code Block |
---|
${prop(Key,Value)} |
Example
Code Block |
---|
${prop(my.first.property.key,qwerty12345)}
${prop(service.api.key,84f7970c-5f70-47d9-a4f2-c75151820ba0)}
${prop(service.api.username,userAdmin)} |
Image Loader
This function basically loads an image from a URL and puts that on the document. You can also specify the width and/or height of the images.
Definition:
|
Below are two examples:
or
Info |
---|
To use the code below, check how to iterate here. |
After exporting the document, the generated file is going to see this:
Info |
---|
This functionality is available for Excel templates on Xporter V5.3.0 and higher. |
QRCode
This function allows you to create a QRCode image on the template. It accepts as content other Xporter mappings.
Definition:
${qrcode('<content>',(Optional) <width>, (Optional) <type>)} |
Code Block | ||||
---|---|---|---|---|
| ||||
Draws a QR Code image with the content Hello World.
${qrcode(‘Hello World’)}
Draws a QR Code image with the Issue Key as content.
${qrcode(‘${Key}’)}
Draws a QR Code image with a Javascript result as content.
${qrcode(‘%{‘${Key}’.substring(0,2)}’)}
Draws a QR Code image with the content noreply@xpand-it.com and the QR Code type email.
${qrcode(‘noreply@xpand-it.com’,email)}
Draws a QR Code image with the content Hello World and width size 200px.
${qrcode(‘Hello World’,200)}
Draws a QR Code image with the content Hello World, width size 200px and the QR Code type email.
${qrcode(‘hugo.freixo@xpand-it.com’,200,email)}
|
QR Code Content
You can use any mapping on the content of the QR Code function, but you must be careful because Markups won't generate the expected result.
If you try to export ${qrcode(‘${wiki:Description}’)} or ${qrcode(‘${html:Description}’)}, the content of the QR Code won't be correct.
You can apply format mapping such as dateformat, numberformat, fullname or emailaddress.
QR Code Types
Info |
---|
You can learn more about QR Code types here. Note that these types may depend on the QR Code reader and the obtained result may be different than expected. |
- Text - Plain text. It's the same as not having a type defined.
- URL - The content will be read as a URL link.
- Phone - The content will be read as a phone number.
- Geolocation - The content will be read as GPS coordinates. Content example: "41.714316, -8.811993".
- Email - The content will be read as an email.
- Wifi - The content will be read as a Wifi connection. Content example: T:WPA;S:NetworkName;P:NetworkPassword;
- VCard - The content as a VCard. Please note that not all devices are prepared to understand VCard details. More information here.
QR Code Width
The width of the QR Code must be a value between 0 and 409 (pixels).
If the user introduces a value outside this interval, the width will be set to its default value (177px).
The user must choose a width large enough for the amount of content in the QR Code. Usually, 100px - 200px is enough.