Skip to content
Report · Sales

Sales orders by month

Sales orders entered each month over the last two years, with their count, value and average.

  • monthly
  • trend
  • orders
Sample preview, fictional dataYour own figures appear after import.

01

About this report

One row per month of order date for the last 24 months, counting every sales order that is not cancelled. The value is the order lines before tax, in base currency at each order's exchange rate.

Group by Quarter or Year to see the same figures over longer periods. Average order is recalculated from the totals, not averaged. Filter on Month to narrow the range.

02

Sample preview

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

MonthOrdersAmountAverage order
2026-04118412,380.503,494.75
2026-05131455,9123,480.24
2026-06124438,004.253,532.29
2026-07109371,2203,405.69
2026-08142509,876.403,590.68
2026-0997344,510.103,551.65

03

The SuiteQL

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

Sales orders by month
SELECT TO_CHAR(t.trandate, 'YYYY-MM') AS period,
       COUNT(DISTINCT t.id) AS orders,
       SUM(-tl.foreignamount * t.exchangerate) AS amount,
       SUM(-tl.foreignamount * t.exchangerate) / COUNT(DISTINCT t.id) AS avg_order
  FROM transaction t
  JOIN transactionline tl ON tl.transaction = t.id
 WHERE t.type = 'SalesOrd'
   AND t.status NOT IN ('SalesOrd:C', 'C')
   AND tl.mainline = 'F'
   AND tl.taxline = 'F'
   AND tl.itemtype NOT IN ('TaxGroup', 'TaxItem', 'Subtotal', 'Description', 'EndGroup')
   AND t.trandate >= ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -23)
 GROUP BY TO_CHAR(t.trandate, 'YYYY-MM')
 ORDER BY period

04

Appears in

ReportSales

Sales orders by month

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