Force Closing Workflow¶
This document outlines the complete workflow for force closing requisitions in the PRS system, including scenarios with partial fulfillment and pending deliveries.
Overview¶
Force closing allows users to close requisition slips (RS) that have partially fulfilled requirements and may have remaining unfulfilled items, pending canvasses, or pending deliveries. This feature helps manage incomplete requisitions while ensuring proper financial and inventory/quantity adjustments.
Reasons for force closing a request may stem from supplier not able to fulfill deliveries, no suppliers can fulfill the requested quantity, or requester has no need for the requested items anymore.
These scenarios would cause the RS to stay open indefinitely since it would not meet the conditions to automatically close an RS such as:
- All requested quantity has been canvassed
- All purchase orders are closed - fully delivered and paid
User Access Rights¶
| User Type | Force Close Access |
|---|---|
| Requester | ✓ (Own RS only) |
| Assigned Purchasing Staff | ✓ |
| All Other Users | ✗ |
Workflow Diagram¶
flowchart TD
Start([User Wants to Force Close Request]) --> CheckUser{Check User Authorization}
CheckUser -->|Authorized| CheckRS{Check RS Status}
CheckUser -->|Unauthorized| Error1[Access Denied]
%%fork@{shape: fork, label:OR}
CheckRS -->|Fully Approved - RS in Progress| CheckPO{Check PO Status}
%%comment@{ shape: braces, label: "OR" }
%%fork --> comment
CheckRS -->|Statuses before RS in Progress| Error2[No Force Close Button Yet - Still eligible for RS Cancellation]
CheckPO -->|All PO closed or cancelled| CheckRemQty{Check if there is Remaining Qty for canvassing}
CheckPO -->|There is atleast 1 PO - For Delivery and the least progressed status of all PO is FOR DELIVERY| CheckRR{Check if any item not yet fully delivered
Total Delivered Qty < PO Qty}
CheckPO -->|PO Status is before For Delivery -Review, Approval, Sending| Error3
CheckRR -->|Items partially delivered| CheckPR{Check if delivered quantities are paid:
DR Qty x Unit Price = PR Amount}
CheckRR -->|No Deliveries Yet| Error3[User should manually cancel PO before force closing]
CheckPR -->|Paid| FC[Proceed to Force Close RS]
CheckPR -->|Unpaid| Error4[User should pay delivered quantities first]
CheckRemQty -->|if none| CheckCS{Check if there is pending CS approval}
CheckRemQty -->|has remaining qty| FC
CheckCS -->|none| AutoClose[RS should close automatically]
CheckCS -->|w/ Pending Approval|FC
FC --> RequireNotes[System to require force close notes]
RequireNotes --> ZeroQty[Zero Out Remaining Qty to be canvassed]
ZeroQty --> UpdateAmt[Update PO Amount to reflect total approved PR amount]
UpdateAmt --> UpdateQty[Update PO Quantity to reflect total delivered qty RR Quantity]
UpdateQty --> ClosePO[Change PO status to Closed]
ClosePO --> GenerateNotes[Auto Generate Notes in PO on modified amount and quantity]
GenerateNotes --> ReturnGFQ[Return Items to Remaining GFQ if OFM]
ReturnGFQ --> CancelDrafts[Cancel All Draft/Pending Approval Related Documents:
-CS
-IR
-DR
-PR
Update Documents Status to CANCELLED]
CancelDrafts --> UpdateRS[Update RS Status to CLOSED]
UpdateRS --> LogActivity[Log Force Close Activity]
LogActivity --> Complete([Force Close Complete])
Error1 --> End([End])
Error2 --> End
Error3 --> End
Error4 --> End
AutoClose --> End
Force Close Button Visibility and Enablement¶
Button Display Rules¶
The force close button is displayed and enabled based on strict conditions that align with the workflow diagram:
- User Authorization: Visible only to authorized users (Requester for own RS, Assigned Purchasing Staff)
- Requisition Status: RS status must be Fully Approved "RS in Progress"
- Purchase Order Status Check: The system evaluates PO progression through two main paths:
- Path A - PO For Delivery Path: PO has reached "FOR DELIVERY" status (if multiple POs, least progressed status of all POs is FOR DELIVERY)
- Path B - All POs Closed/Cancelled: All purchase orders are either CLOSED or CANCELLED
- Additional Validations Based on Path:
- For Path A: Must have partial deliveries (Total Delivered Qty < PO Qty) and delivered quantities must be paid
- For Path B: System checks for remaining quantities for canvassing or pending CS approvals
Button States¶
- Hidden:
- User unauthorized
- RS status is before Fully Approved - "RS in Progress" - User can still Cancel RS and no force close yet
- PO status is before "For Delivery" (For PO Review, For PO Approval, For Sending) - User can still Cancel RS and no force close yet
- Enabled: All validation conditions are satisfied
Force Closing Scenarios¶
Based on the updated workflow, there are three primary scenarios that allow force closing:
Scenario 1: Active Purchase Orders with Partial Deliveries¶
Conditions Met:
- RS is Fully Approved - "RS in Progress"
- At least one PO has "FOR DELIVERY" status (least progressed status)
- Items have been partially delivered (Total Delivered Qty < PO Qty)
- All delivered quantities have been paid (DR Qty × Unit Price = PR Amount)
Example Flow:
| Text Only | |
|---|---|
Force Close Actions:
- Require force close notes from user
- Zero out remaining quantities for canvassing (if there is)
- Update PO amount to reflect only paid delivered amounts (6 units x unit price)
- Update PO quantity to match delivered quantity (6 units)
- Generate automatic notes in PO documenting changes
- Return unfulfilled quantities to Remaining GFQ (OFM items only) - return 4 units to remaining GFQ
- Cancel all draft/pending related documents
- Close For Delivery PO
Scenario 2: All Purchase Orders Closed/Cancelled with Remaining Quantities¶
Conditions Met:
- RS is Fully Approved - "RS in Progress"
- All purchase orders are CLOSED or CANCELLED
- There are remaining quantities that still need canvassing
Example Flow:
| Text Only | |
|---|---|
Force Close Actions:
- Require force close notes from user
- Zero out all remaining quantities for canvassing (Item A = 3 units + Item B = 5 units)
- Return unfulfilled quantities to Remaining GFQ (OFM items only - Item A = 3 units + Item B = 5 units)
- Update RS status to CLOSED
- Log force close activity with user notes
Scenario 3: Closed Purchase Orders with Pending Canvass Sheet Approvals¶
Conditions Met:
- RS is Fully Approved - "RS in Progress"
- All purchase orders are CLOSED or CANCELLED
- No remaining quantities for canvassing, but pending CS approvals exist
Example Flow:
| Text Only | |
|---|---|
Force Close Actions:
- Require force close notes from user
- Zero out all remaining quantities for canvassing (3 units)
- Return unfulfilled quantities to Remaining GFQ (OFM items only - 3 units)
- Cancel pending canvass sheets (status changed to CANCELLED)
- Update RS status to CLOSED
- Log force close activity
Auto-Close Detection¶
The system identifies when an RS should close automatically instead of requiring force close:
- All POs are CLOSED or CANCELLED
- No remaining quantities for canvassing
- No pending CS approvals
Note: Auto-closing logic is covered in the Requisition workflow documentation.
Validation Rules and Error Handling¶
Pre-Force Close Validations¶
User Authorization Check¶
- Must be the requester of the RS, assigned purchasing staff, or purchasing head
- Unauthorized users receive "Access Denied" error
Requisition Status Validation¶
- RS must have status "Fully Approved - RS in Progress"
- Earlier statuses will have no Force Close Button Yet - Still eligible for RS Cancellation
Note: RS Cancellation logic is covered in the Requisition workflow documentation.
Purchase Order Status Validation¶
The system blocks force close when:
- PO status is before "For Delivery" (For PO Review, For PO Approval, For Sending stages)
- Error: User must wait for PO to progress or manually cancel PO
Delivery and Payment Validation¶
For active POs with deliveries:
- If no deliveries made: User should manually cancel PO before force closing
- If deliveries exist but unpaid: User should pay delivered quantities first
- Only proceeds when delivered quantities are fully paid
Post-Force Close System Actions¶
1. Mandatory Notes Collection¶
- User must provide detailed notes explaining reason for force close
- Notes become part of RS permanent record and audit trail
- Cannot proceed without completing this step
2. Quantity and Financial Adjustments¶
- Zero Out Remaining Quantities: All uncanvassed quantities set to zero
- Update Purchase Order Amounts: Adjusted to reflect total approved PR amounts only
- Update Purchase Order Quantities: Modified to match actual delivered quantities
- Generate System Notes: Automatic documentation in PO of all modifications made
3. Inventory Management (OFM Items Only)¶
- Return to GFQ: Unfulfilled quantities returned to Remaining GFQ for OFM only
4. Document State Management¶
All related draft and pending documents are systematically cancelled:
| Document Type | Affected Status | New Status |
|---|---|---|
| Canvass Sheets | Draft/For Approval | CANCELLED |
| Invoice Reports | Draft | CANCELLED |
| Delivery Receipts | Draft | CANCELLED |
| Payment Requests | Draft/For Approval | CANCELLED |
| Purchase Orders | For Delivery | CLOSED |
| Requisition Slip | In Progress | CLOSED |
5. Activity Logging and Audit Trail¶
- Complete record of force close operation with timestamp
- User identification and authorization level
- Scenario type and validation path taken
- Detailed log of all system changes and adjustments
- Force close notes preserved for compliance and review
Business Rules and Constraints¶
Critical Business Rules¶
-
Payment Prerequisite: For active POs with deliveries, all delivered quantities must be paid before force closing
- Ensures financial integrity and proper accounting
- Prevents force closing of unpaid deliveries
-
Dual Validation Paths: Force close eligibility follows two distinct paths:
- Active PO Path: Requires partial delivery + payment validation
- Closed PO Path: Focuses on remaining quantities and pending approvals
-
OFM-Specific Inventory Return: Only OFM Materials have quantities returned to Remaining GFQ
- Non-OFM items do not affect central inventory quantities
- Maintains proper inventory control for construction materials
-
Comprehensive Document Cleanup: All draft and pending documents are automatically cancelled
- Prevents orphaned documents and workflow inconsistencies
- Maintains system data integrity across all document types
-
Mandatory Documentation: Force close notes are required for all operations
- Must explain business justification for force closing
- Becomes permanent part of audit record
- Cannot be modified after submission