Parts Awaiting Approval Report
The Parts Awaiting Approval report shows parts that are waiting for approval before ordering. This is typically used when the Order Parts field is set to "No" or is empty.
Report Location
- Dashboard: Parts Dashboard
- Panel: Parts Awaiting Approval
Key Columns
| Column Name | Source Field | Description |
|---|---|---|
| Date Assessed | Part Item Req → Parts Assessment Date | Date when the Parts Assessment Form was submitted |
| Date Tendered | Part Item Req → Parts Tendered Date | Date when the tender process was completed (via Update Parts to Order, Request Parts, or Parts Assessment form) |
Entry Criteria
Records appear in this report when EITHER of these condition groups are met:
Group A: Claim Parts
| Form | Field | Condition |
|---|---|---|
| Claims Management | Order Parts | = No OR is null |
| Claims Management | Parts Assessment Status | = Completed |
| Claims Management | Parts Tendered Status | = Completed |
| Part Item Req | Status | = Awaiting Approval |
| Part Item Req | Is Deleted | = false |
Group B: Non-Claim Parts (Fleet/Private)
| Form | Field | Condition |
|---|---|---|
| Part Item Req | Tender Status | = Completed |
| Part Item Req | Status | = Awaiting Approval |
| Part Item Req | Is Deleted | = false |
Available Actions
Parts Approved to Order Button (Multi-Select)
Opens the Parts Approved to Order Form:
┌─────────────────────────────────────────────────────────────┐
│ PARTS APPROVED TO ORDER FORM │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Subform: Order Line Items │ │
│ │ - Individual parts to be ordered │ │
│ │ - Requested Status dropdown for each item │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Upload Parts Ordered [File Upload Field] │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ☐ Check Status (Decision Box) │
│ │
└─────────────────────────────────────────────────────────────┘
Claude AI PDF Extraction
Upload Process
- User uploads a PDF file using the Upload Parts Ordered field
- System sends the PDF to Claude AI for data extraction
- Claude AI processes the document and extracts order information
Check Status Flow
┌─────────────────┐
│ Check Status │
│ (Click) │
└────────┬────────┘
│
▼
┌─────────────────┐
│ API Call to │
│ Check Job │
│ Status │
└────────┬────────┘
│
┌────┴────┐
│ │
▼ ▼
┌────────┐ ┌────────────────┐
│Complete│ │ Not Completed │
└───┬────┘ └───────┬────────┘
│ │
▼ ▼
┌────────────┐ ┌────────────┐
│ Insert │ │ Show Alert │
│ values │ │ "Still │
│ into Order │ │ processing"│
│ Line Items │ │ │
│ subform │ │ │
└────────────┘ └────────────┘
On Success Behavior
When the form is submitted, the system calls parts_assessment.handle_parts_approved_to_order_submission which orchestrates the entire ordering process.
Processing Flow
┌─────────────────────────────────────────────────────────────┐
│ FORM SUBMISSION PROCESSING │
└──────────────────────────┬──────────────────────────────────┘
│
▼
┌────────────────────────┐
│ 1. Collect Unique │
│ Suppliers from │
│ Line Items │
└────────────┬───────────┘
│
▼
┌────────────────────────┐
│ 2. For Each Supplier: │
│ Create Purchase │
│ Order │
└────────────┬───────────┘
│
▼
┌────────────────────────┐
│ 3. Process Line Items │
│ (per supplier) │
└────────────┬───────────┘
│
┌────────────┴────────────┐
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Due In = NULL │ │ Due In FILLED │
│ │ │ │
│ Status = │ │ Status = │
│ "Unavailable" │ │ "Ordered" │
│ │ │ │
│ Skip PO line │ │ Create Parts │
│ item creation │ │ Order record │
└─────────────────┘ └─────────────────┘
│
▼
┌────────────────────────┐
│ 4. Update Claims │
│ Management Counts │
│ (Claim only) │
└────────────┬───────────┘
│
▼
┌────────────────────────┐
│ 5. Build Notes & │
│ Add Timeline │
└────────────────────────┘
Step 1: Collect Unique Suppliers
The system loops through all line items in Order_Line_Items_approval subform and creates a list of unique suppliers. One Purchase Order is created per supplier.
Step 2: Create Purchase Order (per supplier)
| Field | Source |
|---|---|
File_Number | From order record |
Ordered_By | Login user |
Date_Ordered | Order record's Added_Time |
Supplier_Name | Current supplier |
Registration | From order record |
Make, Model, VIN_No | From order record |
Purchase_Order_No_I_Body | Auto-generated iBody sequence (Claims) OR manual entry (Fleet/Private) |
Rego_PO_Number | {Registration} - {iBody PO} |
Parts_to_be_ordered_for | Claim / Fleet Vehicle / Private Job |
Step 3: Process Line Items
Condition: Due In Date is NULL
| Action | Result |
|---|---|
| Line Item Status | Unavailable |
| Parts_Order record | NOT created |
| Part_Item_Request Status | Updated to Unavailable |
| Next Report | Parts to Order report (for re-ordering) |
Condition: Due In Date is FILLED
| Action | Result |
|---|---|
| Line Item Status | Ordered |
| Parts_Order record | Created (see table below) |
| Part_Item_Request Status | Updated to Ordered |
| Part_Item_Request.Purchase_Order_Form | Linked to new PO |
| Next Report | On Order report |
Parts_Order Record Fields:
| Field | Source |
|---|---|
Purchase_Order_Form | New Purchase Order ID |
Date_Ordered | Current date |
Job_Type | Claim / Loan Car / Private Job |
Supplier | Supplier name |
Description | From line item |
Ordered | Quantity1 from line item |
Part_Number | From line item |
VIN | From order record |
Part_Type | Parts_Type from line item |
Unit_List_Ex_GST | From line item |
Unit_Net_Ex_GST | From line item |
Due_In | Due_In_date from line item |
Rego, Make, Model | From order record |
Upload_Evidence | From line item |
Claim_Form | File_Number from order record |
Claims_Management_Form | From linked claim |
Total Value Calculation:
The Purchase Order's Total_Value is calculated by summing Unit_Net_Ex_GST for all line items belonging to that supplier.
Step 4: Update Claims Management Counts (Claim only)
After processing, the system updates part counts on the Claims Management record:
| Field | Count Logic |
|---|---|
Parts_Needed | Part_Item_Request where (Tender_Status = Pending) OR (Status = Pending/Awaiting Approval) |
Parts_Ordered | Parts_Order where Status = Ordered/Back Ordered |
Parts_at_Crash_Claim | Parts_Order where Status = Arrived/Delivered Back to HQ |
Parts_at_Repairer | Parts_Order where Status = Delivered to Repair Shop |
Step 5: Build Notes & Add Timeline
Notes Format (Ordered Parts):
Parts Ordered - {date}
1. {Description} - {Supplier Name} - {Due In Date}
2. {Description} - {Supplier Name} - {Due In Date}
...
Notes Format (Unavailable Parts):
Parts Unavailable - {date}
1. {Description} - {Quantity} - {Notes}
2. {Description} - {Quantity} - {Notes}
...
Actions by Job Type:
| Job Type | Actions |
|---|---|
| Claim | Add claim note via Add_Notes.add_claim_note_with_user, Create timeline record (Parts_Ordered_date), Update Claim VIN |
| Fleet Vehicle | Add notes via logistics_app.notes.add_notes_by_logged_in_user |
| Private Job | No notes logic implemented |
Requested Status Dropdown
In the Order Line Items subform, each item has a Requested Status dropdown:
| Status Value | Result |
|---|---|
Parts to Order | Standard ordering flow (as described above) |
Parts to Repair | Creates record in Parts to Repair report |
Flow Diagram
┌─────────────────────────────────────────────────────────────┐
│ REQUESTED STATUS │
└──────────────────────────┬──────────────────────────────────┘
│
┌────────────┴────────────┐
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Parts to Order │ │ Parts to Repair │
└────────┬────────┘ └────────┬────────┘
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Standard Flow │ │ Parts to Repair │
│ (Due In check) │ │ Report │
└─────────────────┘ └─────────────────┘
Status Transitions
┌─────────────────────────────────────────────────────────────┐
│ Parts Awaiting Approval │
└──────────────────────────┬──────────────────────────────────┘
│
▼
┌────────────────────────┐
│ Parts Approved to │
│ Order Form Submitted │
└────────────┬───────────┘
│
▼
┌────────────────────────┐
│ Collect Unique │
│ Suppliers │
└────────────┬───────────┘
│
┌────────────┴────────────┐
│ For Each Supplier │
└────────────┬────────────┘
│
▼
┌────────────────────────┐
│ Create Purchase Order │
└────────────┬───────────┘
│
┌────────────┴────────────┐
│ For Each Line Item │
└────────────┬────────────┘
│
┌────────────┴────────────┐
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Due In = NULL │ │ Due In FILLED │
└────────┬────────┘ └────────┬────────┘
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Status: │ │ Status: Ordered │
│ Unavailable │ │ │
│ │ │ Create Parts │
│ NO Parts_Order │ │ Order record │
│ record created │ │ │
└────────┬────────┘ └────────┬────────┘
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Parts to Order │ │ On Order Report │
│ Report │ │ │
│ (for re-order) │ │ PO + Parts │
│ │ │ Order created │
└─────────────────┘ └─────────────────┘
│
▼
┌────────────────────────┐
│ Update Claims Mgmt │
│ Counts (Claim only) │
└────────────┬───────────┘
│
▼
┌────────────────────────┐
│ Add Notes + Timeline │
│ (by Job Type) │
└────────────────────────┘
Key Points
- One PO per supplier — if line items have multiple suppliers, multiple Purchase Orders are created
- iBody sequence — auto-generated for Claims using
i_body_sequense_no_for_purchase_order, manual entry for Fleet/Private - Total Value — calculated from
Unit_Net_Ex_GST(net price, not list price) - Check_Status flag — when
false, the Part_Item_Request status is updated
Related Pages
- Parts to Tender - Previous stage
- Parts to Order - Next stage (if Due In is null)
- On Order - Next stage (if Due In is filled)
- Overview - Full workflow diagram