Skip to content

Data Models

Public dataclasses used as inputs and outputs of HanelWarehouseGateway.

Input models

MovementLine dataclass

Single line of a movement order to send to the warehouse.

Used as input for :meth:HanelWarehouseGateway.send_movement_order; pass a list with at least one element.

Attributes:

Name Type Description
article_number str

Article code (max 40 chars). Must match an article already registered via register_article.

operation str

Movement direction. "+" = load (store into the warehouse), "-" = pick (retrieve from the warehouse).

nominal_quantity int

Requested quantity. Must be a positive integer (greater than 0); fractional quantities are rejected on send.

batch_number str | None

Lot/batch number (max 40 chars). Only used when lot_management_enabled=True in GatewayConfig; if omitted, the warehouse selects the lot autonomously (e.g. FIFO).

Output models

MovementLineResult dataclass

Result of a single movement line confirmed by the warehouse.

Returned inside :class:MovementResult.positions by :meth:HanelWarehouseGateway.get_completed_movements and :meth:HanelWarehouseGateway.get_all_orders.

Attributes:

Name Type Description
article_number str

Article code.

operation str

Movement direction. "+" = load, "-" = pick.

nominal_quantity float

Quantity originally requested in the order.

actual_quantity float

Quantity actually moved by the warehouse. When actual_quantity < nominal_quantity the warehouse moved less than requested (e.g. insufficient stock); handling this discrepancy is the caller's responsibility.

container_size int

Container size code.

position_status int

0 = pending, 1 = completed.

batch_number str | None

Lot actually moved by the warehouse. Populated only when lot_management_enabled=True in GatewayConfig.

MovementResult dataclass

Complete result of a movement order.

Returned by :meth:HanelWarehouseGateway.get_completed_movements and :meth:HanelWarehouseGateway.get_all_orders.

Attributes:

Name Type Description
job_number str

Order identifier.

job_priority int

Priority assigned to the order by the warehouse.

job_status int

Order status. 0 = queued/pending, 1 = in progress, 2 = partially completed, 3 = completed.

job_date str

Date the order was processed, formatted DDMMYY.

job_time str

Time the order was processed, formatted HHMM.

positions list[MovementLineResult]

Order lines with the quantities actually moved.

StockRecord dataclass

Stock level of an article at a specific physical location.

Returned by :meth:HanelWarehouseGateway.get_inventory. An article may appear in multiple records if distributed across several locations: the total stock for an article is the sum of all records sharing the same article_number.

Attributes:

Name Type Description
article_number str

Article code.

article_name str

Article description.

lift_number int

Warehouse/lift number. lift_number and shelf_number both 0 indicate an article present in the master registry but with no physical stock.

shelf_number int

Shelf number.

compartment_number int

X position within the shelf.

compartment_depth_number int

Y position within the shelf.

container_size int

Container size code.

fifo int

FIFO ordering value.

inventory_at_storage_location float

Quantity stored at this location.

minimum_inventory float

Configured minimum stock threshold.

batch_number str | None

Lot number. Populated only when lot_management_enabled=True in GatewayConfig; with lot management active an article appears in one record per lot × location.

h10_special_field str | None

Optional EAN/barcode associated with the storage location (the t-Server's h10SpecialField). None when the warehouse leaves it empty.