In this page we go over all the different processes you can do with the process node
The process nodes are distributed into 3 categories. Some processes change the settings of your project, confirm changes or affect flowchart flows, there can be found in the change settings category.
Other processes change files or change how documents work or change the document types. These can be found in the changing files categories.
Generate files is reserved for processes that generates new files or components for your project. Here you can find processes that; generate images, sends emails and much more.
The different processes:
Change language
Change timezone
Confirm session changes
Sleep
Redirect
Web request**
Resize Image
Flatten CSV document
Extract text from document
Rename file
Create data matrix
Generate Word document
Generate PDF document
Generate file from text
Generate Image
Generate HTML from rich text
Create QR code
Create ZIP archive
Coming soon or Deprecated:
Send email*
Print template*
Write template to rich text field*
"*" Under construction will soon be available
"**" Legacy process, check the Web services page.
Function
This node is to change the size of an image. When the image is resized, it is scaled to the size best representing the given size property keeping the original scale. This process can be used to decrease image sizes before you add them to files like pdf's or to lessen the file size to restrict impact on performance.
Properties
For this resize node, we have the following properties:
Property name | Type | Description |
---|---|---|
For the flowchart, connect from the interaction node to the change language node and use the default exit to go to the next or back to the same interaction node.
an example:
Create a temporary file field to put the image you want to change and a field for the result.
Use an interaction node where you select the image, then we put the Resize Image node.
Create an exit that will go to the node to execute the process and use the default exit to go back.
Set the node properties,
1. Before clicking the resize button, the image set is shown with the original size. We can see that the image is quite large at the beginning before executing the resize image node.
2. After clicking the resize button, the image gets the sizes set and the label shows the result. This image has take the size and height fitting closest to the node properties.
This node is to Transpose CSV data into a new CSV that contains 3 columns: RowNumber, Column and Value for every "fieldvalue" in the original CSV.
In the example we have a TEMP 1 field, this holds the resulting csv file, a overlay interaction node where we select the file we want to flatten and give us the resulting file and the process node.
One of the ways to use it:
Use an interaction node, then we put the convert Flatten CSV document node.
Create a temporary file field that will be the one that receives the converted file.
Create an exit that will go to the node to execute the process and connect back to the interaction node to show the result.
Node operation process.
Before clicking the flatten CSV button select the file.
After executing the process, the temporary field appears with the resulting file.
The extract text process node is for extracting text from readable text files. The process works for .pdf and .docx files with properly made text. Images of text (in documents) instead of readable text can not be extracted.
Create a transient file field that holds the source file and create a text field for the return text.
Open or create the flowchart that performs the process.
Add an interaction node for selecting the source file and to show the result.
Add the process node and select the extract text process.
Connect the start node to the interaction node, then create an exit "extract text" for the interaction node and connect it to the process node.
Use the default exit of the process node to return to the interaction screen that now shows the result.
Now open the interaction node to design a quick screen like the image below. On the left a window for selecting the source file and trigger the process, and on the right a label with the respons text.
When you run this in the preview, this is the result:
The rename file process is a feature to change the filename of a single file field. The input is an expression for the new name. You can use this for a static name by just putting some text in, or use an expression to generate a filename based on other information. The rename file process can be used to change the filename of multiple files in a list, using a loopnode You should add a check if the filefield to be renamed exists, before entering the process node.
The File Property (a WEM File Field) is used for both Input as well as Output: it is the same field, the same file that will get the new Name as its FileName property after the change.
In this example I will be changing the name of all the files to the [ID] name of their respective row.
Open or create the flowchart that perform the process
Add a interaction node for starting the process to show the return
Add the process node and select the change file name process and add a loop node to go trough all the items in a list containing a file field. Fill in the properties of the node. In this case the file field from the datalist "webshop" for the input and output of the file.
Connect the start node first to the interaction node, then create an exit "rename file" for the interaction node and connect it to the loop node and that to the process node.
Use the default exit of the process node to return to the loop node and the end of loop exit to return to the process node.
The interaction node only activates the process, this does not need any user input besides running it. If you are not sure every row has a file, you should add a decision node between the loop and the process that goes back to the loop if there is no value (use HasValue or IsEmpty functions).
If you need to keep changed settings, it may be necessary to use the Confirm Session Changes process node...
With the change language process you can change the language of the user's session in the runtime. You can choose languages from the available languages configured in the project settings. You can find a list of all supported languages and their names in the available languages section.
For the change language node, we have the following properties:
There are different ways in which we can implement and use this node, here we will show a basic example that you can later modify according to the need, and the ideas, that you want to implement in your project.
One of the easiest ways to use it:
Create a field with the Default Language. In this case we use en-US
2. Inside the properties of the change language process node you insert the datafield you just made.
Create an interaction that triggers the change language process, in this case we will use a button that activates the process
For the flowchart, connect from the start node to the interaction node where you want to change the language from. Next is to add the button exit "change" to the process node and connect the default exit back to the interaction screen.
Inside the node properties; put which language the project is going to change into, as the example below shows.
Note: before any languages can be used, they must be available in the project languages in the configuration part of the project.
This process is to change the timezone in the current project. It is important when we handle several timezones within our project. WEM supports the IANA Standard Time zones and uses the tz identifier to name the timezones.
For the change timezone node, we have the following properties:
For the flowchart, connect from the interaction node to the change language node. In the following example we will be using the start node by default; an interaction node, and the change timezone node as shown below.
For the flowchart, connect from the start to the interaction node, from interaction to the change timezone node and back to the interaction again for the result.
Use an interaction node, and put the change timezone node next to the interaction node in the flowchart.
Create a field that hold a the timezone you want to change to or put the name in the process node properties.
Create an exit that will go to the node to execute the process and use the default exit to go back to your interaction node.
Add a button that triggers the exit in your interaction node and a label that shows the current timezone.
Its function is to confirm if a session fields is changed and keep its information during this session without specifically making a post or other update (following an exit from a page). The node can be linked to an exit from another node and needs the default exit to have a next step. It will send the changes in session fields at the client/browser to store them on the server in the current session. Very useful in cases where a change in fields on a page can trigger an execute flowchart (containing the confirm session) but return back to the main page - in which case the session on server is not updated (that would only be when user follows an Exit) and the user wants to navigate away using a Navigation Item (without the Confirm Session, the changes will be lost to this session).
This function is to set a wait time before the runtime goes to the next node.
The properties allow us to connect the elements of our project to the process options. For this sleep node, we have the following propertie:
The following example will show the time in seconds it takes to execute the action of the sleep node.
The objective of this project is basically to visually show the time that the process takes to execute the "sleep" time that is part of the configuration; The process is explained in detail below. For this example project, two values, one initial and one final, are compared, using the assignment of a function type date to give a parameter between both fields. Initial date that starts from one point and ends at another; between this space the time of the sleep node process is calculated.
The interaction node.
Add an assignment node with the advanced function "now()" that will compare the first number.
Add an assignment node with the advanced function "datePart", that will have the start date day, which will compare the first number.
An overlay is added to show the executed process in progress.
The sleep node has been added with 3 seconds in its property max time.
Add an assignment node with the advanced function "now()", that will compare the second number.
Add an assignment node with the advanced function "datePart", that will have the end date day, which will compare the second number.
The next assignment node will receive the information of the time.
Describing the process of the flowchart in the preview. Detailed after executing the project.
Before clicking the sleep button.
The processed overlay, while the node is been executed.
The result of the compared fields within the time and sleep process node.
This processes is to redirect the user/browser to a specific url - without the need to let user click a link to go there. In this use case, we will be showing a simple way to use it, just as an illustration.
The properties allow us to connect the elements of our project to the different process parameters of their function. For this redirect node, we have the following:
For the flowchart, connect from the interaction node to the redirect node as shown below.
One of the easiest ways to use it:
Use an interaction node, and put the redirect node on the canvas.
Create an exit that will go to the node to execute the process.
Set up the redirect node properties to a string with the url you want to point to. The property field is a expression and can be used with a text datafield, with expressions or directly with an url string. This example uses "www.google.com"
as string.
Before clicking the "redirect" button, which also is shown as button most of the time.
Then, you will go to the URL set, in this case, "google.com"
Webrequest, is the legacy version of the "HTTP" node , which connects with any action of request, get, put, post, delete, etc... This node is updated to a more user-friendly way, for more information about its improvement, you can visit the documentation page with more details.
Find out more information about web-requests.
WEM comes with a large number of pre-defined processes that you can use in your workflow. These processes range from generating documents to sending email or sending data to Google Analytics. When this process node is dragged to the flowchart, a popup window appears where you select the process that you want to use. If you select a particular process you will immediately see which input parameters are availble/necessary for this proces. An example:
Once you have selected the process you need in your flowchart, the specific properties become available to configure.
The properties are similar for all processes:
Name of the node, this is set by WEM and cannot be changed.
The specific Input parameters for this process.
The specific Output parameters (for example when a PDF is created, in which File Field to store the result).
The template that is specific for this process (e.g. the email body in case you want to send an email. You can edit the template by clicking on Edit template
. Not all processes have a template, so you will only see this button when a template is available.
An example of the input parameters for the "Send email" process:
On the left is the input parameter name, in the middle column the data type and the right column shows the value, mapped field or expression when entered. On the far right is a button that takes you to the expression editor where you can enter the value for the parameter.
This node has two exits:
Error
- this exit is used when the process results in an error;
Default exit
- this exit is used when the process does not produce any errors.
These are process that all generate files.
Function
Its function is to generate a Data Matrix (kind of QR code), this can be used to convert text information to a graphical representation matrix of black and white pixels. These are often used for inventory tracking or to hold information about products.
Properties
The properties:
Property Name | Type | Use Description |
---|
For the , connect from the interaction node to the create data matrix and back to the interaction with the result using the default exit.
One way to use it:
Create a temporary file field that will store the generated image.
Use an interaction node with a button to start the process, an input field and a label for the result.
Put the Data Matrix node in and set the properties.
Create an exit that will go to the node to execute the process.
After executing the process, the temporary field appears, in this case, a file field data type.
The result of the process, with the data matrix generated.
Its function is to generate a Word Document from the contents of a provided WEM Template.
The use of the Word Template property is currently restricted to only Kubernetes environments. This property is for Word template documents to apply preset styling to the generated documents - it is limited, as Word Properties and Fields are not accessible to set using WEM. Also, custom Fonts should be set to be Embedded in the Word File Properties.
This process has the following properties:
One way to use it:
Create a temporary text field that will be the one that receives the document file.
Use an interaction node, then, the Generate Word Document node.
Create an exit that will go to the node to execute the process and use the default exit for the response.
In the node properties, the "edit template" gives access to a template in which you can create what you want to add in the future Word document, this template is similar to the editor that appears inside the interaction node;
Before clicking the generate word button.
as After executing the process, the temporary field appears the one that will carry the result of the executing of the node.
The result.
Its function is to generate a PDF Document through the node configuration. WEM allows, through the templates editor, templates to be converted into a PDF document.
The properties that can be used in the PDF process:
Flowchart
Connect from the interaction node to generate PDF. In the canvas, the process flow that will be executing the project is designed, in the following example, we will be using the start node that will always be by default; an interaction node as shown below, fill in the properties section, where can be set the different dimensions of the future PDF document.
One of the easiest ways to use it basically:
Sample casse an interaction node, then, the Generate PDF document node.
Create a temporary file field that will be the one that receives the PDF file field.
Create an exit that will go to the node to execute the process.
Before clicking the generate pdf button.
The result of the process executed.
Flowchart
Connect from the interaction node to generate a File from text. In the canvas, the process flow that will be executing the project is designed, in the following example, we will be using the start node that will always be by default; an interaction node as an "overlay", as shown below.
One of the easiest ways to use it basically:
Use an interaction node, then, the Generate file from text.
Create a temporary file field that will be the one that receives the file from text.
Create an exit that will go to the node to execute the process.
Before clicking the button "Generate file from text".
After clicking file from text, the field appears.
The result.
Function
Its function is to generate an image through the interaction node configuration. Generating an image through this process execution node, allows everything that has been developed within an interaction node with its template edition, to be captured in an image which can be customized according to the idea of the user. The most fascinating thing about all this is that it is extremely easy to use and can contribute to many useful processes in systems development.
Properties:
One of the easiest ways to use it basically:
Use an interaction node, then we put the generate image node.
Create a temporary text field that will be the one that receives the image file.
Create an exit that will go to the node to execute the process.
In the node properties, the "edit template" gives access to a template in which you can create what you want to add in the future Image file, this template is similar to the editor that appears inside the interaction node;
1. Before clicking the generate pdf button.
2. After executing the process, the temporary field appears.
Functions
Its function is to change generate a generate HTML from a rich text field.
Properties
How to use this node?
One of the ways to use this node
The first thing we do is use an interaction node, then we put the generated HTML from the rich text node.
Inside the file content, set the HTML.
After, create a temporary text field which will be the one that receives the generated HTML file.
Create an exit that will go to the node to execute the process.
Before clicking the generate HTML from rich text button.
After executing the process, the temporary field appears.
The result.
With this process node you can generate different kinds of qr-codes, this is an image that can be read by a lot of devices. The process translates a text to a grid of black and white pixels, this can be translated back to text by all kinds of devices with a camera. A lot of times qr-codes are used to share information without having to retype it. This is someting different then a datamatrix which is used in a lot of warehouses management.
Among the properties, it presents:
One of the easiest ways to use it is shown below, we start with a interaction node, here we provide the input for the qr code and set up a few of the options. The interaction node has a exit to the qr process node, and uses the default exit to go back and show the result.
1. The first thing we do is use an interaction node, and a field to store the code that is made. In this case is that a transient or session field where we temporary store the image.
2. You can leave all the settings on default by keeping them empty or add values to them. In the images below you will see that there are a few transient fields added for specific settings.
3. Add a button that triggers the node exit Create QR-code thats connected to the process node. and add the field that you used for the output to the interaction template.
Fill in the input field with the code you want to convert.
select the create code button that invokes the process
The result of the process, with the QR-code generated.
Its function to create a ZIP archive.
Among the properties, it presents:
One of the easiest ways to use it basically
The first thing we do is use an interaction node, then we put the generate Generate Zip Archive.
Create a temporary text field that will be the one that receives the Generate Zip Archive.
Create an exit that will go to the node to execute the process and back again to show the result.
You have created a ZIP packager, this can be used when working with large files you want to save in the datamodel.
Property name | Type | Description |
---|---|---|
Property | Type | Description |
---|---|---|
Property | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | description |
---|---|---|
Property name | Type | Description |
---|---|---|
Note: By default, no processes are available: you need to define which processes are available through the
You can find a few tips about sending emails with this node on this page:
Property name | Type | Description |
---|
For the , connect from the interaction node to generate Word node. As shown below we have the interaction node where we want to activate the process and see the response, and the process node is connected with the button exit and back with the default exit.
Property name | Type | Description |
---|
In the node properties, the "edit template" gives access to a template in which you can create what you want to add to future PDF files, this template is similar to the editor that appears inside the ;
After executing the process, the temporary field appears.
Its function is to generate a file from text through the interaction node configuration, it is quite interesting and it will help us when we have to make a file that comes from a text type; in a direct and immediate way. You can take text-type fields that contain information loaded in advance, either manually, or with one of the options offered by the, through CSV, Excel, JSON, XML, or through an of Odata, , an API, etc…
Property name | Type | Description |
---|
Property name | Type | Description |
---|
The symbol versions of QR Code range from Version 1 to Version 40. Each version has a different module configuration or number of modules. (The module refers to the black and white dots that make up QR Code.) "Module configuration" refers to the number of modules contained in a symbol, commencing with Version 1 (21 × 21 modules) up to Version 40 (177 × 177 modules). Each higher version number comprises 4 additional modules per side. More about that .
The result:
Property Name | Type | Description |
---|
input CSV file
Expressions, file
Set a file field that holds the original csv.
Flattened CSV File
Datafield, file
Location of the resulting csv file.
File
Expression, file
The source file with the text that needs to be extracted.
Plain text
Datafield, text
Field that holds the plain output text found in the file
New name
Expression, text
The new name for the file. This can be text or an expression.
File
Datafield, file
The field containing the file that needs a new name.
Language
Expression, text
Language you want to change to.
Timezone
Expression, text
Set the timezone in the expression. This can be a text datafield a expression or a string. Use the tzidentifier from the IANA list.
Seconds (max 5)
Expressions, number
Set the time in the node that will take to sleep the process.
Property name
Type
Description
Url
Expressions, text
Set the url address where the user will be redirected to.
Filename | Expressions, text | Set the file name, in the temporary field. |
Word template | Expression, text | You can insert a Word template here. This will be used when the document is created (with limitations). |
Page width | Expressions, number | To set the width of the file in mm. Leave empty for standard A4 |
Page height | Expressions, number | To set the height of the file in mm. Leave empty for standard A4 |
Page margins | Expressions, number | To set the margins of the file in mm. Leave empty for standard A4 |
Page margin left/right | Expressions, number | To set the margin at left or right in mm. Leave empty for standard A4 |
Page margin top/bottom | Expressions, number | To set the margin at top or bottom in mm. Leave empty for standard A4 |
Page as landscape | Expressions, Boolean | To set if page as landscape. Boolean. |
Generated Word Document | Datafield, file | Field to store the generated Word document. |
Filename | Expressions, Text | Set the file name, in the temporary field. |
Author | Expressions, Text | To set the author of the file. |
Subject | Expressions, Text | To set the subject of the file. |
Title | Expressions, Text | To set the title of the file. |
Page width | Expressions, Number | To set the width of the file. |
Page height | Expressions, Number | To set the height of the file. |
Page margins | Expressions, Number | To set the margins of the file. |
Page as landscape | Expressions, Boolean | To set if as landscape. Boolean. |
Show header and footer | Expressions, Boolean | To set if show the header and footer. Boolean. |
Custom header text | Expressions, Text | To set the custom header text. |
Custom footer text | Expressions, Text | To set the footer text. |
Show the outline of HTML headers | Expressions, Boolean | To set if you want to show an outline based on the HTML headers (h1, h2, h3) in the document (index with jumplinks). |
Number of levels for the header outline | Expressions, Number | To set the number of levels for the outline (corresponding with html headers h1, h2, h3). |
Generated PDF Document | Datafield, File | Field to store the generated PDF document |
File content | Expressions, text | To set the content of the following file. |
Generated filename | Expressions, text | To set the name of the generated file. |
Generated file | Datafield, file | location for the file generated after the process. |
Property name | Type | Use Description |
Filename | Expressions, text | To set the file name. |
Element Selector | Expressions, text | To set the element selector. This allows you to make images for specific preset elements. |
Transparant | Expressions, boolean | To set the transparent of the image. |
Width in pixels | Expressions, number | To set the width of the image. |
Height in pixels | Expressions, number | To set the height of the image. |
Output: Generated image file | Datafield, file | To put the output file field for the image generated. |
Property name | Type | Use Description |
File content | Expression, richtext | To set the content in the file |
Generated filename | Expression, text | To set the name of the file generated |
Output: Generated file | Datalfield, file | To put the output file field for the image generated. |
Data input | Expressions, text | Text input field that is translated to qr code. |
Use GS1 standard | Expressions, boolean | Use GS1 compliant qr codes |
Character set | Expressions, text | Default is UTF-8, the older ISO-8859-1 is also supported and can be used. |
Disable ECI | Expressions, boolean | Extended channel interpretations (ECI) enables using codes longer then standard ISO-8859 and different encodings. default is enabled |
QR version | Expressions, number | Size version of the qr code, more in the blue hint box below. |
Use compact mode | Expressions, boolean | Creates a smaller qr code with less error correction and less readable. |
Error correction | Expressions, text (single symbol) | Level of error correction where:
|
Margin | Expressions, number | Size in pixels of a clear area around a symbol where nothing is printed. |
Output: Output file | Datalist, file | The location where the output should be stored. |
Input file | Expressions, File | The datafield where the file you want ZIPed is saved. |
Output file name | Expressions, text | Name of the ZIP File |
Output file | Datafield, file | Location of where the ZIP is saved. |
In the image you see the properties used to reduce a image to a quarter of its size. At the top you see the field that holds the original image. We want to make the image to a quarter of its original size and use percentages, the absolute pixels property should be false. Don't forget to set a output field to store the resulting image.
Original Image
Datafield, File
Set the image that will be converted.
Resize by absolute pixels
Expressions, Boolean
True: resize by width and height in pixels, False: resize by percentage Default: width and height in pixels.
Percentage of original
Expressions, Number
Set the percentage of the original image. Between 1 and 99
New width (px)
Expressions, Number
Set the goal width of the image by pixels.
New Height (px)
Expressions, Number
Set the goal height of the image by pixels.
Output: resized Image
Datafield, File
The new file generated after resized process.
Data input | Expressions, text | Information to convert to matrix. |
Use GS1 standard | Expressions, boolean | Toggle GS1 compliance |
Symbol shape (square or rectangle) | Expressions, text | square of 1 or 4 blocks rectangle of 2 blocks |
Output file | Datalist, file | Field that holds the resulting image. |