Configuration Tables (Approval Workflow)

There are three price parameters to configure behavior of Approval Workflow Package:

  • Approval Workflow Setup – Defines a list of approval steps in the approval workflow for each type.

  • Approvers – Defines a list of persons/groups who approve/deny the approval step.

  • Approval Conditions – Defines condition under which the the approval step will appear in the approval workflow.

Those three tables are linked together by a unique combination of fields Workflow Type and Step ID. When you write new records to those tables, ensure that you use matching values of those keys.

In this section:

Price Parameter “ApprovalWorkflowSetup”

Defines a list of approval steps for a given type of document (Workflow Type).

Example of approval workflow steps definition

Column Name

Description

Column Name

Description

Workflow Type

Unique name for your approval workflow. You will reference this value from your workflow logic, so this could be any text value of your choice, but generally we recommend to stick with the names suggested in our code samples, like Quote, PriceList, PriceGridItem, Rebates, RebateRecord, DealPlan.

Note: If you use different workflows for different Quote Types, use different values for this field – e.g., “Quote1”, “Quote2” – and then refer the proper value from your workflow logics.

Step ID

Unique ID of the approval step. There is no naming convention/rule for the value of Step ID, you can use any text value. Generally we recommend a number. Steps are sorted by their IDs.

Step Label

Label of the approval step. It is displayed to the business user in the list of workflow steps.

Reason

Description of the reason why this approval step is needed. This text will be displayed to the creator in the list of approval steps. It is also displayed to the approver, so they understand why they are asked to approve or deny. The text can also be part of the workflow email notifications.

Skip

Decides if this step will be used in the approval workflow or not. You can select from two values:

  • "Yes" – This step is not added into the workflow. You can use this value to hide (not use) the step.

  • "No" (or empty) – This step is added into the workflow.

Step Type

Decides if this step is a request for approval, or only a watcher. You can select from two values:

  • “Approval” (or empty) – The step will request some approvers to approve or deny.

  • “Watcher” – Users selected in this step will only get notification but will not be asked to approve or deny.

Min Approvers

How many people must approve this step, so it is considered approved. This setting is valid for approvers with the type GROUP only (approvers are defined in the price parameter Approvers). For other approver types, keep empty.

Possible values:

  • (Empty) – Only 1 approver must approve.

  • Number – Specified number of approvers must approve, so that this step is approved.

Note: The attribute1 field is no longer needed, now it just holds legacy information and is kept only for upgradability reasons. There are also other columns, hidden by default, which are system fields and are not related to the accelerator.

Price Parameter “Approvers”

Example of definition of approvers for workflow steps

Column Name

Description

Column Name

Description

Workflow Type

Name of the document/workflow type. This value links the approver to the workflow step, so the value must match a value of Workflow Type in the Price Parameter ApprovalWorkflowSetup.

Step ID

ID of the approval step. This value links the approver to the workflow step, so the value must match a value of Step ID in the Price Parameter ApprovalWorkflowSetup.

Approver ID

Unique text ID of the approver within the same workflow step. If you have more approvers for one step, ensure you use different values of Approver ID. This value could be any text, but generally we recommend to use numbers.

Approver Type

Type of the approver. You can select one of these values: USER, USER GROUP or BUSINESS ROLE.

Approver Name

Name of the approver (mandatory value).

  • For approver type USER GROUP, enter a name of a user group.

  • For approver type USER, enter a login name.

  • For approver type BUSINESS ROLE, enter a name of a business role.

Note: The name of login, group or business role must match exactly the definition in Administration > Access Admin.

Skip

Decides if this approver will be used in the workflow step or not. You can select from two values:

  • "Yes" – This approver is not added into the workflow step. You can use this value to hide (not use) the approver.

  • "No" (or empty) – This approver is added into the workflow step.

When you need more approvers for the same approval step, you add more rows to the Price Parameter Approvers.

Price Parameter “ApprovalConditions”

Defines conditions under which the workflow step appears in the workflow.

Column Name

Description

Column Name

Description

Workflow Type

Name of the document/workflow type. This value links the approver to the workflow step, so the value must match the value of Workflow Type in the Price Parameter ApprovalWorkflowSetup.

Step ID

ID of the approval step. This value links the approver to the workflow step, so the value must match a value of Step ID in the Price Parameter ApprovalWorkflowSetup.

Condition ID

Unique text ID of the condition within the same workflow step. If you have more conditions for one step, ensure you use different values here. This value could be any text, but generally we recommend to use numbers.

Condition Description

Text describing the condition. It helps you understand what the condition does.

Condition

Boolean expression which is evaluated to determine if the workflow step should be added to the workflow or not.

The workflow step is added to the workflow if:

  • either the condition expression result is true;
    or

  • the condition expression is left empty.

For details see Condition Expressions (Approval Workflow).

Skip

If set to Yes, the condition is not checked (not used) and so the approver will always be in the workflow.

If set to No, the condition is checked.

Note:
You can combine the condition of values on a header and line item, line item and line item of the same level within one condition row. But there is currently a limitation: when combining a line item with another line item of a different level (folder), you have to have two separate rows.

Further reading: