User Tools

Site Tools


implementation:wms:picklistcontroller

5.1.3.44. Picklist controller

Pick list controller - Controls the pick list

Ad hoc picking

Route picking picklist order by
The sorting of picklist when picking for a route during ad hoc picking
Options:

  • Order by priority, due date and doc entry
  • Order by sequence on route: forward
  • Order by sequence on route: reverse.

Ad hoc picking: Keep picking same item? (Y/N)
If this is set to true, the system will keep asking to pick the chosen item until everything is picked for that item.
If set to false, after picking an item, the system will go to the overview screen of all items to pick, so the user can select the next item to pick.

Ad hoc: Auto fill pick quantity? (Y/N)
When this is set to true, the quantity to pick will be entered in the screen to enter the quantity.
Else the quantity will be 1, or when the maximum quantity is less than 1, the maximum quantity is shown.

Ad hoc: Force to scan SSCC? (Y/N)
If this option is enabled, the user needs to scan the SSCC when performing item picking.

Allow ad hoc picking from bulk locations?
This option enables the user to pick goods from non-pick locations during ad hoc picking.

Allow confirmation that ALL goods were picked
This option enables the confirmation message at the end of the picking that all the items are picked.

Auto move SSCC on a customer-collected related move
When scanning an SSCC during ad hoc picking – customer collect, the SSCC is automatically moved to the dock instead of asking the user if he wants to move the complete SSCC.

Choose dock on ad hoc picking?
When this option is checked, the system will ask the user to select a dock where he is going to pick to.
This is used in the ad hoc picking flow for the options Route and Pick list. The selected dock is stored on the route/pick list.

Reason requirements when skipping first location (Ad hoc picking)
The ad hoc picking flow will suggest a number of locations. Those locations are sorted, so to first location is the best location to take it from. If the user wishes to pick from another location, it is possible to let the user enter a reason if it does not match the first location (Docks are not considered as a first location).
Options:

  • No reason
  • Requires user-entered reasontext: Free text, entered by user, minimum 10 characters
  • Requires selected reason from list

Function/SP name to get the locations
The function/stored procedure that is used to get the locations for ad hoc picking.

Input parameters on SQL:

  • @pmxWhsCode
  • @itemCode
  • @batchToPick
  • @separator
  • @pickListDocEntry

You can check the input parameters in the standard function: PMX_FN_GetAllLocationsForItemForAdHocPicking

Input parameters on HANA:

  • p_pmxWhsCode
  • p_separator
  • p_pickListDocEntry

You can check the input parameters in the standard SP: PMX_SP_GetAllLocationsForItemForAdHocPickingInTmp

Function/SP name to get the location sequence
The function/stored procedure that is used to get the sequence of the locations.

Input parameters on SQL:

  • @pmxWhsCode nvarchar
  • @itemCode nvarchar
  • @batchToPick nvarchar

You can check the input parameters in the standard function: PMX_FN_GetFirstSequenceForLocationsForItemForAdHocPicking

Input parameters on HANA:

  • p_pmxWhsCode nvarchar
  • p_pickListDocEntry

You can check the input parameters in the standard SP: PMX_SP_GetFirstSequenceForLocationsForItemForAdHocPicking

View name to get the products
The view that is used to get the products to be picked. If no value is entered, the standard query is executed. This view needs at least these columns:

  • DocEntry
  • PmxWhsCode
  • ProductCode
  • ProductDescription
  • ManBtchNum
  • HasBestBefore
  • GTIN
  • DefaultLocationCode
  • BaseLine
  • BaseEntry
  • LocationCodes
  • Sequence
  • batchToPick
  • StillToPick
  • QuantityPerUom

General

Allow multiple customers on SSCC?
If set to true, the system will allow to put stock for multiple customers/delivery addresses on the same SSCC. This means that when you have a wave for multiple customers, the user is not forced to pick on a moveable location and going through the pack station.

