# Northline Supply example rules

All records are synthetic. Snapshot date: September 30, 2026. Currency: CAD. These examples are decision-support tools, not accounting or purchasing systems.

## Sales management

Each sales row is one order containing one product. Real multi-line orders would need distinct-order counting instead. The example has 1,170 orders from April through September 2026, with three sales channels and twelve products.

Revenue = quantity times unit price. Cost of goods = quantity times unit cost. Gross profit = revenue less cost of goods. Gross margin = total gross profit / total revenue; it is not the mean of row margins. Zero revenue should display a safe zero/undefined indicator instead of an error. Gross profit excludes overhead, delivery, tax, returns and refunds and must not be labelled net profit.

Monthly and channel filters select the relevant sales. Six-month trends describe the full example time range, with the selected channel when relevant; the selected month should not make a six-month chart appear to contain six months of filtered data. A comparison with the previous month needs an actual previous-month sample and the same channel rule; missing previous data is not zero growth.

## Inventory planning

One row is a SKU snapshot. Stock data is entered by the customer, not synchronized from orders. Do not imply that this example deducts stock automatically when a sale is made. Recent demand is units sold during a 30-day window, not a prediction learned by an AI model.

| Measure | Rule |
| --- | --- |
| Available | On hand less reserved units |
| Inventory position | Available plus inbound units |
| Average daily demand | Units sold over 30 days / 30 |
| Reorder point | Round up (units sold * (lead days + safety days) / 30) |
| Target position | Round up (units sold * (lead days + safety days + 14 review days) / 30) |
| Suggested quantity | If demand is positive and position <= reorder point, round max(0, target minus position) up to a complete pack; otherwise zero |
| Suggested cost | Suggested quantity times unit cost |

Calculate reorder/target from the unrounded fraction. Display rounding of daily demand must not alter the calculation. Negative available units indicate commitments exceed physical stock and require review. Zero demand does not automatically create an order. Pack size must be a positive integer. Units, lead days and safety days use whole nonnegative values, while reserved may exceed on-hand to expose a shortage.

Inbound units are assumed usable within the planning horizon. There are no promised arrival dates, purchase orders, supplier constraints, minimum-order values, seasonal effects or lost-sales estimates. A stockout may still occur before inbound arrives. The human operator checks the suggestion before any purchase. Neither interface orders anything or sends a supplier message.

## Delivery interpretation

The browser interface is an offline portfolio demonstration. The Excel workbooks are the editable handoff candidates. They share source data and rules but are separate programs. Browser filters do not change the workbook, and workbook edits do not update the browser. See each guide for its supported data-update method, capacity and validation limits.

The static portfolio-data.js is executable source, so it is shipped as trusted demo content, not presented as an arbitrary client upload format. No external scripts, telemetry, credentials or live data are included.
