MAINTENANCEHR record change in progress
Active case · loading…
R

RefBook

stands in for · Standards (SharePoint/Excel) -> DMN decision tables
Which reports/params/naming/routing (Steps 6-7)

Resolve a rule

What an operator does by eye against the spreadsheet: pick the scenario inputs and see which rule fires, and what it outputs. First-hit DMN policy.

Recent resolutions

Open a resolution to see every comparison, the governed outputs, why the rule matched, and which downstream system uses each result.

No lookups yet — resolve a scenario above.

DMN decision table — report / parameter / approval selection

DMN 'first-hit' policy: inputs (scenario × region × population × payroll type) → outputs (reports, approval workflow, parameter defaults, naming). This replaces the operator squinting at a spreadsheet. Rules are config, not code — the ops team owns them.

Evaluation order: smallest rule ID first; the first complete match wins. Open any rule below to inspect both its conditions and its complete governed output.

R-01 · termination · CA-ON · * · off_cycle 4 reports · WF-TERMINATION-DUAL

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenarioterminationterminationmatched
RegionCA-ONCA-ONmatched
Population**matched
Payroll typeoff_cycleoff_cyclematched
Reports sent to BookingHub
  • Final Pay Register
  • Record of Employment (ROE)
  • Termination Audit
  • GL Distribution
Approval route sent to ApprovalFlowWF-TERMINATION-DUAL
Booking name patternOFFCYCLE-{region}-TERM-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.0
Validation Optionsstrict
Why this rule exists
Ontario terminations require a Record of Employment filed with Service Canada; ESA termination/severance pay is evidenced on the Final Pay Register.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-02 · termination · CA-BC · * · off_cycle 4 reports · WF-TERMINATION-DUAL

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenarioterminationterminationmatched
RegionCA-BCCA-BCmatched
Population**matched
Payroll typeoff_cycleoff_cyclematched
Reports sent to BookingHub
  • Final Pay Register
  • Record of Employment (ROE)
  • Termination Audit
  • GL Distribution
Approval route sent to ApprovalFlowWF-TERMINATION-DUAL
Booking name patternOFFCYCLE-{region}-TERM-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.0
Validation Optionsstrict
Why this rule exists
BC terminations also require an ROE; BC ESA §63 length-of-service compensation shows on the Final Pay Register, and the 48-hour final-pay deadline forces an off-cycle run.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-03 · termination · US-CA · * · off_cycle 4 reports · WF-TERMINATION-DUAL

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenarioterminationterminationmatched
RegionUS-CAUS-CAmatched
Population**matched
Payroll typeoff_cycleoff_cyclematched
Reports sent to BookingHub
  • Final Pay Register
  • CA Itemized Wage Statement
  • Termination Audit
  • GL Distribution
Approval route sent to ApprovalFlowWF-TERMINATION-DUAL
Booking name patternOFFCYCLE-{region}-TERM-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.0
Validation Optionsstrict
Why this rule exists
California requires immediate final pay plus an itemized wage statement (Labor Code §226); waiting-time penalties attach to late final pay, so this books off-cycle.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-04 · termination · US-* · * · off_cycle 3 reports · WF-TERMINATION-DUAL

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenarioterminationterminationmatched
RegionUS-*US-*matched
Population**matched
Payroll typeoff_cycleoff_cyclematched
Reports sent to BookingHub
  • Final Pay Register
  • Termination Audit
  • GL Distribution
Approval route sent to ApprovalFlowWF-TERMINATION-DUAL
Booking name patternOFFCYCLE-{region}-TERM-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.0
Validation Optionsstrict
Why this rule exists
US federal baseline for terminations: final-pay register + termination audit; state-specific statements are added by the region rules above when they match first.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-05 · termination · * · * · off_cycle 3 reports · WF-TERMINATION-DUAL

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenarioterminationterminationmatched
Region**matched
Population**matched
Payroll typeoff_cycleoff_cyclematched
Reports sent to BookingHub
  • Final Pay Register
  • Termination Audit
  • GL Distribution
