Skip to main content

Order screen

The order screen opens when you click a row of the orders list or press New. It shows one order. The header is in the top part. The lines are in the bottom part.

Layout​

The screen is a shell form (shipment_order_shell) with two slots.

SlotFormContent
Topshipment_order_tabbed ("Shipment Order")The header, in six tabs.
Bottomshipment_order_line_list ("Order Lines")The lines of the order.

The top form shows a back arrow (the form is set to show one).

Not confirmed by code: where the back arrow leads. To verify: open an order from the list, click the arrow, and note the screen that opens.

Tabs​

TabPageWhat it holds
HeaderHeader tabOrder number, status, type, owner, priority, requested ship date, notes.
Ship ToShip To tabCustomer, carrier, cancel reason.
PicksPicks tabThe reservations of the order. One row per pick. Has Delete Selected.
TasksTasks tabThe pick tasks of this order. Has Return to Pool, Reassign, Delete Task.
CartonsCartons tabThe boxes the plan says to use. Read only.
Cartonization exceptionsCartonization exceptions tabThe lines the plan could not place. Read only.

Source: form shipment_order_tabbed in 001_baseline.sql and the tab rows added by wms-meta-ui migrations 015 and 086.

Order toolbar (shipment_order_tabbed)​

ButtonCodeWhat it doesPage
Saveso_tsCreates the order, or saves the changed fields of a saved order.Creating an order, Editing an order
Releaseso_releaseChecks the order, launches it, and reserves stock.Releasing an order
Cancelso_cancelCancels the whole order. Needs the Cancel Reason of the Ship To tab.Cancelling an order
Allocateso_allocateReserves stock for the lines that have no reservation yet.Allocating an order
Unallocateso_unallocGives back the reservations that are not in work.Unallocating an order

After Release, Cancel, Allocate and Unallocate the whole order screen is drawn again, so the status and the grey buttons are new. There is no Delete button for an order and no Close button. There was a Preview Allocation button. It was removed. The API method shipment_order_allocate_preview still exists, but no button calls it (crates/services/web-ui-server/src/extensions/customization/shipment_order/allocate_action.rs:1-9).

Lines area​

The lines list has its own toolbar. See Order lines list. Click a line to open the line card. The card replaces the lines list in the bottom slot. See Line card.

What changes on screen with the status​

The screen greys the buttons and the fields that the server would refuse. The server decides. The screen only shows it early. The orders are grouped in three families.

FamilyStatusesRemark
New familyNew, Partially allocated, AllocatedNot launched. The order has never been released.
Released familyPartially released, Released, Partially picked, PickedLaunched. Also an order that was released and whose lines were all cancelled, even if it reads New again.
FinishedClosed, CancelledAlso any status the screen does not know.

The family uses the status and the launch marker (released_at). The marker wins over a New-family status (status_render.rs:285-293).

New familyReleased familyFinished
Fields Type, Ship To, CarrierEditableRead onlyRead only
Fields Priority, Requested Ship, NotesEditableEditableRead only
Save (order)OnOnGrey
ReleaseOnOn only when the status is Partially released, else greyGrey
CancelOnOnGrey
AllocateOnOn, but grey when the status is PickedGrey
UnallocateOn only for Partially allocated, Allocated, Partially released, ReleasedsameGrey
Line list NewOnGreyGrey
Line card DeleteOn, but grey for a line that has a reservationGreyGrey
Line card Cancel QtyGreyOnGrey
Line card SaveOnOnGrey
Line field OrderedEditableEditableRead only
Line fields SKU, UOMEditable, but read only for a line that has a reservationRead onlyRead only

Source: crates/services/web-ui-server/src/extensions/customization/shipment_order/status_render.rs:218-262 (the grey buttons) and :72-92, :150-168 (the read only fields).

A New order that has not been saved has no status yet. The screen then changes nothing (status_render.rs, the early return on an empty status).

Not confirmed by code: whether a grey button shows a tooltip. Only the line Delete has a coded reason ("This line has reservations — Unallocate first to remove it"). To verify: hover over a grey Release on a Released order.

  • Orders list
  • Order statuses and transitions
  • Who can do what
  • API behind the buttons: shipment_order_create, shipment_order_update, shipment_order_release, shipment_order_cancel, shipment_order_allocate, shipment_order_cancel_allocation
  • RF terminal: none. Orders are made and released on the web.