Top
Top
LibraryEASYProcess Reference Manual 5Workflow

Workflow Overview

A Workflow is an execution flow of statuses and logic defined by users. The flow is directed from Start to End, by connecting directional lines to different statuses. Each status has multiple exits. You can create your own logic inside each status and decide which exit to go.

Workflow is widely used for requests approval, such as Procurement/Requisition Approval, Purchase Order Approval and New Address Book, Customer, or Vendor Approval. The built-in mechanisms allow for delegation, watcher assignment, and notification emails at various steps within the Workflow.

A Workflow must be associated with an Entity. If you have any questions about Entity, please refer to Entity/Database document for further information.


Workflow Owners
Flow of a Workflow Request
Workflow Home (Work with Workflows)
Screens Related to Workflow
Workflow Canvas

Workflow Owners

Static Status Owners

Static Status Owners are defined within the status. This is only useful when it will be the same user every time for that status.

Static owners can be any of the following:

  • User - This would be a UserId from the EPUsers table
  • Role - You need to define a Role and add users to the Role. You would select the RoleName as the Owner Id
  • UserProperty - This can be any element of the EPUsers table. For example, if you choose AuthorizationType as the OwnerId, and Manager as the Owner Property Value, all users with AuthorizationType of Manager would be an owner for this status.

Dynamic Owners

Dynamic Owners are almost the same as a Static owner, but you guessed it! It's dynamic!

You can set dynamic owners in the Status Arrival Process of the status with the AssignOwner Workflow Service. The only difference between a static and dynamic owner is that you can pull the properties from anywhere since it's set in a process.

Same rules apply with the properties:

  • User - This would be a UserId from the EPUsers table
  • Role - You need to define a Role and add users to the Role. You would select the RoleName as the Owner Id
  • UserProperty - This can be any element of the EPUsers table. For example, if you choose AuthorizationType as the OwnerId, and Manager as the Owner Property Value, all users with AuthorizationType of Manager would be an owner for this status.


Flow of a Workflow Request

The Create Service is called with an EntityId.

This will generate an entry in the EP_Workflow_Request table with a unique WorkflowRequestId tied to the EntityId specified. This will also cause that Workflow Request to arrive at the first Status after the Start in the Workflow Canvas.

The Status Arrival Process (The top gear / process on a status) for the first status is called and an owner is assigned

This is where you would normally assign an owner with the Assign Owner Service. Alternatively, you can assign a static owner for that status in the static owners button of that status. You can also use this process to send out an email to the owner of this status notifying the request is awaiting their approval. The Request is now created and is sitting at that status until another action is taken.

A Manager will see the request and take action by hitting an approve or deny button.

This button will call the Execute Workflow service passing in an Action and Comment as an input.

The execute workflow service will trigger the Status Complete Process (Middle gear/process on a status) for the current status.

The Status Complete Process will use the action input (from the Execute Workflow service) to decide which Status Exit to take based on the action defined. The most basic logic will include

  • If Action = Approve exit with the Approve Status Exit
  • If Action = Deny exit with the Deny Status Exit

The Status Exit Process is called if we exit that status

This can be used for any logic required after exiting that current status

We arrive at the next Status

The next status could be a new Status where we would start from Step 2 again. Or, it could be the End status in which the workflow would terminate. Normally, the last status will be some kind of Update JDE status that will update the data into JDE.


Workflow Home (Work with Workflows)

1) Workflow List

This shows all workflows in the application. The list can be filtered with the lookup textbox and “Find” button. This can be used to search by Workflow Id, Workflow Name, and Workflow Description. Click the “Refresh Data” to undo any filtered searches and return to the full process list. One or multiple processes can be selected at once with the use of the “Ctrl” and “Shift” keys.

2) General Workflow Actions

Design New Workflow - Used to create a new Workflow. This selects the next available Workflow Id and allows the user to type a Name, Description and Entity Type

Build All Workflow - Build all Workflows that exist. This can take very long depending on how many Workflows exist.

Rebuild All Workflow - Rebuild all Workflows that exist. This can take very long depending on how many Workflows exist.

3) Selected Workflow Actions

Design - Open the selected Workflow. Only one Workflow can be selected.

Delegates - Open the Workflow Delegates screen.View all delegation information about the selected Workflow.

Roles - View and edit all the roles in the selected Workflow and users in each role.

Build - Build the selected Workflow(s). One or multiple workflows can be built. If many are selected, it may take very long. After the building is done, a message displays the Workflow Ids the action was performed on. This can be used to verify the full list of many Workflows were correctly selected.

Rebuild - Rebuild the selected Workflow(s). One or multiple workflows can be rebuilt. If many are selected, it may take very long. After the rebuilding is done, a message displays the Workflow Ids the action was performed on. This can be used to verify the full list of many Workflows were correctly selected.

View Logs - This opens an Application Logs page for the selected Workflow. Only one Workflow can be selected. Logs are generated when logs are on and the Workflow is run.

4) Workflow Task Scheduler

Workflow Windows Scheduler - This will open the EASYProcess Window Scheduler screen. You can associate the selected Workflow to Windows Scheduler.


Screens related to Workflow

Workflow Delegates

This screen will be open when you click Delegates. It shows all the delegates information for the selected Workflow. You can only view the info here. You need to build a web part if you want to add/remove delegates.

Roles

This screen will be open when you click Roles. It allows you add a new role using the text boxes at the top and shows all the roles for the selected Workflow.

You can Edit or Remove existing roles in the Workflow by selecting one role and click Edit Role or Remove Role. Once you click Edit Role, a new window pops up and allows you to change the description to the selected role.Once you click Remove Role, a message pops up to confirm if you want to remove the selected role.

You can also edit the users in the selected role by clicking Role users. It opens the following Role User screen. It is very similar to the Roles screen. You can add User Id to the selected role at the top and edit User Id or remove user from the role by clicking buttons on the right. It’s recommended to use the User Ids existing in EPUsers table, since it’s easy to retrieve and maintain in other workflow tables. You are free to use any other Ids here as long as it matches your logic.

EASYProcess Windows Scheduler

This will be open when you click Workflow Windows Scheduler button. You need to setup this scheduler when any of your workflows has a auto-run Status. You don’t need to select a workflow to do this since it is a global setup for all workflows. The task details are pre-populated for you. You need to finish the Authentication section to associate the EASYProcess Workflow Engine to windows scheduler in order to let EASYProcess run those Status automatically. It is recommended to use a service account here since any local or user account might expire and affect the scheduler.

The green message on top means the scheduler is added successfully and you can go to Windows Task Scheduler to setup the triggers. Once you don’t need it, you can click the Disassociate from Windows Scheduler to remove it.

There is another way to let EASYProcess run the auto-run Status, which is the Batch Job under Profile and Configuration. You can refer to Batch Job document to find more information.


Powered by EASYProcess (© 2019 K-Rise Systems, Inc).