Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
Workflow variables in Joget are key data elements that are essential for the overall operation and flow of a process. Unlike data specific to individual forms or activities, workflow variables have a broader scope and are used throughout the entire process.
For example, consider a Leave Application process. When an employee fills out a leave application form, they provide details such as the date of application, the duration of the leave, and the reason for the leave. This type of data is specific to that particular form. These details are critical for record-keeping and for informing the decision-makers (like supervisors) about the leave request. However, they typically serve only within the scope of that form and are used for informational purposes rather than driving the process flow. This form-specific data is usually stored associated with that particular leave application instance. It can be accessed and reviewed by relevant parties, such as HR personnel or supervisors, to understand the specifics of the leave request.
Workflow variables, on the other hand, are elements that carry significant weight in determining the flow of the process. In the Leave Application process, a good example of a workflow variable could be "supervisorApproval". This variable might store a value like "approved" or "rejected". The value of this variable is used to decide the next steps in the workflow. For example, if "supervisorApproval" is "approved", the process might move to the HR department for final processing. If it's "rejected", the process might end or return to the employee for further action. The key here is that the workflow variable directly influences the overall process flow. It's not just a piece of information, but a driver for decisions and actions within the workflow.
This variable becomes crucial when a supervisor's decision (accept or reject) alters the course of the workflow, triggering different activities or decisions.
Purpose and Usage: Form fields in Joget are primarily designed for user input and data display within a specific form. They are the interface elements that users interact with, such as text boxes, dropdowns, or date pickers.
Scope: The data entered or displayed in form fields is specific to that form instance. It's used for capturing and displaying information relevant to a single step or part of the process.
Storage: Data from form fields is typically stored in the application's database and is associated with the specific instance of the form. It's accessible whenever the form is loaded or referenced.
Their primary role is to facilitate decision-making and condition handling within the workflow in the process builder.
Scope: Unlike form fields, workflow variables have a process-wide scope. They maintain their values across different forms and activities in a workflow, making them ideal for passing data between steps in a process.
Influence on Process Flow: Workflow variables are often used to control process routing, conditions, and decision points within a workflow. Their values can determine which path a process takes, or which activities are triggered next.
In Joget, a form field and a workflow variable, even if named similarly (e.g., both called "status"), are distinct entities. A form field is specific to a form and is used to capture user input, while a workflow variable is a broader process-level variable that can influence and guide the workflow's progression and routes taken. So in this case, the 'status' variable are also stored in different database tables.