A Workflow Business Rule is the most basic element of your workflow approval process. Here are the required details needed in order to create a new business rule.
Process: This tells the system WHAT the business rule is for.
There are hundreds of "processes" that happen every day in Munis and you could require any of them to go through an approval workflow but the most common ones you will use are for things like Requisition approvals, Invoice approvals, Contract approvals, etc. Each of those transactions carries a different code. The first step in creating a business rule is to define which process code this business rule should look for.
Here's an example: When an Accounts Payable Invoice is entered into the system it automatically has an API code attached to it (because it's an invoice) so Munis looks for business rules coded to "API" and tries to match it up based on the rest of the criteria.
Process Codes: Here are the most common codes currently being used (contact IT for a complete list) | |
Accounts Payable | APC: AP Purchase Cards API: AP Invoice Approvals POM: PO Change Order RCP: Requisition Convert to PO REQ: Requisition Approvals RQC: Requisition Conversions VIA: Vendor Addition VIU: Vendor Update |
Budgeting | BGT: Budget Transfer Approvals |
Contract Management | COE: Contract Approvals COM: Change Order Approvals |
Capital Asset Management | FAP: Capital Asset Activation FAS: Capital Asset Disposal |
General Billing | GBA: General Billing Invoice Approval |
Grant Management | GRA: Grant Application Approvals |
Project Accounting | PAF: Project Funding Source Strings PAS: Project Expense Strings PAV: Projects |
HR Employee Actions | PMB: Personnel Actions Benefit PMN: Personnel Actions New Hire PMO: Personnel Actions Other |
Approvers: This tells the system WHO the business rule is for.
For consistency, maintenance and security, rules should never be made for single individuals. They should be made for "Roles". Our workflow roles always follow this naming convention
WF_APRV_HS_M_XXX
WF: Workflow | APRV: Approver | HS: Health Services (or other Department) | M: Manager (or other level) | XXX: Sub-department.
People can added to and removed from these roles very easily.
Business rules can be added to or removed from the roles (though less easily than people)
BEST Practice is to create/maintain a very limited number of roles. When you have a new set of transactions which needs to go through workflow approvals, attempt first to add those transactions to roles you already have in the system by creating new business rules ON Existing Roles. Consider that every time you add a new WF_APRV Role to your collection you will be adding exponentially to the time/effort required to maintain the accuracy and reliability of your system so it's important to make every effort to avoid making new roles when possible. It's also wise to avoid segmenting your business rules into substrings and detail strings because that will also complicate your upkeep even more. |
Step: This tells the system WHEN to use the business rule.
The lower the step number, the earlier this rule will apply. Our Deschutes County step structure is as follows:
Step # | Description |
5 | Finance Approves Coding. Do not make business rules for steps lower than 5 |
10 | |
15 | |
20 | |
30 | |
35 | |
40 | |
45 | |
50 | |
60 | |
70 | |
80 | |
99 |
Type: This tells the system HOW to apply the business rule.
The options available in this list vary depending on which process code was chosen in the first step. Business rules can be based on Amounts, Budgets, General Ledger segments, Project Ledger segments, etc.
Most rules are based on Segment and/or Amount of the transaction. If you want special business rules based on something else please work with IT to design them
Business Rule types: Here are the most common types currently being used (contact IT for a complete list) | |
AMT | Dollar Based |
CHG | Charge Code |
COD | AR Code |
CSA | Segment and Change Amount |
PE1 | Project Accounting - Segment and Amount (Expense) |
SEG | General Ledger Segment |
SOA | Segment and Amount |
VEN | Vendor Based |
Rule Type: This tells the system whether this rule is an Approval (requires the receiver to take action by approving or rejecting) or a Notification (the recipient sees it but does not need to do anything)
Group Approvers: This tells the system what to do when there is a Group of Approvers assigned to the business rule.
The options are:
First Approver can complete this group: When this is selected the system will accept the first approval, auto approve for everyone else in the group and then pass the transaction on to the next Step it can find.
All Approvers needed to complete this group: When this is selected the system will wait until everyone on this rule has seen and accepted the transaction before passing it up to the next step.
Simple Majority of approvers needed to complete this group: When this is selected the system will wait until 51% of the approvers on this rule have seen and accepted the transaction before passing it up to the next step.
Percentage of approvers needed to complete this group: When this is selected you can choose what percentage of approvers need to see and accept the transaction before passing it up to the next step.
Segment: This section allows you to define logic rules for which transactions should be included in the rule.
If you're working with GL accounts you can define your segment from the following details:
Code | Description |
2 | Department |
3 | Division |
4 | Program |
5 | Function |
6 | Activity |
7 | Future1 |
8 | Future2 |
B | Object |
F | Fund |
O | Org |
P | Project |
If you're working with Project Ledger you must choose one of the Project Accounting "Types" (see options above) and then you can define your segment from the following details:
Segment | Description |
1 | Project |
2 | Category |
3 | SubCategory |
4 | Detail |
BEST Practice is to define segments at the top 1 or 2 levels except in very special circumstances When you begin to break down business rules at multiple detail levels it becomes extremely difficult to ensure that you have included all the possible combinations of detail on any given project. It also creates a situation where long-term upkeep requires extensive documentation so that the person maintaining or changing the system knows what practices were followed in order to keep consistency over time. |