Allow to create master SSCC (Y/N)
If enabled, a master SSCC can be created. A master SSCC is a single logistic unit that contains multiple sub-logistic units.

Auto fill quantity for packaging types?
If set to true, the quantity to pick will be automatically entered instead of a zero.

Copy non-inventory items to reserve invoice?
If set to true, the system will copy non-inventory items to the reserve invoice when creating reserve invoices from pick lists.

Disable selection of items? (Y/N)
If set to true, it will not be possible to select items on flows. The user will always have to scan a barcode for the item selection.

Force the user to pick full pallet? (Y/N)
Allows to define whether or not the user will be forced to pick a full pallet of items that contains the same or a lower quantity than the quantity that has to be picked for the pick list. Example: if a quantity of 60 has to be picked, and if a full pallet of 40 that answers the best before date and batch number criteria is available, this full pallet will be selected by the system for picking.
Picking will occur by scanning the SSCC. The quantity will not be asked. The SSCC will remain the same as the original SSCC.
If this is set to false, the user will need to pick it as ‘item picking’.

Please note that this setting does not apply when assigning stock to the pick list!
This setting is only used AFTER the stock is assigned to the pick list, and the user is going to pick the stock on the scanner.

Make picklist ready before print? (Y/N)
The ‘Make pick list ready’ functionality allocates stock on location level to the pick list. So if a pick list report needs to have the locations filled in, this option should be enabled.

Only pick items on location on same or lower level as dock? (Y/N)
If set to true, the system will only create a pick list for items it can find on storage location defined on the same or lower level as the dock selected on the pick list proposal. The levels are defined by the zones those locations are in.

Time to show ‘item is picked’ message?
The number of seconds the ‘item is picked’ message is shown on the scanner:
Possible values:

  • Negative values: The message is not shown.
  • Value 0: The message will remain visible until the user clicks the ‘OK’ button
  • Positive values: The message will remain visible for the entered number of seconds.

Create replenishment orders after picking? (Y/N)
If enabled, a replenishment order is generated after the picking is completed for the source location, if the following conditions are met:

  • The location can be replenished
  • There is a minimum quantity set for a picked item
  • The stock for item on the location reaches the minimum quantity

The replenishment after picking is supported in the following flows:

  • Picking
  • Zone picking
  • Multi picking
  • Ad hoc picking

For the item based replenishment generator, system will try to create replenishment orders for all locations. The default replenishment generator will only try to create replenishment orders for the locations where goods were picked from.

JOIN-sql for custom wave description for scanner
If the ‘Custom wave description fields for scanner’ option contains fields that are not used in the default query, the user needs to define the JOIN query here.
This option cannot be used for pick list for production.

Custom wave description fields for scanner
Here the user has the possibility to enter a custom wave description that will be shown on the scanner. This text will be added to the select statement to select the waves on the Picking flow.
If the fields in the description are not on tables used by the default query, the option ‘JOIN-sql for custom wave description for scanner’ need to have the correct join to the table.
The standard available tables are:

  • ORDR
  • OUSR
  • PMX_OSEL
  • PMX_OSWA
  • PMX_PLHE
  • PMX_PLLI
  • PMX_PLPL
  • PMX_WAVE
  • PMX_WALO (Zone picking only)

Make sure the selected fields are casted to nvarchar if required. To add the PMX_PLHE.PickPackRemarks field for example, fill this in the input box : CAST(“PMX_PLHE”.“PickPackRemarks” as nvarchar (2000))
This option cannot be used for pick list for production.

MultiPicking

Multi picking: Set movable location at start of picking? (Y/N)
When this is enabled, then during multi picking all the movable locations need to be assigned to a pick list before staring to perform the picking.
If disabled the movable location is asked when the first item of a certain pick list is picked.

Multi picking: Allow to select wave? (Y/N)
When this is enabled, then during multi picking the user can select the wave instead of scanning a pick list.

All, except Ad hoc picking

All, except Ad hoc picking

