Skip to content

Purchasing Document Flow

Purchasing documents use domain transition methods and status-gated Actions menus. Cross-document lineage uses the Document flow dialog (DocumentFlowDialogGetDocumentTrace).

Hub: Target Document Flow. Overview: Purchasing.

  • Draft / open
  • In approval / in progress
  • Approved / completed
  • Rejected
  • Cancelled / closed

#Procurement chain

Document chain — PR through AP

flowchart LR
  PR[Purchase Requisition] --> RFQ[Request for Quotation]
  PR --> PO[Purchase Order]
  RFQ --> PO
  PO --> GRN[Goods Receipt Note]
  GRN --> AP[AP Invoice]
  PO --> RET[Purchase Return]

  class PR,RFQ egkDraft
  class PO,GRN egkActive
  class AP egkSuccess
  class RET egkWarn
Purchase Requisition

#Statuses

Draft, Submitted, Approved, Rejected, ConvertedToRFQ, ConvertedToPO, Cancelled

Purchase Requisition — approval and conversion

flowchart TB
  Start((Create)) --> Draft[Draft]
  Draft -->|Submit| Submitted[Submitted]
  Submitted -->|Approve| Approved[Approved]
  Submitted -->|Reject| Rejected[Rejected]
  Approved -->|Convert to RFQ| ConvertedToRFQ[ConvertedToRFQ]
  Approved -->|Convert to PO| ConvertedToPO[ConvertedToPO]

  class Start egkStart
  class Draft egkDraft
  class Submitted egkActive
  class Approved,ConvertedToRFQ,ConvertedToPO egkSuccess
  class Rejected egkError

Purchase Requisition — cancel from open statuses

flowchart TB
  Draft[Draft] -->|Cancel| Cancelled[Cancelled]
  Submitted[Submitted] -->|Cancel| Cancelled

  class Draft egkDraft
  class Submitted egkActive
  class Cancelled egkTerminal
Action (UI) Enabled when
Manage lines Always
Document flow Always
Submit for approval Draft
Approve Submitted
Reject Submitted
Convert to RFQ Approved
Convert to PO Approved
Cancel requisition Draft or Submitted
Request for Quotation

#Statuses

Draft, Sent, Closed, Cancelled

Request for Quotation — send and close

flowchart TB
  Start((Create)) --> Draft[Draft]
  Draft -->|Send to vendors| Sent[Sent]
  Sent -->|Close bidding| Closed[Closed]

  class Start egkStart
  class Draft egkDraft
  class Sent egkActive
  class Closed egkSuccess

Request for Quotation — cancel from open statuses

flowchart TB
  Draft[Draft] -->|Cancel RFQ| Cancelled[Cancelled]
  Sent[Sent] -->|Cancel RFQ| Cancelled

  class Draft egkDraft
  class Sent egkActive
  class Cancelled egkTerminal
Action (UI) Enabled when
Document flow Always
Send to vendors Draft
Close bidding Sent
Cancel RFQ Draft or Sent

Vendor quotation responses: invitation Invited / Submitted / Declined; quotation Submitted / Evaluated / Accepted / Rejected.

Purchase Order

#Statuses

Draft, Submitted, Approved, SentToVendor, PartiallyReceived, FullyReceived, Closed, Cancelled

Purchase Order — approval through receipt

flowchart TB
  Start((Create)) --> Draft[Draft]
  Draft -->|Submit| Submitted[Submitted]
  Submitted -->|Approve| Approved[Approved]
  Approved -->|Send to vendor| SentToVendor[SentToVendor]
  SentToVendor -->|Partial receipt| PartiallyReceived[PartiallyReceived]
  PartiallyReceived -->|Final receipt| FullyReceived[FullyReceived]
  PartiallyReceived -->|Close order| Closed[Closed]
  FullyReceived -->|Close order| Closed

  class Start egkStart
  class Draft egkDraft
  class Submitted,SentToVendor,PartiallyReceived egkActive
  class Approved,FullyReceived egkSuccess
  class Closed egkTerminal

Purchase Order — cancel from open statuses

flowchart TB
  Draft[Draft] -->|Cancel| Cancelled[Cancelled]
  Submitted[Submitted] -->|Cancel| Cancelled
  Approved[Approved] -->|Cancel| Cancelled

  class Draft egkDraft
  class Submitted,Approved egkActive
  class Cancelled egkTerminal
Action (UI) Enabled when
Document flow Always
Submit for approval Draft
Submit with RFQ-policy override Draft (policy exception path)
Send to vendor Approved
Close order PartiallyReceived or FullyReceived
Cancel order Draft, Submitted, or Approved
Goods Receipt Note

#Statuses

Draft, Posted, Cancelled

Goods Receipt Note — post receipt

flowchart TB
  Start((Create)) --> Draft[Draft]
  Draft -->|Post| Posted[Posted]

  class Start egkStart
  class Draft egkDraft
  class Posted egkSuccess

Goods Receipt Note — cancel draft

flowchart TB
  Draft[Draft] -->|Cancel receipt| Cancelled[Cancelled]

  class Draft egkDraft
  class Cancelled egkTerminal
Action (UI) Enabled when
Manage lines Always
Document flow Always
Post (update stock & accruals) Draft
Cancel receipt Draft
Purchase Return

#Statuses

Draft, Approved, Completed

Purchase Return — approve and complete

flowchart TB
  Start((Create)) --> Draft[Draft]
  Draft -->|Approve return| Approved[Approved]
  Approved -->|Complete| Completed[Completed]

  class Start egkStart
  class Draft egkDraft
  class Approved egkActive
  class Completed egkSuccess
Action (UI) Enabled when
Manage lines Always
Document flow Always
Approve return Draft
Complete (issue stock & debit note) Approved

#Multi-level approval

On submit, Purchasing can spawn an approval chain via PurchaseApprovalEngine (Pending / Approved / Rejected levels). Document status still advances through the aggregate methods when levels complete.

#Post-action sync

Surface Behavior
Grid _table.ReloadDataAsync() after Submit / Approve / Reject / Cancel / Convert / Post / Complete
Actions menu Recomputed from status helpers (IsDraft, IsSubmitted, …)
Document flow dialog Fresh GetDocumentTrace each open

Failed API calls show an error; status and menu stay unchanged.

#Scenarios

Scenario Outcome
Successful submit Status advances; Approve/Reject (or next verbs) appear
Reject PR Status Rejected
Cancel open PR/PO/RFQ Status Cancelled
Post GRN Status Posted; stock/accruals updated
Complete return Status Completed
Open Document flow Timeline of linked PR/RFQ/PO/GRN/AP/Return

Reconnecting to the server…

Please wait, or reload the page.