Skip to content
Report · Purchasing

Open purchase orders by expected date

Purchase order lines still waiting to be received, by expected receipt date, with how many days late each one is.

  • receiving
  • operational
  • late
Sample preview, fictional dataYour own figures appear after import.

01

About this report

Every open item line with quantity still to receive, on a purchase order that is Pending Receipt, Partially Received or Pending Billing/Partially Received. Each row gives the vendor, order date, expected date, days late, item, quantity ordered, received and remaining, and the open value in base currency. The expected date is the line's expected receipt date, or the order's due date when the line has none.

Sort by Expected date for the receiving schedule, or filter Days late above zero to chase vendors. The order number opens the purchase order.

02

Sample preview

Fictional figures in the shape you will see. Yours come from your account.

Purchase orderVendorOrder dateExpected dateDays lateItemOrderedReceivedRemainingOpen value
PO4410Granite Components2026-08-122026-09-1014Steel bracket 40mm5003002001,840
PO4431Lakeshore Packaging2026-08-282026-09-222Shipping carton, large2,00002,0003,100
PO4452Granite Components2026-09-092026-10-060Hinge kit75007504,687.50
PO4460Eastfield Electronics2026-09-152026-10-200Controller board v3120012010,560

03

The SuiteQL

This is the query each report runs. Read it, copy it, or change it after import.

Open purchase orders by expected date
SELECT t.id AS po__id,
       t.tranid AS po,
       NVL(v.altname, v.entityid) AS vendor,
       TO_CHAR(t.trandate, 'YYYY-MM-DD') AS order_date,
       TO_CHAR(NVL(tl.expectedreceiptdate, t.duedate), 'YYYY-MM-DD') AS expected_date,
       CASE WHEN NVL(tl.expectedreceiptdate, t.duedate) < TRUNC(SYSDATE)
            THEN TRUNC(SYSDATE) - TRUNC(NVL(tl.expectedreceiptdate, t.duedate)) ELSE 0 END AS days_late,
       BUILTIN.DF(tl.item) AS item,
       tl.quantity AS ordered,
       NVL(tl.quantityshiprecv, 0) AS received,
       tl.quantity - NVL(tl.quantityshiprecv, 0) AS remaining,
       (tl.quantity - NVL(tl.quantityshiprecv, 0)) * tl.rate * t.exchangerate AS open_value
  FROM transaction t
  JOIN transactionline tl ON tl.transaction = t.id
  JOIN entity v ON v.id = t.entity
 WHERE t.type = 'PurchOrd'
   AND t.status IN ('PurchOrd:B', 'PurchOrd:D', 'PurchOrd:E', 'B', 'D', 'E')
   AND tl.mainline = 'F'
   AND tl.taxline = 'F'
   AND tl.item IS NOT NULL
   AND NVL(tl.isclosed, 'F') = 'F'
   AND tl.quantity - NVL(tl.quantityshiprecv, 0) > 0
 ORDER BY NVL(tl.expectedreceiptdate, t.duedate), t.tranid

ReportPurchasing

Open purchase orders by expected date

Screenshot of the Open purchase orders by expected date report in HiScale Advanced Reports, filled with fictional sample data
Sample preview, fictional dataOpen image full size (opens in a new tab)