FS 294838 Proctor ePOD Modifications
Proctors
Proctors ePOD Modifications
CALIDUS ePOD
18th January 2012 - 0.4
Reference: FS 294838
Contents
Functional Overview
Client Requirement
Solution Overview
Jobs will be received for Collection and Delivery from the following main customer types:
- Suppliers
- Customers
- Proctors-operated Warehouses
- 3rd Party Warehouses
The jobs will be updated into the CALIDUS EPOD system through the standard WebService interface.
This job upload will create 2 tasks:
- A Collection Job
- A Delivery Job
Every Collection and Delivery will be specified separately within the interface, with the Product and Quantity specified for all jobs. Linked collections and deliveries will have the same Job ID, but will be distinguished by the Job Type (i.e. Collection, Delivery, Loading).
The Upload system will also identify the Loads onto which jobs are planned, as all planning is completed through the Proctors' ERP system.
There are two types of job:
- Customer/Supplier jobs - jobs that begin or end with a Customer or Supplier.
- Inter-warehouse Transfer - jobs that begin and end from Warehouses
All jobs will be categorised by the CALIDUS EPOD Job Group into one of the two categories - this will define the paperwork produced by the system when the job is completed. The Job Group will be agreed and sent to the system in the upload files.
Once jobs from Proctors-controlled warehouses are picked and marshalled, updated Jobs will be sent to the EPOD system, detailing the actual containers (pallets) and product quantities on each.
Note: If this data is not available at the time of collecting or delivering the associated jobs, the system will check periodically through a regularly-scheduled automatic process.
Collection jobs from a Proctors-operated warehouse should then have containers and product quantities specified against them. If this is not the case, the PDA client will force a check of these details at the point that the job is started. If these details are still not available (either that the PDA cannot connect to retrieve this or the data is unavailable from the ERP system), the PDA client will allow the user to continue loading the job, using only the product and quantity details.
The process for a Collection of this type will be:
- Confirm arrival to warehouse.
- Scan/Enter/Select Pallets to be collected.
- Once completed, confirm collection through depot signature.
Collection jobs from a Customer, Supplier or 3rd party warehouse (i.e. non-Proctors) will have the Product and Quantity created against them (i.e. no containers/pallets). The process will be:
- Confirm arrival to customer/supplier/warehouse.
- Scan/Enter/Select Products to be collected.
- Confirm total quantity of the products.
- Once completed, confirm collection through customer/supplier signature.
A Delivery of a non-Proctors job will have only product and quantity details. The process will be:
- Confirm arrival to customer.
- Scan/Enter/Select Products to be delivered.
- Confirm total quantity of the products.
- Once completed, confirm delivery through customer signature.
A Delivery of Proctors job should have container (pallet), product and quantities. If this is not the case, the PDA client will force a check of these details at the point that the job is started. If these details are still not available (either that the PDA cannot connect to retrieve this or the data is unavailable from the ERP system), the PDA client will allow the user to continue loading the job, using only the product and quantity details. The process will be:
- Confirm arrival to customer/depot.
- Scan/Enter/Select pallets being delivered
- Once completed, confirm delivery through customer/depot signature.
Two new POD document formats will be created:
- A Delivery format, configured for use on Customer/Supplier jobs.
- A Transfer format, configured for use on Inter-warehouse Transfers.
These formats will be defined against the Job group provided on the upload. In order for these to be created to match the current formats as closely as possible, the CALIDUS EPOD Job Import will be extended to add new fields.
CALIDUS EPOD will be set up to allow certain customers to be automatically emailed upon completion of jobs to and from them. When enabled, the format associated to the Job Group will be sent to the Customer's associated email address, if there is one.
Confirmation or cancellation of the final job on a particular reference (i.e. the final delivery of a job) will trigger an automatic update of the ERP system. This will be configurable but is expected to be through an email of the standard EPOD XML job update message. If this update is not successful, there will be a scheduled process that will regularly check and attempt to update when possible.
Note: It may be that this update will be sent at Load completion instead, although the process is very similar to that above.
Scope
Set-up
Pre-requisites
For automatic updates through email and automatic emailing of POD/POC documents, the EPOD server must be configured with access to the customer's Email server.
Menu Structure
Data
The two new fixed Job Groups will be set up for Proctors-controlled warehouses and 3rd-party. The former will be configured with the Stock Transfer POD format, whilst the latter will be configured with the other format.
Functional Description
Database Changes
New Fields
EPOD_JOB
- EPL_SIGNED_UNCHECKED
- EPL_DNOTE_NUMBER - Delivery Note Number / Stock Transfer Number
- EPL_ORDER_DATE
- EPL_SALES_CONTACT - PPB Contact
- EPL_PICKER - Picked By
- EPL_CONVERTED
EPOD_PRODUCT
- EPL_UNIT_TYPE
- EPL_LOCATION
- EPL_LOCATION_QUANTITY
- EPL_PRODUCT_DESCRIPTION_LONG
EPOD_JOB_GROUP
- EPL_CONTAINER_ONLY - Controls container only delivery
EPOD_CUSTOMER
- EPL_AUTOEMAIL
XF_CONFIG
EPOD_JOB will require a new field of two characters EPL_EXPORTED, this will be defaulted to "". EPOD_SITE and EPOD_JOB_GROUP will require a new field EPL_XF_CONFIG which will link to the EPL_XF_CONFIG_ID. If no export is required this will be blank.
A new table EPOD_XF_CONFIG will be created consisting of:
- EPL_XF_CONFIG_ID: A ten character unique field
- EPL_DESCRIPTION
- EPL_XF_TYPE: A ten character field identifying the type of export (SOAP, File, Email)
- EPL_XF_DESTINATION: A 255 character field identifying the destination of the export
- EPL_XF_PARM: Additional parameters for example subject for email
A new table EPOD_XF_AUDIT_HEADER will be created consisting of:
- EPL_HEADER_ID: A unique auto-increment Id
- EPL_REQUEST_DATA: A maximum length free-text field
- EPL_REQUEST DATE
- EPL_STATUS: Two character status field
A new table EPOD_XF_AUDIT_DETAIL will be created consisting of:
- EPL_HEADER_ID: Foreign key to EPOD_XF_AUDIT_HEADER
- EPL_DETAIL_ID: A unique auto-increment Id
- EPL_REQUEST_DATE
- EPL_STATUS: Two character status field
Alterations
- Indexing applied to EPL_JOB_CODE, EPL_JOB_TYPE
XML Interface
Import
The system shall use the EPL_JOB_CODE field as a reference linking the delivery and collection, the index used shall be EPL_JOB_CODE and EPL_JOB_TYPE. The field EPL_JOB_ID will always be unique, this will be auto-generated by our system if not passed in.
Proctors ERP system will provide the ePOD web service with the XML structure of the following example:
<EPOD_IMPORT EPL_SITE_ID="TEST" EPL_USER_ID="ADM" EPL_USER_PASSWORD="TEST"> <EPOD_LOADS> <EPOD_LOAD> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_LOAD_START_PLANNED_DATE>20111129</EPL_LOAD_START_PLANNED_DATE> <EPL_LOAD_START_PLANNED_TIME>00000000</EPL_LOAD_START_PLANNED_TIME> <EPL_LOAD_END_PLANNED_DATE>20111129</EPL_LOAD_END_PLANNED_DATE> <EPL__LOAD_END_PLANNED_TIME>00000000</EPL__LOAD_END_PLANNED_TIME> <EPL_LOAD_DISTANCE_PLANNED>0</EPL_LOAD_DISTANCE_PLANNED> <EPL_USER_ID>MATT</EPL_USER_ID> <EPOD_JOBS> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_JOB_TYPE>C</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>00000000</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>20111129</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>00000000</EPL_END_PLANNED_TIME> <EPL_JOB_CODE>JOB_CODE_001</EPL_JOB_CODE> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_OFFICE_INSTRUCTION>Free Text Instructions Admin Only</EPL_OFFICE_INSTRUCTION> <EPL_CUSTOMER_CODE>WAREHOUSE1</EPL_CUSTOMER_CODE> <EPL_CUSTOMER_NAME>Dave Jones</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>16 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL>Y</EPL_AUTOEMAIL> <EPOD_CONTAINERS> <EPOD_CONTAINER> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_CONTAINER_PACKAGE_CODE>XX00</EPL_CONTAINER_PACKAGE_CODE> <EPL_CONTAINER_PACKAGE_DESC>Test Container</EPL_CONTAINER_PACKAGE_DESC> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_CONTAINER> </EPOD_CONTAINERS> </EPOD_JOB> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_JOB_TYPE>D</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>00000000</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>20111129</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>00000000</EPL_END_PLANNED_TIME> <EPL_JOB_CODE>JOB_CODE_001</EPL_JOB_CODE> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_OFFICE_INSTRUCTION>Free Text Instructions Admin Only</EPL_OFFICE_INSTRUCTION> <EPL_CUSTOMER_CODE>JohnSmithLtd</EPL_CUSTOMER_CODE> <EPL_CUSTOMER_NAME>John Smith</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>19 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL>N</EPL_AUTOEMAIL> <EPOD_CONTAINERS> <EPOD_CONTAINER> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_CONTAINER_PACKAGE_CODE>XX00</EPL_CONTAINER_PACKAGE_CODE> <EPL_CONTAINER_PACKAGE_DESC>Test Container</EPL_CONTAINER_PACKAGE_DESC> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_CONTAINER> </EPOD_CONTAINERS> </EPOD_JOB> </EPOD_JOBS> </EPOD_LOAD> </EPOD_LOADS> </EPOD_IMPORT>
The following XML would have the same outcome as above without the generation of container records:
<EPOD_IMPORT EPL_SITE_ID="TEST" EPL_USER_ID="ADM" EPL_USER_PASSWORD="TEST"> <EPOD_LOADS> <EPOD_LOAD> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_LOAD_START_PLANNED_DATE>20111129</EPL_LOAD_START_PLANNED_DATE> <EPL_LOAD_START_PLANNED_TIME>00000000</EPL_LOAD_START_PLANNED_TIME> <EPL_LOAD_END_PLANNED_DATE>20111129</EPL_LOAD_END_PLANNED_DATE> <EPL__LOAD_END_PLANNED_TIME>00000000</EPL__LOAD_END_PLANNED_TIME> <EPL_LOAD_DISTANCE_PLANNED>0</EPL_LOAD_DISTANCE_PLANNED> <EPL_USER_ID>MATT</EPL_USER_ID> <EPOD_JOBS> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_JOB_TYPE>C</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>00000000</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>20111129</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>00000000</EPL_END_PLANNED_TIME> <EPL_JOB_CODE>JOB_CODE_001</EPL_JOB_CODE> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_OFFICE_INSTRUCTION>Free Text Instructions Admin Only</EPL_OFFICE_INSTRUCTION> <EPL_CUSTOMER_CODE>WAREHOUSE1</EPL_CUSTOMER_CODE> <EPL_CUSTOMER_NAME>Dave Jones</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>16 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL>N</EPL_AUTOEMAIL> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_JOB> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_JOB_TYPE>D</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>00000000</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>20111129</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>00000000</EPL_END_PLANNED_TIME> <EPL_JOB_CODE>JOB_CODE_001</EPL_JOB_CODE> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_OFFICE_INSTRUCTION>Free Text Instructions Admin Only</EPL_OFFICE_INSTRUCTION> <EPL_CUSTOMER_CODE>JohnSmithLtd</EPL_CUSTOMER_CODE> <EPL_CUSTOMER_NAME>John Smith</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>19 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL>Y</EPL_AUTOEMAIL> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> <EPL_PRODUCT_WEIGHT></EPL_PRODUCT_WEIGHT> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_JOB> </EPOD_JOBS> </EPOD_LOAD> </EPOD_LOADS> </EPOD_IMPORT>
Both the collection and delivery must share the same EPL_JOB_CODE reference.
Within Phase One it is suggested that the following XML structure is used, importing only jobs and using the ePOD Admin System to plan these directly onto loads, as apposed to unplanning and re-planning.
<EPOD_IMPORT EPL_SITE_ID="TEST" EPL_USER_ID="ADM" EPL_USER_PASSWORD="TEST"> <EPOD_JOBS> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID></EPL_LOAD_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_JOB_TYPE>C</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>00000000</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>20111129</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>00000000</EPL_END_PLANNED_TIME> <EPL_JOB_CODE>JOB_CODE_001</EPL_JOB_CODE> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_OFFICE_INSTRUCTION>Free Text Instructions Admin Only</EPL_OFFICE_INSTRUCTION> <EPL_CUSTOMER_CODE>WAREHOUSE1</EPL_CUSTOMER_CODE> <EPL_CUSTOMER_NAME>Dave Jones</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>16 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL>N</EPL_AUTOEMAIL> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_JOB> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_LOAD_ID></EPL_LOAD_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_JOB_TYPE>D</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>00000000</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>20111129</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>00000000</EPL_END_PLANNED_TIME> <EPL_JOB_CODE>JOB_CODE_001</EPL_JOB_CODE> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_OFFICE_INSTRUCTION>Free Text Instructions Admin Only</EPL_OFFICE_INSTRUCTION> <EPL_CUSTOMER_CODE>JohnSmithLtd</EPL_CUSTOMER_CODE> <EPL_CUSTOMER_NAME>John Smith</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>19 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL>. <EPL_AUTOEMAIL>Y</EPL_AUTOEMAIL> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRIPTION_LONG></EPL_DESCRIPTION_LONG> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_JOB> </EPOD_JOBS> </EPOD_IMPORT>
Update
To update the jobs with the Container details, Proctors' ERP must follow the same standard structure as the import.
All Job, Container and Product tags that are populated and present will update the relevant details in the CALIDUS EPOD system.
Note:
- If the EPL_JOB_ID is blank (as expected for the Proctors interface, as the Collection and Deliveries will be linked via EPL_JOB_CODE), the system will check to see whether a job exists for this EPL_JOB_CODE and EPL_JOB_TYPE. If so, the record will be updated. If not, a new record (with a generated EPL_JOB_ID) will be created.
- If the EPL_JOB_ID is not blank, the system will check to see whether a job exists for this EPL_JOB_ID. If so, the record will be updated. If not, a new record will be created with this EPL_JOB_ID.
- If the EPL_LOAD_ID is left blank, the system will not update the Load ID of the Job.
- If the EPL_CONTAINERS tag is not populated, the system will not update any container information. If it is present, the system will delete any existing container information and replace it with the information in the containers tag.
- If the EPL_PRODUCTS tag is not populated, the system will not update any product information. If it is present, the system will delete any existing product information and replace it with the information in the product tag.
Export
At the point of job status changed the system will export the Jobs structure using the standard XML and send this to a predefined email address, for interfacing with the ERP system. This will be configured using the XF_CONFIG section of the system.
The required email functionality will need to be added to the existing export process.
The following XML is produced by the export, this example shows the export with multiple Jobs:
<?xml version="1.0"?> <EPOD_EXPORT_JOB> <EPOD_JOBS> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_JOB_TYPE>C</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_JOB_SIGNATURE/> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_CUSTOMER_CODE>WAREHOUSE1</EPL_CUSTOMER_CODE> <EPL_PHOTO_ID/> <EPL_ENG_SIGNATURE/> <EPL_SEQUENCE/> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>0</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>0</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>0</EPL_END_PLANNED_TIME> <EPL_START_ACTUAL_DATE>0</EPL_START_ACTUAL_DATE> <EPL_START_ACTUAL_TIME>0</EPL_START_ACTUAL_TIME> <EPL_END_ACTUAL_DATE>0</EPL_END_ACTUAL_DATE> <EPL_END_ACTUAL_TIME>0</EPL_END_ACTUAL_TIME> <EPL_DISTANCE_PLANNED>0</EPL_DISTANCE_PLANNED> <EPL_DISTANCE_ACTUAL>0</EPL_DISTANCE_ACTUAL> <EPL_DRIVING_TIME>0</EPL_DRIVING_TIME> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_CUSTOMER_NAME>Dave Jones</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>16 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL></EPL_AUTOEMAIL> <EPL_INVOICED/> <EPL_CUST_SIGNATORY/> <EPL_JOB_CODE/> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_OFFICE_INSTRUCTION/> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> <EPOD_CONTAINERS> <EPOD_CONTAINER> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_CONTAINER_PACKAGE_CODE>XX00</EPL_CONTAINER_PACKAGE_CODE> <EPL_CONTAINER_PACKAGE_DESC>Test Container</EPL_CONTAINER_PACKAGE_DESC> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_PHOTO_ID/> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_PRODUCT_QTY_ACTUAL>0</EPL_PRODUCT_QTY_ACTUAL> <EPL_PRODUCT_QTY_CASE>0</EPL_PRODUCT_QTY_CASE> <EPL_REASON_CODE/> <EPL_STATUS/> <EPL_PRODUCT_WEIGHT>0</EPL_PRODUCT_WEIGHT> <EPL_CUST_REF/> <EPL_ITEM_TYPE/> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRITPION_LONG></EPL_DESCRITPION_LONG> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_PRODUCT_QTY_ACTUAL>0</EPL_PRODUCT_QTY_ACTUAL> <EPL_PRODUCT_QTY_CASE>0</EPL_PRODUCT_QTY_CASE> <EPL_REASON_CODE/> <EPL_STATUS/> <EPL_PRODUCT_WEIGHT>0</EPL_PRODUCT_WEIGHT> <EPL_CUST_REF/> <EPL_ITEM_TYPE/> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRITPION_LONG></EPL_DESCRITPION_LONG> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_CONTAINER> </EPOD_CONTAINERS> <EPOD_SERVICES/> </EPOD_JOB> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_JOB_TYPE>D</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_JOB_SIGNATURE/> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_CUSTOMER_CODE>JohnSmithLtd</EPL_CUSTOMER_CODE> <EPL_PHOTO_ID/> <EPL_ENG_SIGNATURE/> <EPL_SEQUENCE/> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>0</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>0</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>0</EPL_END_PLANNED_TIME> <EPL_START_ACTUAL_DATE>0</EPL_START_ACTUAL_DATE> <EPL_START_ACTUAL_TIME>0</EPL_START_ACTUAL_TIME> <EPL_END_ACTUAL_DATE>0</EPL_END_ACTUAL_DATE> <EPL_END_ACTUAL_TIME>0</EPL_END_ACTUAL_TIME> <EPL_DISTANCE_PLANNED>0</EPL_DISTANCE_PLANNED> <EPL_DISTANCE_ACTUAL>0</EPL_DISTANCE_ACTUAL> <EPL_DRIVING_TIME>0</EPL_DRIVING_TIME> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_CUSTOMER_NAME>John Smith</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>19 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL></EPL_AUTOEMAIL> <EPL_INVOICED/> <EPL_CUST_SIGNATORY/> <EPL_JOB_CODE/> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_OFFICE_INSTRUCTION/> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575902</EPL_LAST_CHANGED_TIME> <EPOD_CONTAINERS> <EPOD_CONTAINER> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_CONTAINER_PACKAGE_CODE>XX00</EPL_CONTAINER_PACKAGE_CODE> <EPL_CONTAINER_PACKAGE_DESC>Test Container</EPL_CONTAINER_PACKAGE_DESC> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575902</EPL_LAST_CHANGED_TIME> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_PRODUCT_QTY_ACTUAL>0</EPL_PRODUCT_QTY_ACTUAL> <EPL_PRODUCT_QTY_CASE>0</EPL_PRODUCT_QTY_CASE> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_PRODUCT_WEIGHT>0</EPL_PRODUCT_WEIGHT> <EPL_CUST_REF/> <EPL_ITEM_TYPE/> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRITPION_LONG></EPL_DESCRITPION_LONG> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575902</EPL_LAST_CHANGED_TIME> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_D</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_PRODUCT_QTY_ACTUAL>0</EPL_PRODUCT_QTY_ACTUAL> <EPL_PRODUCT_QTY_CASE>0</EPL_PRODUCT_QTY_CASE> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_PRODUCT_WEIGHT>0</EPL_PRODUCT_WEIGHT> <EPL_CUST_REF/> <EPL_ITEM_TYPE/> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRITPION_LONG></EPL_DESCRITPION_LONG> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575903</EPL_LAST_CHANGED_TIME> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_CONTAINER> </EPOD_CONTAINERS> <EPOD_SERVICES/> </EPOD_JOB> </EPOD_JOBS> </EPOD_EXPORT_JOB>
The following XML is produced by the export, this example shows the export with a single Job:
<?xml version="1.0"?> <EPOD_EXPORT_JOB> <EPOD_JOBS> <EPOD_JOB> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_LOAD_ID>TIPIMPORT</EPL_LOAD_ID> <EPL_JOB_TYPE>C</EPL_JOB_TYPE> <EPL_JOB_GROUP>JG01</EPL_JOB_GROUP> <EPL_JOB_INSTRUCTION>Free Text Instructions</EPL_JOB_INSTRUCTION> <EPL_JOB_SIGNATURE/> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_CUSTOMER_CODE>WAREHOUSE1</EPL_CUSTOMER_CODE> <EPL_PHOTO_ID/> <EPL_ENG_SIGNATURE/> <EPL_SEQUENCE/> <EPL_START_PLANNED_DATE>20111129</EPL_START_PLANNED_DATE> <EPL_START_PLANNED_TIME>0</EPL_START_PLANNED_TIME> <EPL_END_PLANNED_DATE>0</EPL_END_PLANNED_DATE> <EPL_END_PLANNED_TIME>0</EPL_END_PLANNED_TIME> <EPL_START_ACTUAL_DATE>0</EPL_START_ACTUAL_DATE> <EPL_START_ACTUAL_TIME>0</EPL_START_ACTUAL_TIME> <EPL_END_ACTUAL_DATE>0</EPL_END_ACTUAL_DATE> <EPL_END_ACTUAL_TIME>0</EPL_END_ACTUAL_TIME> <EPL_DISTANCE_PLANNED>0</EPL_DISTANCE_PLANNED> <EPL_DISTANCE_ACTUAL>0</EPL_DISTANCE_ACTUAL> <EPL_DRIVING_TIME>0</EPL_DRIVING_TIME> <EPL_DNOTE_NUMBER></EPL_DNOTE_NUMBER> <EPL_ORDER_DATE></EPL_ORDER_DATE> <EPL_SALES_CONTACT></EPL_SALES_CONTACT> <EPL_PICKER></EPL_PICKER> <EPL_CONVERTED></EPL_CONVERTED> <EPL_CUSTOMER_NAME>Dave Jones</EPL_CUSTOMER_NAME> <EPL_ADDRESS_1>16 Sutton Drive</EPL_ADDRESS_1> <EPL_ADDRESS_2>Bebington</EPL_ADDRESS_2> <EPL_ADDRESS_3>Wirral</EPL_ADDRESS_3> <EPL_ADDRESS_4>Merseyside</EPL_ADDRESS_4> <EPL_POSTCODE>CH62 9GR</EPL_POSTCODE> <EPL_CONTACT>Dave Jones</EPL_CONTACT> <EPL_TELEPHONE>08458795846</EPL_TELEPHONE> <EPL_EMAIL>[email protected]</EPL_EMAIL> <EPL_AUTOEMAIL></EPL_AUTOEMAIL> <EPL_INVOICED/> <EPL_CUST_SIGNATORY/> <EPL_JOB_CODE/> <EPL_CUST_REF>WAREHOUSE1_ORD0011</EPL_CUST_REF> <EPL_OFFICE_INSTRUCTION/> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> <EPOD_CONTAINERS> <EPOD_CONTAINER> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_CONTAINER_PACKAGE_CODE>XX00</EPL_CONTAINER_PACKAGE_CODE> <EPL_CONTAINER_PACKAGE_DESC>Test Container</EPL_CONTAINER_PACKAGE_DESC> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> <EPOD_PRODUCTS> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD1</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_PRODUCT_QTY_ACTUAL>0</EPL_PRODUCT_QTY_ACTUAL> <EPL_PRODUCT_QTY_CASE>0</EPL_PRODUCT_QTY_CASE> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_PRODUCT_WEIGHT>0</EPL_PRODUCT_WEIGHT> <EPL_CUST_REF/> <EPL_ITEM_TYPE/> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRITPION_LONG></EPL_DESCRITPION_LONG> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> </EPOD_PRODUCT> <EPOD_PRODUCT> <EPL_SITE_ID>TEST</EPL_SITE_ID> <EPL_JOB_ID>JOB_001_C</EPL_JOB_ID> <EPL_CONTAINER_ID>0000000000001</EPL_CONTAINER_ID> <EPL_PRODUCT_CODE>TESTPROD2</EPL_PRODUCT_CODE> <EPL_SEQUENCE>0001</EPL_SEQUENCE> <EPL_DESCRIPTION>TEST ITEM</EPL_DESCRIPTION> <EPL_PRODUCT_QTY_PLANNED>1</EPL_PRODUCT_QTY_PLANNED> <EPL_PRODUCT_QTY_ACTUAL>0</EPL_PRODUCT_QTY_ACTUAL> <EPL_PRODUCT_QTY_CASE>0</EPL_PRODUCT_QTY_CASE> <EPL_REASON_CODE/> <EPL_STATUS>P</EPL_STATUS> <EPL_PRODUCT_WEIGHT>0</EPL_PRODUCT_WEIGHT> <EPL_CUST_REF/> <EPL_ITEM_TYPE/> <EPL_UNIT_TYPE></EPL_UNIT_TYPE> <EPL_LOCATION></EPL_LOCATION> <EPL_LOCATION_QUANTITY></EPL_LOCATION_QUANTITY> <EPL_DESCRITPION_LONG></EPL_DESCRITPION_LONG> <EPL_LAST_CHANGED_DATE>20120118</EPL_LAST_CHANGED_DATE> <EPL_LAST_CHANGED_TIME>11575901</EPL_LAST_CHANGED_TIME> </EPOD_PRODUCT> </EPOD_PRODUCTS> </EPOD_CONTAINER> </EPOD_CONTAINERS> <EPOD_SERVICES/> </EPOD_JOB> </EPOD_JOBS> </EPOD_EXPORT_JOB>
Process
When Job update messages are received by the server and the changes are committed, the Auto Export flag will be checked against the Job Group and Site. If this flag is present the server will load the details of this export (Destination and Type), it will then generate the XML export as per the standard for currently existing exports and attempt to transfer this to the destination.
If this process if successful then a flag on the Job record will be set to Y, and a success audit record written. If this fails the flag on the job will be set to N and a record will be written to a audit table with details of the failure. If the file is send successfully but a message is received from the destination advising of this problem then a audit record will be written and the flag will be set to N.
A timed process will be running to resend any Jobs with the flag of N, again writing audit records based on the result.
Audit records will be written with the following status's S for success, SF for success send but error at the receivers, and F for failure to send. These records will be cleared down once they are older than X.
Admin System
Within Phase one the admin interface will be used to plan Jobs onto loads, all required functionality has been implemented. Within phase two this will not be required as Proctior will interface pre-planned loads.
Changes will need to be made to reflect the new database fields.
PDA Client
The DB changes will need to be reflected on the PDA.
The PDA will need to be implemented with the functionality to transfer collection details to the delivery job, based on matching Job Codes. This includes altering the planned delivery quantity to the actual collection quantity specified in the collection.
The PDA will need to select the appropriate delivery or collection process based on the jobs attributes:
- Collections
- Proctor Controlled Warehouse - Standard Collection
- Non Proctor Location - Collection without Containers
- Deliveries
- Non Proctor Collection - Delivery without Containers
- Proctor Collection - Delivery without Products.
When starting a collection or delivery from a Proctor Controlled Warehouse a update check must be forced (this is currently handled under the standard process) if no container records are recieved, then a alert is given to the user advising that the data may not be up to date.
Standard Collection
The user is present with a list of Containers for collection. The user selects a container either through text entry or scanning, and is prompted with all products to collect within this container. Users has the ability alter the quantity collected, and use the exception process to document any issues, at both product and container level. When all Containers and Products are accounted for the user is prompted to complete the job, with a customer signature.
Collection without Containers
The user is presented with a list of products for collection. The user confirms colleciton of each product as in the stadnard approach. When all Products are accounted for the user is prompted to complete the job, with a customer signature.
Delivery without Containers
Process is the same as Collection without Containers.
Delivery without Products
This will check a parameter on the job group if container only delivery is enabled and there are no loose products the delivery will continue as Container only, otherwise the standard delviery process will be used.
Photos
Photos will be captured using the standard exception process. User's must be aware that quality of the images will affect GPRS usage, higher quality equals longer more date to transfer. This can only be controls on the PDA itself and must be set in teh PDA's camera settings.
New POD formats
New POD formats will be created for the operation.
The POD or POC format produced will be dependant of the Job Group associated to the Job.
All images captured relating to the Job will be displayed on a second page of the POD/POC document, with the associated detail information (Job ID, Container ID, Product Code, Image description). Again image quality is dependant on device settings, which affects the image size.
Weights
Weights will be calculated at product level. The weight must be passed through as part of the interfaced product record. This must be weight per unit and will be calculated excluding ter weight.
Appendix A: POD Formats
Appendix B: Quote & Document References
![]() | Unknown costs for client/year (PROC/2012) |
Cost Details | |||
Activity | No. of Days | Rate per Day (£) | Cost (£ Exc. VAT) |
Requirements | 0.00 | 0 | £0.00 |
Change Request Evaluation | 0.00 | 0 | £0.00 |
Functional Specification | 5.00 | 0 | £0.00 |
Technical Specification | 0.00 | 0 | £0.00 |
Development | 36.00 | 0 | £0.00 |
Testing and Release | 5.00 | 0 | £0.00 |
Implementation | 2.00 | 0 | £0.00 |
Project Management | First argument to "number_format" must be a number. | 0 | £First argument to "number_format" must be a number. |
TOTAL | First argument to "number_format" must be a number. | £First argument to "number_format" must be a number. |
Estimate excludes training, release to live and go live support. |
B.1 References
Ref No | Document Title & ID | Version | Date |
1 |
B.2 Glossary
Term | Definition |
---|---|
EPOD | Electronic Proof of Delivery. The OBS EPOD system is CALIDUS ePOD. |
CALIDUS eSERV | The OBS mobile system to complete Service functionality in the field. This is part of the CALIDUS ePOD system. |
PDA | The mobile device on which the C-ePOD system will run in the field. This can be a Phone, EDA or industrial PDA, running Android. |
DAL | Data Access Layer. A mechanism for accessing data by the system that is removed from the application, allowing for simplified access and providing protection to the data, as only approved DAL methods can be used to modify it. |
GPS | Global Positioning System. A mechanism of retrieving accurate positioning information in the form of Latitude and Longitude (Lat-Long) co-ordinates from a device. |
GPRS, 3G, HSDPA, Data Service | All terms referring to mobile device network connectivity, and the speed at which the device connects to the internet. |
B.3 Authorised By
Matt Turner | OBS Representative | _____________________________ |
Stephen McCartney | OBS Representative | _____________________________ |