REQ 305796 Partnerlink EPOD Solution: Difference between revisions
From Calidus HUB
(v0.1 - Initial Creation) |
(Added Import section details) |
||
Line 32: | Line 32: | ||
== Scope and Limitations == | == Scope and Limitations == | ||
This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}. | This document is based on the documentation provided by {{#var:ClientName}}, as referred to in the appendices, as well as information gleaned from site visits and workshops with {{#var:ClientName}}. | ||
<!-- ANY scope or limitations, bulleted. --> | <!-- ANY scope or limitations, bulleted. --> | ||
*The changes will be made in the latest version of the {{#var:System}} system. | *The changes will be made in the latest version of the {{#var:System}} system. | ||
{{ #vardefine: SCR | 0 }} | {{ #vardefine: SCR | 0 }} | ||
<!-- NEW PAGE --> | <!-- NEW PAGE --> | ||
= Client Requirements = | = Client Requirements = | ||
Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the changes required for this to be achieved. | Listed below are the proposed processes that will be followed by the operatives using {{#var:System}}. Also shown are the changes required for this to be achieved. | ||
== General Changes == | == General Changes == | ||
Line 55: | Line 51: | ||
|Definition=Change "Container" to "Pallet" on the device | |Definition=Change "Container" to "Pallet" on the device | ||
}} | }} | ||
== Importing Data == | == Importing Data == | ||
Line 64: | Line 58: | ||
* Stirling | * Stirling | ||
The exact formats of the data uploads from the various systems are still being decided. However, there is a requirement that certain data items are passed into the system: | The exact formats of the data uploads from the various systems are still being decided. However, there is a requirement that certain data items are passed into the system: | ||
A basic list of all the fields in the interface for Load (Manifest) and Job follows. A full spreadsheet of all the import flows and fields containing all the limitations on length and defaulted values is provided separately and issued to all TMS suppliers. | |||
'''EPOD_LOAD''' | |||
<table border="1" width="100%"><tr> | |||
<td bgcolor="silver" width="15%">Name</td><td bgcolor="silver" width="35%">Description</td><td bgcolor="silver" width="15%">External Field</td><td bgcolor="silver" width="35%">Notes</td></tr><tr> | |||
<td>EPL_SITE_ID</td><td>EPL_SITE_ID: Unique reference of the site that the Load belongs to.</td><td>Partner Code</td><td>Partner Code of the partner executing the load.</td></tr><tr> | |||
<td>EPL_LOAD_ID</td><td>EPL_LOAD_ID: Unique reference of the Load.</td><td>Manifest_No</td><td>The manifest number or Consolidated Manifest No</td></tr><tr> | |||
<td>EPL_LOAD_START_PLANNED_DATE</td><td> </td><td> </td><td>These times will be defaulted by the EPOD system to the earliest and latest dates and times against the jobs provided, unless this information can be provided by the TMS</td></tr><tr> | |||
<td>EPL_LOAD_START_PLANNED_TIME</td><td> </td><td> </td><td>No times will be provided for jobs. Therefore ETA will only start to be shown after the first job is started.</td></tr><tr> | |||
<td>EPL_LOAD_END_PLANNED_DATE</td><td> </td><td> </td><td>As above</td></tr><tr> | |||
<td>EPL_LOAD_END_PLANNED_TIME</td><td> </td><td> </td><td>As above</td></tr><tr> | |||
<td>EPL_LOAD_DISTANCE_PLANNED</td><td> </td><td> </td><td>N/A</td></tr><tr> | |||
<td>EPL_USER_ID</td><td>To be used if a user is predefined as assigned to complete this LOAD.</td><td>Driver Code</td><td>User to whom load assigned</td></tr><tr> | |||
<td>'''EPL_VEHICLE_ID'''</td><td>To be used if a vehicle is predefined as assigned to complete this LOAD.</td><td>Vehicle</td><td> </td></tr><tr> | |||
<td>'''EPL_TRAILER_ID'''</td><td>To be used if the vehicle above is a Tractor unit, and requires a trailer ID. This can be left blank to have this entered by the driver on demand.</td><td>?</td><td>Provided if the vehicle requires a trailer ID and one is known. Otherwise left blank.</td></tr><tr> | |||
<td>EPOD_JOBS</td><td>EPOD_JOBS contains a series of EPOD_JOB objects.</td><td> </td><td> </td></tr> | |||
</table> | |||
'''EPOD_JOB''' | |||
<table border="1" width="100%"><tr> | |||
<td bgcolor="silver" width="15%">Name</td><td bgcolor="silver" width="35%">Description</td><td bgcolor="silver" width="15%">External Field</td><td bgcolor="silver" width="35%">Notes</td></tr> | |||
<tr><td>EPL_SITE_ID</td><td>Unique Reference for the Site that the Job belongs to</td><td>partner code</td><td>Expected at this time to be one of "L01" to "L04"</td></tr> | |||
<tr><td>EPL_LOAD_ID</td><td>Unique Reference for the Load that the Job belongs to. If not provided, defaulted from the enclosing EPOD_LOAD</td><td>Manifest_No</td><td>From the load record.</td></tr> | |||
<tr><td>EPL_JOB_ID</td><td>Unique reference for the job. If not provided, this will be generated by EPOD</td><td> </td><td>Omitted - generated by EPOD</td></tr> | |||
<tr><td>EPL_JOB_CODE</td><td>External reference for the Job. This element can be used to link a collection and delivery together under the same reference. So, if an order is being collected at A and delivered at B, there are 2 jobs, each with a unique Job ID, but with the same Job Code. Optionally, EPOD will keep the Delivery leg of a linked job updated with the information captured from the collection.</td><td> </td><td> </td></tr> | |||
<tr><td>EPL_JOB_TYPE</td><td>D=Delivery, C=Collection, S=Service</td><td>"C" or "D"</td><td> </td></tr> | |||
<tr><td>EPL_JOB_GROUP</td><td> </td><td>partner code</td><td> </td></tr> | |||
<tr><td>EPL_CUST_REF</td><td>Customer's Order Reference</td><td>Ref2</td><td> </td></tr> | |||
<tr><td>EPL_JOB_INSTRUCTION</td><td>Instructions for the Driver</td><td>Notes1+Notes2</td><td> </td></tr> | |||
<tr><td>EPL_OFFICE_INSTRUCTION</td><td>Instructions for Admin staff</td><td>Notes3+Notes4</td><td> </td></tr> | |||
<tr><td>EPL_START_PLANNED_DATE</td><td> </td><td>Del_Date</td><td>If winroute in use, this can be provided.</td></tr> | |||
<tr><td>EPL_START_PLANNED_TIME</td><td> </td><td>Time</td><td>May be defaulted to a time based on SLA. May be omitted.</td></tr> | |||
<tr><td>EPL_END_PLANNED_DATE</td><td> </td><td> </td><td>N/A</td></tr> | |||
<tr><td>EPL_END_PLANNED_TIME</td><td> </td><td> </td><td>N/A</td></tr> | |||
<tr><td>EPL_DISTANCE_PLANNED</td><td> </td><td> </td><td>N/A</td></tr> | |||
<tr><td>EPOD_CUSTOMER</td><td>This tag may be used to specify a Customer separately. If this is used, and the address and contact information on the job below is different, the EPOD system will create a Job Address specifically for this job, whilst maintaining the Customer information separately, as an Invoice address.<br />Note that this will happen if the Customer has been created previously either through another Job, another Customer Tag in a Job or a Customer Tag alone.</td><td> </td><td>N/A</td></tr> | |||
<tr><td>EPL_CUSTOMER_CODE</td><td>Customer Code from external system. If not provided, one will be generated from EPL_CUSTOMER_NAME</td><td>account_code</td><td> </td></tr> | |||
<tr><td>EPL_CUSTOMER_NAME</td><td>The Name of the customer</td><td>Del_Name</td><td>For collections, these values would be the Collection values, i.e. Col_Name, Col_post, etc.</td></tr> | |||
<tr><td>EPL_ADDRESS_1</td><td> </td><td>Del_addr1</td><td>etc</td></tr> | |||
<tr><td>EPL_ADDRESS_2</td><td> </td><td>Del_addr2</td><td> </td></tr> | |||
<tr><td>EPL_ADDRESS_3</td><td> </td><td>Del_addr3</td><td> </td></tr> | |||
<tr><td>EPL_ADDRESS_4</td><td> </td><td>Del_addr4</td><td> </td></tr> | |||
<tr><td>EPL_ADDRESS_5</td><td> </td><td> </td><td>N/A</td></tr> | |||
<tr><td>EPL_POSTCODE</td><td> </td><td>Del_post</td><td>Col_post</td></tr> | |||
<tr><td>EPL_CONTACT</td><td>Contact on site for the job. Can be changed at Job completion.</td><td>""</td><td>This field is always to be sent blank, to force the users to enter a contact on the PDA client.</td></tr> | |||
<tr><td>EPL_TELEPHONE</td><td>The Customer's Contact Telephone number</td><td> </td><td> </td></tr> | |||
<tr><td>EPL_EMAIL</td><td>Contact Email address. Can be used to automatically send Job Completion documents to the customer.</td><td> </td><td> </td></tr> | |||
<tr><td>EPL_OWNER_NAME</td><td>Can be used as a display field for documentation</td><td>(owning) partner code</td><td>Need to set this as the partner that owns the job (i.e. a JobShare job) rather than the partner who is executing the job.</td></tr> | |||
<tr><td>EPL_SO_NUMBER</td><td>Sales Order Reference.</td><td>Ref3</td><td> </td></tr> | |||
<tr><td>EPL_ORDER_DATE</td><td>Date Order created - defaulted to Now()</td><td> </td><td> </td></tr> | |||
<tr><td>EPL_SALES_CONTACT</td><td>The operative who took the order. Can be used as a display field for documentation</td><td> </td><td>N/A</td></tr> | |||
<tr><td>EPL_SERVICE_LEVEL</td><td> </td><td> </td><td>N/A</td></tr> | |||
<tr><td>'''EPL_SEQUENCE'''</td><td>The sequence in which the jobs are to be completed. If this is not provided, the system will allocate the jobs in the sequence in which they were provided in this interface i.e. first is "0001", second is "0002", etc.</td><td> </td><td>This is to be set by the TMS or defaulted by EPOD</td></tr> | |||
<tr><td>'''EPL_TRAILER_ID'''</td><td>To be used if the vehicle being used to fulfil the job is a Tractor unit, and requires a trailer ID. This can be left blank to have this entered by the driver on demand.</td><td> </td><td>May be sent, if the vehicle requires a trailer ID and this is known at the time that the job is sent.</td></tr> | |||
<tr><td>EPOD_CONTAINERS</td><td>Contains a series of EPOD_CONTAINER objects</td><td> </td><td> </td></tr> | |||
<tr><td>EPOD_PRODUCTS</td><td>Contains a series of EPOD_PRODUCT objects</td><td> </td><td>N/A</td></tr> | |||
<tr><td>EPOD_SERVICE</td><td> </td><td> </td><td>N/A</td></tr> | |||
</table> | |||
'''EPOD_CONTAINER''' | |||
<table border="1" width="100%"><tr> | |||
<td bgcolor="silver" width="15%">Name</td><td bgcolor="silver" width="35%">Description</td><td bgcolor="silver" width="15%">External Field</td><td bgcolor="silver" width="35%">Notes</td></tr> | |||
<tr><td>EPL_SITE_ID</td><td> </td><td>Partner Code</td><td>Defaulted</td></tr> | |||
<tr><td>EPL_JOB_ID</td><td> </td><td> </td><td>From Job record</td></tr> | |||
<tr><td>EPL_CONTAINER_ID</td><td>EPL_CONTAINER_ID: The unique identifier for a container.</td><td>Label_ID</td><td>Actually from the tracking id (an id for each pallet to be delivered).</td></tr> | |||
<tr><td>EPL_SEQUENCE</td><td>The sequence in which the containers should be unloaded.</td><td> </td><td> </td></tr> | |||
<tr><td>EPL_CONTAINER_PACKAGE_CODE</td><td>Container Type Code</td><td>EF/EH/EQ/SF/SH/SQ</td><td>Not required</td></tr> | |||
<tr><td>EPL_CONTAINER_PACKAGE_DESC</td><td>Container Type Description</td><td>EURO FULL, etc</td><td>Not required</td></tr> | |||
<tr><td>EPL_GROSS_WEIGHT</td><td>Gross weight of the container</td><td>Kilos</td><td>Not required, but may be useful?</td></tr> | |||
<tr><td>EPL_DESCRIPTION_LONG</td><td>Long description of the container</td><td> </td><td> </td></tr> | |||
<tr><td>EPL_CODE_1</td><td>Additional code field used for any purpose</td><td>Spaces</td><td>Number of spaces taken on the vehicle. Required for documentation.</td></tr> | |||
<tr><td>EPL_CODE_2</td><td>Additional code field used for any purpose</td><td> </td><td> </td></tr> | |||
<tr><td>EPL_CODE_3</td><td>Additional code field used for any purpose</td><td> </td><td> </td></tr> | |||
<tr><td>EPOD_PRODUCTS</td><td>EPOD_PRODUCTS contains a series of EPOD_PRODUCT objects associated to the container.</td><td> </td><td>Not used</td></tr> | |||
</table> | |||
Notes: | |||
* Jobs with planned start dates and times should be sent through on the message. | |||
* Jobs without planned start dates and times, but with a service level agreement against them i.e. AM or PM deliveries, should have the time defaulted appropriately. For example: | |||
** AM - set to 11:59 | |||
** PM - set to 16:59 | |||
* Jobs without any planned start times or service level agreements should leave the time unset (i.e. blank). | |||
* The jobs should be sent through in the order in which they should be completed. The Sequence field should be sent with a numeric padded value as described in the description. | |||
* Loads and the contained jobs will be sent as one message. Multiple loads can be built into one XML message structure. | |||
* XSDs for validating the XML structure will be provided. | |||
* At this time, it is unknown whether this is a complete list of changes. This document will be modified and re-issued if required. | |||
Items above in '''bold''' are additional items, and the system will be modified to accept these new items. | |||
{{Note}} It is not deemed necessary at this time to map interfaces from the TMSs for Standing Data, as it was agreed that this would be maintained separately and manually within {{#var:System}}. Those flows are: | |||
* Vehicles | |||
* Reason Codes (used when cancelling jobs or pallets) | |||
* Users (Drivers) | |||
* Customers | |||
The system will be configured to automatically create the Vehicles and Users with very basic information based off the received values in the Load and Job messages. Customers will be created as part of the information received through the Job messages. | |||
== Logging In == | == Logging In == | ||