Viewing the transactions on queue

The Transaction on Queue form shows the status of processing accruals for purchase orders and receipts that are received from M3 through BODs.

When a purchase transaction BOD (purchase order or delivery receipt as indicated by the Transaction Type) is received, a record is created in the corresponding tables, and then queued for agreement validation. The records list shows the latest transactions first.

Transaction Type indicates if the received BOD is a purchase order (PO) or delivery receipt (DR).

The Processed field is used to show the progress of processing the current transaction. These are the possible values:
  • 0-NotProcessed when a BOD is received and queued and not yet processed.
  • 1-Processing for on-going processing of the received BOD.
  • 2-Finished when processing the BOD is completed, regardless if an accrual was created or not. This means that ReceiveDelivery BODs without corresponding reference PO can also have this value.
  • 3-ErrorOccurred when an error is encountered during processing. This may include mismatched or invalid data types, or unsupported scenarios.
The Transaction Status field shows these values to indicate the current state of the transaction during processing:
  • NotProcessed when the received BOD is still on queue.
  • Started when the processing has started.
  • PurchaseOrderCreation
  • AgreementSelection
  • AccrualsCreation
  • ClaimsCreation
  • Finished, or ErrorOccurred when the processing is completed.
The specific purchase transaction contains these distinct Transaction No details:
  • Purchase order number
  • PO line number
  • PO subline number
  • PO line suffix
  • Receipt No
The PO Status field shows either of these values to indicate the status of the purchase order:
  • Open for any status not yet received.
  • Received for fully or partially received.
  • Canceled/Cancelled

The Transaction Logs field shows the information on how the purchase transaction BOD was processed: from initialization, record retrieval from purchase transaction tables, finding a valid agreement, accumulation when needed, until an accrual record is created, or if an error has occurred.

The event trigger SRCheckTransactionOnQueue fires every fixed interval and reads this queue to check for records to process, sequentially to avoid concurrent runs which might cause incorrect accumulation of accruals.

The Transaction on Queue skips erroneous records. The specific record's Processed field is updated to 3-ErrorOccurred. The Transaction On Queue then continues to process incoming purchase order and receipt BODs.