Ad hoc alternate item? (Y/N)
If this is set to false, the system will show a list of alternate items to choose from.
If this is set to true, the system will allow the user to enter any data when performing alternate picking, and the system will check if the entered data is allowed.

Allow cycle count on alternate picking? (Y/N)
If this option is enabled, the user has the possibility to perform a cycle count on the original pick location in case of alternate picking form a different location.

Allow to identify the SSCC to pick on?
If set to true, the system will allow the user to scan an SSCC number he wants to use to put the picked stock on.

Allow to select the item to pick?
Enables the option to select an item to pick instead of letting the system choose the first item.

Alternate: Show locked quantity for current line? (Y/N)
When this is checked, the system will also show the item that was locked for the current pick list line in the list of alternate items.

Auto fill quantity (No packaging types)? (Y/N)
If set to true, the quantity to pick will be automatically entered.
If set to false, the quantity to pick will be zero. And in case a barcode was scanned in the item identification screen, the quantity will be 1, because there was already an item scanned.
This is for items without packaging types.

Auto select batch/BBD on picking?
Enables the option to automatically select a Batch/BBD.

Auto select the wave?
If set to true, the system will select the wave. If set to false, the user can select the wave he wants to pick.
Please note: This settings does not apply in the 'Multi picking' flow.

Auto selection of moveable location during picking? (Y/N)
If set to true, the system will automatically select the moveable location. But this is only when there is 1 available moveable location. In case of full pallets, no moveable location will be used.

Can the user pick bulk quantity from bulk location? (Y/N)
If ticked the user can pick bulk quantities defined on the item master data from bulk locations.

Can the user pick full pallet from bulk location? (Y/N)
Normally bulk locations are not considered when allocating stock to a pick list. However this flag makes it possible that full monolot pallets at bulk locations (containing items that match the best before date and batch number criteria) can be picked by the operator.
The sorting of the stock to use depends on this setting and the option ‘Must user first pick full pallet from bulk’.
More information at: Pick list.

Consolidate items to pick?
If set to true, items that have the same Batchnumber/BBD/Quality status/Location/… will be picked in one action, instead of a pick action by pick list line.
This option is used in ‘Picking’ and ‘Zone picking’ flow.

Copy batch number when selecting alternate item? (Y/N)
When the user wants to select an alternate batch, does the system need to copy the original batch number from the pick list?
Remark: If on the base document line a batch number is set, the batch will always be copied when selecting alternate items.

Force first available batch on selecting alternate item? (Y/N)
This setting refers to the process of selecting alternate stock on the fat client during a picking flow and it is based on FEFO (first expired, first out).
If it is set to true, you can select an item only from the batch with the earliest expiry date that is according to the shelf-life.
This option cannot be used in combination with Ad hoc alternate item? (Y/N). If that setting is enabled, the Force first available batch on selecting alternate item? (Y/N) setting is ignored.

Item picking: Force user to scan SSCC when stock is on SSCC? (Y/N)
When this setting is enabled, the user will have to scan the SSCC if the stock he is picking is on an SSCC.
This setting refers to 'Item picking' and not full pallet picking.
It will show an additional screen to scan the SSCC before proceeding to selection of batch, or entering the quantity.

Must the user first pick full pallet from bulk location? (Y/N)
Normally bulk locations are not considered when allocating stock to a pick list. However this flag makes it possible that full monolot pallets at bulk locations (containing items that match the best before date and batch number criteria) can be picked by the operator.
This option forces to first take full pallets from a bulk location before using pick locations.
The sorting of the stock to use depends on this setting and the option ‘Can user pick full pallet from bulk’.
More information at: Pick list.

Skip screen to identify the pick location? (Y/N)
When this is enabled, the user does not need to identify the pick location.
Users can immediately identify the item to pick. (The pick location is visible in that screen)

