The description below is for the standard workflow and configuration set up. Many customers have plugins to give additional or more complex workflow routing scenarios and then this description may not be relevant.
The standard decision tree is /PROMENTA/WSFI_JP005_APP_RULES
Decision Tree Structure
The decision tree is split into sections – some control the config and some control the actual process flow of the workflow
Groups : Defines grouping of lineitem data to be used in workflow routing (eg groups of GLs)
Value levels : Defines the approval thresholds to be used
Phase List : Defines the phases of workflow approval (pre-approval , main approval and post approval)
Groupings are master data items which can be grouped together to enable the wporkflow to make routing decisions.
Business Example :
You may define a group of GL accounts that are classed as “expense” accounts. You may define another group of GL accounts as “income” accounts.
Then you can define workflow routing such that all journal request containing “expense” accounts can be sent to one team and all income accounts sent to another team.
Available master Data objects
You can create a group based on : GL accounts [HKONT], Cost centres [KOSTL] or profit centres [PRCTR].
A group definition is split into the group basic data (its type = GL, cost centre etc) and its values
Config Example :
Account Group id GL1 – is defined as GL account [HKONT] with a range of values : X110000 and between 200000 and 400000
Use in routing node is formatted as follows :
Parameter DATAKEY Value : GROUP_<id of group>=FOUND
Showing routing for group GL1
The journal value is the calculated amount that is used to define the “Value” for workflow routing.
Tree : /PROMENTA/WSFI_JP005
Node : Config –> Workflow Config –>WF Additional control settings
This calculates the total debits/credits for the journal. This is the default behaviour if nothing is specified
This extracts the highest single lineitem and uses that as the approval amount
In the case of multiple journals in the same sheet the following additional settings can be made. It is recommended to align with the single-sheet settings above
Use the first found sheet result as the routing value. This is the default behaviour to align with legacy applications
Use the highest total value across all sheets. This is sued in conjunction with APPR_AMOUNT_CALC=TOTAL
Use the highest single lineitem value across all sheets. This is used in conjunction with APPR_AMOUNT_CALC=HIGH_1
Value ranges are used to categorise the request according to its journal value (see above). The value range is converted into the Approval currency first so that all requests can be categorised in the same way.
Value ranges can differ by process code and also by company code.
In the example below the range for “non-recurring” journals has 3 levels.
- Level 0 = between 0 and 99,999
- Level 1 = between 100,000 and 499,999
- Level 2 = between 500,000 and maximum
Routing – Overview
Routing rules define how the workflow actually directs the requests based on the values in the request and the parameters defined above (groupings, value levels etc)
Values are iterated until the top for each request. So if a journal has value level 2 – it will go for approval at level 0 and then level 1 before it goes to level 2.
Routing can be broken into 3 phases for added flexibility. Each phase can contain multiple approvals and use all of the values and parameters available.
Phase 1 : Pre-approval.
Use this when you need to first route a request to a team for validation or other activity before it can go into the “main” approval flow
Phase 2 : Main approval
This is the main approval where the business approvers are determined and routed to.
Phase 3 : Post-approval
Use this when you need to route to a team after all business approvals are received. This team may perform additional technical activities such as checking on impact to period close etc.
Posting only occurs after all approvals across all 3 phases are completed.
Some organisations need to route and control their workflow based on the number of days after period close the request is as this can have an impact on the closing process. Promenta can determine the number of days after the close period (close-plus days) CP Number.
This information can then be used in workflow routing to achieve additional approvals or prevent submission.
Routing is determined by evaluating the decision tree multiple times per value level.
The tree structure is flexible but each evaluation must result in an approval group (team of approvers). Over several iterations a complete approval flow for the specific request will be built.
Available parameters to make routing decisions on:
- Phase (see above) [ Field PHASE Value <phase number>]
- Journal value level (see above) [ Field LEVEL Value <level number> ]
- Workflow groupings (see above) [ See above for usage]
- Process code [ Field DATAKEY Value “PROC_CODE=<selected process code>” ]
- Multiple docs indicator [Field DATAKEY Value “MULTIPLE_DOCS=YES” ]
- Company code [ Field DATAKEY Value “BUKRS=<comp code>” ]
- Transaction code [ Field DATAKEY Value “TCODE=<transaction code>” ]
- Document Type [ Field DATAKEY Value “BLART=<doc type>” ]
- Close-plus days [ Field DATAKEY Value “CP_NUM=<number of days>” ]
In the example below the routing rule evaulates :
For Phase 2 (main) –> for all process codes –> company P100 –> Journal Value level 0 (0 to 99,000) –> Approval group is JP5_LEVEL_0.
Approver user ids can be attached to JP5_LEVEL_0.
Sometimes it is required to allow the requester to select one or more approvers (determined by the workflow rules) instead of routing to an entire team. This feature can be activated but requires addition consultancy from Promenta.
[TECH note : /PROMENTA/WSFI_JP005, WF_CONFIG, SETTINGS, APPR_OVR_STRUC=-IM]
Multi-Document Approval Amount
Since SP34-6 : When a request contains multiple documents workflow approval amount can then be determined via configuration.
This configuration is carried out in tree /PROMENTA/WSFI_JP005 (or override) node –>WF_CONFIG–> SETTINGS
MULTI_WF_MODE=HIGHTOT : Choose the highest individual document total as the approval amount
MULTI_WF_MODE=FIRST : Choose the first sheet as total. This is the legacy mode.