Approval route sent to ApprovalFlowWF-TERMINATION-DUAL
Booking name patternOFFCYCLE-{region}-TERM-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.0
Validation Optionsstrict
Why this rule exists
Global fallback for a termination in a region without a specific rule — core register + audit; flag for ops to confirm local statutory reports.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-10 · off_cycle_bonus · * · Sales-Commissioned · off_cycle 3 reports · WF-INCENTIVE-STD

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenariooff_cycle_bonusoff_cycle_bonusmatched
Region**matched
PopulationSales-CommissionedSales-Commissionedmatched
Payroll typeoff_cycleoff_cyclematched
Reports sent to BookingHub
  • Bonus Register
  • Commission Reconciliation
  • GL Distribution
Approval route sent to ApprovalFlowWF-INCENTIVE-STD
Booking name patternOFFCYCLE-{region}-BONUS-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.01
Validation Optionsstrict
Why this rule exists
A commissioned population's bonus must reconcile to CompHub's incentive calculation (Commission Reconciliation) before it can book — the amount can't be operator-chosen.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-11 · off_cycle_bonus · * · * · off_cycle 2 reports · WF-INCENTIVE-STD

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenariooff_cycle_bonusoff_cycle_bonusmatched
Region**matched
Population**matched
Payroll typeoff_cycleoff_cyclematched
Reports sent to BookingHub
  • Bonus Register
  • GL Distribution
Approval route sent to ApprovalFlowWF-INCENTIVE-STD
Booking name patternOFFCYCLE-{region}-BONUS-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.01
Validation Optionsstrict
Why this rule exists
Non-commission bonus: register + GL only; no commission engine to reconcile against.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-20 · correction · * · * · * 3 reports · WF-CORRECTION-DUAL

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenariocorrectioncorrectionmatched
Region**matched
Population**matched
Payroll type**matched
Reports sent to BookingHub
  • Correction Register
  • Variance Report
  • GL Distribution
Approval route sent to ApprovalFlowWF-CORRECTION-DUAL
Booking name patternADJ-{region}-CORR-{employee_id}-{period}
Processing and validation defaults
Processing Modeadjustment
Aggregationby_employee
Min Threshold0.0
Validation Optionsstrict
Why this rule exists
Corrections require a Variance Report (prior vs corrected figures) so the dual-approval reviewer can see exactly what changed and why.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-30 · reassignment · * · * · * 3 reports · WF-STANDARD-SINGLE

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenarioreassignmentreassignmentmatched
Region**matched
Population**matched
Payroll type**matched
Reports sent to BookingHub
  • Reassignment Register
  • Cost-Center Distribution
  • GL Distribution
Approval route sent to ApprovalFlowWF-STANDARD-SINGLE
Booking name patternADJ-{region}-REASSIGN-{employee_id}-{period}
Processing and validation defaults
Processing Modeadjustment
Aggregationby_employee
Min Threshold0.0
Validation Optionsstrict
Why this rule exists
A reassignment moves cost between centers; the Cost-Center Distribution report evidences the split so the GL posting balances across the old and new centers.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

R-99 · * · * · * · * 2 reports · WF-STANDARD-SINGLE

Match conditions

Rules run in ID order. This row wins only when all four conditions match; * is a wildcard and US-* is a prefix match.

InputRule condition Example matching valueResult
Scenario**matched
Region**matched
Population**matched
Payroll type**matched
Reports sent to BookingHub
  • Standard Off-Cycle Register
  • GL Distribution
Approval route sent to ApprovalFlowWF-STANDARD-SINGLE
Booking name patternOFFCYCLE-{region}-{employee_id}-{period}
Processing and validation defaults
Processing Modeoff_cycle
Aggregationby_employee
Min Threshold0.0
Validation Optionsstandard
Why this rule exists
No specific rule matched — minimal register + GL, and route single-approval; ops should confirm whether a more specific rule is needed.

Used next: BookingHub receives the report list, naming pattern and processing defaults; ApprovalFlow receives the workflow. The matched rule ID and rationale remain evidence for review.

API

GET /api/resolve
?scenario=&region=&population=&payroll_type= → the decision (Steps 6-7)
💬
00:00 manual timer
Cases