Stock order by
Custom 'ORDER BY' clause for when the pick list is allocating stock to the pick list line.
This is not applicable for ad hoc picking
It adds the value to the ORDER BY clause of the query to get the stock. The text 'ORDER BY' does not need to be added to the value.
Any text can be entered here, however there are 2 predefined options:

  • *DEFAULT*
    • This option will use the sorting as it is currently in the system
  • *BIGGEST PALLET FIRST*
    • The pallet with the biggest quantity will be assigned first.

If there are 2 pallets with the same quantity, the oldest LUID will be taken first.
When stock is not on an SSCC, the quantity not on an SSCC is still regarded as if it would be on an SSCC, and it will be used first in case of equal quantity.

  • “Quantity”, “IsPickLoc” DESC, “LogUnitIdentKey_IsNull” DESC, “LogUnitIdentKey”, “InternalKey”
    • This option will take lowest quantity, pick location, no LUID, LUID

For more information please see: 1.2. Stock order by.

Wave order by
Sorting of waves on the picking flows
Options:

  • Order by Priority, due date, wave key
  • Order by due date, priority, wave key

Only pick on 1 SSCC? (Y/N)
If enabled, the system will auto select an SSCC when there was already an SSCC created for the wave. This is useful for when users need to go out of the picking flow, and continue at a later time.

Pick items order by
How are the items to pick sorted on the scanner?
Options:

  • Order by Full LUID, sequence, no location: First full pallet, then the sequence of the location, then all lines without a location.
  • Order by Full LUID, picked item, location code: First full pallets, then picked items, then location code. This means that when ItemA and ItemB needs to be item-picked on several locations, the system will first pick all quantities of ItemA, regardless of where it is stored. (Full pallets are still picked first)
  • Order by Sequence, Location code, Full LUID, : First Sequence of the location, then the code of the location, then full pallets.
  • Order by Custom stored procedure: The sorting is based on a custom SP.

It uses the SP defined in the setting below.

Pick items order by - Stored procedure name
The name of the stored procedure that is used for the custom order by.
Used for the picking and zone picking flow.
The input of this stored procedure is the wave key. SQL: @waveKey, HANA: p_waveKey
This SP needs to be in the extra DB.
If this SP does not return all line numbers to pick, the system will still add those lines to be picked, but in the order:

  • Order by Full LUID, sequence, no location.

Packing

Packing

Time to show pick/pack remarks on packing?
The number of seconds the pick/pack remarks are shown in a popup window in the packaging client:
Possible values:

  • Negative values: The message is not shown.
  • Value 0: The message will remain visible until the user clicks the ‘OK’ button
  • Positive values: The message will remain visible for the entered number of seconds.

Picking

Picking

Picking: Make pick list ready for selected line? (Y/N)
If enabled, the status of the pick list lines remain ‘Not Ready’ and the system does not allocate stock to them up until the user selects the item on the scanner. This setting is used only in the Picking flow.

Picking: Keep picking same location (Y/N)
When this is set to true, the system will not ask the user to identify the pick location again when the next item to pick is in the same location.

Picking/Multi-picking

Picking/Multi-picking

Select wave – View name
For the picking and multi-picking flows, it is possible to define a customized view which filters the list of waves to be displayed on your scanner when you have the option of selecting a wave.
It is optional to provide a view name to the field . If you do not need a customized view, you can leave the field empty and the system will use its own query.

Mandatory fields:

  • InternalKey
  • InternalKeyAsString
  • DueDate
  • Description
  • Priority
  • SameDelivery
  • PmxWhsCode
  • ItemLabelsPrinted
  • LockedBy
  • USER_CODE
  • U_UseForPicking
  • U_UseForMultiPicking

Example view query:

SELECT "PMX_WAVE"."InternalKey" AS "InternalKey", CAST("PMX_WAVE"."InternalKey" AS NVARCHAR) AS "InternalKeyAsString", "PMX_WAVE"."DueDate" AS "DueDate", 
 "PMX_WAVE"."Description" AS "Description", "PMX_WAVE"."Priority", "PMX_WAVE"."SameDelivery", "PMX_OSEL"."PmxWhsCode", "PMX_WAVE"."ItemLabelsPrinted"
 ,"PMX_WAVE"."LockedBy", "OUSR"."USER_CODE", MAX("U_UseForPicking") AS 'U_UseForPicking', 
