Skip to main content

Stock Movements

Written by Nick Maxwell

Data Dictionary

Field

Type

Notes

Calculated Unit Cost

Number

Derived from dividing Movement Value and Movement

Created

Datetime

Created timestamp from source record

Created By

Text

The email of the user that created the record

Direction

Text

Sign of the Movement Direction: 'IN' when Movement > 0 (stock received), 'OUT' when Movement < 0 (stock issued), 'N/A' when Movement = 0.

Movement

Number

Quantity change for this movement (positive = IN, negative = OUT). Per source: Finished Product Assembly = +assembly quantity; Component Product Assembly = -(production qty); Assembly Wastage = -(wastage qty); Shipment = -(shipment qty); Purchase Order = receipt quantity; Warehouse Transfer = ±transfer quantity (OUT leg negated to produce opposite-sign entries for debit/credit warehouses); Stock Adjustment = new quantity (the quantity difference from the previous state, per Unleashed convention); Supplier Return = -(return quantity); Customer Return = +(credit qty)

Movement Date

Date

Date the stock movement occurred. Per source: assembly date for assemblies; dispatch date for shipments; received date for purchase orders; delivery date for transfers; adjustment/credit/return date for adjustments and returns

Movement Value

Number

Cost/value of this stock movement. Calculated per source: Finished Product Assembly uses "Total Cost" of the assembly; Component Product Assembly uses "Assembly Line Total Cost" * -(Production Quantity / Consumed Quantity) [allocated proportionally by production qty]; Assembly Wastage uses "Assembly Line Total Cost" * -(Wastage Quantity / Consumed Quantity); Shipment uses "Total Shipment Cost At Time Of Dispatch" * -1 (negated outbound cost); Purchase Order uses round("Net Amount" / "Currency Rate" + "Cost Total (BC)", 3) to get received-in landed cost; Warehouse Transfer uses "Average Landed Price At Time Of Transfer" * "Transfer Quantity" (negated on OUT leg so both source and destination show zero net system-wide); Stock Adjustment uses "New Actual Value" directly from the adjustment line; Supplier Return uses round("Gross Amount" / "Currency Rate" * -1 * ("Net Amount" / "Return Net Amount"), 3) - "Return Costs Net (BC)" (reproduces Unleashed multi-currency gross→local conversion with allocation proportion, then subtracts net costs); Customer Return uses "Average Landed Price At Time Of Sale" * "Credit Quantity"; Opening Position uses the original "Total Cost" of opening stock

Product Description

Text

Derived from cleaning Product Description

Product GUID

Text

The Unique ID of a Product, API: Product.Guid

Product Warehouse GUID

Text

Derived from hash generation of Product GUID and Warehouse GUID

Reference

Text

Human-readable description of the event (e.g. 'Added 5 Assembled Finished Products: Widget to Warehouse A' or 'Used 10 Component Products: Part X from Warehouse B')

Source

Text

The event that caused the stock movement. One of {Assembly Wastage, Component Product Assembly, Customer Return, Finished Product Assembly, Opening Position, Purchase Order, Shipment, Stock Adjustment, Supplier Return, Warehouse Transfer}

Source GUID

Text

Unique identifier of the source record (assembly GUID, sales shipment GUID, purchase order GUID, warehouse stock transfer GUID, etc.). Null for Opening Position rows

Source Number

Text

Reference number from the source record (assembly number, shipment number, order number, transfer order number, credit note/S supplier return number). Null for Opening Position rows

Updated

Datetime

Updated timestamp from source record (assembly, shipment, purchase order, etc.)

Warehouse GUID

Text

The Unique ID of the Warehouse, API: Warehouse.Guid

Warehouse Name

Text

API: Warehouse.WarehouseName

Did this answer your question?