|
|
Line 2: |
Line 2: |
| {{#vardefine:Client|PROD}} | | {{#vardefine:Client|PROD}} |
| {{#vardefine:ClientName|OBS Logistics Ltd}} | | {{#vardefine:ClientName|OBS Logistics Ltd}} |
| {{#vardefine:System|''CALIDUS'' ePOD}} | | {{#vardefine:System|''CALIDUS'' VEhub}} |
| {{#vardefine:Doc_Title|EPOD-TTM Interface Details}} | | {{#vardefine:Doc_Title|App User Guide}} |
| {{#vardefine:Version|0.1}} | | {{#vardefine:Version|0.1}} |
| {{#vardefine:Date|12th August 2015}} | | {{#vardefine:Date|13th October 2015}} |
| {{#vardefine:Reference|328407}} | | {{#vardefine:Reference|123456}} |
| {{#vardefine:Year|2015}} | | {{#vardefine:Year|2015}} |
| </div> | | </div> |
Line 20: |
Line 20: |
| <!-- TOC --> | | <!-- TOC --> |
| <div class="noprint"> | | <div class="noprint"> |
| = Introduction =
| |
| This document is intended to show every message sent from ''CALIDUS'' ePOD to ''CALIDUS'' Portal for the Track and Trace module (TTM) to function as expected. The details of all messages, their contents and how they are populated and produced from ''CALIDUS'' ePOD is shown in this document.
| |
|
| |
|
| |
| == Scope ==
| |
| This document and all message formats conform to the ''CALIDUS'' Portal LOTS-tripOrder XSD version 1.16, as seen in the references of this document. If this is changed, or if ''CALIDUS'' Portal functionality changes based on tags that already exist, both this document and the ''CALIDUS'' ePOD export processes will require modification.
| |
|
| |
| All functionality described here is gathered from version 3.0.1.4 of the ''CALIDUS'' ePOD Server module, the current latest version, including the changes to this interface specified under 328407, referenced in [[#Appendix A: Document References|Appendix A]].
| |
|
| |
|
| |
| == Fixes Required ==
| |
| {{Warning}} The following bugs are also outstanding:
| |
| * It is also sent when an order is updated through the Job and Load Import Webservices - needs checking for ORD and TRP. It doesn't - needs adding to spec. Also for the manual upload process.
| |
| * EPOD_PRODUCT - EPL_PRODUCT_QTY_PLANNED not EPL_PRODUCT_QTY_ACTUAL
| |
| * ORD: CUSTOMER_ID - Set from Account, but may not always be set - should we send this at all times or only if we have it?
| |
| * TRP: Trailer ID - User Trailer ID if present otherwise use the vehicle ID
| |
| * TIMEZONE (all types) - Should only be populated if we have it, otherwise leave blank? Populate with server timezone? Currently it will be empty.
| |
| * TIMEZONE (all types) - Currently is left blank on Load, then, if left blank on job, job retrieves load and sets it from that value, if present. massively inefficient. Instead, set to server timezone if not provided.
| |
| * Clausing by Reason code may need extra work against Containers. It only stores the comment for a clause reason code, not the reason code itself. Should do this.
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| =Details=
| |
| == General Message Format ==
| |
| Each message type sent is encapsulated in standard envelope, as described below:
| |
| <OBS_XML>
| |
| <EVENT>
| |
| <EVENT_HEADER>
| |
| <EVENT_PROCESSED>N</EVENT_PROCESSED>
| |
| <EVENT_SOURCE_TYPE>EPOD</EVENT_SOURCE_TYPE>
| |
| <EVENT_SOURCE_NAME></EVENT_SOURCE_NAME>
| |
| <EVENT_DATE></EVENT_DATE>
| |
| <EVENT_TYPE></EVENT_TYPE>
| |
| <EVENT_ACTION></EVENT_ACTION>
| |
| <EVENT_TIMEZONE></EVENT_TIMEZONE>
| |
| </EVENT_HEADER>
| |
| <EVENT_DETAIL>
| |
| ...
| |
| </EVENT_DETAIL>
| |
| </EVENT>
| |
| </OBS_XML>
| |
|
| |
|
| |
| Variable data:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |EVENT_SOURCE_NAME ||EPL_SITE_ID
| |
| |-
| |
| |EVENT_DATE ||Dependent on message type - see notes below
| |
| |-
| |
| |EVENT_TIME ||Dependent on message type - see notes below
| |
| |-
| |
| |EVENT_ACTION ||Dependent on type. For ORD and TRP, "R", for other types "C"
| |
| |-
| |
| |EVENT_DETAIL ||The defined message content per message type, detailed in the specific Message Type sections in this document.
| |
| |-
| |
| |EVENT_TIMEZONE ||The local Timezone Olsen ID for TRP messages, omitted for others
| |
| |}
| |
|
| |
|
| |
| Notes:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Type !!EVENT_DATE !!EVENT_TIME
| |
| |-
| |
| |DEL ||EPL_END_ACTUAL_DATE ||EPL_END_ACTUAL_TIME
| |
| |-
| |
| |CAN ||EPL_END_ACTUAL_DATE ||EPL_END_ACTUAL_TIME
| |
| |-
| |
| |COL ||EPL_END_ACTUAL_DATE ||EPL_END_ACTUAL_TIME
| |
| |-
| |
| |ARR ||EPL_ARRIVAL_DATE if populated else EPL_START_ACTUAL_DATE ||EPL_ARRIVAL_TIME if populated else EPL_START_ACTUAL_TIME
| |
| |-
| |
| |OIT || Date when sending message || Time when sending message
| |
| |-
| |
| |ORD || Date when sending message || Time when sending message
| |
| |-
| |
| |TRP || EPL_LOAD_START_ACTUAL_DATE if populated, else Date when sending message || EPL_LOAD_START_ACTUAL_TIME if populated, else Time when sending message
| |
| |-
| |
| |GPS || Date when sending message || Time when sending message
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == ORD messages ==
| |
| An ORD message informs ''CALIDUS'' Portal that an order is created. It contains all the details of the order, but no Trip information.
| |
|
| |
| An ORD message is sent when an order is created.
| |
| It is also sent when an order is updated through the Flat-file Auto-Import process.
| |
| {{Warning}} It is also sent when an order is updated through the Job and Load Import Webservices
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | ORDER_HEADER || EPOD_JOB
| |
| |-
| |
| | ORDER_HEADER_ADDRESSES || EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_DETAILS || EPOD_CONTAINER, EPOD_PRODUCT
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <TRIP_HEADER>
| |
| <TRIP_IDENTIFIER>O</TRIP_IDENTIFIER>
| |
| </TRIP_HEADER>
| |
| <STOPS>
| |
| <STOP>
| |
| <STOP_HEADER>
| |
| <STOP_IDENTIFIER>O</STOP_IDENTIFIER>
| |
| <STOP_SEQ>0</STOP_SEQ>
| |
| </STOP_HEADER>
| |
| <ORDERS>
| |
| <ORDER>
| |
| <ORDER_HEADER>
| |
| <ORDER_TRANSACTION_DATE>2012-12-20T00:00:00</ORDER_TRANSACTION_DATE>
| |
| <WMS_WAREHOUSE>EPL_SITE_REF</WMS_WAREHOUSE>
| |
| <WMS_OWNER>EPL_JOB_GROUP_REF</WMS_OWNER>
| |
| <SO_REF>EPL_CUST_REF</SO_REF>
| |
| <TMS_REF>EPL_JOB_CODE</TMS_REF>
| |
| <PO_REF>EPL_SO_REF</PO_REF>
| |
| <BOOK_REF>EPL_EXT_REF</BOOK_REF>
| |
| <BOOK_DATE>2012-12-24T10:00:00</BOOK_DATE>
| |
| <ORDER_HEADER_ADDRESSES>
| |
| <ORDER_HEADER_ADDRESS>
| |
| <ADDRESS_TYPE>DEP</ADDRESS_TYPE>
| |
| <ADDRESS_ID>EPL_CUSTOMER_CODE</ADDRESS_ID>
| |
| <ADDRESS_NAME>EPL_NAME</ADDRESS_NAME>
| |
| <ADDRESS_LINE1>EPL_ADDR_LINE_1</ADDRESS_LINE1>
| |
| <ADDRESS_LINE2>EPL_ADDR_LINE_2</ADDRESS_LINE2>
| |
| <ADDRESS_TOWN>EPL_ADDR_LINE_3</ADDRESS_TOWN>
| |
| <ADDRESS_POSTCODE>EPL_POSTCODE</ADDRESS_POSTCODE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </ORDER_HEADER_ADDRESS>
| |
| <ORDER_HEADER_ADDRESS>
| |
| <ADDRESS_TYPE>DEL</ADDRESS_TYPE>
| |
| <ADDRESS_ID>EPL_CUSTOMER_CODE</ADDRESS_ID>
| |
| <ADDRESS_NAME>EPL_NAME</ADDRESS_NAME>
| |
| <ADDRESS_LINE1>EPL_ADDR_LINE_1</ADDRESS_LINE1>
| |
| <ADDRESS_LINE2>EPL_ADDR_LINE_2</ADDRESS_LINE2>
| |
| <ADDRESS_TOWN>EPL_ADDR_LINE_3</ADDRESS_TOWN>
| |
| <ADDRESS_POSTCODE>EPL_POSTCODE</ADDRESS_POSTCODE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </ORDER_HEADER_ADDRESS>
| |
| </ORDER_HEADER_ADDRESSES>
| |
| <CUSTOMER_ID>EPL_ACCOUNT</CUSTOMER_ID>
| |
| <ORDER_REF_1>EPL_SITE_ID</ORDER_REF_1>
| |
| </ORDER_HEADER>
| |
| <ORDER_DETAILS>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>D</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_CONTAINER_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>1</ORDERED>
| |
| <TO_DELIVER>1</TO_DELIVER>
| |
| </ORDER_DETAIL>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>S</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_PRODUCT_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>EPL_PRODUCT_QTY_ORDERED</ORDERED>
| |
| <TO_DELIVER>EPL_PRODUCT_QTY_PLANNED</TO_DELIVER>
| |
| </ORDER_DETAIL>
| |
| </ORDER_DETAILS>
| |
| </ORDER>
| |
| </ORDERS>
| |
| </STOP>
| |
| </STOPS>
| |
|
| |
|
| |
| Variable data for ORDER_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |ORDER_TRANSACTION_DATE ||EPL_LAST_CHANGED_DATE/EPL_LAST_CHANGED_TIME in XSD format
| |
| |-
| |
| |WMS_WAREHOUSE ||EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |WMS_OWNER ||EPL_OWNER_NAME if present, else EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |SO_REF ||EPL_CUST_REF
| |
| |-
| |
| |TMS_REF ||EPL_JOB_CODE
| |
| |-
| |
| |PO_REF ||EPL_SO_REF
| |
| |-
| |
| |BOOK_REF ||EPL_EXT_REF
| |
| |-
| |
| |BOOK_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XSD format
| |
| |-
| |
| |CUSTOMER_ID ||EPL_ACCOUNT if populated
| |
| |-
| |
| |ORDER_REF_1 ||EPL_SITE_ID
| |
| |}
| |
|
| |
|
| |
| Two order header addresses should be built, one for DEP (the original collection location) and one for DEL (the ultimate delivery location).
| |
|
| |
| For DEP addresses, the addresses against the jobs are used in this sequence:
| |
| * Use the Origin Job Address (type O) if this exists for any job for this Site, Job Code and Cust Ref .
| |
| * Use the Job Address of the first Collection Job for this Site, Job Code and Cust Ref if this exists.
| |
| * Use the Customer Address of the customer of the first Collection Job for this Site, Job Code and Cust Ref if this exists.
| |
| * If there is no collection job or no origin address, do not write this address.
| |
|
| |
| For DEL addresses:
| |
| * Use the Final Destination Job Address (type F) if this exists on any job for this Site, Job Code and Cust Ref .
| |
| * Use the Job Address of the last Delivery Job if this exists for this Site, Job Code and Cust Ref .
| |
| * Use the Customer Address of the customer of the last Delivery Job if this exists for this Site, Job Code and Cust Ref .
| |
| * If there is no delivery job or no destination address, do not write this address.
| |
|
| |
| Variable data for ORDER_ADDRESS:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_JOB_ADDRESS !!EPOD_CUSTOMER
| |
| |-
| |
| |ADDRESS_TYPE ||DEP if EPL_JOB_TYPE = "O" or DEL if EPL_JOB_TYPE = "F" ||DEP if this is from the first Collection, DEL if this is from the last Delivery.
| |
| |-
| |
| |ADDRESS_ID || EPL_ADDRESS_ID ||EPL_CUSTOMER_CODE
| |
| |-
| |
| |ADDRESS_NAME || EPL_NAME ||EPL_CUSTOMER_NAME
| |
| |-
| |
| |ADDRESS_LINE_1 || EPL_ADDRESS_1 ||EPL_ADDRESS_1
| |
| |-
| |
| |ADDRESS_LINE_2 || EPL_ADDRESS_2 ||EPL_ADDRESS_2
| |
| |-
| |
| |ADDRESS_TOWN || EPL_ADDRESS_3 ||EPL_ADDRESS_3
| |
| |-
| |
| |ADDRESS_POSTCODE || EPL_POSTCODE ||EPL_POSTCODE
| |
| |-
| |
| |LOC_TIMEZONE || EPOD_JOB.EPL_TIMEZONE || EPOD_JOB.EPL_TIMEZONE
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_CONTAINER !!EPOD_PRODUCT
| |
| |-
| |
| |DETAIL_TYPE ||"D" ||"S"
| |
| |-
| |
| |ITEM_IDENTIFIER ||EPL_CONTAINER_ID ||EPL_PRODUCT_CODE
| |
| |-
| |
| |ITEM_DESCRIPTION ||EPL_DESCRIPTION ||EPL_DESCRIPTION
| |
| |-
| |
| |ORDERED ||1 ||EPL_PRODUCT_QTY_ORDERED
| |
| |-
| |
| |TO_DELIVER ||1 ||EPL_PRODUCT_QTY_PLANNED
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == TRP messages ==
| |
| A TRP message informs ''CALIDUS'' Portal that a Trip is created, showing all the stops on the trip and the basic information on the orders on the stops.
| |
|
| |
| A TRP message is sent when an order is created.
| |
| It is also sent when an order is updated through the Flat-file Auto-Import process.
| |
| {{Warning}} It is also sent when an order is updated through the Job and Load Import Webservices
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | TRIP_HEADER || EPOD_LOAD
| |
| |-
| |
| | TRIP_DETAIL || EPOD_LOAD, EPOD_VEHICLE, EPOD_USER
| |
| |-
| |
| | STOP_HEADER || EPOD_JOB
| |
| |-
| |
| | STOP_DETAIL || EPOD_JOB, EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_HEADER || EPOD_JOB
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <TRIP_HEADER>
| |
| <TRIP_IDENTIFIER>T</TRIP_IDENTIFIER>
| |
| <TRIP_TRANSACTION_DATE>2012-12-20T00:00:00</TRIP_TRANSACTION_DATE>
| |
| <TRIP_ID>EPL_LOAD_ID<TRIP_ID>
| |
| </TRIP_HEADER>
| |
| <TRIP_DETAIL>
| |
| <HAULIER>EPODSITE.EPL_TTM_XREF</HAULIER>
| |
| <TRACKING>N</TRACKING>
| |
| <DRIVER>EPL_USER_ID</DRIVER>
| |
| <DRIVER_NAME>EPODUSER.EPL_USER_NAME</DRIVER_NAME>
| |
| <TRACTOR>EPODVEHICLE.EPL_VEHICLE_REG</TRACTOR>
| |
| <COST_CENTRE>EPL_SITE_ID<COST_CENTRE>
| |
| <TRIP_STATUS>PLANNED<TRIP_STATUS>
| |
| <TRIP_REF></TRIP_REF>
| |
| <TRIP_TRAILER_ID>EPL_VEHICLE_ID</TRIP_TRAILER_ID>
| |
| <TRIP_TRAILER_TYPE></TRIP_TRAILER_TYPE>
| |
| <TRIP_DISTANCE>EPL_LOAD_DISTANCE_PLANNED</TRIP_DISTANCE>
| |
| </TRIP_DETAIL>
| |
| <STOPS>
| |
| <STOP>
| |
| <STOP_HEADER>
| |
| <STOP_IDENTIFIER>S</STOP_IDENTIFIER>
| |
| <STOP_SEQ>EPL_SEQUENCE</STOP_SEQ>
| |
| </STOP_HEADER>
| |
| <STOP_DETAIL>
| |
| <STOP_REF>EPL_JOB_TYPE</STOP_REF>
| |
| <STOP_TYPE>PK/DL</STOP_TYPE>
| |
| <STOP_LOCATION_TYPE>2</STOP_LOCATION_TYPE>
| |
| <STOP_LOCATION_ID></STOP_LOCATION_ID>
| |
| <STOP_LOCATION_NAME></STOP_LOCATION_NAME>
| |
| <STOP_ADDR_LINE1></STOP_ADDR_LINE1>
| |
| <STOP_ADDR_LINE2><STOP_ADDR_LINE2>
| |
| <STOP_TOWN><STOP_TOWN>
| |
| <STOP_POSTCODE><STOP_POSTCODE>
| |
| <STOP_CONTACT_NAME><STOP_CONTACT_NAME>
| |
| <STOP_CONTACT_PHONE><STOP_CONTACT_PHONE>
| |
| <STOP_PLANNED_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_PLANNED_ARRIVAL_DATE>
| |
| <STOP_PLANNED_DEPARTURE_DATE>2012-12-20T00:00:00<STOP_PLANNED_DEPARTURE_DATE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </STOP_DETAIL>
| |
| <ORDERS>
| |
| <ORDER>
| |
| <ORDER_HEADER>
| |
| <ORDER_TRANSACTION_DATE>2012-12-20T00:00:00</ORDER_TRANSACTION_DATE>
| |
| <WMS_WAREHOUSE>EPL_SITE_REF</WMS_WAREHOUSE>
| |
| <WMS_OWNER>EPL_JOB_GROUP_REF</WMS_OWNER>
| |
| <SO_REF>EPL_CUST_REF</SO_REF>
| |
| <TMS_REF>EPL_JOB_CODE</TMS_REF>
| |
| <PO_REF>EPL_SO_REF</PO_REF>
| |
| <BOOK_REF>EPL_EXT_REF</BOOK_REF>
| |
| <BOOK_DATE>2012-12-24T10:00:00</BOOK_DATE>
| |
| </ORDER_HEADER>
| |
| </ORDER>
| |
| <ORDERS>
| |
| <STOP>
| |
| <STOPS>
| |
|
| |
|
| |
| Variable data for TRIP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRIP_TRANSACTION_DATE ||EPL_LOAD_START_ACTUAL_DATE if populated, else Date when sending message
| |
| |-
| |
| |TRIP_ID ||EPL_LOAD_ID
| |
| |}
| |
|
| |
|
| |
| Variable data for TRIP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |HAULIER ||EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |DRIVER ||EPL_USER_ID
| |
| |-
| |
| |DRIVER_NAME ||EPODUSER.EPL_USER_NAME
| |
| |-
| |
| |TRACTOR ||EPODVEHICLE.EPL_VEHICLE_REG
| |
| |-
| |
| |COST_CENTRE ||EPL_SITE_ID
| |
| |-
| |
| |TRIP_TRAILER_ID ||EPL_VEHICLE_ID
| |
| |-
| |
| |TRIP_DISTANCE ||EPL_LOAD_DISTANCE_PLANNED
| |
| |}
| |
|
| |
| Variable data for STOP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_SEQUENCE ||EPL_SEQUENCE if populated, otherwise a counter incremented for each job on the trip.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_REF ||EPL_JOB_TYPE
| |
| |-
| |
| |STOP_TYPE ||"PK" if STOP_TYPE = "C" else "DL"
| |
| |-
| |
| |STOP_PLANNED_ARRIVAL_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XML date format
| |
| |-
| |
| |STOP_PLANNED_DEPARTURE_DATE ||EPL_END_PLANNED_DATE/EPL_END_PLANNED_TIME in XML date format. Only populated if there is an End Planned Date for the job
| |
| |-
| |
| |LOC_TIMEZONE ||EPL_TIMEZONE
| |
| |}
| |
| Stop Location and Address fields in the STOP_DETAIL section are populated based on Job Address or Customer Address, depending on which exist, as follows:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_JOB_ADDRESS !! EPOD_CUSTOMER
| |
| |-
| |
| |STOP_LOCATION_ID ||EPL_ADDRESS_ID if populated, else EPOD_JOB.EPL_CUSTOMER_CODE ||EPL_ADDRESS_ID_PREFIXED if populated, else EPOD_JOB.EPL_CUSTOMER_CODE
| |
| |-
| |
| |STOP_LOCATION_NAME ||EPL_NAME if populated, else EPOD_CUSTOMER.EPL_CUSTOMER_NAME ||EPL_CUSTOMER_NAME
| |
| |-
| |
| |STOP_ADDR_LINE1 ||EPL_ADDRESS_1 ||EPL_ADDRESS_1
| |
| |-
| |
| |STOP_ADDR_LINE2 ||EPL_ADDRESS_2 ||EPL_ADDRESS_2
| |
| |-
| |
| |STOP_TOWN ||EPL_ADDRESS_3 ||EPL_ADDRESS_3
| |
| |-
| |
| |STOP_POSTCODE ||EPL_POSTCODE ||EPL_POSTCODE
| |
| |-
| |
| |STOP_CONTACT_NAME ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT
| |
| |-
| |
| |STOP_CONTACT_PHONE ||EPL_TELEPHONE ||EPL_TELEPHONE
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |ORDER_TRANSACTION_DATE ||EPL_LAST_CHANGED_DATE/EPL_LAST_CHANGED_TIME in XSD format
| |
| |-
| |
| |WMS_WAREHOUSE ||EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |WMS_OWNER ||EPL_OWNER_NAME if present, else EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |SO_REF ||EPL_CUST_REF
| |
| |-
| |
| |TMS_REF ||EPL_JOB_CODE
| |
| |-
| |
| |PO_REF ||EPL_SO_REF
| |
| |-
| |
| |BOOK_REF ||EPL_EXT_REF
| |
| |-
| |
| |BOOK_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XSD format
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == OIT messages ==
| |
| OIT messages signify that an order is in transit i.e. has been started on the mobile device.
| |
| These messages are sent only when the user starts a job on the device.
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | TRIP_HEADER || EPOD_JOB, EPOD_AUDIT
| |
| |-
| |
| | TRIP_DETAIL || EPOD_AUDIT
| |
| |-
| |
| | STOP_HEADER || EPOD_JOB
| |
| |-
| |
| | STOP_DETAIL || EPOD_JOB, EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_HEADER || EPOD_JOB
| |
| |-
| |
| | ORDER_HEADER_ADDRESSES || EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_DETAILS || EPOD_CONTAINER, EPOD_PRODUCT
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <TRIP_HEADER>
| |
| <TRIP_IDENTIFIER>T</TRIP_IDENTIFIER>
| |
| <TRIP_TRANSACTION_DATE>2012-12-24T10:00:00</TRIP_TRANSACTION_DATE>
| |
| <TRIP_ID>EPL_LOAD_ID</TRIP_ID>
| |
| </TRIP_HEADER>
| |
| <TRIP_DETAIL>
| |
| <TRACTOR_LAT></TRACTOR_LAT>
| |
| <TRACTOR_LON></TRACTOR_LON>
| |
| </TRIP_DETAIL>
| |
| <STOPS>
| |
| <STOP>
| |
| <STOP_HEADER>
| |
| <STOP_HEADER>
| |
| <STOP_IDENTIFIER>S</STOP_IDENTIFIER>
| |
| <STOP_SEQ>EPL_SEQUENCE</STOP_SEQ>
| |
| </STOP_HEADER>
| |
| <STOP_DETAIL>
| |
| <STOP_REF>EPL_JOB_TYPE</STOP_REF>
| |
| <STOP_TYPE>PK/DL</STOP_TYPE>
| |
| <STOP_LOCATION_TYPE>2</STOP_LOCATION_TYPE>
| |
| <STOP_LOCATION_ID></STOP_LOCATION_ID>
| |
| <STOP_LOCATION_NAME></STOP_LOCATION_NAME>
| |
| <STOP_ADDR_LINE1></STOP_ADDR_LINE1>
| |
| <STOP_ADDR_LINE2><STOP_ADDR_LINE2>
| |
| <STOP_TOWN><STOP_TOWN>
| |
| <STOP_POSTCODE><STOP_POSTCODE>
| |
| <STOP_CONTACT_NAME><STOP_CONTACT_NAME>
| |
| <STOP_CONTACT_PHONE><STOP_CONTACT_PHONE>
| |
| <STOP_PLANNED_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_PLANNED_ARRIVAL_DATE>
| |
| <STOP_PLANNED_DEPARTURE_DATE>2012-12-20T00:00:00<STOP_PLANNED_DEPARTURE_DATE>
| |
| <STOP_ACTUAL_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_ACTUAL_ARRIVAL_DATE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </STOP_DETAIL>
| |
| <ORDERS>
| |
| <ORDER>
| |
| <ORDER_HEADER>
| |
| <ORDER_TRANSACTION_DATE>2012-12-20T00:00:00</ORDER_TRANSACTION_DATE>
| |
| <WMS_WAREHOUSE>EPL_SITE_REF</WMS_WAREHOUSE>
| |
| <WMS_OWNER>EPL_JOB_GROUP_REF</WMS_OWNER>
| |
| <SO_REF>EPL_CUST_REF</SO_REF>
| |
| <TMS_REF>EPL_JOB_CODE</TMS_REF>
| |
| <PO_REF>EPL_SO_REF</PO_REF>
| |
| <BOOK_REF>EPL_EXT_REF</BOOK_REF>
| |
| <BOOK_DATE>2012-12-24T10:00:00</BOOK_DATE>
| |
| ORDER_TRANSACTION_DATE", Audit Date and Time),
| |
| <ORDER_HEADER>
| |
| <ORDER_DETAILS>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>D</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_CONTAINER_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>1</ORDERED>
| |
| <TO_DELIVER>1</TO_DELIVER>
| |
| </ORDER_DETAIL>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>S</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_PRODUCT_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>EPL_PRODUCT_QTY_ORDERED</ORDERED>
| |
| <TO_DELIVER>EPL_PRODUCT_QTY_PLANNED</TO_DELIVER>
| |
| </ORDER_DETAIL>
| |
| </ORDER_DETAILS>
| |
| </ORDER>
| |
| </ORDERS>
| |
| </STOP>
| |
| </STOPS>
| |
|
| |
|
| |
| Variable data for TRIP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRIP_TRANSACTION_DATE ||The date/time the Job Start was actioned, from EPOD_AUDIT.EPL_AUDIT_DATE/EPL_AUDIT_TIME
| |
| |-
| |
| |TRIP_ID ||EPL_LOAD_ID
| |
| |}
| |
|
| |
|
| |
| Variable data for TRIP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRACTOR_LAT ||The latitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD.
| |
| |-
| |
| |TRACTOR_LON ||The longitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_SEQUENCE ||EPL_SEQUENCE if populated, otherwise a counter incremented for each job on the trip.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_REF ||EPL_JOB_TYPE
| |
| |-
| |
| |STOP_TYPE ||"PK" if STOP_TYPE = "C" else "DL"
| |
| |-
| |
| |STOP_PLANNED_ARRIVAL_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XML date format
| |
| |-
| |
| |STOP_PLANNED_DEPARTURE_DATE ||EPL_END_PLANNED_DATE/EPL_END_PLANNED_TIME in XML date format. Only populated if there is an End Planned Date for the job
| |
| |-
| |
| |STOP_ACTUAL_ARRIVAL_DATE ||EPL_ARRIVAL_DATE/EPL_ARRIVAL_TIME if populated, else EPL_START_ACTUAL_DATE/EPL_START_ACTUAL_TIME, in XML date format
| |
| |-
| |
| |LOC_TIMEZONE ||EPL_TIMEZONE
| |
| |}
| |
| Stop Location and Address fields in the STOP_DETAIL section are populated based on Job Address or Customer Address, depending on which exist, as follows:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_JOB_ADDRESS !! EPOD_CUSTOMER
| |
| |-
| |
| |STOP_LOCATION_ID ||EPL_ADDRESS_ID if populated, else EPOD_JOB.EPL_CUSTOMER_CODE ||EPL_ADDRESS_ID_PREFIXED if populated, else EPOD_JOB.EPL_CUSTOMER_CODE
| |
| |-
| |
| |STOP_LOCATION_NAME ||EPL_NAME if populated, else EPOD_CUSTOMER.EPL_CUSTOMER_NAME ||EPL_CUSTOMER_NAME
| |
| |-
| |
| |STOP_ADDR_LINE1 ||EPL_ADDRESS_1 ||EPL_ADDRESS_1
| |
| |-
| |
| |STOP_ADDR_LINE2 ||EPL_ADDRESS_2 ||EPL_ADDRESS_2
| |
| |-
| |
| |STOP_TOWN ||EPL_ADDRESS_3 ||EPL_ADDRESS_3
| |
| |-
| |
| |STOP_POSTCODE ||EPL_POSTCODE ||EPL_POSTCODE
| |
| |-
| |
| |STOP_CONTACT_NAME ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT
| |
| |-
| |
| |STOP_CONTACT_PHONE ||EPL_TELEPHONE ||EPL_TELEPHONE
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |ORDER_TRANSACTION_DATE ||EPOD_AUDIT.EPL_AUDIT_DATE/EPL_AUDIT_TIME in XSD date format
| |
| |-
| |
| |WMS_WAREHOUSE ||EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |WMS_OWNER ||EPL_OWNER_NAME if present, else EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |SO_REF ||EPL_CUST_REF
| |
| |-
| |
| |TMS_REF ||EPL_JOB_CODE
| |
| |-
| |
| |PO_REF ||EPL_SO_REF
| |
| |-
| |
| |BOOK_REF ||EPL_EXT_REF
| |
| |-
| |
| |BOOK_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XSD format
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_CONTAINER !!EPOD_PRODUCT
| |
| |-
| |
| |DETAIL_TYPE ||"D" ||"S"
| |
| |-
| |
| |ITEM_IDENTIFIER ||EPL_CONTAINER_ID ||EPL_PRODUCT_CODE
| |
| |-
| |
| |ITEM_DESCRIPTION ||EPL_DESCRIPTION ||EPL_DESCRIPTION
| |
| |-
| |
| |ORDERED ||1 ||EPL_PRODUCT_QTY_ORDERED
| |
| |-
| |
| |TO_DELIVER ||1 ||EPL_PRODUCT_QTY_PLANNED
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == ARR messages ==
| |
| ARR messages signify that the driver has arrived at the destination and is starting processing the job i.e. has been marked arrived on the mobile device.
| |
| These messages are sent only when the user arrives a job on the device. For configurations where no Arrival functionality is specified, the OIT message serves to start the job.
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | TRIP_HEADER || EPOD_JOB, EPOD_AUDIT
| |
| |-
| |
| | TRIP_DETAIL || EPOD_AUDIT
| |
| |-
| |
| | STOP_HEADER || EPOD_JOB
| |
| |-
| |
| | STOP_DETAIL || EPOD_JOB, EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_HEADER || EPOD_JOB
| |
| |-
| |
| | ORDER_HEADER_ADDRESSES || EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_DETAILS || EPOD_CONTAINER, EPOD_PRODUCT
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <TRIP_HEADER>
| |
| <TRIP_IDENTIFIER>T</TRIP_IDENTIFIER>
| |
| <TRIP_TRANSACTION_DATE>2012-12-24T10:00:00</TRIP_TRANSACTION_DATE>
| |
| <TRIP_ID>EPL_LOAD_ID</TRIP_ID>
| |
| </TRIP_HEADER>
| |
| <STOPS>
| |
| <STOP>
| |
| <STOP_HEADER>
| |
| <STOP_HEADER>
| |
| <STOP_IDENTIFIER>S</STOP_IDENTIFIER>
| |
| <STOP_SEQ>EPL_SEQUENCE</STOP_SEQ>
| |
| </STOP_HEADER>
| |
| <STOP_DETAIL>
| |
| <STOP_REF>EPL_JOB_TYPE</STOP_REF>
| |
| <STOP_TYPE>PK/DL</STOP_TYPE>
| |
| <STOP_LOCATION_TYPE>2</STOP_LOCATION_TYPE>
| |
| <STOP_LOCATION_ID></STOP_LOCATION_ID>
| |
| <STOP_LOCATION_NAME></STOP_LOCATION_NAME>
| |
| <STOP_ADDR_LINE1></STOP_ADDR_LINE1>
| |
| <STOP_ADDR_LINE2><STOP_ADDR_LINE2>
| |
| <STOP_TOWN><STOP_TOWN>
| |
| <STOP_POSTCODE><STOP_POSTCODE>
| |
| <STOP_CONTACT_NAME><STOP_CONTACT_NAME>
| |
| <STOP_CONTACT_PHONE><STOP_CONTACT_PHONE>
| |
| <STOP_PLANNED_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_PLANNED_ARRIVAL_DATE>
| |
| <STOP_PLANNED_DEPARTURE_DATE>2012-12-20T00:00:00<STOP_PLANNED_DEPARTURE_DATE>
| |
| <STOP_ACTUAL_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_ACTUAL_ARRIVAL_DATE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </STOP_DETAIL>
| |
| </STOP>
| |
| </STOPS>
| |
|
| |
|
| |
| Variable data for TRIP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRIP_TRANSACTION_DATE ||The date/time the Job Arrive was actioned, from EPOD_JOB.EPL_ARRIVAL_DATE/EPOD_JOB.EPL_ARRIVAL_TIME
| |
| |-
| |
| |TRIP_ID ||EPL_LOAD_ID
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_SEQUENCE ||EPL_SEQUENCE if populated, otherwise a counter incremented for each job on the trip.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_REF ||EPL_JOB_TYPE
| |
| |-
| |
| |STOP_TYPE ||"PK" if STOP_TYPE = "C" else "DL"
| |
| |-
| |
| |STOP_PLANNED_ARRIVAL_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XML date format
| |
| |-
| |
| |STOP_PLANNED_DEPARTURE_DATE ||EPL_END_PLANNED_DATE/EPL_END_PLANNED_TIME in XML date format. Only populated if there is an End Planned Date for the job
| |
| |-
| |
| |STOP_ACTUAL_ARRIVAL_DATE ||EPL_ARRIVAL_DATE/EPL_ARRIVAL_TIME if populated, else EPL_START_ACTUAL_DATE/EPL_START_ACTUAL_TIME, in XML date format
| |
| |-
| |
| |LOC_TIMEZONE ||EPL_TIMEZONE
| |
| |}
| |
| Stop Location and Address fields in the STOP_DETAIL section are populated based on Job Address or Customer Address, depending on which exist, as follows:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_JOB_ADDRESS !! EPOD_CUSTOMER
| |
| |-
| |
| |STOP_LOCATION_ID ||EPL_ADDRESS_ID if populated, else EPOD_JOB.EPL_CUSTOMER_CODE ||EPL_ADDRESS_ID_PREFIXED if populated, else EPOD_JOB.EPL_CUSTOMER_CODE
| |
| |-
| |
| |STOP_LOCATION_NAME ||EPL_NAME if populated, else EPOD_CUSTOMER.EPL_CUSTOMER_NAME ||EPL_CUSTOMER_NAME
| |
| |-
| |
| |STOP_ADDR_LINE1 ||EPL_ADDRESS_1 ||EPL_ADDRESS_1
| |
| |-
| |
| |STOP_ADDR_LINE2 ||EPL_ADDRESS_2 ||EPL_ADDRESS_2
| |
| |-
| |
| |STOP_TOWN ||EPL_ADDRESS_3 ||EPL_ADDRESS_3
| |
| |-
| |
| |STOP_POSTCODE ||EPL_POSTCODE ||EPL_POSTCODE
| |
| |-
| |
| |STOP_CONTACT_NAME ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT
| |
| |-
| |
| |STOP_CONTACT_PHONE ||EPL_TELEPHONE ||EPL_TELEPHONE
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == COL messages ==
| |
| COL messages signify that an collection order has been completed.
| |
| These messages are sent only when the job is marked as completed, normally through the Mobile Device completing the job.
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | TRIP_HEADER || EPOD_JOB
| |
| |-
| |
| | TRIP_DETAIL || EPOD_AUDIT
| |
| |-
| |
| | STOP_HEADER || EPOD_JOB
| |
| |-
| |
| | STOP_DETAIL || EPOD_JOB, EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_HEADER || EPOD_JOB
| |
| |-
| |
| | ORDER_HEADER_ADDRESSES || EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_DETAILS || EPOD_CONTAINER, EPOD_PRODUCT
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <TRIP_HEADER>
| |
| <TRIP_IDENTIFIER>T</TRIP_IDENTIFIER>
| |
| <TRIP_TRANSACTION_DATE>2012-12-24T10:00:00</TRIP_TRANSACTION_DATE>
| |
| <TRIP_ID>EPL_LOAD_ID</TRIP_ID>
| |
| </TRIP_HEADER>
| |
| <TRIP_DETAIL>
| |
| <TRACTOR_LAT></TRACTOR_LAT>
| |
| <TRACTOR_LON></TRACTOR_LON>
| |
| </TRIP_DETAIL>
| |
| <STOPS>
| |
| <STOP>
| |
| <STOP_HEADER>
| |
| <STOP_HEADER>
| |
| <STOP_IDENTIFIER>S</STOP_IDENTIFIER>
| |
| <STOP_SEQ>EPL_SEQUENCE</STOP_SEQ>
| |
| </STOP_HEADER>
| |
| <STOP_DETAIL>
| |
| <STOP_REF>EPL_JOB_TYPE</STOP_REF>
| |
| <STOP_TYPE>PK/DL</STOP_TYPE>
| |
| <STOP_LOCATION_TYPE>2</STOP_LOCATION_TYPE>
| |
| <STOP_LOCATION_ID></STOP_LOCATION_ID>
| |
| <STOP_LOCATION_NAME></STOP_LOCATION_NAME>
| |
| <STOP_ADDR_LINE1></STOP_ADDR_LINE1>
| |
| <STOP_ADDR_LINE2><STOP_ADDR_LINE2>
| |
| <STOP_TOWN><STOP_TOWN>
| |
| <STOP_POSTCODE><STOP_POSTCODE>
| |
| <STOP_CONTACT_NAME><STOP_CONTACT_NAME>
| |
| <STOP_CONTACT_PHONE><STOP_CONTACT_PHONE>
| |
| <STOP_PLANNED_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_PLANNED_ARRIVAL_DATE>
| |
| <STOP_PLANNED_DEPARTURE_DATE>2012-12-20T00:00:00<STOP_PLANNED_DEPARTURE_DATE>
| |
| <STOP_ACTUAL_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_ACTUAL_ARRIVAL_DATE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </STOP_DETAIL>
| |
| <STOP_SIGNATURE>
| |
| <SIGNATURE>EPL_JOB_SIGNATURE</SIGNATURE>
| |
| <SIGNATORY>EPL_CUST_SIGNATORY</SIGNATORY>
| |
| </STOP_SIGNATURE>
| |
| <ORDERS>
| |
| <ORDER>
| |
| <ORDER_HEADER>
| |
| <ORDER_TRANSACTION_DATE>2012-12-20T00:00:00</ORDER_TRANSACTION_DATE>
| |
| <WMS_WAREHOUSE>EPL_SITE_REF</WMS_WAREHOUSE>
| |
| <WMS_OWNER>EPL_JOB_GROUP_REF</WMS_OWNER>
| |
| <SO_REF>EPL_CUST_REF</SO_REF>
| |
| <TMS_REF>EPL_JOB_CODE</TMS_REF>
| |
| <PO_REF>EPL_SO_REF</PO_REF>
| |
| <BOOK_REF>EPL_EXT_REF</BOOK_REF>
| |
| <BOOK_DATE>2012-12-24T10:00:00</BOOK_DATE>
| |
| ORDER_TRANSACTION_DATE", Audit Date and Time),
| |
| <ORDER_HEADER>
| |
| <ORDER_DETAILS>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>D</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_CONTAINER_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>1</ORDERED>
| |
| <TO_DELIVER>1</TO_DELIVER>
| |
| <DELIVERED></DELIVERED>
| |
| <REASON_CODES>
| |
| <REASON_CODE>
| |
| <RC_CODE>EPL_REASON_CODE</RC_CODE>
| |
| <RC_DESCRIPTION>EPOD_REASON_CODE.EPL_DESCRIPTION</RC_DESCRIPTION>
| |
| <RC_COMMENT>EPL_CUST_COMMENTS</RC_COMMENT>
| |
| <RC_TYPE>DEL</RC_TYPE>
| |
| </REASON_CODE>
| |
| </REASON_CODES>
| |
| </ORDER_DETAIL>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>S</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_PRODUCT_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>EPL_PRODUCT_QTY_ORDERED</ORDERED>
| |
| <TO_DELIVER>EPL_PRODUCT_QTY_PLANNED</TO_DELIVER>
| |
| <DELIVERED>EPL_PRODUCT_QTY_ACTUAL</DELIVERED>
| |
| <REASON_CODES>
| |
| <REASON_CODE>
| |
| <RC_CODE>EPL_REASON_CODE</RC_CODE>
| |
| <RC_DESCRIPTION>EPOD_REASON_CODE.EPL_DESCRIPTION</RC_DESCRIPTION>
| |
| <RC_TYPE>DEL</RC_TYPE>
| |
| </REASON_CODE>
| |
| </REASON_CODES>
| |
| </ORDER_DETAIL>
| |
| </ORDER_DETAILS>
| |
| </ORDER>
| |
| </ORDERS>
| |
| </STOP>
| |
| </STOPS>
| |
|
| |
|
| |
| Variable data for TRIP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRIP_TRANSACTION_DATE ||The date/time the Job was completed, from EPOD_JOB.EPL_ACTUAL_END_DATE/EPL_ACTUAL_END_TIME, if populated, else the time the message is sent, in XSD Date format.
| |
| |-
| |
| |TRIP_ID ||EPL_LOAD_ID
| |
| |}
| |
|
| |
|
| |
| Variable data for TRIP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRACTOR_LAT ||The latitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD, if populated, else 0.
| |
| |-
| |
| |TRACTOR_LON ||The longitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD, if populated, else 0.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_SEQUENCE ||EPL_SEQUENCE if populated, otherwise a counter incremented for each job on the trip.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_REF ||EPL_JOB_TYPE
| |
| |-
| |
| |STOP_TYPE ||"PK" if STOP_TYPE = "C" else "DL"
| |
| |-
| |
| |STOP_PLANNED_ARRIVAL_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XML date format
| |
| |-
| |
| |STOP_PLANNED_DEPARTURE_DATE ||EPL_END_PLANNED_DATE/EPL_END_PLANNED_TIME in XML date format. Only populated if there is an End Planned Date for the job
| |
| |-
| |
| |STOP_ACTUAL_ARRIVAL_DATE ||EPL_ARRIVAL_DATE/EPL_ARRIVAL_TIME if populated, else EPL_START_ACTUAL_DATE/EPL_START_ACTUAL_TIME, in XML date format
| |
| |-
| |
| |LOC_TIMEZONE ||EPL_TIMEZONE
| |
| |}
| |
| Stop Location and Address fields in the STOP_DETAIL section are populated based on Job Address or Customer Address, depending on which exist, as follows:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_JOB_ADDRESS !! EPOD_CUSTOMER
| |
| |-
| |
| |STOP_LOCATION_ID ||EPL_ADDRESS_ID if populated, else EPOD_JOB.EPL_CUSTOMER_CODE ||EPL_ADDRESS_ID_PREFIXED if populated, else EPOD_JOB.EPL_CUSTOMER_CODE
| |
| |-
| |
| |STOP_LOCATION_NAME ||EPL_NAME if populated, else EPOD_CUSTOMER.EPL_CUSTOMER_NAME ||EPL_CUSTOMER_NAME
| |
| |-
| |
| |STOP_ADDR_LINE1 ||EPL_ADDRESS_1 ||EPL_ADDRESS_1
| |
| |-
| |
| |STOP_ADDR_LINE2 ||EPL_ADDRESS_2 ||EPL_ADDRESS_2
| |
| |-
| |
| |STOP_TOWN ||EPL_ADDRESS_3 ||EPL_ADDRESS_3
| |
| |-
| |
| |STOP_POSTCODE ||EPL_POSTCODE ||EPL_POSTCODE
| |
| |-
| |
| |STOP_CONTACT_NAME ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT
| |
| |-
| |
| |STOP_CONTACT_PHONE ||EPL_TELEPHONE ||EPL_TELEPHONE
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |ORDER_TRANSACTION_DATE ||EPL_ACTUAL_END_DATE/EPL_ACTUAL_END_TIME, if populated, else the time the message is sent, in XSD Date format.
| |
| |-
| |
| |WMS_WAREHOUSE ||EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |WMS_OWNER ||EPL_OWNER_NAME if present, else EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |SO_REF ||EPL_CUST_REF
| |
| |-
| |
| |TMS_REF ||EPL_JOB_CODE
| |
| |-
| |
| |PO_REF ||EPL_SO_REF
| |
| |-
| |
| |BOOK_REF ||EPL_EXT_REF
| |
| |-
| |
| |BOOK_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XSD format
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_CONTAINER !!EPOD_PRODUCT
| |
| |-
| |
| |DETAIL_TYPE ||"D" ||"S"
| |
| |-
| |
| |ITEM_IDENTIFIER ||EPL_CONTAINER_ID ||EPL_PRODUCT_CODE
| |
| |-
| |
| |ITEM_DESCRIPTION ||EPL_DESCRIPTION ||EPL_DESCRIPTION
| |
| |-
| |
| |ORDERED ||1 ||EPL_PRODUCT_QTY_ORDERED
| |
| |-
| |
| |TO_DELIVER ||1 ||EPL_PRODUCT_QTY_PLANNED
| |
| |-
| |
| |DELIVERED ||1 if delivered (EPL_STATUS = "C") or 0 if not delivered (EPL_STATUS = "X") ||EPL_PRODUCT_QTY_ACTUAL
| |
| |}
| |
|
| |
|
| |
| A REASON_CODES section will only be created if the detail line in question (EPOD_CONTAINER or EPOD_PRODUCT) has a reason code or clause comment against it.
| |
|
| |
| Variable data for REASON_CODE:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Reason Code !!Clause Comment (For Containers only)
| |
| |-
| |
| |RC_CODE ||EPL_REASON_CODE || "_CLAUSED_"
| |
| |-
| |
| |RC_DESCRIPTION ||EPOD_REASON.EPL_DESCRIPTION ||"Claused Delivery"
| |
| |-
| |
| |RC_COMMMENT ||Tag not produced ||EPOD_CONTAINER.EPL_CUST_COMMENT
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == CAN messages ==
| |
| CAN messages signify that a job has been cancelled.
| |
| These messages are sent only when the job is marked as cancelled, through the Mobile Device completing the job or through the Admin console.
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | TRIP_HEADER || EPOD_JOB
| |
| |-
| |
| | STOP_HEADER || EPOD_JOB
| |
| |-
| |
| | STOP_DETAIL || EPOD_JOB, EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_HEADER || EPOD_JOB
| |
| |-
| |
| | ORDER_HEADER_ADDRESSES || EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_DETAILS || EPOD_CONTAINER, EPOD_PRODUCT
| |
| |-
| |
| | ORDER_REASON_CODES || EPOD_JOB, EPOD_REASON_CODE
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <TRIP_HEADER>
| |
| <TRIP_IDENTIFIER>T</TRIP_IDENTIFIER>
| |
| <TRIP_TRANSACTION_DATE>2012-12-24T10:00:00</TRIP_TRANSACTION_DATE>
| |
| <TRIP_ID>EPL_LOAD_ID</TRIP_ID>
| |
| </TRIP_HEADER>
| |
| <STOPS>
| |
| <STOP>
| |
| <STOP_HEADER>
| |
| <STOP_HEADER>
| |
| <STOP_IDENTIFIER>O</STOP_IDENTIFIER>
| |
| <STOP_SEQ>EPL_SEQUENCE</STOP_SEQ>
| |
| </STOP_HEADER>
| |
| <STOP_DETAIL>
| |
| <STOP_REF>EPL_JOB_TYPE</STOP_REF>
| |
| <STOP_TYPE>PK/DL</STOP_TYPE>
| |
| <STOP_LOCATION_TYPE>2</STOP_LOCATION_TYPE>
| |
| <STOP_LOCATION_ID></STOP_LOCATION_ID>
| |
| <STOP_LOCATION_NAME></STOP_LOCATION_NAME>
| |
| <STOP_ADDR_LINE1></STOP_ADDR_LINE1>
| |
| <STOP_ADDR_LINE2><STOP_ADDR_LINE2>
| |
| <STOP_TOWN><STOP_TOWN>
| |
| <STOP_POSTCODE><STOP_POSTCODE>
| |
| <STOP_CONTACT_NAME><STOP_CONTACT_NAME>
| |
| <STOP_CONTACT_PHONE><STOP_CONTACT_PHONE>
| |
| <STOP_PLANNED_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_PLANNED_ARRIVAL_DATE>
| |
| <STOP_PLANNED_DEPARTURE_DATE>2012-12-20T00:00:00<STOP_PLANNED_DEPARTURE_DATE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </STOP_DETAIL>
| |
| <ORDERS>
| |
| <ORDER>
| |
| <ORDER_HEADER>
| |
| <ORDER_TRANSACTION_DATE>2012-12-20T00:00:00</ORDER_TRANSACTION_DATE>
| |
| <WMS_WAREHOUSE>EPL_SITE_REF</WMS_WAREHOUSE>
| |
| <WMS_OWNER>EPL_JOB_GROUP_REF</WMS_OWNER>
| |
| <SO_REF>EPL_CUST_REF</SO_REF>
| |
| <TMS_REF>EPL_JOB_CODE</TMS_REF>
| |
| <PO_REF>EPL_SO_REF</PO_REF>
| |
| <BOOK_REF>EPL_EXT_REF</BOOK_REF>
| |
| <BOOK_DATE>2012-12-24T10:00:00</BOOK_DATE>
| |
| ORDER_TRANSACTION_DATE", Audit Date and Time),
| |
| <ORDER_HEADER>
| |
| <ORDER_DETAILS>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>D</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_CONTAINER_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>1</ORDERED>
| |
| <TO_DELIVER>1</TO_DELIVER>
| |
| <DELIVERED></DELIVERED>
| |
| <REASON_CODES>
| |
| <REASON_CODE>
| |
| <RC_CODE>EPL_REASON_CODE</RC_CODE>
| |
| <RC_DESCRIPTION>EPOD_REASON_CODE.EPL_DESCRIPTION</RC_DESCRIPTION>
| |
| <RC_COMMENT>EPL_CUST_COMMENTS</RC_COMMENT>
| |
| <RC_TYPE>DEL</RC_TYPE>
| |
| </REASON_CODE>
| |
| </REASON_CODES>
| |
| </ORDER_DETAIL>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>S</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_PRODUCT_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>EPL_PRODUCT_QTY_ORDERED</ORDERED>
| |
| <TO_DELIVER>EPL_PRODUCT_QTY_PLANNED</TO_DELIVER>
| |
| <DELIVERED>EPL_PRODUCT_QTY_ACTUAL</DELIVERED>
| |
| <REASON_CODES>
| |
| <REASON_CODE>
| |
| <RC_CODE>EPL_REASON_CODE</RC_CODE>
| |
| <RC_DESCRIPTION>EPOD_REASON_CODE.EPL_DESCRIPTION</RC_DESCRIPTION>
| |
| <RC_TYPE>DEL</RC_TYPE>
| |
| </REASON_CODE>
| |
| </REASON_CODES>
| |
| </ORDER_DETAIL>
| |
| </ORDER_DETAILS>
| |
| <ORDER_REASON_CODES>
| |
| <ORDER_REASON_CODE>
| |
| <RC_TYPE>DEL</RC_TYPE>
| |
| <RC_CODE>EPL_REASON_CODE</RC_CODE>
| |
| <RC_DESCRIPTION>EPOD_REASON_CODE.EPL_DESCRIPTION</RC_DESCRIPTION>
| |
| </ORDER_REASON_CODE>
| |
| </ORDER_REASON_CODES>
| |
| </ORDER>
| |
| </ORDERS>
| |
| </STOP>
| |
| </STOPS>
| |
|
| |
|
| |
| Variable data for TRIP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRIP_TRANSACTION_DATE ||The date/time the Job was cancelled, from EPOD_JOB.EPL_ACTUAL_END_DATE/EPL_ACTUAL_END_TIME, if populated, else the time the message is sent, in XSD Date format.
| |
| |-
| |
| |TRIP_ID ||EPL_LOAD_ID
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_SEQUENCE ||EPL_SEQUENCE if populated, otherwise a counter incremented for each job on the trip.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_REF ||EPL_JOB_TYPE
| |
| |-
| |
| |STOP_TYPE ||"PK" if STOP_TYPE = "C" else "DL"
| |
| |-
| |
| |STOP_PLANNED_ARRIVAL_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XML date format
| |
| |-
| |
| |STOP_PLANNED_DEPARTURE_DATE ||EPL_END_PLANNED_DATE/EPL_END_PLANNED_TIME in XML date format. Only populated if there is an End Planned Date for the job
| |
| |-
| |
| |STOP_ACTUAL_ARRIVAL_DATE ||EPL_ARRIVAL_DATE/EPL_ARRIVAL_TIME if populated, else EPL_START_ACTUAL_DATE/EPL_START_ACTUAL_TIME, in XML date format
| |
| |-
| |
| |LOC_TIMEZONE ||EPL_TIMEZONE
| |
| |}
| |
| Stop Location and Address fields in the STOP_DETAIL section are populated based on Job Address or Customer Address, depending on which exist, as follows:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_JOB_ADDRESS !! EPOD_CUSTOMER
| |
| |-
| |
| |STOP_LOCATION_ID ||EPL_ADDRESS_ID if populated, else EPOD_JOB.EPL_CUSTOMER_CODE ||EPL_ADDRESS_ID_PREFIXED if populated, else EPOD_JOB.EPL_CUSTOMER_CODE
| |
| |-
| |
| |STOP_LOCATION_NAME ||EPL_NAME if populated, else EPOD_CUSTOMER.EPL_CUSTOMER_NAME ||EPL_CUSTOMER_NAME
| |
| |-
| |
| |STOP_ADDR_LINE1 ||EPL_ADDRESS_1 ||EPL_ADDRESS_1
| |
| |-
| |
| |STOP_ADDR_LINE2 ||EPL_ADDRESS_2 ||EPL_ADDRESS_2
| |
| |-
| |
| |STOP_TOWN ||EPL_ADDRESS_3 ||EPL_ADDRESS_3
| |
| |-
| |
| |STOP_POSTCODE ||EPL_POSTCODE ||EPL_POSTCODE
| |
| |-
| |
| |STOP_CONTACT_NAME ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT
| |
| |-
| |
| |STOP_CONTACT_PHONE ||EPL_TELEPHONE ||EPL_TELEPHONE
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |ORDER_TRANSACTION_DATE ||EPL_ACTUAL_END_DATE/EPL_ACTUAL_END_TIME, if populated, else the time the message is sent, in XSD Date format.
| |
| |-
| |
| |WMS_WAREHOUSE ||EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |WMS_OWNER ||EPL_OWNER_NAME if present, else EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |SO_REF ||EPL_CUST_REF
| |
| |-
| |
| |TMS_REF ||EPL_JOB_CODE
| |
| |-
| |
| |PO_REF ||EPL_SO_REF
| |
| |-
| |
| |BOOK_REF ||EPL_EXT_REF
| |
| |-
| |
| |BOOK_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XSD format
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_CONTAINER !!EPOD_PRODUCT
| |
| |-
| |
| |DETAIL_TYPE ||"D" ||"S"
| |
| |-
| |
| |ITEM_IDENTIFIER ||EPL_CONTAINER_ID ||EPL_PRODUCT_CODE
| |
| |-
| |
| |ITEM_DESCRIPTION ||EPL_DESCRIPTION ||EPL_DESCRIPTION
| |
| |-
| |
| |ORDERED ||1 ||EPL_PRODUCT_QTY_ORDERED
| |
| |-
| |
| |TO_DELIVER ||1 ||EPL_PRODUCT_QTY_PLANNED
| |
| |-
| |
| |DELIVERED ||1 if delivered (EPL_STATUS = "C") or 0 if not delivered (EPL_STATUS = "X") ||EPL_PRODUCT_QTY_ACTUAL
| |
| |}
| |
|
| |
|
| |
| A REASON_CODES section will only be created if the detail line in question (EPOD_CONTAINER or EPOD_PRODUCT) has a reason code or clause comment against it.
| |
|
| |
| Variable data for REASON_CODE:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Reason Code !!Clause Comment (For Containers only)
| |
| |-
| |
| |RC_CODE ||EPL_REASON_CODE || "_CLAUSED_"
| |
| |-
| |
| |RC_DESCRIPTION ||EPOD_REASON.EPL_DESCRIPTION ||"Claused Delivery"
| |
| |-
| |
| |RC_COMMMENT || Tag not produced ||EPOD_CONTAINER.EPL_CUST_COMMENT
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_REASON_CODE:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Reason Code
| |
| |-
| |
| |RC_CODE ||EPL_REASON_CODE
| |
| |-
| |
| |RC_DESCRIPTION ||EPOD_REASON_CODE.EPL_DESCRIPTION
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == DEL messages ==
| |
| DEL messages signify that a delivery order has been completed.
| |
| These messages are sent only when the job is marked as completed, normally through the Mobile Device completing the job.
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | TRIP_HEADER || EPOD_JOB
| |
| |-
| |
| | TRIP_DETAIL || EPOD_AUDIT
| |
| |-
| |
| | STOP_HEADER || EPOD_JOB
| |
| |-
| |
| | STOP_DETAIL || EPOD_JOB, EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_HEADER || EPOD_JOB
| |
| |-
| |
| | ORDER_HEADER_ADDRESSES || EPOD_JOB_ADDRESS, EPOD_CUSTOMER
| |
| |-
| |
| | ORDER_DETAILS || EPOD_CONTAINER, EPOD_PRODUCT, EPOD_REASON_CODE
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <TRIP_HEADER>
| |
| <TRIP_IDENTIFIER>T</TRIP_IDENTIFIER>
| |
| <TRIP_TRANSACTION_DATE>2012-12-24T10:00:00</TRIP_TRANSACTION_DATE>
| |
| <TRIP_ID>EPL_LOAD_ID</TRIP_ID>
| |
| </TRIP_HEADER>
| |
| <TRIP_DETAIL>
| |
| <TRACTOR_LAT></TRACTOR_LAT>
| |
| <TRACTOR_LON></TRACTOR_LON>
| |
| </TRIP_DETAIL>
| |
| <STOPS>
| |
| <STOP>
| |
| <STOP_HEADER>
| |
| <STOP_HEADER>
| |
| <STOP_IDENTIFIER>S</STOP_IDENTIFIER>
| |
| <STOP_SEQ>EPL_SEQUENCE</STOP_SEQ>
| |
| </STOP_HEADER>
| |
| <STOP_DETAIL>
| |
| <STOP_REF>EPL_JOB_TYPE</STOP_REF>
| |
| <STOP_TYPE>PK/DL</STOP_TYPE>
| |
| <STOP_LOCATION_TYPE>2</STOP_LOCATION_TYPE>
| |
| <STOP_LOCATION_ID></STOP_LOCATION_ID>
| |
| <STOP_LOCATION_NAME></STOP_LOCATION_NAME>
| |
| <STOP_ADDR_LINE1></STOP_ADDR_LINE1>
| |
| <STOP_ADDR_LINE2><STOP_ADDR_LINE2>
| |
| <STOP_TOWN><STOP_TOWN>
| |
| <STOP_POSTCODE><STOP_POSTCODE>
| |
| <STOP_CONTACT_NAME><STOP_CONTACT_NAME>
| |
| <STOP_CONTACT_PHONE><STOP_CONTACT_PHONE>
| |
| <STOP_PLANNED_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_PLANNED_ARRIVAL_DATE>
| |
| <STOP_PLANNED_DEPARTURE_DATE>2012-12-20T00:00:00<STOP_PLANNED_DEPARTURE_DATE>
| |
| <STOP_ACTUAL_ARRIVAL_DATE>2012-12-20T00:00:00<STOP_ACTUAL_ARRIVAL_DATE>
| |
| <LOC_TIMEZONE>EPL_TIMEZONE</LOC_TIMEZONE>
| |
| </STOP_DETAIL>
| |
| <STOP_SIGNATURE>
| |
| <SIGNATURE>EPL_JOB_SIGNATURE</SIGNATURE>
| |
| <SIGNATORY>EPL_CUST_SIGNATORY</SIGNATORY>
| |
| </STOP_SIGNATURE>
| |
| <ORDERS>
| |
| <ORDER>
| |
| <ORDER_HEADER>
| |
| <ORDER_TRANSACTION_DATE>2012-12-20T00:00:00</ORDER_TRANSACTION_DATE>
| |
| <WMS_WAREHOUSE>EPL_SITE_REF</WMS_WAREHOUSE>
| |
| <WMS_OWNER>EPL_JOB_GROUP_REF</WMS_OWNER>
| |
| <SO_REF>EPL_CUST_REF</SO_REF>
| |
| <TMS_REF>EPL_JOB_CODE</TMS_REF>
| |
| <PO_REF>EPL_SO_REF</PO_REF>
| |
| <BOOK_REF>EPL_EXT_REF</BOOK_REF>
| |
| <BOOK_DATE>2012-12-24T10:00:00</BOOK_DATE>
| |
| ORDER_TRANSACTION_DATE", Audit Date and Time),
| |
| <ORDER_HEADER>
| |
| <ORDER_DETAILS>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>D</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_CONTAINER_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>1</ORDERED>
| |
| <TO_DELIVER>1</TO_DELIVER>
| |
| <DELIVERED></DELIVERED>
| |
| <REASON_CODES>
| |
| <REASON_CODE>
| |
| <RC_CODE>EPL_REASON_CODE</RC_CODE>
| |
| <RC_DESCRIPTION>EPOD_REASON_CODE.EPL_DESCRIPTION</RC_DESCRIPTION>
| |
| <RC_COMMMENT>EPL_CUST_COMMENT</RC_COMMMENT>
| |
| <RC_TYPE>DEL</RC_TYPE>
| |
| </REASON_CODE>
| |
| </REASON_CODES>
| |
| </ORDER_DETAIL>
| |
| <ORDER_DETAIL>
| |
| <DETAIL_TYPE>S</DETAIL_TYPE>
| |
| <ITEM_IDENTIFIER>EPL_PRODUCT_ID</ITEM_IDENTIFIER>
| |
| <ITEM_DESCRIPTION>EPL_DESCRIPTION</ITEM_DESCRIPTION>
| |
| <ORDERED>EPL_PRODUCT_QTY_ORDERED</ORDERED>
| |
| <TO_DELIVER>EPL_PRODUCT_QTY_PLANNED</TO_DELIVER>
| |
| <DELIVERED>EPL_PRODUCT_QTY_ACTUAL</DELIVERED>
| |
| <REASON_CODES>
| |
| <REASON_CODE>
| |
| <RC_CODE>EPL_REASON_CODE</RC_CODE>
| |
| <RC_DESCRIPTION>EPOD_REASON_CODE.EPL_DESCRIPTION</RC_DESCRIPTION>
| |
| <RC_TYPE>DEL</RC_TYPE>
| |
| </REASON_CODE>
| |
| </REASON_CODES>
| |
| </ORDER_DETAIL>
| |
| </ORDER_DETAILS>
| |
| </ORDER>
| |
| </ORDERS>
| |
| </STOP>
| |
| </STOPS>
| |
|
| |
|
| |
| Variable data for TRIP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRIP_TRANSACTION_DATE ||The date/time the Job was completed, from EPOD_JOB.EPL_ACTUAL_END_DATE/EPL_ACTUAL_END_TIME, if populated, else the time the message is sent, in XSD Date format.
| |
| |-
| |
| |TRIP_ID ||EPL_LOAD_ID
| |
| |}
| |
|
| |
|
| |
| Variable data for TRIP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |TRACTOR_LAT ||The latitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD, if populated, else 0.
| |
| |-
| |
| |TRACTOR_LON ||The longitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD, if populated, else 0.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_SEQUENCE ||EPL_SEQUENCE if populated, otherwise a counter incremented for each job on the trip.
| |
| |}
| |
|
| |
|
| |
| Variable data for STOP_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |STOP_REF ||EPL_JOB_TYPE
| |
| |-
| |
| |STOP_TYPE ||"PK" if STOP_TYPE = "C" else "DL"
| |
| |-
| |
| |STOP_PLANNED_ARRIVAL_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XML date format
| |
| |-
| |
| |STOP_PLANNED_DEPARTURE_DATE ||EPL_END_PLANNED_DATE/EPL_END_PLANNED_TIME in XML date format. Only populated if there is an End Planned Date for the job
| |
| |-
| |
| |STOP_ACTUAL_ARRIVAL_DATE ||EPL_ARRIVAL_DATE/EPL_ARRIVAL_TIME if populated, else EPL_START_ACTUAL_DATE/EPL_START_ACTUAL_TIME, in XML date format
| |
| |-
| |
| |LOC_TIMEZONE ||EPL_TIMEZONE
| |
| |}
| |
| Stop Location and Address fields in the STOP_DETAIL section are populated based on Job Address or Customer Address, depending on which exist, as follows:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_JOB_ADDRESS !! EPOD_CUSTOMER
| |
| |-
| |
| |STOP_LOCATION_ID ||EPL_ADDRESS_ID if populated, else EPOD_JOB.EPL_CUSTOMER_CODE ||EPL_ADDRESS_ID_PREFIXED if populated, else EPOD_JOB.EPL_CUSTOMER_CODE
| |
| |-
| |
| |STOP_LOCATION_NAME ||EPL_NAME if populated, else EPOD_CUSTOMER.EPL_CUSTOMER_NAME ||EPL_CUSTOMER_NAME
| |
| |-
| |
| |STOP_ADDR_LINE1 ||EPL_ADDRESS_1 ||EPL_ADDRESS_1
| |
| |-
| |
| |STOP_ADDR_LINE2 ||EPL_ADDRESS_2 ||EPL_ADDRESS_2
| |
| |-
| |
| |STOP_TOWN ||EPL_ADDRESS_3 ||EPL_ADDRESS_3
| |
| |-
| |
| |STOP_POSTCODE ||EPL_POSTCODE ||EPL_POSTCODE
| |
| |-
| |
| |STOP_CONTACT_NAME ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT ||EPOD_JOB.EPL_CUST_SIGNATORY if populated else EPL_CONTACT
| |
| |-
| |
| |STOP_CONTACT_PHONE ||EPL_TELEPHONE ||EPL_TELEPHONE
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_HEADER:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| |ORDER_TRANSACTION_DATE ||EPL_ACTUAL_END_DATE/EPL_ACTUAL_END_TIME, if populated, else the time the message is sent, in XSD Date format.
| |
| |-
| |
| |WMS_WAREHOUSE ||EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |WMS_OWNER ||EPL_OWNER_NAME if present, else EPODSITE.EPL_TTM_XREF
| |
| |-
| |
| |SO_REF ||EPL_CUST_REF
| |
| |-
| |
| |TMS_REF ||EPL_JOB_CODE
| |
| |-
| |
| |PO_REF ||EPL_SO_REF
| |
| |-
| |
| |BOOK_REF ||EPL_EXT_REF
| |
| |-
| |
| |BOOK_DATE ||EPL_START_PLANNED_DATE/EPL_START_PLANNED_TIME in XSD format
| |
| |}
| |
|
| |
|
| |
| Variable data for ORDER_DETAIL:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!EPOD_CONTAINER !!EPOD_PRODUCT
| |
| |-
| |
| |DETAIL_TYPE ||"D" ||"S"
| |
| |-
| |
| |ITEM_IDENTIFIER ||EPL_CONTAINER_ID ||EPL_PRODUCT_CODE
| |
| |-
| |
| |ITEM_DESCRIPTION ||EPL_DESCRIPTION ||EPL_DESCRIPTION
| |
| |-
| |
| |ORDERED ||1 ||EPL_PRODUCT_QTY_ORDERED
| |
| |-
| |
| |TO_DELIVER ||1 ||EPL_PRODUCT_QTY_PLANNED
| |
| |-
| |
| |DELIVERED ||1 if delivered (EPL_STATUS = "C") or 0 if not delivered (EPL_STATUS = "X") ||EPL_PRODUCT_QTY_ACTUAL
| |
| |}
| |
|
| |
|
| |
| A REASON_CODES section will only be created if the detail line in question (EPOD_CONTAINER or EPOD_PRODUCT) has a reason code or clause comment against it.
| |
|
| |
| Variable data for REASON_CODE:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Reason Code !!Clause Comment (For Containers only)
| |
| |-
| |
| |RC_CODE ||EPL_REASON_CODE || "_CLAUSED_"
| |
| |-
| |
| |RC_DESCRIPTION ||EPOD_REASON.EPL_DESCRIPTION ||"Claused Delivery"
| |
| |-
| |
| |RC_COMMMENT ||Tag not produced ||EPOD_CONTAINER.EPL_CUST_COMMENT
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == GPS messages ==
| |
| GPS messages inform ''CALIDUS'' Portal of Lat/Long information gathered from mobile devices during operation, for last known location tracking and ETA purposes.
| |
| These messages are sent every time the Mobil Device sends a GPS Tracking message to the server.
| |
|
| |
| The data in the message sections is predominantly based on the following tables:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Notes
| |
| |-
| |
| | GPS_TRACKS || EPOD_AUDIT
| |
| |-
| |
| | GPS_POINTS || EPOD_AUDIT
| |
| |}
| |
|
| |
|
| |
| The basic XML Layout is as follows:
| |
| <GPS_TRACKS>
| |
| <GPS_TRACK>
| |
| <HAULIER>EPL_SITE_ID</HAULIER>
| |
| <HAULIER_NAME>EPOD_SITE.EPL_DESCRIPTION</HAULIER_NAME>
| |
| <DRIVER>EPL_USER_ID</DRIVER>
| |
| <DRIVER_NAME>EPOD_USER.EPL_USER_NAME</DRIVER_NAME>
| |
| <TRACTOR>EPL_VEHICLE_ID</TRACTOR>
| |
| <GPS_POINTS>
| |
| <GPS_POINT>
| |
| <GPS_POINT_DATE>2012-12-20T00:00:00</GPS_POINT_DATE>
| |
| <TRACTOR_LAT></TRACTOR_LAT>
| |
| <TRACTOR_LON></TRACTOR_LON>
| |
| <TRIP_ID>EPL_LOAD_ID</TRIP_ID>
| |
| <LOC_TIMEZONE>EPL_DEVICE_TIMEZONE</LOC_TIMEZONE>
| |
| </GPS_POINT>
| |
| </GPS_POINTS>
| |
| </GPS_TRACK>
| |
| </GPS_TRACKS>
| |
|
| |
|
| |
| Variable data for GPS_TRACK:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Reason Code
| |
| |-
| |
| |HAULIER ||EPL_SITE_ID
| |
| |-
| |
| |HAULIER_NAME ||EPOD_SITE.EPL_DESCRIPTION
| |
| |-
| |
| |DRIVER ||EPL_USER_ID
| |
| |-
| |
| |DRIVER_NAME ||EPOD_USER.EPL_USER_NAME
| |
| |-
| |
| |TRACTOR ||EPL_VEHICLE_ID
| |
| |}
| |
|
| |
|
| |
| Variable data for GPS_POINT:
| |
| {| border="1"
| |
| |- bgcolor="silver"
| |
| !Tag !!Reason Code
| |
| |-
| |
| |GPS_POINT_DATE ||EPL_DEVICE_DATE/EPL_DEVICE_TIME in XSD date format.
| |
| |-
| |
| |TRACTOR_LAT ||The latitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD.
| |
| |-
| |
| |TRACTOR_LON ||The longitude of where the job was started, extracted from EPOD_AUDIT.EPL_GPS_COORD
| |
| |-
| |
| |TRIP_ID ||EPL_LOAD_ID
| |
| |-
| |
| |LOC_TIMEZONE ||EPL_DEVICE_TIMEZONE
| |
| |}
| |
|
| |
|
| |
| <!-- NEW PAGE -->
| |
| == Sending Messages to ''CALIDUS'' Portal ==
| |
| The Auto-Export process that generates and sends these files is a stand-alone application, that must be initiated through a system scheduler. The expected interval for this process is 3-5 minutes.
| |
|
| |
| All messages generated by these processes are exported through flat-file transfer, either through a local file folder or through FTP.
| |
|
| |
| The default file naming convention is:
| |
| EPOD_LOTS_<EPL_SITE_ID>_FTP_<currentDate>_<currentTime>_1
| |
| although this can be overridden through the export configuration parameters in EPOD_XF_CONFIG.
| |
|
| |
|
| | {{:CALIDUS_VEhub_App}} |
|
| |
|
| <!-- NEW PAGE --> | | <!-- NEW PAGE --> |
Line 1,603: |
Line 28: |
| |Estimate=N | | |Estimate=N |
| |Glossary=EPOD | | |Glossary=EPOD |
| |Ref1=LOTS-tripOrder v1.16.xsd | | |Ref1= |
| |RefV1=1.16 | | |RefV1= |
| |RefDate1=04/06/2015 | | |RefDate1= |
| |Ref2=[[FS 328407 EPOD-TTM Interface Changes]]
| |
| |RefV2=0.2
| |
| |RefDate2=11/08/2015
| |
| |REQ=0
| |
| |EST=0
| |
| |FS=0.5
| |
| |TS=0.5
| |
| |DEV=1.5
| |
| |ST=0.25
| |
| |IMP=0.25
| |
| |PM=0.25
| |
| |FOC=N
| |
| |Client={{#var:Client}} | | |Client={{#var:Client}} |
| |Year={{#var:Year}} | | |Year={{#var:Year}} |