MAX("U_UseForMultiPicking") AS 'U_UseForMultiPicking'
 FROM "PMX_WAVE"  WITH (NOLOCK)
 INNER JOIN "PMX_PLHE"  WITH (NOLOCK) ON "PMX_WAVE"."InternalKey" = "PMX_PLHE"."WaveKey"
 INNER JOIN "PMX_OSEL"  WITH (NOLOCK) ON "PMX_OSEL"."Code" = "PMX_PLHE"."DestStorLocCode"
 LEFT JOIN "@PMX_PLTY"  WITH (NOLOCK) ON "PMX_PLHE"."PickListType" = "@PMX_PLTY"."Code"
 LEFT JOIN "OUSR"  WITH (NOLOCK) ON "PMX_WAVE"."LockedBy" = "OUSR"."INTERNAL_K"
 LEFT JOIN (  "PMX_PLLI"  WITH (NOLOCK)
    INNER JOIN "PMX_PLPL" WITH (NOLOCK) ON "PMX_PLPL"."DocEntry" = "PMX_PLLI"."BaseEntry" AND "PMX_PLPL"."LineNum" = "PMX_PLLI"."BaseLine" AND "PMX_PLLI"."BaseType" = N'PMX_PLPH'
    LEFT JOIN "PMX_OSWA" WITH (NOLOCK) ON "PMX_OSWA"."Code" = "PMX_PLLI"."StorLocCode"
 ) ON "PMX_PLLI"."DocEntry" = "PMX_PLHE"."DocEntry" AND "PMX_OSWA"."Code" IS NULL
  AND "PMX_PLLI"."PickListLineStatus" IN ('N','R')
 
 
 WHERE "PMX_WAVE"."InternalKey" 
 IN  ( SELECT DISTINCT "PMX_PLHE"."WaveKey" FROM "PMX_PLHE" WITH (NOLOCK) WHERE "PickListStatus" IN ('N' , 'R' , 'A' , 'I' ))
 AND "IsCustomerCollect" = N'N' AND "PMX_PLLI"."InvLockLevel" <> 'N' 
 AND "PMX_PLHE"."PickObjType" IN (N'Sales', N'WhsTransfer') 
 
 GROUP BY "PMX_WAVE"."LockedBy", "PMX_WAVE"."Priority", "PMX_WAVE"."DueDate", "PMX_WAVE"."InternalKey", "PMX_WAVE"."Description", "PMX_WAVE"."SameDelivery", "PMX_WAVE"."ItemLabelsPrinted", "PMX_OSEL"."PmxWhsCode", "OUSR"."USER_CODE"

Prepare carts

Prepare carts

Wave – View name
This view defines the waves to be displayed on the screen of the fat client.
The default view is PMX_PREPARE_CARTS_WAVE. It lists all the waves which involves a pick list type that can be used for multi-picking and to which no movable location has been assigned yet.

Mandatory fields to be provided:
1.WaveKey
2.Priority
3.WaveDescription

Wave – Order by
This setting defines the order by which the waves are displayed on the screen of the fat client.

Pick list – Order by
This setting defines the order by which the pick lists are displayed on the screen of the fat client.

Zone picking

Zone picking

Lock wave by zone/user (Zone picking)
If this is set to true, the system will lock all items to pick on the zone for the current user instead of only locking the item/zone he is picking from.
This is used in the ‘Zone picking’ flow.

Only show completely unlocked waves in case of zone picking?
If set to true, the user can only see wave that have no locking for a user on it. This is used in the ‘Zone picking’ flow.

implementation/wms/picklistcontroller.txt · Last modified: 2019/06/07 08:56 by vise