Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Business Process is the group of business activities that is used to accomplish a specific organizational process. There are several types of business processes depending on different organizations and industries. However, there are three main types of business processes which are categorized by August-Wilhelm Scheer and Mark von Rosing as following:
Management Process: Management process is used to monitor measure or control the business procedure. Operational Process: Operational Process is considered to be the most important process as it is used to support the backend of core business process such as credit card or loan decision approval process. Supporting Process: Supporting process is used to support core functional process such as call center process or customer service process.
ONEWEB PD has been designed keeping in mind the BPM methods, so that the technical and business users can easily manage the business processes together in organizations. For example, business users are responsible for the tasks that are related to discovering and analyzing business processes. These business processes are then sent to technical users to implement, measure, improve and optimize via Process Designer.
Most enterprise applications require powerful back-end business processes to streamline their business activities and to reduce human errors. The business process is the actual back bone or the organization's business. That is the reason why organizations pour millions of dollars into developing and updating their business processes. Using ONEWEB business process developers can design and develop powerful workflows without writing a single piece of code.
Process Template Diagram is the one of most important screens in PD. It is used to implement the business process based on simple drag and drop GUI. It uses defined BPM symbols to depict the business activities. This can help interpretation and collaboration between business and technical users. The Process Template Diagram is divided into 3 panels as shown in picture below.
The details of each panel are described below.
Node task panel
This panel contains the process activity or node task notations. Each node task is suitable for a particular business objective. For example, Human node is suitable for task that is related to work party Assignments. The detail of each node task in Node task Panel are described in Activity Nodes section.
Diagram panel
This panel is used to draw the business process by dragging the notation from a node task panel and drop into diagram panel. Furthermore, on the diagram panel the user can also use the right click mouse button on any specific node to open node configuration, add boundary events or delete node as required.
The Action panel
This panel contains the command icons. Each icon has one command associated with it as given below.
Notation
Notation name
Action
Undo
To undo the last action.
Redo
To restore the previous action.
Delete
To delete the selected object.
Cut
To cut the selected object.
Copy
To copy the selected object.
Paste
To paste the object that is cut or copied.
Zoom In
To increase the diagram size.
Zoom Out
To decrease the diagram size.
Creating a new Process using Process Designer (PD) consists of three main components:
Process Template Diagram: This component is used to draw and implement the business process. Process Template Diagram also contains the different types of process activities that are used to represent the business tasks. The details of this component are described in Process Template Diagram section.
Business Object: The data or variables that are used by the activities in business processes are encapsulated in the Business Object (BO). Every process that a user wants to design using PD, needs to define the input and output business object parameters in order to determine what data will be used to start the process and what data is send out from the process when it finishes. More details on Business Object are described in Business Object section.
Work party: Work party is a group of users or roles. The work party is often used in human task assignment. Each work party can comprise of both users and roles. More details on Work party are described in Work Party section.
Generally, the "Start" event node task is used to start the process by triggering the event manually. However, PD also provides other event triggers that can be used to automatically trigger another activity or event, those event triggers as explained below.
File Input Node is used to start the process when there is any file in the specified repository. There are 4 file types that are supported by this node task - Excel, Fixed Width file, XML file and delimited file. Four repositories are supported by this node task which includes File system, FTP, FTPs and Secured FTP. For the details please refer File Input Task.
Timer Event is used to trigger another node task when the time expires for the current task associated with Timer event. It can be attached to any Node task where user would like to monitor the time taken for processing and to trigger next node in case it takes more time than scheduled. For more details on timer event please refer Timer Event section.
Error Event is used to execute another node task when an exception occurs in the Process. It can be attached to any Activity node task where user would like to trigger next node in case of errors. For more details on Error Events please refer Error Event section.
Process activity is the core of a Process Template Diagram. It consists of all notations that is used to represent any business activity. In Process Designer, Process activity is also called a Node task. The node task panel is divided into 4 main node task groups as described below:
Activity Tasks: This notation is used to perform a specified task according to the functionality as defined below.
Notation
Notation name
Notation Definition
Human Task
Human Task is used to assign the task to a user or roles group.
Java Task
Java Task is used to execute any custom java functions from the uploaded java library.
Database Task
Database Task is used to execute the SQL commands like SELECT, INSERT, UPDATE and DELETE.
File Read Task
File Read Task is used to read files. There are 4 file types supported - XML, Excel, Fixed width and Delimiter.
Web Service Task
Web Service Task is used to call the SOAP Web service or REST API.
Sub Process Task
Sub Process Task is used to call another process in the same project.
File Write
File Write is used to write to a file. File types that are supported are same as the File read task - XML, Excel, Fixed width and Delimiter.
Push Notification
Push Notification Task is used to send notification to mobile application.
Gateway Tasks: Gateway Tasks are used to make decisions to control the Process Path flow. User can specify a condition to determine the path the process needs to follow. The Gateway Tasks help users to fork the process flow into divergent paths.
Notation
Notation name
Notation Definition
Exclusive
Exclusive Gateway is used to create alternative paths within the process, depending on condition, where only one of the several paths can be followed. The user can enter a condition into each path. If there is more than one path that can be fired or taken, only the first of the valid paths will be fired.
Inclusive
Inclusive Gateway is a diverging gateway where all the valid paths are taken, based on conditions. It is similar to Exclusive Gateway except that if there is more than one path that can be fired or taken, all those paths will be fired.
Parallel
Parallel Gateway is used when you want the process to take all available paths without any condition. Parallel Gateway is generally used to create concurrent flows. You can use a parallel gateway to diverge the flow into multiple paths and then use another parallel gateway to converge all the paths to form a single path process flow.
Event notation: Event notation is suitable for events that are triggered. For example, the incoming message from an external system. They can be used to start or finish a process. There are several event types supported by Process Designer.
Notation
Notation name
Notation Definition
Start event
Start Event is used to start the process.
End event
End Event is used to stop the process.
File Input
File Input Event is similar with File Read Task but this event can be the starter of the process.
Web Service Provider
Web Service Provider is used to provide the web service that is accessed by other web service clients.
Boundary event notation: This notation is used as a listener event on the Activity task notation.
For more details of these groups are explained in table below.
Notation
Notation name
Notation Definition
Timer
Timer boundary event is used as a trigger to execute another node task based on the defined maximum time duration.
Error
Error event is a trigger event to execute another node task based on the defined error or exception.
Properties of Process Activity
The first property of every process activity is by default the General Tab as shown in figure below. The General Tab is used to show the generic information of each node task and it is displayed when user double clicks on any node task.
All property settings available inside general tab are described in table below
Property
Mandatory
Default
Description
Name
Y
N
The name of node task
ID
Y
Y
The unique id of node task is generated by system
Type
Y
Y
The type of node task
Description
N
N
The description of node task
Use the Human Task to assign a job to a human based on a work-party, user-role or any custom condition.
Human Task is used to support the allocation of a job to a human entity based on work party assignments, user-roles or any custom conditions. It has the mapping parameter screen to define the input and output parameters of the task. Human Task will be executed when you manually submit a form. It is represented as in rectangular shape box as shown below:
Human Task configuration panel has four different tabs to define properties.
General
General Tab contains general information such as title, task id, description etc.
Business Object
It is used to configure and map the Business Object for the input and output of any node. In case you need a value from the process to be used in your node (input) or pass the value from your node to other nodes in the process (output) you should map the input and output Activity parameters to the process Business Object. But it is not mandatory to map the parameter as you can use the node without parameters as well.
Assignment Policy
To set the type of assignment policy to be used for the task allocation
Property
Mandatory
Default
Description
Setting
Y
Lane
To choose the type of assignment method to be used. System provides 6 types as follows: Lane, Pull, Round Robin, Load Balance, Routing Policy, Multi Instance and Custom.
More details for each Assignment policy method are discussed in Task Allocation & Queuing chapter
Load Entity
Load entity tab is used to map an Entity on your ONEWEB Platform to the human task. User can configure the properties and Values inside Load Entity Tab. Delete/Trash icon is provided on right side to remove any key value mapping.
For more information on each tab and Configuration settings of Human node Task, please refer to Human Activity Node in Process Designer Reference Chapter
Use gateways to direct your process flow to one or more paths on basis of condition.
Gateway Nodes are used to branch a process flow based on conditions and is represented with a diamond shaped box. There are 3 gateway decision types on Process Designer as shown below:
Parallel gateway is the type of gateway where the process follows each link path without executing any conditions. Parallel gateways are used to branch the process into more than one concurrent task in a business flow.
Exclusive gateway is the type of gateway where the process will follow only the one path where the condition is evaluated to be true. Exclusive gateway is used to create the condition flows in a business process.
Inclusive gateway is the type of gateway where the process will follow all the paths where the condition is evaluated to be true. Inclusive gateway is also used to create condition flows in a process. The main difference is that the inclusive gateway can have one or more output path for process flow based on how many conditions are evaluated to be true.
The link paths are used to connect the gateway to the other node tasks based on the conditions set on each link path. The process will follow the link path where condition passes and execute successfully. Note: In Parallel Gateways all link paths are executed without any conditions.
Gateway Configuration panel has two tabs to define properties:
General Tab contains general information such as title, task id etc.
Property
Mandatory
Default
Description
Gateway Type
Y
There are 3 Gateway available types to choose from list: Exclusive, Inclusive and Parallel.
When link paths are created from Exclusive or Inclusive gateways, user must also specify the condition information of links in Gateway Parameter panel.
Property
Mandatory
Default
Description
Otherwise
N
Uncheck
To define the default path to be executed when other conditions are not matching.
Label
N
User can give name to the link for easy reference. E.g. Approve, Reject etc.
Condition
Y
Write gateway condition to direct process flow.
Condition button on Gateway Parameter Tab redirects user to the Formula Editor panel where user can write new conditions or can edit existing conditions.
For more information on each tab and Configuration settings of Gateway decisions, please refer to Gateway section in Process Designer Reference Chapter 8.2.
Use the Web Service task to call a Rest API or a Soap Service.
Web Service task is used to call external web services using Rest API or Soap Web Service.
Web Service Task Configuration panel have 4 tabs to define properties.
General Tab contains general information such as title, task id, description etc.
Used to configure and map the Business Object for input and output for the node.
Property
Mandatory
Default
Description
Web Service Type
Yes
SOAP
To choose the type of web service. There are 2 types as following: SOAP and REST.
The values for Setting are as follows.
SOAP
When SOAP is selected as Web Service Type, user must enter the information about calling the Soap Service in the SOAP panel.
Property
Mandatory
Default
Description
Source Type
Y
Url
User can choose to get WSDL definition from URL or File
use environment
N
Unchecked
If user chooses use environment checkbox, then system will display the list of environment variables for user to choose. User can set the WSDL URL in the environment variable setup screen and choose the variable in the configuration panel.
WSDL URL
Y, when SOAP using URL.
If user chooses Url as Source Type, WSDL URL is the URL to the WSDL File location. If user chooses use environment then select the environment variable corresponding to WSDL URL.
WSDL File
Y, SOAP using WSDL File
If user chooses File as Source Type, WSDL File for Web Service to be called.
XSD File
N
If user chooses File as Source Type, Subject of WSDL file.
Operation
Y
The operation is method to be called of that service.
End Point
Y
The endpoint is the URL where that service can be accessed by a client application.
Authentication
N
Authentication credentials for HTTP authentication.
Username
N
Username for Authentication. If user chooses use environment then select the environment variable corresponding to username.
Password
N
Password for Authentication. If user chooses use environment then select the environment variable corresponding to password.
SOAP panel has a "Choose WSDL" button to upload WSDL file or a "Choose XSD" button to upload XSD file. Once the user chooses a WSDL or XSD, user can click the Get Operation button to get all possible operations from the SOAP service. Get Endpoint button is to get End Point from SOAP Service.
REST
When REST is selected as the Web Service Type, user must enter information about calling the Rest API on REST panel.
Property
Mandatory
Default
Description
use environment
N
Unchecked
If user chooses use environment checkbox, then system will display the list of for user to choose. User can set the REST URL in the environment variable setup screen and choose the variable in the configuration panel.
REST URL
Y
URL for calling Rest API. If user chooses use environment then select the environment variable corresponding to REST URL.
Http Type
Y
Operations to HTTP requests.
Accept Header
Y
Type of text that the Rest API accepts.
Content Type
Y
A Content Type is a set of text response when calling Rest API.
Authentication
N
Authentication credentials for HTTP authentication. User can choose between Basic & IAM2
Username
N
If user chooses Authentication as Basic, Username for Authentication.
Password
N
If user chooses Authentication as Basic, Password for Authentication.
Header - Key
N
Additional header information key.If user chooses use environment then select the environment variable corresponding to KEY.
Header - Value
N
Additional header information value. If user chooses use environment then select the environment variable corresponding to Value.
Both SOAP and REST tabs contain an "Open Mapping Parameter" button. Clicking on "Open Mapping parameter" button redirects user to Mapping Parameter screen where user can click on Mapping Parameter Input line or Mapping Parameter Output line to map parameters for this Web Service task.
You can map the input parameter and output parameter of SOAP service using XPath mapping. Please refer below example of sample wsdl.
Now to map the xpath for each input parameter.
For field name "title" you have to create xpath for mapping parameter as follows.
Method 1:
Parameter Name : title
XPath : /Operation_in/book/title
Parameter Type : String
Method 2:
Parameter Name : title
XPath : //book/title
Parameter Type : String
Method 3:
Parameter Name : title
XPath : //title
Parameter Type : String
XPath Syntax expression
Expression
Description
nodename
Selects all nodes with the name “nodename“.
/
Selects from the root node.
//
Selects nodes in the document from the current node that match the selection no matter where they are.
.
Selects the current node.
..
Selects the parent of the current node.
@
Selects attributes.
nodename[index]
Selects the index of element.
Use the Sub Process task to call another process.
The Sub Process task is used to call other processes from within the main process. If there is a section of the main process that can stand alone, it is good practice to implement it as a separate process. Now you can call this process from the main process using the Sub Process task. This improves clarity and reusability.
Sub Process Node Configuration panel has 3 tabs to define properties.
General
General Tab contains general information such as title, task id etc.
Business Object
Used to configure and map the Business Object for input and output for the node.
Sub process
Property
Mandatory
Default
Description
Process Name
Yes
Name of process that you want to use as a sub process in your main process.
In Sub process tab, "Open Sub process" button is used to open or edit the sub process. "Open Mapping Parameter" button is used to map parameters to the sub process. When click on Open Mapping Parameter button, the system will redirect user to Mapping Parameter screen and then user can click Mapping Parameter Input line or Mapping Parameter Output line to map parameters for this task.
There are mainly 7 types of task allocation methods supported by Process Designer.
Lane is the type of allocation where a job is assigned to the work-party name that matches the lane name of the human task. When user chooses Lane as Setting property, user must also choose value on Assignment Method property. There are 3 available Assignment Methods to choose from: Pull, Round Robin and Load Balance.
Property
Mandatory
Default
Description
Setting
Y
Pull
Select Lane for Lane Policy.
Assignment Method
Y
-
Type of assignment policy to use. It has 3 available choices - Pull, Round Robin and Load Balance.
Pull is the type of allocation used where the authorized users can select and claim the job present in the pool.
Round Robin is the type of allocation used to assign a work to another work party other than of the current lane; the system will respectively assign the task to users in a round pattern.
Load Balance is the type of allocation used to assign a job to another work party other than of current lane, the system will assign job to user with less number of jobs assigned.
Note: When user chooses Pull, Round Robin or Load Balance, user must choose value for the work party correctly.
Property
Mandatory
Default
Description
Work Party Name
Y
Name of work-party to assign the job.
Routing Policy is the type of allocation where a system assign work to user based on some assignment condition.
When user choose Routing Policy on Setting, system will show Policy tab and Sorting tab for setting the condition and sorting value.
Policy Tab
Property
Mandatory
Default
Description
Condition
Y
To specify work assignment condition.
Match Type
Y
To define how to select matches when multiple users match that condition. You can choose to assign work to one or all users. It has 2 available options: All and Any.
Assignment Type
Y
To define an Assignment type. It has 3 available options: User, Work party and Advance.
Username
Y
This option would only be available when Assignment Type above is selected as "User. An application User can then Select any user based on available User List.
Work party
Y
This option would only be available when Assignment Type above is selected as "Work party". An application User can then Select any work party name based on available "work party" List.
Add Row Policy button is used to add condition setting when user wants to use multiple conditions for assignments. Delete Row Policy button is used to remove condition settings that are not required. Formula Editor is used to customize a condition using customizable condition panel.
Assignment Type can be set to "User", "Work-party" or Advance. When Advance is selected, an advance condition setting will be shown. Advance condition option should be used only when user wants to execute a system special condition along with main user- defined conditions.
Property
Mandatory
Default
Description
Number Advance Rows
Y
1
The number of advance conditions.
Filter Type
Y
The value of user to be used in special condition. It has "jobInbox" is number of jobs in user inbox, and has "userattribute" to choose any attribute of the user.
Filter Value
Y
To choose a user attribute that is to be used in special condition. This property will show when "userattribute" is selected on Filter Type.
Attribute Name
Y
To choose parameter from current process.
Operation
Y
Select Operator to use in special condition.
Sorting Tab
Property
Mandatory
Default
Description
Field
N
The field to be used for sorting.
Type
Y, when Field is used.
Type of sorting, It has asc and desc.
Special Sort
N
-
Multi Instance is the type of allocation where a system assign work to multiple users based on some assignment condition. When user choose Multi Instance on Setting, system will show Multi Instance tab for setting the user and condition.
Multi Instance Tab
Property
Mandatory
Default
Description
Cardinality
Y
To specify the number of users to assign the job to.
Ordering
Y
To define the order in which to assign the job. It has 2 available options: Sequential or Parallel.
Assign By
Y
To define how to assign jobs. It has 2 available options: User or Work party. And give the value in the text box by the side.
Assign Method
N
This option would only be available when Assign By above is selected as "Work-Party". An application User can then select the type of assignment to be followed Available options include Pull, Round Robin, Load Balance or Custom.
Class Name
N
This option would only be available when Assign Method above is selected as "Custom". An application User can then enter the java class for custom allocation.
Flow Condition
Y
An application User can then select any of the following conditions -
(i) Wait for all to finish (All)
(ii) Wait for all to approve (All)
(iii) Wait for how many to finish
(iv) Wait for how many to approve
(v) Advance
For (iii) & (iv) there is a text box to enter the number of users needed to fulfil this level.
Condition Loop
N
If user selects (ii) or (iv), user also has to provide the condition for approval.
Cancel Remaining Instance
N
If user selects (ii) or (iv), user also has to provide what to do if a person rejects
Advance Condition
N
If user selects (v) Advance, then user has to give the advance condition hereCustom Policy
Custom Allocation is the type of allocation to assign a job by using the custom logic from a java class. The user must develop a java class and then upload it to the process. When user chooses Custom Policy, the human task will assign the work to user as per the logic in java class.
When user chooses Custom on Setting, user must specify Class Name property for Java class Tab.
Property
Mandatory
Default
Description
Class Name
Y
The fully qualified identifier for the java class to be executed to assign work to user.
Use the Java Task to call custom java functions.
The Java Task is used to call and execute Java code defined by user. The Java node task is needed when user wants to use Java code inside their business process. To accomplish this user can create the Java method, export corresponding Java class to a Jar file and then upload this Jar file to the Java Node Task for executing Java method during the business process. You can upload any jar file and call a function from that jar file using the Java Task.
Java Node Configuration panel has 3 tabs to define properties.
General
General Tab contains general information such as title, task id etc.
Business Object
Used to configure and map the Business Object for input and output for the node.
Java Parameter
Property
Mandatory
Default
Description
Jar Name
Y
The jar file. The value can be set by clicking on the Choose Jar button and choosing the jar file using the folder browser. Alternately the user can select from the list of existing jar files as well.
Class Name
Y
The fully qualified class name. The system will display all the available classes from jar on clicking the "Get Class Name" button. User can then choose the value from the list.
Method Name
Y
The method to be called from the class. System will display all the eligible methods from the chosen class. User can select the method from the list
In Java Parameter tab, "Choose Jar" button is used to upload Jar file and "Get Class Name" button is used to get class name from Jar file.
Use the File Input Task to start a process based on information from a file.
Purpose
The File Input Node is used to read file and is similar to the File Read Node Task except that a File Input Node can be used to start a process whenever a file appears in the specified repository.
File Input Node Properties
As mentioned before, the File Input Node is similar to the File Read Node. Therefore the properties of "File Input Node" task are same as "File Read Node" Task described in File Read Node properties section.
The design of your business process has significant impact on its usability and performance. To optimize the process structure, we recommend the following best practices:
Create small processes and divide them into separate blocks. We do not recommend placing more than 10 - 15 elements on a single diagram. If a process is complex, some element groups in a process can be implemented by using sub processes, and then connecting those sub processes into your main Business process.
The Main flow in the process should be in the same line and alternate paths should be lined in branches. For example: In an approval process (Fig: Approval Process) below, elements that lead to successful process execution are lined on a single level and additional conditional approval paths are depicted in the branches.
Build a process so that the maximum number of flows is lined in one direction. There are two ways to achieve it: building a process downwards or from left to right. Minimize the number of intersecting flows for the process to look clearer.
Name processes & nodes by their purpose. Always name all elements, flows and connections on the process diagram and avoid identical and similar names. Node tasks and Events names should include an action, that is to be executed by an element or an object, and the object to which said action is applied, for example: “Place order’, “Send message”, “Register issue”.
Delete obsolete process parameters.
When using the [Read data] task like Database Node/ File Read Node etc, configure reading of only the required columns, if there is no need to read them all. Reading all columns might lead to slow business process execution performance.
When branching the process flow, set one of the flows to “default”. This will prevent the business process from “freezing” if there are no eligible branches.
Avoid overlapping of elements and connections and make sure names are clearly visible.
When setting up a new process, make sure the diagram does not contain any unnecessary elements.
Use Error Events to handle exceptions or errors in a process by doing some action.
Error Events are used to handle the occurrence of errors during the execution of a certain task in the process flow. For example, let's say if a Java Task is executed with errors, user can use Error Event to send an error message.
Error Configuration panel settings has one tab to define properties.
Error
Property
Mandatory
Default
Description
Exception
Yes
The type of exception to be handled.
In Error tab, "Add Exception Row" button to add more exceptions, "Delete" button to remove an existing exception. "Open Mapping Parameter" button is used to map parameters of exception node task. When click Open Mapping Parameter button, then the system will redirect user to Mapping Parameter screen and the user can click Mapping Parameter Input line or Mapping Parameter Output line to set mapping parameter for this Error Event Task.
Use the Push Notification task to send message to mobile application.
Push Notification task is used to call push-notification hub to send message to mobile applications using Android or iOS platform.
Push Notification Task Configuration panel have 3 tabs to define properties.
General
General Tab contains general information such as title name, task id, description etc.
BusinessObject
Used to configure and map the Business Object for input and output for the node.
Push Notification
Property
Mandatory
Default
Description
Application Name
Y
The name of the mobile application that is to be send message.
use environment
N
Unchecked
If user chooses use environment checkbox, then system will display the list of environment variables for user to choose. User can set the Node URL in the environment variable setup screen and choose the variable in the configuration panel.
Node Url
Y
URL for calling the push-notification hub. If user chooses use environment then select the environment variable corresponding to Node URL.
Android Platform
Y, when use Android platform.
Off
To use the android platform. There are 2 options: On and Off.
iOS Platform
Y, when use iOS platform.
Off
To use the iOS platform. There are 2 options: On and Off.
You can use both platform in a single Push Notification Node.
The values for Settings are as follows.
Android Platform
When Android Platform is selected as the Platform Type, user must enter the information for calling the push notification for android in the Android Platform panel.
Property
Mandatory
Default
Description
Collapse Key
N
To provide collapse key to mark a message as collapsible. A collapsible message is a message that may be replaced by a new message if it has yet to be delivered to the device. It is used in apps where only the most recent message is relevant.
Package Name
Y
To define package name of mobile application.
Priority
Y
To define the priority of push-notification. There are 2 options -High and Normal.
High is used to wake a sleeping device when necessary and to run some limited processing.
Normal is set. When the device is in Doze, delivery may be delayed.
Server Key
Y
A server key that authorizes the mobile application to access Google services.You can get the server key when you create your Firebase project and register your mobile application.
iOS Platform
When iOS Platform is selected as the Platform Type, user must enter information for calling the push-notification for iOS in the iOS Platform panel.
Property
Mandatory
Default
Description
Package Name
Y
To define package name of mobile application.
Production Cert File
Y
Production Certificate file for an iOS application.
Production Key File
Y
Production Private Key file for an iOS application.
Password for Production
Y
Password for Authentication of production-cert file and production-key file.
Dev Cert File
Y
Develop Certificate file for an iOS application.
Dev Key File
Y
Develop Private key file for an iOS application.
Password for Dev
Y
Password for Authentication of dev-cert file and dev-key file.
Is Production?
Y
Yes
To define if use production values of push-notification. There are 2 options: Yes and No.
Upload button is used to upload certificate file and private key for production or development environment.
Both Android and iOS tabs contain an "Open Mapping Parameter" button. Clicking on "Open Mapping parameter" button redirects user to Mapping Parameter screen where user can click on Mapping Parameter Input line or Mapping Parameter Output line to map parameters for this Push Notification task.
Add Row button is used to add more header key value to the REST service. Trash icon on right side is to remove any existing header rows.
Advance condition has Trash icon . User can click this icon on right side to remove any existing special conditions.
User can click Add Row Sorting button when user wants to sort based on multiple fields. Sorting Tab also has Trash icon . User can click this icon to remove any existing sorting.
In this section we will learn how to create a business process from scratch. From version 4.0.19.10 and higher user can create an application only from AppSpace. User can then create a Process inside the application. Once the process is created, AppSpace will redirect you to Process Designer to design the process.
In this section we will show how to create an application and create a process in the application and also how to deploy this process to a real environment.
Use Timer Events to determine the maximum time allowed for processing a task.
Timer events are used to specify the upper time limit for processing a task. It can be used as a start event, intermediate event or boundary event. When a timer attached task goes over time, it allows the process to perform some action.
For Example, let's say a process is submitted to a Human Node Task, which is being monitored by Timer event. If the task is not taken care of or completed as per scheduled, then Timer event can be used to send an email to Manager/ Responsible Work Party head of such halted human node.
Timer Configuration panel has only one tab to define properties:
Timer
Property
Mandatory
Default
Description
Time Duration
Y
0
To specify the maximum time duration for a task.
Time Unit
Y
Type of time unit.
Terminate
N
Uncheck
Select checkbox if you want that task to terminate on exceeding time.
Process is a group of activities that interact to accomplish a specific goal.
In ONEWEB we have Process Designer (PD) which is based on BPMN notations to design & implement business processes. It is used for representing and configuring Business Process by using the graphical interface and is designed in such a way as to easily configure the business process using a drag and drop user interface as shown in the figure below.
For details on Process and Key points please refer Process Section in Process Designer Reference Chapter 8.2.
Business Object (BO) is an encapsulation of the business data or variables used by the different activities in a business process. Each business object can contain other business objects or parameters. Parameter is a simple data type which is same as the data type in common programming language. Process Designer (PD) supports 5 different data types - String, Integer, Decimal, Date and Time. The relationship between the business object and parameter is shown in figure below:
Fig. below describes an Employee Business Object which consists of 3 parameters - firstname, lastname and age. Furthermore, there is a business object in Employee that is Address which in turn consists of 3 parameters - houseNo, street and province.
Business object is one of most important PD components which is used to define input and output variables for each activity node task and for the process as a whole. The parameters of a BO are also used to create the condition of gateway tasks. The screen to define BO is shown in the figure below:
Data Mapping is the process of transmitting the business data via business object into each activity node task in order to operate the activity node task according to the data input. As a first step, the user has to define which business object of business process will be the input and output as shown in the figure below.
Then the user has to map between the business object of business process and defined business object of each activity node task. User can either map the entire business object to another business object or can map via parameter by parameter. Below example shows one business object to another business object mapping.
On the mapping link (shown as blue line in fig above) between the business objects, user can also add any condition as shown in the figure below. Double click on the link to open the Formula Editor.
For more details on Formula Editor please refer Formula Editor section.
Use the File Read task to get information from a file.
The File Read task is used to read information from file. When your process flow require to access information from a file, user can use File Read Task to read the data. The "File Read" Node Task supports files from many sources and different formats.
Configurations property settings panel has 3 tabs to define properties.
General
General Tab contains general information such as title, task id etc.
Business Object
Used to configure and map the Business Object for input and output for the node.
File Read Parameter
Property
Mandatory
Default
Description
File Source
Y
-
The format type for the file transfer, like File system, FTP, Secured FTP (SFTP) and FTPS.
File Type
Y
-
The format type of the metadata files, namely FIXWIDTH, XLS, DELIMITED, and XML.
Skip 1st Row
N
Off
The value is used to skip first row of a file.
Remove Duplicate Records
N
Off
The value is used to remove duplicate records in a file.
Apply Filter
N
Off
The value is used to filter the data.
Apply Sort
N
Off
The value is used to sort data in file.
Transform Fields
N
Off
The value is used to convert data to desired type.
Move File After Compilation
N
Off
The value is used to move the file to do something when reading is success or failure.
The values for File Source can be as following: File System, FTP, Secured FTP (SFTP) and FTPS. When value for File Source is selected, user must enter information for that File Source.
File System
Select File System to read file from directory in computer.
Property
Mandatory
Default
Description
Path Directory
Y
The path or the directory that keeps the file.
File Name
Y
The name of the file that is to be read.
File Transfer Protocol (FTP)
FTP is the standard network protocol used to transfer of computer files between a client and server on a computer network.
Property
Mandatory
Default
Description
IP Host
Y
The value of the ftp host address for transferring files.
Port
Y
The value of the ftp location for transferring files.
Passive Mode
N
Uncheck
To connect the protocol ftp with passive mode.
Username
Y
The username for login to the ftp host.
Password
Y
The password for login to the ftp host.
FTP Repository
Y
The path for keeping the ftp file was backed up.
Expression
Y
The value that was defined is the condition for showing the data.
Suffix
N
The value is the extension of the ftp.
Secured File Transfer Protocol (SFTP)
SFTP is the standard data transmission protocol for use with the SSH2 protocol. It assures that information is securely transferred using safe information stream.
Property
Mandatory
Default
Description
IP Host
Y
The value of the sftp host address for transferring files.
Port
Y
The value of the sftp location for transferring files.
Username
Y
The username for login to the sftp host.
Password
Y
The password for login to the sftp host.
FTP Repository
Y
The path for keeping the sftp file was backed up.
Expression
Y
The value that was defined is the condition for showing the data.
Suffix
N
The value is the extension of the sftp.
File Transfer Protocol Secured (FTPS)
FTPS is an extension to the commonly used File Transfer Protocol (FTP) that support for the Transport Layer Security (TLS) and the Secure Sockets Layer (SSL) cryptographic protocols.
Property
Mandatory
Default
Description
IP Host
Y
The value of the ftps host address for transferring files.
Port
Y
The value of the ftps location for transferring files.
Implicit SSL
N
Uncheck
To connect the protocol ftps with Implicit SSL mode.
Username
Y
The username for login to the ftps host.
Password
Y
The password for login to the ftps host.
FTP Repository
Y
The path for keeping the ftps file was backed up.
Expression
Y
The value that was defined is the condition for showing the data.
Suffix
N
The value is the extension of the ftps.
The values for File Type can be as following: FIXWIDTH, XLS, DELIMITED and XML. When value on File Type is selected, user must also enter information about that File Type.
FIXWIDTH
This format support data where every field has a fixed width and for width those fields is less than the value.
Property
Mandatory
Default
Description
Non Uniform Rows
Y
Off
When FIXWIDTH is selected on File Type, user can choose Non Uniform Rows in "on" or "off" mode. If set to "on", then user must also enter information for Non Uniform Rows. Non Uniform Rows is set to "off" to support data when a file has consistent rows.
Property
Mandatory
Default
Description
Number of Header
Y
1
Number of field Header.
Field
Y
The value is a field name.
Length
N
0
Size of field to be used.
When Non Uniform Rows is on, user must enter information about Header (HR), Splitter (TR), Data (TD) and Footer (LR). It is used to support situations where a file has an irregular row.
HR
Property
Mandatory
Default
Description
HR Start
Y
Header starts with HR value.
Number of HR
Y
1
Number of header.
Ignore
N
Uncheck
To be ignored when number of line over than length value.
Field
Y
The value is a field name.
Length
Yes
0
Size of field to be used.
TR
Property
Mandatory
Default
Description
TR Start
Y
Splitter starts with HR value.
Number of TR
Y
1
Number of Splitter.
Ignore
N
Uncheck
To be ignored when number of line over than length value.
Field
Y
The value is a field name.
Length
Y
0
Size of field to be used.
TD
Property
Mandatory
Default
Description
TD Start
Y
Data starts with TD value.
Number of TD
Y
1
Number of data.
Ignore
N
Uncheck
To be ignored when number of line over than length value.
Field
Y
The value is a field name.
Length
Y
0
Size of field to be used.
LR
Property
Mandatory
Default
Description
LR Start
Yes
Footer starts with LR value.
Number of TD
Yes
1
Number of footer.
Ignore
No
Uncheck
To be ignored when number of line over than length value.
Field
Yes
The value is a field name.
Length
Yes
0
Size of field to be used.
XLS
Use XLS to support file format for getting information from Microsoft Excel documents.
Property
Mandatory
Default
Description
Sheet Name
Y
The document name of the XLS type that want to read.
DELIMITED
Use Delimited to support file format that has text file with a delimiter character.
Property
Mandatory
Default
Description
Delimited
Y
The character used for Delimiting.
XML
Use XML to support file format for getting information from Extensible Markup Language (XML) format.
Property
Mandatory
Default
Description
Number of Rules
Y
1
The Number of Required Field Name.
Required Field Name
Y
The value is a file name.
Element Type
Y
The value is a type of element, there 2 types as following: element and attribute.
Path in XML File
Y
XML path to that element or attribute.
End TagName
Y
The name of element used to stop reading of a field.
Type Field Name
Y
String
Type of a field name.
When Remove Duplicate Records is on, system will remove duplicate records.
Property
Mandatory
Default
Description
Number of Remove Duplicate Records
Y
1
Number of Duplicate Records.
Remove Field Name
Y
The value is a field name that is used to find duplicate.
When Apply Filter is on, system will filter the data.
Property
Mandatory
Default
Description
Filter Expression
Yes
The value which is used to filter.
When Apply Sort is on, system will sort data.
Property
Mandatory
Default
Description
Number of Apply Sort
Y
1
Number of sort.
Sort Field Name
Y
The value is a field used for sorting.
ASC
N
Uncheck.
Type of sorting used. To get ascending order data check this.
When Transform Fields is on, system will convert data to a desired type.
Property
Mandatory
Default
Description
Number of Transform Fields
Y
1
Number of a transform.
Field Name
Y
The value is field name for converting.
Type to transform
Y
Type result for converting.
When Move File after Completion is on, system will move file to a set directory once the reading is success or error.
Property
Mandatory
Default
Description
Success Directory
Y
Path of directory to move when reading success.
Append Datetime after Move of Success
N
Uncheck
The value is used to append datetime after move of success.
Error Directory
Y
Path of directory to move when reading error.
Append Datetime after Move of Error
N
Uncheck
The value is used to append datetime after move of error.
In FileRead Parameter tab, "Open Mapping Parameter" button is used to map parameters of a File Read node. When click Open Mapping Parameter button, the system will redirect user to Mapping Parameter screen and then user can click Mapping Parameter Input line or Mapping Parameter Output line to mapping parameter for this File ReadTask
For Parameter Mapping
When FIXWIDTH is selected as File Type, system will show a parameter for Non Uniform Rows to be set to on or off for a file. When XLS is selected as File Type, system will show a parameters to support the excel sheets. User must create an output parameter to support the columns of an excel file. When DELIMITED is selected as File Type, system will show a parameter for Delimited type. When XML is selected as File Type, system will display the parameters to define the XML structure.
To create the condition for the Inclusive or Exclusive gateway, users may need to use mathematical operators and process parameters. For simplicity, the Process Designer has a graphical tool for creating condition - Formula Editor. You can create conditions using Mathematical operators and Business Objects. Formula Editor tool is shown when user creates a condition of link out of an Inclusive or an Exclusive gateway, or when user creates condition for parameter mapping.
Formula Editor panel has Mathematical Objects and Business Objects for setting condition. User can drag a mathematical object or a business object to Formula Panel to create condition.
Mathematical Objects consists of mathematical symbols are as follows.
+ operator used to add two values.
- operator used to subtract two values.
x operator used to multiply two values.
/ operator used to divide two values.
T This Character is used to add a value to a condition. User can set T to either text or numbers. If the user want T to be a string value then user should set it as "XXX". If user wants T to be a number then user should set it to X.
( is to start parentheses.
) is to end parentheses.
== operator used to compare two values to check they are equal.
!= operator used to compare two values that are not equal to.
> operator used to compare two values for greater than.
>= operator used to compare two values for greater than or equal to.
< is the operator used to compare two values for less than.
<= operator used to compare two values for less than or equal to.
&& logical operator used to compare two value by AND logic.
|| logical operator used to compare two value by OR logic.
! operator used to negate a condition.
Business Objects can have different parameters. Business Objects is used to pass the input and output parameters to the process Activity Nodes.
When the user creates condition successfully, system would show condition at the bottom of Formula Panel, and user can review and click on Save button to save condition.
When an Inclusive gateway or Exclusive gateway is used in a process, user need to set condition to each of the links out of the gateways. The condition of the link out of gateway can be configured using Formula Editor.
Open Gateway Parameter panel.
User can click on the Condition button on configuration panel to open the Formula Editor panel. On the Formula Editor panel, user can drag different process parameters and mathematical operators to create the condition. Once the condition is created, click Save button to save the condition and go back to the configuration panel.
The Work Party is used for assigning the job to a role or specific user when the process reaches a Human Task. One Work Party can be comprised of list of users or different role groups.
Process designer uses Work Party assignments to assign jobs, when the process flow reaches a human node task. A Work Party is like department and members are same as workers in that department. User can create different Work Party as well as members in each Work Party, and then user can bring that Work Party to create lanes in the process.
In Process Designer, user can specify different lanes to mark the activities owned by different sections. So user must create lanes before dragging the nodes to develop a process. Each node in a process needs to belong to a specific lane. User must also set name of that lane. When any Lane has a Human Task, the Human Task by default will be assigned to the Work Party associated with that lane. User can also configure it to assign human node task to specific work party or specific user in another work party.
Property
Mandatory
Default
Description
Work Party Name
Y
Name of work party.
Work Party Type
Y
Type of work party, there is only one types as of now: User Role.
Work Party Lead
N
Lead of work party, user can set the supervisor or manager role for the work party using this field.
When a Work-Party is created, user must also set the Members for the Work Party.
Property
Mandatory
Default
Description
Member ID
Y
ID of member.
Member Name
Y
Name of member.
Member Type
Y
Type of member, there 2 types as following: USER and ROLE.
"Lookup exiting member" button can be found on both "Create Work Party" page and "Update Work Party" page, to choose user from existing user list.
Sometime parameter mappings need additional condition to be executed before mapping. You can map the entire business objects or individual parameters between the input and output along with user defined conditions. User can set those conditions on the parameter mapping link using Formula Editor, if required.
Open Mapping Parameter page.
To set condition to a parameter mapping using Formula Editor, double click on mapping link on the Mapping Parameter screen. System will open the Formula Editor panel for user to set condition. On the Formula Editor panel, user can drag different process parameters and mathematical operators and String functions to create the condition. These String functions are available on the Formula editor only on the mapping screen.
Click Save button, once you complete the condition and go back to Mapping Parameter screen.
In the process flow the user might need to upload jar files for the Java node or WSDL files for the Webservice node. Instead of uploading the file at the nodes user can upload them to the application using the upload files facility and then select the required file at the nodes. This makes it easier to manage the files or update them without affecting the nodes.
To upload files to an application, go to the upload files menu and upload the required files.
Once the files are uploaded, user can choose these files from the Java node task or Webservices node task and use them in the process flow.
Process Instance is a specific instance of process that is currently executed by a process runtime. Whenever the process is initiated, a corresponding process instance has to be created and started. The process instance contains the Business Object (BO) parameters needed for the activity tasks in the process to achieve the goal of the task. When the process instance is started successfully, the Task Instance of the process instance is created automatically for the first activity task encountered by the process instance.
Task Instance is a specific instance of the activity task which is represented by a node task in the Process Designer. A Process Instances can consist of several Task instances. Each task instance has a UUID (Universally Unique IDentifier) that is generated by the process runtime. While the task instance is getting executed on the process instance, this task instance will contain the state of the node task at that given point in time. The potential states are:
Waiting: A task instance is waiting for the process runtime to assign the task to a user. Assigned: A task instance is already assigned to the specific user. Claim: A task instance is currently worked on by the specific user.
For more details on starting and debugging the process instance, please refer to section
The business processes may include database nodes or web service nodes to interact with database or other services. But these database configurations and web service URLs may be different for different environments. For e.g. the JDBC URL for the development database will be different from the value for the Test Environment and will again be different for production database.
So from version 4.0.0.19 ONEWEB provides option to configure the environment parameters as variables for the different environments. User can then use these variables while configuring the flow. This makes it easier to deploy the process to different environments without modifying the process diagram every time.
How to create Environment variables in Process
To set up environment parameters for an application, go to the environment setup screen inside the application. Click on the Add Environment icon.
You can create the different environments for your app here.
User can also create multiple profiles for each environment on the profile tab.
Finally, user can create the environment variables for each parameter
Then user can create them for other environments too
How to use these Environment variables in Process
You can use these variables in your node configurations. For e.g., in the database node configuration. For configurations which allow environment variables you can see a check box use environment. Use can select it to use value from environment configuration.
How to Create a Process in ONEWEB
To create an application on AppSpace first login to AppSpace and click on the Create new app button.
When creating an application, user can create it as a Web Application or a Mobile App. Choose the right platform for your application and enter the details.
Click on Create button. The new application is created for you now. Click on the application icon to open your app. System will redirect user to the components page.
Click on Create Process icon.
On the Create Process dialog, enter the process details. User can click on Create button to simply create an empty process and can choose to start designing later. Alternately, user can click on Start Design button to create the process and to start designing now itself.
If user clicks on the Start Design button, system will create process and redirect user to the Page Designer. The system will now display the Create Flow page for creating the Process Template Diagram.
If the user is creating an application for the first time, then the system will redirect user to a wizard page instead of the workflow page.
Create Application Wizard has 4 steps for creating the process.
1. Define Business Object step. User can create the input and output parameters of the process.
User can add further details to the BO by clicking on the Add Parameter icon on the BO and add the parameters inside the BO.
After creating business object, user can click Next button to go to next step or click on Previous button to go to previous step.
NOTE: At any step during the wizard, user can click on the Save Wizard button at the top to save the steps and come back to create the rest of the steps later by clicking on View All Wizard menu.
2. Create Work Party step. User can define the Work Party to be used in the process. This step has Add button to add a row of Work Party and Remove button to remove Work Party. After entering the value for Work Party, user can move to the next step.
3. Create User/ Member step. User can create the members of Work Party. This step has Add button to add a row of member, Lookup existing member button can be used to select existing member from the system and Remove button to remove a member.
4. Create Process step is last step for creating an application. The system will now display the Create Flow page for creating the Process Template Diagram.
Process Template Diagram can be created by dragging each item and dropping to the diagram panel. User can double click on each node task to configure the data needed for execution. Shown below is an example to create a sample flow.
1. First, user must drag a Horizontal lane and drop to the diagram panel.
2. To start the flow user must drag the Start event and End event. Now for the example we are using, we need the Exclusive gateway, Human task and Database task as well. Drag these node tasks to the diagram panel.
3. Now the user must create the links between the node tasks. Move the mouse over at the source node task, click on any one of the circle ports that are highlighted and drag the port to the target node task and create the links as given below in the process design.
4. Double click on Database Tasks to change name to "Get User Information from DB" and "Save User Status to DB" as shown in the diagram below. Change name of Human Task to "Approve Inbox". Change name of Exclusive to be "Check Approve". User can double click on the link out of gateway to set the values. Double click on link out of Exclusive gateway and change name to "Approve".
Change the other lane to "Reject". For Gateways user can configure condition at the Gateway tab. To modify condition of link by using Formula Editor, click on the Condition button.
5. Configure the business object on each the node task,
Double click on node task to show Configuration Panel and open the Business Object tab.
Click to check both Input and Output checkbox to set input parameter and out parameter of that node task.
Click Open Mapping Parameter button, the mapping parameter page is shown for mapping input parameter and output parameter of the process to the node task.
Click the line between Input box and Mapping box.
Click on the Object in Input Process Parameter on the left hand side and drag into the Object containing in Activity Parameter on the right hand side.
Note: If both objects are same system will the mapping automatically for you.
Now click on line between Mapping box and Output box.
Click the Object in Activity Parameter on the left hand side and drag into the text in Output Process Parameter on the right hand side.
Click Done button on the top right hand side to go back to diagram.
6. Configure the Database Parameter for Database node.
Double on Database node task to show the Configuration Panel and open third tab. Note: Before doing this step user must set input and output parameters as described in step 5.
Enter the data regarding the database parameters. e.g. Enter Connection Type as "JNDI", JNDI Name is "jdbc/pd", Command Type is "Select" and Command - "select username, cost, date, status from user".
If the business object is already configured as per Step 5 in the Business Object tab, user can click Open Mapping Parameter button on Database Parameter tab and map parameter to the database query following the same step 5.
7. Configure the Assignment Policy for Human Task.
Double click on Human task to show Configuration Panel and open Assignment Policy tab. Enter value of Setting is "Pull" and value of Work party Name is "Approve".
8. Configured the value of Load Entity of the Human Task.
Double click on node task to show Configuration Panel and open Load Entity tab. Enter value of Entity as "Application" (This is the name of the entity from App Designer that will be used as the UI for the user to work on, when the human task is assigned to a user). Enter value of Key and Value as "APPLICATION_ID" (Key of the entity from AD) and "${UserRequest.id}" (PD Business Object parameter) to map data from this process flow to entity which forms the UI.
9. Finally, when each item on the process diagram is completely configured, user can save the process and deploy it to the destination environment to be integrated with other systems.
If user chooses to click on Create. System will create the process and display the list of components to the user. User can later click on the edit icon to start working on the process.
User can choose from an existing BO in the system by clicking on Add existing business object icon or user can create a new BO by clicking on the Add parameter icon . Enter the details for the new BO on the Parameter dialog
Property
Mandatory
Default
Description
Work Party Name
Y
Name of Work Party.
Type
Y
User Role
Type of Work Party, there is only 1 types as of now: User Role.
Work Party Lead
N
Lead of Work Party.
Property
Mandatory
Default
Description
Member ID
Y
ID of member.
Member Name
Y
Name of member.
Member Type
Y
USER
Type of member, there 2 types as following: USER and ROLE.
Work Party
Y
Work Party of member.
For an application to work perfectly the different components of the application need to be seamlessly integrated together to work as a single unit. ONEWEB provide built in integration points to help the developers integrate without writing a single piece of code.
ONEWEB provides built-in monitoring tools help keep track of the current active process instances in your system. There are 2 types of monitoring tools available with ONEWEB
Process monitoring - Process monitor shows all the active instances of a process and the current status of each instance. Task Monitoring - Using a task monitor you can monitor the progress of an individual process instance across the many activities of a process from start to finish.
Process Flow can be easily integrated with both Smart Form as well as Page.
Process with Smart Form Assume if you have a request form that needs to be approved by a supervisor. Once you click "submit" after completing the information, system should call workflow to send your request to the supervisor. And once the request is assigned to the supervisor, system should notify him and open the request form on UI for the supervisor to approve or reject. Thus you need to integrate the forms on App Designer with the business process on Process Designer to make it work.
The first part of this scenario involves integrating smart form to process using Process buttons as explained in . The second part of the scenario is explained in this section as a step by step process. That is, from the Process to the Smart Form.
Open Process flow that you want to integrate with an Entity. Click on the Human Activity node that you want to map with the Entity. Click on ‘Load Entity’ Tab in the configuration panel. Choose the Entity name that you want to integrate with this task. Choose the process parameter that is passed from process to Entity. Choose the field on Entity where the parameter value passed from BO is set. Click ‘Done’ to save your mapping
Now once a task reaches this human activity and is assigned to a user, when the user selects this task to work on from his inbox, system will open the entity mapped to this human activity for the user to work on.
Once the process is complete and is validated successfully, user might want to test to see if the process is working as expected. For this ONEWEB provides the Simulator Utility to simulate the steps in the process.
To simulate a process, go to the Simulation Test tab. The utility provides the flow diagram for review and an input box with the input BO parameters in JSON format to start the flow.
Update the Input BO parameters with the actual value you need to send to test the flow.
Click on the Start button.
System will initiate an instance of the process with the sample values and highlight the path taken by the process with the current input values. It will also display the task Id for the current process.
User can continue through the different steps in the process until completion by clicking on the Complete button. Or user can click on the Retest button to start a new instance of the process.
Once the process diagram is complete and each node task is fully configured, user might need the process to integrate with other systems. User will have to successfully deploy the process to start using this process.
Procedure
Before deploy user must use Deployment Validation for validating each node task of the process. It verifies that each node is completely configured, and no settings or details are missed out.
User must already have the destination environment ready for deployment because system will deploy the process to the runtime environment. Please refer Process Deployment from development environment section on details of how-to setup deployment environment.
Choose Deploy menu and select Deploy option.
Enter details of the target environment and then click Deploy button to deploy the process to the target environment.
Process can be integrated with an external UX/UI or can be integrated with other systems using the REST APIs provided by ONEWEB Process Designer. Though Process Runtime provides REST APIs sometimes they are integrated using Microflows to provide a common API for integrating with multiple systems. In this section we will talk about how to control and execute the process flow using Microflow engine.
In the Microflow we will use the Web Service node to call the different APIs of the process Runtime.
Start a Process from Microflow Assume if you need to start a process inside your Microflow. 1. Add a Web Service Node to your Microflow & click on the Web Service Node to open Configuration Panel 2.Open the Web Service Parameter tab 3. Select Web Service Type as REST 4. Click on the REST Tab
5. In the REST tab enter the details for the Process API to start flow URL -http://:/BPMREST/service/runtime/process//start HTTP Type - POST Header - Application/json Content Type - application/json Authentication - Basic
6. Click on Open Mapping Parameter to map the input as given below.
7. Click on 'Done' once completed.
Now the user can deploy the Microflow and call this microflow to start your process.
Get Task list of a Process from Microflow Once a process is started, if there is a human task to be completed, user needs to retrieve the taskID for the task to claim that task. In this section we will show how to retrieve a task using your Microflow.
1. Add a Web Service Node to your Microflow & click on the Web Service Node to open Configuration Panel
2. Open the Web Service Parameter tab
3. Select Web Service Type as REST
4. Click on the REST Tab
5. In the REST tab enter the details for the Process API to complete the task URL - http://:/BPMREST/service/runtime/tasks//complete?user= HTTP Type - POST Header - Application/json Content Type - application/json Authentication - Basic
6. Click on Open Mapping Parameter to map the input and output as given below.
Output
7. Click on 'Done' once completed.
Complete a Process from Microflow Once a process is started, user needs to complete each task in the process. In this section we will show how to complete a task using your Microflow. Before you start you need the taskID of the instance which needs to be completed. 1. Add a Web Service Node to your Microflow & click on the Web Service Node to open Configuration Panel 2. Open the Web Service Parameter tab 3. Select Web Service Type as REST 4. Click on the REST Tab
5. In the REST tab enter the details for the Process API to complete the task URL - http://:/BPMREST/service/runtime/tasks//complete?user= HTTP Type - POST Header - Application/json Content Type - application/json Authentication - Basic
6. Click on Open Mapping Parameter to map the input as given below.
7. Click on 'Done' once completed.
Process with Page Assume if you have a mobile or web page that needs to be submitted to a supervisor, once you click "submit" after completing the information. For this we use Microflow as the integration gateway between Page and Process Engine, to submit details on page to the process and also to send data back from process to the page in the form of notification. Please check the details for integrating process using Microflow in the section. Also please refer .
Process can also be integrated with external UX/UI or can be integrated with other system by using the REST APIs provided by ONEWEB Process Designer. Please check the for more information on the APIs
Once the process is deployed successfully, user can test the process by using Simulator or any REST client. The steps to do so are elaborated in section.
NOTE: A process can be integrated with a microflow, which can further be easily integrated to page and thus we can achieve the integration of a page with process. To know about integrating Page with Microflow please refer .
SLA (Service Level Agreement) and OLA (Operational Level Agreement) are the agreements which are often used in the software development industry to measure performance. SLA is used to measure the target performance during the execution of a process. SLA is created in order to ensure the result quality of the process and the agreed turnaround time will be achieved with customer commitment. OLA is used to help the internal teams to work together in order to achieve the service requirement level in the SLA. Moreover, another difference between SLA and OLA is that SLA is responsible for the turnaround time between IT service provider and customer, OLA is responsible for the turnaround time between IT service provider and another department within the company.
Process Designer does not provide an out of the box SLA task. But we can work around to implement an SLA in process designer using the Timer event.
For example, an SLA can be defined as "When the credit application is submitted by the user, the reviewer and approval have to decide whether this credit application should be approved or rejected within 5 days". Therefore, when process is executed, we desire that our process can be operated according to this agreement. The timer event in PD can be used to develop the OLA in order to support SLA as shown in figure below.
This process is initiated when a credit application is submitted by the customer. This application is reviewed by the user in the Review human task. The timer event is used to listen as shown in the figure below. If the credit application is not reviewed within two days, this application is sent to Manager group in order to review. Afterward this application is checked for completion on the exclusive gateway. If this application is complete, it is sent to approve decision which is represented by "Decision to approve" in human task, otherwise the process will end. For the details on how to configure the timer is explained in 6.4.3.3.4 Timer section
What is Process Monitor?
The Process Monitor is the tool to keep track of the deployed processes. Users can view how many active process instances exist currently for each deployed process. It can show the status of the process instances at each activity in the process. For a Human task the status will show how many instances are assigned to users, how many instances are waiting to be assigned to a user and how many instances are claimed by users?
The View All Process Monitoring page will show one box each for each deployed process. Each box has process name and project name. User can click the box to open monitor screen for that process.
In the monitor screen, system will show the flow of process and an icon on the activity to show / hide the status box of the activity.
In status box has ASSIGNED, WAITING and CLAIM for showing.
ASSIGNED shows how many instances of that process are assigned to users at that activity. WAITING shows how many instances are waiting to be assigned to user at that activity. CLAIM shows how many instances are claimed by users at that activity.
The status is shown only for Human Task and Sub Process Task if the Sub Process Task has a Human Task.
You can double click on the activity to show details of all the instances currently active at that activity. Details will show task id, node name, create date and the user who has claimed it. You can click task id to take you to the Task Monitoring.
Note: When a process has a Sub Process Task and the user double click on Sub Process Task, system will show the process monitor screen for the sub process.
What is Task Monitoring?
The Task Monitoring is used to keep track of the progress of process instances from start to finish. It shows the path taken by the process instance, the status and time taken by the instance at each of the activities. When a process instance is created, users can keep track of that instance on where the instance has reached, who is it assigned to and the total time taken in that task using the task monitor.
Monitor has Search Task Monitoring page for searching a particular process instance. Users can search the instance by using the date on which the process instance is created or the activity on which the instance is currently waiting or the user to whom the instance is assigned to or the role to whom the instance is assigned to.
Property
Mandatory
Description
Create Start Date
No
Create date of process instance.
End Date
No
End date of instance.
Process Name
No
The name of the Process used by the instance.
Activity Name
No
Current activity/ task name of instance.
User Name
No
Name of user to whom the instance is assigned to.
Role Name
No
Name of role to which the instance is assigned to.
When user clicks Search, the results will be displayed according to the search criteria. In the results panel user can click on a specific Task ID to open the details panel for that process instance.
In the detail panel, system will highlight in blue the flow of the process instance. The activities that are completed are marked with a check mark and the currently active activity is shown by the task highlight. There is an icon at the top of the activity to show / hide the status of that activity.
When the icon is clicked by user, system will show the status box of activity. The status box has HOURS, MINUTES and SECONDS of the time for which the process instance has been waiting at that particular activity. HOURS is the hours since the process instance has reached this task. MINUTES is the minutes for which it has been waiting. SECONDS is seconds.
This status is shown only for Human Task and Sub Process Task if Sub Process Task has Human Task.
When process has Sub Process Task, and user double click on the Sub Process Task, system will open the task monitor for the sub process.
Process Designer (PD) allows the interested process to be exported from one project and imported to other projects in order to replicate or reuse the process. The process can even be imported to a completely different environment as well. Note: But in that scenario please remember to copy any attached artifacts like jar files (for Java nodes), or wsdl files (Web Service nodes) also to the new environment manually as the imported json do not contain these artifacts.
Export To export any process, there is the "Export" button on the Project screen as shown in the below figure.
When you click this button the "Export process" dialog is shown. User can select one or more process to be exported. User can also select option to export with all attached files.
The exported file is then shown to download and save into the user machine. This file contains the entire process, work party and parameters kept in JSON format.
Import To import a process that is exported from another project, there is the "Import" button on the project information screen as shown in the below figure.
When this button is clicked the import process dialog is shown. The user has to select the configuration process file by clicking on "Choose File" button. The system will display all available process in that file. User can choose to import one or more process. There is also option to import as New process or Overwrite existing process. If user chooses the Overwrite option, then user has to select the process to be overwritten as well.
Click on "Import" button, the process will be imported to the project. Once the process is imported successfully, the process is shown in the process menu.
Process Designer comes with built-in process validation. Process Validation ensures that the process is defined completely with the parameters on each node task. By validating, the system makes sure that the process can run without any errors on deployment. In PD, there is "Only Validate" button as a sub option of "Choose Deploy" button. When you select the "Only Validate" option, the node tasks are validated to check if any node task is not completely defined with the parameters. A warning icon is shown on the node task if there are any incomplete parameters. The console log panel shows the error details.
There can be different error messages depending on the type of node task as described in table below. This table indicates the error message and how to solve the error.
Error message
Node task
How to solve
"Name is empty"
Every node task
Please check "name" input field in "General tab"
"Doesn't have link out."
Every node task
Please check the link between this node task and another node task.
"Doesn't have link in."
Every node task
Please check the link between this node task and another node task.
"Activity Mapping is not valid "
Every node task
Please check the input and output mapping in "Business object tab"
"Service Mapping is not valid"
Every node task except human task
Please check the input and output mapping in Specified tab that is belong to node task.
"Please add the assignment class"
Human node task
Please add the class name in "Assignment" tab
"Please select work-party"
Human node task
Please select work-party in the "Assignment" tab
"Sorting parameters are not valid"
Human node task
Please define sorting parameter in "Sorting" menu of "Assignment" tab
"Please select JNDI or JDBC"
Database node task
Please choose JNDI or JDBC in "Database Parameter" tab
"JNDI is not valid"
Database node task
Please enter JNDI name in "Database Parameter" tab
"JDBC is not valid"
Database node task
Please enter JDBC parameters in "Database Parameter" tab
"JAR is not valid"
Java node task
Please enter JAR parameters in "Java Parameter" tab
"Subprocess is empty"
Subprocess node task
Please choose sub process name in "Subprocess" tab
"The internal subprocess is error"
Subprocess node task
Please validate the errors that are occured in the sub process
"Please select SOAP or REST"
Webservice node task
Please choose "SOAP" or "REST" in "WebService Parameter" tab
"SOAP parameters are not valid"
Webservice node task
Please enter SOAP parameters in "WebService Parameter" tab
"REST parameters are not valid"
Webservice node task
Please enter REST parameters in "WebService Parameter" tab
"Condition or Label name is not defined"
Gateway node task
Please enter "Condition" and "Label" in link line of Gateway node task in "Gateway Parameter" tab
"Exception is not valid"
Error event node task
Please choose the exception name in "Error" tab
"Mapping exception is not valid"
Error event node task
Please map the parameter between error parameter and activity parameter
"Timer event is not valid"
Timer event
Please enter time duration in "Timer" tab
"FileSourceSystem parameters are not valid"
File read node task
Please choose file source in "File Read Parameter" tab
"FileSourceFTPS parameters are not valid"
File read node task
Please enter "FTPS" parameter in "File Read Parameter" tab
"FileSourceFTP parameters are not valid"
File read node task
Please enter "FTP" parameter in "File Read Parameter" tab
"FileSourceSFTP parameters are not valid"
File read node task
Please enter "SFTP" parameter in "File Read Parameter" tab
"Please select file type"
File read node task
Please choose file type in "File Read Parameter" tab
"FileTypeDelimited parameters are not valid"
File read node task
Please choose "Delimited Character" in "File Read Parameter" tab
"FileTypeExcel parameters are not valid"
File read node task
Please enter "Sheet name" in "File Read Parameter" tab
"FileTypeFixedWidth parameters are not valid"
File read node task
Please enter "Uniform" parameters in "File Read Parameter" tab
Process Monitor has been developed to monitor the overall tasks in each process as described in 6.4.7.1 and 6.4.7.2. However, if the user wants to implement custom Monitoring Dashboard by using the various programming languages or the ONEWEB Dashboard utility, he must know the important table relationships between "BPM" schema and "PD" schema in order to retrieve the tasks that are executing.
"BPM" schema is used to store the process runtime configuration. There are 3 important tables which as shown in below figure.
"wf_t1_definition" table is used to keep the process deployment structure. There are 3 important columns:
"id_" is the primary key.
"bytes" is used to store the xml structural of process deployment.
"process_key" is the prorcess name which can be a relation with "project_process_name" of "project_process" table on "PD" schema.
"wf_t2_task" is used to store all activity human tasks that occur in the process. There are 7 important columns:
"id_" is the primary key of this table.
"activity_id" is the id of node task which can be a relation with "id" of "node_task_property" table on "PD" schema.
"assign_status" is a status of task. There are 3 types - ASSIGNED, WAITING, CLAIM.
"claim_user" is a column to store the user that has claimed the task.
"distributor_type" is the type of task assignment method used. There are 5 type - "Pull", "Round Robin", "Load Balance", "Routing Policy" and "Custom".
"instance_id" is the unique id of executed process runtime; whenever the process is executed by process runtime, the instance id is generated automatically.
"work_party_name" is the work-party name that is assigned on the task.
"wf_t3_activity" is a log table that is used to store all the activities of node tasks that are executed by each "instance_id" of the process. The main columns are:
"id_" is a primary key of table,
"instance_id" is the unique id of executed process runtime.
"activity_id" is the id of node task which can be used to a relation with "node_property_id" column of "node_property" table on "PD" schema.
"activity_name" is a name of node task.
"activity_type" is a type of node task.
"start_time" is the time of node task is start.
"end_time" is the time of node task is end.
"duration" is duration time of node task is executed.
"PD" is used to store the design of process. There are 3 important tables:
"project_process" is the table used to store the process data. There are 2 important columns:
"project_process_id" is the primary key of table.
"project_process_name" is the name of process. This column can be used to a relation with "process_key" column on "wf_t1_definition" table.
"process_template" is a table that is used to store the JSON process diagram. There are 3 important columns:
"pd_process_template_id" is a primary key of table.
"project_process_id" is a foreign key of "project_process" table.
"pd_pro_tp_json" is a column that is used to keep json diagram.
"node_property" is the table used to store the details of node tasks in the process diagram. There are 5 important columns:
"node_property_id" is a primary key of table.
"pd_process_template_id" is a foreign key of process_template table.
"node_property_name" is a name of node task.
"node_property_key" is a key of node task.
"node_category" is a type of node task
ONEWEB has option to support multiple languages on its designers. Currently it supports English, Thai & Japanese. To switch the language on the designer go to the language switch icon on the bottom left panel on Process Designer.
Sometimes the developed process may be deployed to other environments. There are two ways in which a process can be deployed. From UI controls From database configuration.
From UI Once the process is complete and is validated successfully, it is ready to be deployed in server environment. User can choose the Deploy option on Process Template Diagram screen as shown below.
A popup will show up to enter the details about the target environment. User can choose either to use JDBC or JNDI. Based on the choice user has to enter the parameters for the target environment. And click on Deploy button.
Once business process is deployed successfully, a message will appear on screen as shown below.
From Database Configuration User can view the target environment and edit it for deploying to other environment by editing the property directly in database as follows.
Open DB Visualizer application or any other database access tool. Create connection to access database of the Process Designer. Choose pd schema and open ms_project_config table.
In this table user can change properties related to the deployment environment.
The properties that need to be edited are as follows.
DEPLOYMENT_DB_DRIVER - the driver for target database. DEPLOYMENT_JDBC_URL - the URL of target database. DEPLOYMENT_JDBC_USERNAME - username to authenticate to target database. DEPLOYMENT_JDBC_PASSWORD - password to authenticate to target database. DEPLOYMENT_JNDI - JNDI for database connection. When DEPLOYMENT_JNDI is set, it will be used and other values are disregarded.
After environment of deployment is changed, user can deploy the process to that environment.
In PD when a process instance reaches a Human node Task, the task is assigned to a human user based on the Work Party and Task Allocation method as specified in the Assignment Policy tab. Once a task is assigned to the user, the user can login to ONEWEB and access this task using "ToDo List" functionality. To see the results as expected on assigned work party's ToDo List, the work party has to be defined correctly by user. Details on how to configure and are explained in their corresponding sections.
In order for the tasks to be shown on the screen correctly, the entity screen to be loaded must be defined on Load Entity Tab in the Human node task. The entity screen is created using the App Designer (AD). The details of how to create an entity screen are explained in . On Load entity tab, the key of entity have to be mapped with the Business Object (BO) parameter in order to send the data in Business Object to the entity screen. The details of Load Entity tab are described in the section.
How to use ToDo List Once a user logs in successfully, To Do List menu is shown as the sub menu of Work Zone on the left side menu panel. The To Do List screen is shown in the figure below.
1. The first section shows the name of the process that has assigned the task to the user.The first section shows the name of the process that has assigned the task to the user.
2. The second section shows the name of the task that is assigned to the user. This section has two importance icons
3. The last section on the right side is where the task monitor screen is loaded. However, the first time this section loads up it simply display a graphic animation.
Once a process is completed, user will need to test it before migrating it to other environments. For this ONEWEB provides the Simulator utility.
How to use Simulator? Once the process is validated successfully, click on the Simulation Test tab. Here user can provide the input for testing in JSON format. User can test the process until completion by clicking on the Complete button by changing the inputs accordingly. For more details check section
Once a process is deployed, user can test that process by using any REST client like the Postman.
How to test using Postman?
When you open Postman Application, you must configure the value for testing.
Set request method type as POST.
Set URL: http://{IP}:{Port}/BPMREST/service/runtime/process/{Process name}/start for starting flow.
Click setting Body.
Choose data as raw.
Choose data type as JSON (application/json).
Enter JSON data for input parameter of the process.
Now click Send button and view response text in response panel of the Postman.
On response panel, user will receive Instance ID on data property of JSON text. When instance id is sent, it means the flow has started.
User can use Instance ID to get task id by calling the task service. Set request method type is GET, set BODY is empty and use url as follow. http://{IP}:{Port}/BPMREST/service/runtime/instance/{Instance ID}/tasks
When user want to claim task or complete task, user can bring Task ID and user name for working to set in url as follows. http://{IP}:{Port}/BPMREST/service/runtime/tasks/{Task ID}/claim?user={Username} http://{IP}:{Port}/BPMREST/service/runtime/tasks/{Task ID}/complete?user={Username}
In a process or workflow, when a process instance reaches the human node task, system requires that the human node task be assigned to a work party and the work party should have users based on role or user id. In previous versions of ONEWEB when a user creates a workflow and add a new user to the work party, he needs to manually update the user table in the designer and runtime.
But from version 4.0.19.09 there is a sync feature in the work party screen to add the user to the runtime environment as well
How to add a new user to runtime? In the Work party screen inside the application, you can see the Sync user button.
Click on the Sync User button to synchronize the user across the designer and runtime environments
Choose the environments for sync and enter the details and click on the Sync User button to sync the user.
When a user deploys a process, any client who has access to the process can submit jobs to it. Every time a new job is submitted, a process instance is created. But suppose the user modifies the process and deploys the updated process, a new version of the process is created. With older versions of ONEWEB, any live process instances already running will still use the older version of the process, only the new jobs submitted will create process instances as per the new version of process.
But from version 4.0.19.09, Process Designer provides the utility to migrate existing live process instances to a newer version of the process.
How to migrate a process instance Go to the process instance migration menu.
Choose the source and destination versions of the process
Choose the source and target activity name and click Add Migration button.
System opens the mapping screen to map the parameters. Simply map the parameters by linking the parameters on the left to corresponding ones on the right. Click Done.
Now click on the Save button on the main screen, enter the name for the plan and click Save on the dialog. The migration is created.
Once saved user can view all plans under the 'View All Plan' button.
User can view or edit these plans by clicking on the View button.
User can also export this migration plan to be imported to any runtime environments to migrate the process instances in that environment. When click Export Plan button the file is downloaded into the user's machine as a jar file.
NOTE: Please note that only human tasks can be migrated. Also, if the process has a sub process, the sub process needs to be migrated separately.
How to import the migration plan to a runtime environment? Once a migration plan is created, user can export the migration plan from the designer and import to the runtime environment using the API Gateway screen provided by the BPM server.
Go to the Migration tab under the BPMREST services API Gateway screen (https://<>/BPMREST/)
Click on Import Migration button to import your migration plan
Browse the migration plan file which was exported from your Process Migration screen in the Designer. Click Import button.
Click on the migration ID to open the plan.
Click on Migrate button to apply this migration plan on the corresponding runtime environment.
Use the Database Task to execute database commands.
The Database Task is used to execute database commands. Most processes rely on some information from database to execute jobs or complete process flows. Business processes may often require to Select, Insert, Update or Delete data from database, and pass such values to other nodes to complete process flows. Process Designer provides this functionality using Database Node tasks.
Database Node Configuration settings panel has 3 tabs to define properties.
General
General Tab contains general information such as title, task id etc.
Business Object
Used to configure and map the Business Object for input and output for the node.
Database Parameter
Java Naming and Directory Interface (JNDI) is a directory service that allows Java software clients to connect database via a name. When "Connection type" is selected as "JNDI", user must enter JNDI Name.
Java Database Connectivity (JDBC) is standard application programming interface, which defines how a client may access a database. It is Java based data access technology and used for Java database connectivity. When "JDBC" is selected as "Connection type". User must also enter value for JDBC.
In Database Parameter tab, "Open Mapping Parameter" button is used to map parameters of Database Node task. When click Open Mapping Parameter button, the system will redirect user to Mapping Parameter screen and then user can click Mapping Parameter Input line or Mapping Parameter Output line to mapping parameter for this Database Task.
This icon is used to open task monitor as shown in the figure below. The human node task that sends this task to the user is highlighted with the blue line. The task monitor is explained in section 6.4.7.2 Task Monitor
This icon opens the entity screen that is defined in the Load Entity tab of human node task. The example of the entity screen in task assignment is shown in the figure below.
Click on the button to map the parameters from the activity in older version to the activity in newer version.
Property
Mandatory
Default
Description
Configured by
Y
To define configured. There are 2 types: Process Designer this config is mean user need to config by self and Data designer is mean user use config from sql-builder
Connection type
Y
To define the type of database connection. There are 2 types: JNDI and JDBC.
Command Type
Y
To define the type of database command used. There are 4 options as following: Select, Insert, Update and Delete.
Command
Y
To define the SQL command to be executed in database.
Property
Mandatory
Default
Description
use environment
N
Unchecked
If user chooses use environment checkbox, then system will display the list of environment variables for user to choose. User can set the JNDI Name in the environment variable setup screen and choose the variable in the configuration panel.
JNDI Name
Y
Name of JNDI for database connection. If user chooses use environment then select the environment variable corresponding to JNDI Name.
Property
Mandatory
Default
Description
JDBC Database Driver
Y
The class name of the database driver for database connection.
use environment
N
Unchecked
If user chooses use environment checkbox, then system will display the list of environment variables for user to choose. User can set the JDBC URL in the environment variable setup screen and choose the variable in the configuration panel
JDBC URL
Y
To set the address of database for connecting database. If user chooses use environment then select the environment variable corresponding to JDBC URL.
JDBC Username
Y
Username for Authentication. If user chooses use environment then select the environment variable corresponding to JDBC UserName.
JDBC Password
Y
Password for Authentication. If user chooses use environment then select the environment variable corresponding to JDBC Password.
With version 4.0.19.10 ONEWEB provides a very powerful feature to create custom activity nodes and use these custom nodes in your workflow or share with other users. These custom nodes are called extensions. These extensions can be a simple node to query your internal database, or a complicated proprietary node to connect to a block chain server as well. Users can create the extension once and then use it in every application by installing the extension to the application. Users can also share their extension with other ONEWEB users. Once the ONEWEB MarketPlace is up, users can even sell their extensions in the MarketPlace.
The following section explains how to build a workspace to create your extension, how to build the extension in your workspace and finally how to install the custom extension on an application to use it in the workflow.
Please Note: The same extension jar file can be used in both Process Designer as well as Microflow Designer.
To install the extension, go to the Extensions menu in Process Designer. Click on the Install Extension menu under the Extensions icon.
On the Install Extension page, browse for the jar file you build from the workspace. Click on the Get Class Name button to retrieve the execution class name. Verify the other details retrieved too.
Users can preview the input and output Business Object also by clicking on the View button. Users can see the look and feel of the node also under the Node Extension Heading
Once verified everything, click on the Install Extension button to install the extension. The User will get a confirmation message to save the installation is successful.
There is also a Store to manage your extensions in an application. Open the Store Extension menu under the Extensions icon .
In the Store user can enable / disable the different extensions and also delete unwanted ones. Click on the Save button to save the changes to the application.
Copy and unzip the workspace downloaded from the Process Designer to a suitable folder. Use any Eclipse-based IDE with maven installed to open the java project and create your implementation. There are three classes that need to be implemented.
NodeExtentionExecute - Override the execute method to include the custom implementation. InputModel - Define the input Business Object for your custom node. OutputModel - Define the output Business Object for your custom node. Supporting classes - You can create other supporting classes as you wish as in any regular java project. But do not change the name or package of the above three classes.
Once complete you can maven build your project to generate the jar file. When the Build is successful, the jar is generated in the target folder.
In Process Designer we have a new Menu to deal with Extensions. Click on the Build Workspace menu under Extensions icon .
Enter the details for your extension
User can also design the look and feel of the custom node while creating the workspace. Drag and drop the custom icon to the 'Browse File' panel to create your custom node icon. And you can change the node background color by clicking on the Node color field. User can preview the look and feel of the nodes under the Node Extension heading.
User can also create the data need to be displayed on the Extension tab as a Json, by clicking on the SET button at Json Generate Form field.
User can also view the different sample configurations in the Example tab.
Once the configurations are entered, user can preview all the details under the Node Extension heading. Once everything is verified, user can click on Build Workspace button to build and download the workspace. The workspace will be downloaded to the user machine as a zip file.
Once an extension is enabled, it becomes available for the users to use under the Activity tab. Users can simply drag and drop the activity node to the canvas just like any other activity node and configure the properties.