FS 302901 Pentland RF Scanning: Difference between revisions
From Calidus HUB
(v0.2 - added Updating of Picks and sending of Loading tasks) |
(v0.6 - After customer feedback) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
{{#vardefine:Client|PENT}} | {{#vardefine:Client|PENT}} | ||
{{#vardefine:ClientName|Pentland}} | {{#vardefine:ClientName|Pentland}} | ||
{{#vardefine:System|Dynamics NAV | {{#vardefine:System|Dynamics NAV}} | ||
{{#vardefine:Doc_Title|Pentland RF Scanning}} | {{#vardefine:Doc_Title|Pentland RF Scanning}} | ||
{{#vardefine:Version|0. | {{#vardefine:Version|0.6}} | ||
{{#vardefine:Date| | {{#vardefine:Date|14th February 2013}} | ||
{{#vardefine:Reference|302901}} | {{#vardefine:Reference|302901}} | ||
{{#vardefine:Year|2013}} | {{#vardefine:Year|2013}} | ||
Line 81: | Line 81: | ||
{{Note}} Spare parts are delivered through DPD or other external carriers, so will be labelled through a separate mechanism, and will not be delivered through ''CALIDUS'' ePOD. | {{Note}} Spare parts are delivered through DPD or other external carriers, so will be labelled through a separate mechanism, and will not be delivered through ''CALIDUS'' ePOD. | ||
{{Note}} Spare parts that are part of orders with large spares or cabinets (mixed orders) will be delivered through ePOD | {{Note}} Spare parts that are part of orders with large spares or cabinets (mixed orders) will be delivered through ePOD. | ||
{{Note}} For Mixed orders, the Spares stock will be picked and packed at the Spares warehouse and then transferred to the main warehouse for loading once the routes/loads for the vehicles have been finalised and the requirement for the goods is therefore confirmed. | {{Note}} For Mixed orders, the Spares stock will be picked and packed at the Spares warehouse and then transferred to the main warehouse for loading once the routes/loads for the vehicles have been finalised and the requirement for the goods is therefore confirmed. | ||
Line 99: | Line 99: | ||
== Scope == | == Scope == | ||
{{warning}} Questions for NAV: | |||
* "The operation is picking by order, for Spares picking". How does NAV send these to pick? For Equipment orders being picked, they allocate the lot together onto a manifest, then assign the manifest to a picker. How will this work when it's a single order to be picked? | |||
* How will mixed orders be allocated? For example, we have 2 orders: | |||
** Order 1 is an equipment order only, requesting two products (ORDER1_EQUIP1 and ORDER1_EQUIP2) | |||
** Order 2 is a mixed order, requesting 4 products (ORDER2_EQUIP1, ORDER2_SPARE1, ORDER2_SPARE2, ORDER2_SPARE3) | |||
So, we allocate order1 and 2 onto a manifest (for the picking of all the equipment for the two orders). How do the three Spare items get split out onto a different pick? Which picker will be allocated? Is this the same order number or different? | |||
* What is the process for re-allocating a 'pick' from one picker to another in NAV? How will this be affected by the above two points? | |||
* For Loading, the customer requires that the loading tasks per item are in reverse drop sequence. How is this defined in NAV? What field is used? | |||
<!-- NEW PAGE --> | <!-- NEW PAGE --> | ||
Line 155: | Line 166: | ||
EPOD_PRODUCT: | EPOD_PRODUCT: | ||
* Add new field (EPL_OPTIONS) to control the options required for Picking | * Add new field (EPL_OPTIONS) to control the options required for Picking | ||
<!-- NEW PAGE --> | <!-- NEW PAGE --> | ||
= Functional Description = | = Functional Description = | ||
== RF Picking == | == RF Picking == | ||
=== Generate RF Picking Tasks === | === Generate RF Picking Tasks === | ||
A Load Planner will plan the orders together in Dynamics NAV into Loads. These loads will be assigned to a vehicle. Note that these vehicles in Dynamics NAV will be identical to those that the drivers and loaders use in ''CALIDUS'' ePOD - the two systems will use an interface to ensure that any vehicles added in Dynamics NAV is automatically created within ''CALIDUS'' ePOD. | A Load Planner will plan the orders together in Dynamics NAV into Loads. These loads will be assigned to a vehicle. Note that these vehicles in Dynamics NAV will be identical to those that the drivers and loaders use in ''CALIDUS'' ePOD - the two systems will use an interface to ensure that any vehicles added in Dynamics NAV is automatically created within ''CALIDUS'' ePOD. | ||
Dynamics NAV provides the option to generate pick lists order by order or to consolidate multiple orders into a single pick. Each pick must be assigned to the Warehouse employee (i.e. Dynamics NAV user) responsible for completing the activity. | Dynamics NAV provides the option to generate pick lists order by order or to consolidate multiple orders into a single pick. Each pick must be assigned to the Warehouse employee (i.e. Dynamics NAV user) responsible for completing the activity. {{warning}} See scope above for question about how this works for Mixed and Spares orders. | ||
This process will trigger a send of the Pick tasks to ''CALIDUS'' ePOD. This triggered process will create EPOD_LOAD, EPOD_JOB, EPOD_CONTAINER and EPOD_PRODUCT records within the system. | This process will trigger a send of the Pick tasks to ''CALIDUS'' ePOD. This triggered process will create EPOD_LOAD, EPOD_JOB, EPOD_CONTAINER and EPOD_PRODUCT records within the system. | ||
Line 175: | Line 183: | ||
* Product records will be created for each product to be picked. | * Product records will be created for each product to be picked. | ||
** Ordered Qty will be set to the To Pick qty. | ** Ordered Qty will be set to the To Pick qty. | ||
{{note}} For equipment items, each should have their own product line. So, if the user has ordered 2 fridge units, there should be two products on the job, each with quantity 1. For Spares items (i.e. non-equipment), the full quantity can be put on a single line. | |||
{{note}} Reassigning a pick from one user to another will require the messages to be resent to ePOD. {{warning}} NAV process to be defined. See scope for questions regarding this. | |||
The ePOD LOAD DAL object will be modified to allow updating and searching of tasks that for particular types only, and existing DAL objects will be modified to display only Delivery load types. | The ePOD LOAD DAL object will be modified to allow updating and searching of tasks that for particular types only, and existing DAL objects will be modified to display only Delivery load types. | ||
The Dynamics NAV user will print labels for the picked items at this stage. | The Dynamics NAV user will print labels for the picked items at this stage. Labels will only be produced for those orders that require them. {{warning}} The customer has confirmed that they require a SO# and PO# on the labels. | ||
=== User Modifications === | === User Modifications === | ||
Line 224: | Line 236: | ||
Note that any text showing as Collect or similar will be changed to Pick. | Note that any text showing as Collect or similar will be changed to Pick. | ||
The user will scan a product barcode, applied during receipt. | The user will scan a product barcode, applied during receipt. If the barcode is unavilable or not scanning, the user can enter the product code directly rather than use the scanner. | ||
If this does not match a product on the load, an error will be displayed. | If this does not match a product on the load, an error will be displayed. | ||
Line 233: | Line 245: | ||
* Product Type | * Product Type | ||
* To Pick qty | * To Pick qty | ||
* A text box to confirm the picked qty. | * A text box to confirm the picked qty (stored in EPL_PRODUCT_QTY_ACTUAL). | ||
* A text box to enter the Serial number, if the options against the product indicate this is required. The first character of EPL_OPTIONS will indicate this "Y" or "N". | * A text box to enter the Serial number, if the options against the product indicate this is required (stored in EPL_CUST_REF). The first character of EPL_OPTIONS will indicate this "Y" or "N". | ||
* A text box to enter the Label ID, if the options against the product indicate this is required. The second character of EPL_OPTIONS will indicate this "Y" or "N". | * A text box to enter the Label ID, if the options against the product indicate this is required (stored in EPL_ITEM_TYPE). The second character of EPL_OPTIONS will indicate this "Y" or "N". | ||
The user can enter items in the text boxes by clicking on them, and then using the keypad or scanner. | |||
A Cancel button will be provided - if pressed, all entry will be discarded and the user will be returned to the product list. | |||
A Confirm button will be provided - if pressed, the program will validate: | |||
* All text items have been entered. | |||
* The serial number is less than 20 characters | |||
* The quantity is equal to or less than the ordered quantity. | |||
If not, an error will be issued. Clearing this error will return the user to the popup screen to correct the issue. | |||
Furthermore, the pick quantity will be checked whether it is equal to the ordered qty. If not, the user will be warned that the pick quantity differs, but allowed to confirm or cancel. If cancelled, the user will be returned to the popup screen to correct the issue, if confirmed, the reason code on the product will automatically be set to "NP" and the pick confirmed. | |||
When the item are confirmed picked, the user will be returned to the product list, with the picked item removed from the list. | |||
{{note}} For equipment items, each should have their own product line. So, if the user has ordered 2 fridge units, there should be two products on the job, each with quantity 1. If the user scans a product that is duplicated on the list, only one should be removed. | |||
When all items are picked for the order, a confirmation message will be displayed and the user will be returned to the Order List. The ePOD Server will be informed as the orders are completed. | When all items are picked for the order, a confirmation message will be displayed and the user will be returned to the Order List. The ePOD Server will be informed as the orders are completed. | ||
Line 241: | Line 269: | ||
For the Equipment warehouse, as items are picked they will be taken to the marshalling area (of extremely limited space). | For the Equipment warehouse, as items are picked they will be taken to the marshalling area (of extremely limited space). | ||
For the Spares warehouse, when all items are picked, they are taken to a marshalling area | For the Spares warehouse, when all items are picked, they are taken to a marshalling area. | ||
Once all orders have been picked, the user will be returned to the main menu. | Once all orders have been picked, the user will be returned to the main menu. | ||
Line 254: | Line 282: | ||
{{note}} the existing triggers for the updating of completed Deliveries must be modified to check the Load Type. | {{note}} the existing triggers for the updating of completed Deliveries must be modified to check the Load Type. | ||
* If "P" Pick, no action | * If "P" Pick, no action (sent through a webservice) | ||
* If "L" Loading, | * If "L" Loading, no action (sent through a webservice) | ||
* If "D" Delivery, call the existing package. | * If "D" Delivery, call the existing package. | ||
Line 261: | Line 289: | ||
* to allow the entire pick to be sent through, with individual pick details, in one web request | * to allow the entire pick to be sent through, with individual pick details, in one web request | ||
* through a SOAP rather than HTTP request | * through a SOAP rather than HTTP request | ||
* return no errors through the webservice, | * return no errors through the webservice - these will be handled and audited directly within Dynamics NAV. | ||
* {{note}} any picks that have been marked as amended(i.e. the reason code is set) should result in the pick NOT being set to Picked status, and therefore no further action will be taken (regarding sending loading tasks , etc). This order will require manual completion in NAV, which will then generate the Loading tasks. | |||
{{warning}} NAV developer required to do this. | {{warning}} NAV developer required to do this. | ||
This interface will be configured through the standard XF_CONFIG system within ePOD, which will require the following changes: | This interface will be configured through the standard XF_CONFIG system within ePOD, which will require the following changes: | ||
* A new XF_ID of "Pick" will be required, to configure an interface of this type. This will be set up with the web service settings required to send via SOAP. | * A new XF_ID of "Pick" will be required, to configure an interface of this type. This will be set up with the web service settings required to send via SOAP. | ||
* When Pick Updates are returned from the device, the system will check for this configuration on the site. If so, the data will be interfaced out to the webservice defined immediately. This will be through a threaded process, to ensure that this does not delay processing of subsequent device messages. | |||
{{Note}} Once sent, all the relevant picking information will be deleted from ePOD. | |||
== Generate Loading Tasks == | == Generate Loading Tasks == | ||
Dynamics NAV will send the Loads and the associated Orders to ''CALIDUS'' ePOD at this stage, which will create Loads and Jobs from the associated information. These will be sent immediately upon completion of the pick, to ensure that the data is available for loading immediately. | Dynamics NAV will send the Loads and the associated Orders to ''CALIDUS'' ePOD at this stage, which will create Loads and Jobs from the associated information. These will be sent immediately upon completion of the pick, to ensure that the data is available for loading immediately. | ||
This will be triggered within the database once the manifest has been set to Picked status. | |||
{{Note}} Some orders will not have Loading tasks generated for them. They are: | {{Note}} Some orders will not have Loading tasks generated for them. They are: | ||
* Orders that are designated as Customer Collections | * Orders that are designated as Customer Collections - the process will trigger instead the creation of the Delivery manifest to ePOD. | ||
* Orders that are being delivered via another haulier (i.e. DPD delivery of spares-only orders) | * Orders that are being delivered via another haulier (i.e. DPD delivery of spares-only orders) - the process will not trigger any further processing in this case. | ||
A load will be created for loading the orders at the main warehouse. These will all be planned from the warehouse address, and all containers (pallets, boxes and potentially loose items) will have their unique ID and description planned onto one order, in the sequence in which they should be loaded. {{Note}} These jobs will be planned in a separate job group within ''CALIDUS'' ePOD, to ensure that a different PDA configuration can be used (i.e. this does not act like a normal collection job). | A load will be created for loading the orders at the main warehouse. These will all be planned from the warehouse address, and all containers (pallets, boxes and potentially loose items) will have their unique ID and description planned onto one order, in the sequence in which they should be loaded. {{Note}} These jobs will be planned in a separate job group within ''CALIDUS'' ePOD, to ensure that a different PDA configuration can be used (i.e. this does not act like a normal collection job). | ||
Line 285: | Line 316: | ||
* Planned date and time will be set to the current date and time (i.e. immediate loading) | * Planned date and time will be set to the current date and time (i.e. immediate loading) | ||
* One job will be created, with the Date and Time set as the Job Code | * One job will be created, with the Date and Time set as the Job Code | ||
* The Job Group will be set to "LOAD" | |||
* All label IDs entered during picking will be created as Containers. | * All label IDs entered during picking will be created as Containers. | ||
* All containers will be placed on the list in the sequence they are to be loaded. {{warning}} NAV to confirm what field this is. | |||
== Loading == | == Loading == | ||
{{ | The user will trigger the loading process on the RF gun by choosing the loading option from the menu. {{note}} These Loading tasks will not be capable of being retrieved through the standard Delivery functionality. | ||
The user will be prompted to enter a vehicle at this time, from a drop-down list. The user should select the vehicle that is ready to load. | |||
The PDA will send a message to the server, requesting a Loading-type manifest, associated to the vehicle ID entered on the previous screen. | |||
The server will be modified to allow this request and retrieve only loading manifests - this will require a modification to the Load DAL. | |||
If none are found, the PDA should display an error message and return to the Vehicle Request screen. | |||
If one is found, the standard Job List screen should be displayed. | |||
The functionality from this point forward will be as a Collection process. | |||
{{note}} If some containers are not found for loading, this should be investigated manually. Containers can be marked as not loaded by cancelling them on the device. | |||
The Job Group "LOAD" will be configured so that no signature is requested. | |||
On completion of loading, the ePOD server will be informed through a standard Job Update message. | |||
== Updating Completed Loading in Dynamics NAV == | |||
When loading is complete (or this order is a customer collect order), this will trigger the update of the pick to Loaded. | |||
{{warning}} Does this require the Web Service update as the Picking process before? Assuming it does... | |||
This requires a web service created within Dynamics NAV: | |||
* to allow the entire Load to be sent through, with individual Load details, in one web request | |||
* through a SOAP rather than HTTP request | |||
* return no errors through the webservice - these will be handled and audited directly within Dynamics NAV. | |||
* {{note}} any items marked as not loaded (i.e. the reason code is set) should result in the manifest NOT being set to Loaded status, and therefore no further action will be taken (regarding sending delivery tasks , etc). This order will require manual completion in NAV, which will then generate the Delivery tasks. | |||
{{warning}} NAV developer required to do this. | |||
This interface will be configured through the standard XF_CONFIG system within ePOD, which will require the following changes: | |||
* A new XF_ID of "Loading" will be required, to configure an interface of this type. This will be set up with the web service settings required to send via SOAP. | |||
* When Loading Updates are returned from the device, the system will check for this configuration on the site. If so, the data will be interfaced out to the webservice defined immediately. This will be through a threaded process, to ensure that this does not delay processing of subsequent device messages. | |||
{{Note}} Once sent, all the relevant Loading information will be deleted from ePOD. | |||
= | == Generate Delivery Tasks == | ||
A load will be created for delivering the orders to their end points. There will be multiple jobs (orders) on this load, sequenced in the order in which they should be delivered by the driver. | |||
This will be triggered within the database once the manifest has been set to Loaded status. | |||
<!-- | This has already been developed. | ||
<!-- NEW PAGE --> | |||
{{Doc_Appendix | {{Doc_Appendix | ||
|Appendix= | |Appendix=A | ||
|Estimate= | |Estimate=N | ||
|Glossary= | |Glossary=EPOD | ||
|Ref1= | |Ref1=REQ 302901 Pentland Wholesale ePOD NAV WMS v3.0.docx | ||
|RefV1=0 | |RefV1=3.0 | ||
|RefDate1= | |RefDate1=08/11/2012 | ||
|REQ=0 | |REQ=0 | ||
|EST=0 | |EST=0 | ||
Line 354: | Line 385: | ||
|Year={{#var:Year}} | |Year={{#var:Year}} | ||
|FSEST=Y | |FSEST=Y | ||
|Rev1= | |Rev1=Julie Taylor | ||
|Rev1Title= | |Rev1Title=OBS Project Manager | ||
|Rev2=Richard Hinchliffe | |||
|Rev2Title=NAV | |||
|Rev3=Leigh Simons | |||
|Rev3Title=NAV | |||
}}</div> | }}</div> | ||
[[Category:{{#var:Client}} FS]] | [[Category:{{#var:Client}} FS]] |