Fields:
- ID - This is a unique ID that will be used in the ABAP user exit to determine if the Requirement is true or false.
- Description - This is the friendly name that is shown in the workflow designer when configuring the requirements in Tasks and Task Outcomes.
Requirements are used to control two sets of behavior:
Tasks
Tasks have associated Requirements that will inform the workflow engine whether that task should be executed or not.Example
The Second_Approval task could be configured with a requirement to only execute when the Total is greater than $1,000. This would mean that if the requirement wasn't met, the workflow engine would skip the Second_Approval Task.
IMPORTANT: If you decide to use this recommended configuration, the appropriate positive action on the Second_Approval task should be set with the Default Path option.
Task Outcomes
Task actions have Outcomes. Each outcome can also be configured based on a Requirement. This is an alternative to the above method.Example
In the following example, we have configured the Outcome Tasks for the First_Approval task to either take the user to the Second_Approval or the Complete task. The Requirements have been configured on the Outcome Task to go to the Second_Approval Task if the Total is greater than $1,000 and directly to the Complete phase if the total is Not greater than $1,000.
Determining whether a Requirement is True or False
To determine if a requirement is met or not, the ABAP user exit "Evaluate Task/Outcome Requirements" should be implemented.
An example of how to implement the Value Greater than $1,000 example is shown below. The code checks the Data Model for a Field called TotalAmount and will set the e_required field true of false accordingly. This example is working with the Requirement with ID of VALUEGT1000 but as many requirements as needed can be placed in the CASE block.