Skip to main content

Pick Target Exceptions

A pick target exception is the record of a box that was reported full while picking. The operator presses Box Full on the RF terminal. The system closes the position, keeps the full box on the cart, and plans the rest of the goods into new cartons. If that repair fails, the exception waits for a supervisor. This list is where the supervisor sees it and retries. The form is pick_target_exception_list_form. The data object is pick_target_exception_board. It is read by the method cartonization_exception_list, newest first.

How to open it​

  1. In the left sidebar open Task Manager.
  2. Click Pick Target Exceptions.

The menu item is pick_target_exception_menu.

What the screen has​

PartWhat it is
ToolbarTwo buttons: Retry, Refresh.
GridOne row per exception, 50 rows per page. A check box at the start of each row ticks it.
ColumnsShows or hides columns. 16 of 19 are shown at first.

The columns have no filter and no sort control in the metadata. A row click does nothing.

Columns​

Table: pick_target_execution_exception. All columns are read only.

LabelColumnTypeShown at firstWhat it shows
IDidWhole numberNoThe row key.
StatusstatusTextYesReported, Resolving, Resolved, RecoveryRequired, Cancelled. See below.
Target Kindtarget_kindTextYesPlannedCarton (a box of the cartonization plan) or Bypassed (picks with no planned carton).
Orderorder_numberTextYesThe sales order.
Pick Assignmentassignment_codeTextYesThe pick assignment.
Positionposition_noWhole numberYesThe position of the full box.
Planned Cartonsource_carton_codeTextYesThe planned carton of the full box (PlannedCarton only).
Boxbox_codeTextYesThe box that was reported full.
Reasonreason_codeTextYesWhy the operator said it is full. See below.
CommentcommentTextYesThe operator's comment. Required when the reason is OTHER.
PickspicksWhole numberYesHow many picks the repair replans.
Errorerror_codeText, 60YesWhy the repair failed, or why nothing was repaired. Empty when it worked.
Error Detailerror_detailTextYesMore words about the error.
Handed Over Athanded_over_atDate and timeYesWhen the holder handed the picks over to recovery. Empty if not.
Reported Byreported_by_nameTextYesThe operator who pressed Box Full.
Reported Atreported_atDate and timeYesWhen.
Resolved Atresolved_atDate and timeYesWhen it was resolved or cancelled.
Resulting Planresulting_plan_idWhole numberNoThe new cartonization plan made by a repair (PlannedCarton).
Continuationcontinuation_idWhole numberNoThe continuation made for a Bypassed exception.

Status​

ValueMeaning
ReportedDeclared for a two-step variant. Nothing writes it today.
ResolvingThe close is repairing it right now.
ResolvedRepaired. A PlannedCarton exception got a new plan. A Bypassed one got a continuation.
RecoveryRequiredThe repair failed. Error says why. A supervisor retries.
CancelledFinal. None of its picks is a live reservation any more (deleted, shorted or picked).

Source: crates/libs/wms-lib-core/src/model/outbound/pick_target_execution_exception.rs:27-64. An exception that is not finished (Reported, Resolving, RecoveryRequired) is unique per position. Source: index uq_ptee_open_per_position in 059_carton_execution_exceptions_and_a_planned_tare_type.sql.

Reason​

The operator types the reason on the RF screen PKA50 "Box Full" (the field is upper-cased, up to 50 characters). The values are: MASTER_DATA_DIMENSIONS, PROTECTIVE_PACKAGING, ORIENTATION_NOT_FEASIBLE, PRODUCT_OR_CARTON_DEFORMED, SOLVER_LAYOUT_NOT_FEASIBLE, OTHER. OTHER needs a comment. The database refuses a blank comment for it (chk_ptee_other_needs_comment).

Error​

CodeMeaning
CARTON_REPLAN_UNPLACEDA unit could not be placed in the repair.
SOLVER_BUDGET_EXCEEDEDThe time budget of the packing solver ran out.
CARTON_REPLAN_NOT_REPAIRABLEThe plan cannot be repaired.
CARTON_REPLAN_INVALIDThe validator refused the repair.
CARTON_REPLAN_NOTHING_LEFTNo pick of the exception is a live reservation any more. The exception becomes Cancelled.

Source: crates/libs/wms-outbound/src/cartonization/repair.rs:43-50 and crates/libs/wms-outbound/src/domain/target_exception/aggregate.rs:81-83. While an exception waits (RecoveryRequired), the route and the delivery of the assignment refuse its picks with CARTON_REPLAN_REQUIRED.

Toolbar buttons​

ButtonNeedsWhat it doesTask page
RetryExactly one ticked exception with Target Kind = PlannedCarton and Status = RecoveryRequiredRepairs it again.Retrying a box-full repair
RefreshNothingReads the list again.

The grey text of Retry is Tick exactly one planned-carton exception waiting for recovery. Source: the binding generic_disable_unless_field_in in part 5 of crates/libs/wms-lib-sql/sql/wms-meta-ui/migrations/101_carton_execution_exceptions.sql.

Who can use it​

RoleOpen the listRetry
ADMINYesYes
MANAGERYesYes
SUPERVISORNot confirmed (see the overview). The read method is open to SUPERVISOR.Yes by method and web action, if the menu is visible
OPERATOR, VIEWERThe menu allows it. The read method does not. See below.No

Not confirmed by code: what OPERATOR and VIEWER see. cartonization_exception_list is for ADMIN, MANAGER and SUPERVISOR only. To verify: sign in as OPERATOR on a test warehouse and open the list.

What this screen affects​

Retry can plan new cartons, take picks off a cart, and send their tasks back to the pool. See the task page.

  • Retrying a box-full repair
  • Pick Assignments
  • Administrator guide: Cartonization overview, section on box-full exceptions
  • API: cartonization_exception_list (read); cartonization_exception_retry (command)
  • RF terminal: PKA50 "Box Full" (pick_assignment_position_close), PKA51 "Box Damaged" (pick_assignment_position_replace_container), PKA52 "Recovery" (pick_assignment_position_hand_over)