# Packing Process ## Overview The Packing feature aims to manage and track the process of preparing finished goods for shipment or storage. Packing process features: - [Open Packing Container](open.md) - [Close Packing Container](close.md) - [Add Items to Packing Container](additems.md) - [Remove Items From Packing Container](removeitems.md) ## Setting up Packing Process In order for the user to be able to successfully use the packing process features, the following configuration is needed: - [SMTMaterialPackingContext](../../artifacts/tables.md#smtmaterialpackingcontext) - [SMTMaterialNameGenerationContext](../../artifacts/tables.md#smtmaterialnamegenerationcontext) - [SMTMaterialPrintableDocumentContext](../../artifacts/tables.md#smtmaterialprintabledocumentcontext) - The config `/SMT/MaterialPacking/IsEnabled/` must be enabled - The Step in which the packing will be performed must have the `IsPacking` attribute set Below there is a description of each of the **Smart Tables**. ### [SMTMaterialPackingContext](../../artifacts/tables.md#smtmaterialpackingcontext) This smart table is used only to support the packing process functionality. It defines the list of product containers available to pack a product. ![Screenshot](images/index/st_packingcontext.png) In the example above, there is a packing scenario with 2 levels. In the 1st level Materials with Product **SMT_Board** can be packed into Materials with Product **SMT_PackingBox** and in the 2nd level the Materials with Product **SMTPackingBox** can be packed into Materials with Product **SMT_Pallet**. ### [SMTMaterialNameGenerationContext](../../artifacts/tables.md#smtmaterialnamegenerationcontext) Configures the name generator to apply when creating new packing container materials at specified packing **Step**. ![Screenshot](images/index/st_namegeneratorcontext.png) The example shown sets the name generator for newly created packing container materials at **SMT_Packing Step**. ### [SMTMaterialPrintableDocumentContext](../../artifacts/tables.md#smtmaterialprintabledocumentcontext) Sets the labels to apply for different packing operations. If a label is not set for a specific packing operation, no labels will be printed during execution. ![Screenshot](images/index/st_printable.png) The configuration shown above sets labels for 3 different packing scenarios performed at the **SMT_Packing step**, therefore labels will be printed for the type of material defined: - Adding a board to a packing container - Adding a packing container to another packing container - Closing a packing container ## Administration The config `/SMT/MaterialPacking/IsEnabled/` must be enabled. The `/SMT/MaterialPacking/ContainerQuantityIsZero/` will determine whether packing containers will be created with a primary quantity of `1` or `0`.