Shipment Import

From UG

Jump to: navigation, search


Contents

Mantis

0002455: [EDI to TMS] (Shipment_Import) .............. <parent>

Prerequisites

Intro

Shipment Import is a message transmitted by CT2 to TMS about approved CTs in the form of XML.

CT2 script is to send some information.

Message could be sent in these cases:

  • new approved CT has to be forwarded
    • XML: MessagePurpose="1002" // New
  • CT was updated in CT2 DB
    • XML: MessagePurpose = "1004" // Change

Example


  <?xml version="1.0" encoding="iso-8859-1" ?> 
- <ns0:Envelope xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing" xmlns:ns0="http://www.w3.org/2003/05/soap-envelope" xmlns:ebi="http://www.myvan.descartes.com/ebi/2004/r1">
- <ns0:Header>
- <wsa:From>
  <wsa:Address>urn:duns:657589457</wsa:Address> 
  </wsa:From>
  <wsa:To>urn:duns:657589457</wsa:To> 
  <wsa:Action>urn:myvan:856</wsa:Action> 
- <ebi:Sequence>
  <ebi:MessageNumber>12117</ebi:MessageNumber> 
  </ebi:Sequence>
  <wsa:MessageID /> 
  </ns0:Header>
- <ns0:Body>
- <parmDocEnvelope>
- <DocShipment ShipmentNo="3161007" MessagePurpose="1002" CarrierCode="" EarliestAvailDate="2010-08-130 08:00:00" LatestAvailDate="2010-08-30 16:00:00" TotalWgt="98" WgtUOM="200" BillingOption="10">
  <DSGOriginAddress LocationNo="08081831" StreetName="7725 PARKLAWN AVENUE" City="EDINA" State="MN" PostalCode="55439" Country="US" CompanyName="Company ABC" /> 
  <DSGDestinationAddress LocationNo="" StreetName="95 Paquin Road" City="MANITOBA" State="MB" PostalCode="R2J 3V9" Country="CA" CompanyName="Consumer Products" /> 
  <DSGReferenceNumbers RefNoType="Stack Pallets" Value="Yes" /> 
  <DSGShipmentAccessorial AccName="Hazardous" /> 
- <DocShpLineItem ContainerQuantity="1" Description="Goods" TotalLineItemWeight="98" WgtUOM="200" ContainerType="15" LineItemNumber="1" OrderQty="10" OrderQtyUOM="1" PurchaseOrderNo="PO#">
  <DSGReferenceNumbers RefNoType="Order Pieces" Value="200 Pieces" /> 
  </DocShpLineItem>
  </DocShipment>
  </parmDocEnvelope>
  </ns0:Body>
  </ns0:Envelope>


Schema

see http://ct.jaguarfreight.com/mantis/file_download.php?file_id=1577&type=bug

CT to TMS fields map

Initially only the following data will be sent(for every CT#CT Num):

  • see fields in "CT to TMS fields map udated XXX.xls" file attached to mantis "0002229: [EDI to TMS] (Preliminary) Create data dictionary / TMS to CT2 fields mapping table " where Message = Import

Pending Address Use Case

This is related to Cybertrax_2.1_Client_(requirements)#New_Pending_Address_.28NPA.29_Feature.

Before sh....

UC 101 Editing Shipment data on CT side after first Shipment Import

Any edits to CT fields that are transferable as a part of Shipment Import message to TMS are subject to below use cases.

Also TMSS field should be updated accordingly.

UC 101A Change of Shipment data on CT2 side after Shipment Import before Load Plan Message received

Implem: Send same XML file as Shipment Import with this flag:

<xs:element name="DocShipment">
...
   <xs:attribute name="MessagePurpose" use="required">
   ...
      <xs:enumeration value="1004">
          <xs:annotation>
             <xs:documentation>Change</xs:documentation>
           </xs:annotation>
  • a) update record in CT2

UC 101B Change of Shipment data on CT2 side after Shipment Import after Load Plan Message received

  • a) Descartes will not accept this update so do not send XML
  • b) Provide user with Warning message:
Warning: 
         Attempt to update Portal CT after Load Plan has been received from TMS.
         CT2 record will be updated. Descartes record will NOT be updated.
         Are you sure you want to update? [Y] [N]
  • c) update record in CT2

Log 101B event into CT2 System Log

Message: "Operator <login info> Changed Shipment data on CT2 side after Shipment Import after Load Plan Message received. Fields changed: ....<CT#><field, value from, value to> ... ". Message priority = high.

see CT2 System Log

APPENDIX Some relevant XML elements and attribute

! Please note that this section is not fully updated.

For up to date info see #CT to TMS fields map

Below are XML elements under element ns0:Body.

parmDocEnvelope

DocShipment

Used to provide top level shipping information, like totals and main shipping refernece numbers

Sub-elements:


<xs:sequence>
<xs:element ref="DSGOriginAddress"/>
<xs:element ref="DSGDestinationAddress"/>
<xs:element ref="DSGBillToAddress" minOccurs="0"/>
<xs:element ref="DSGReferenceNumbers" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="DocShpLineItem" maxOccurs="unbounded"/>
<xs:element ref="DSGShipmentAccessorial" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>

Example:

<DocShipment ShipmentNo="3161007" MessagePurpose="1002" CarrierCode="" 
EarliestAvailDate="2010-08-130 08:00:00" LatestAvailDate="2010-08-30 16:00:00" TotalWgt="98" 
WgtUOM="200" BillingOption="10">

Required Attributes:

  • <xs:attribute name="ShipmentNo" use="required"> // map to: CT#CT_Num
  • <xs:attribute name="LatestAvailDate" type="xs:dateTime" use="required"/> // map to: CT#Cargo_available
  • <xs:attribute name="BillingOption" use="required"> // map to: TBD, for now always set to value "Collect"


DSGOriginAddress

Used to provide Origin Company and Address

Example:

<DSGOriginAddress LocationNo="08081831" StreetName="7725 PARKLAWN AVENUE" City="EDINA" State="MN" 
PostalCode="55439" Country="US" CompanyName="Company ABC" />

Required and important attributes:

Note: mapping below is for CT#Pick_up_Location object!

  • <xs:attribute name="CompanyName" use="required"> // mapto: Address#Company
  • <xs:attribute name="StreetNo" use="optional"> // mapto: first word from Address#Address_1; verify that it is a number, if not do not send; it could have hyphen in the middle, example: 33-21
  • <xs:attribute name="StreetName" use="required"> // mapto: Address#Address_1, ignore first word from this string which is a street number, see above
  • <xs:attribute name="City" use="required"> // mapto: Address#City
  • <xs:attribute name="State" use="required"> // mapto: Address#State
  • <xs:attribute name="PostalCode" use="required"> // mapto: Address#Zip
  • <xs:attribute name="Country" use="required"> // mapto: Address#Country
  • <xs:attribute name="PhoneNumber" this comes from admin >> address book >> transportation tab, that is apart of that company city.
  • <xs:attribute name="ContactFName" this comes from admin >> address book >> transportation tab, that is apart of that company city.
  • <xs:attribute name="ContactLName" this comes from admin >> address book >> transportation tab, that is apart of that company city.
DSGDestinationAddress

Used to provide Destination Company and Address

Example:

<DSGDestinationAddress LocationNo="" StreetName="95 Paquin Road" City="MANITOBA" State="MB" 
PostalCode="R2J 3V9" Country="CA" CompanyName="Consumer Products" />

Required and important attributes:

Note: mapping below is for CT#Export_Delivery_To object!

  • <xs:attribute name="CompanyName" use="required"> // mapto: Address#Company
  • <xs:attribute name="StreetNo" use="optional"> // mapto: first word from Address#Address_1; verify that it is a number, if not do not send; it could have hyphen in the middle, example: 33-21
  • <xs:attribute name="StreetName" use="required"> // mapto: Address#Address_1, ignore first word from this string which is a street number, see above
  • <xs:attribute name="City" use="required"> // mapto: Address#City
  • <xs:attribute name="State" use="required"> // mapto: Address#State
  • <xs:attribute name="PostalCode" use="required"> // mapto: Address#Zip
  • <xs:attribute name="Country" use="required"> // mapto: Address#Country
  • <xs:attribute name="PhoneNumber" this comes from admin >> address book >> transportation tab, that is apart of that company city.
  • <xs:attribute name="ContactFName" this comes from admin >> address book >> transportation tab, that is apart of that company city.
  • <xs:attribute name="ContactLName" this comes from admin >> address book >> transportation tab, that is apart of that company city.
  • On XML file, need to add spaces between the telephone # and extension #
    • IE change to: G61*IC*ED HYDER*TE*336-498-2654 X3059~
DSGReferenceNumbers

Used to define any needed reference number

Example:

   <DSGReferenceNumbers RefNoType="Stack Pallets" Value="Yes" /> 

Not in use for now.

DSGShipmentAccessorial

Used to assign accessorials that are needed for a shipment

Example:

<DSGShipmentAccessorial AccName="Hazardous" />

Not in use.

DocShpLineItem

Used to provide commodity level and handling unit details

Example:

<DocShpLineItem ContainerQuantity="1" Description="Goods" TotalLineItemWeight="98" WgtUOM="200" 
ContainerType="15" LineItemNumber="1" OrderQty="10" OrderQtyUOM="1" PurchaseOrderNo="PO#">

Required attributes:

See lines in Data_Dictionary_for_EDI_to_TMS#Data_Dictionary tagged with "Import"

DSGReferenceNumbers

Example:

<DSGReferenceNumbers RefNoType="Order Pieces" Value="200 Pieces" /> 

Not in use.

How to know when passing of CT to TMS fails & how to send to TM

Import Yet

  • If TMS Status of a CT record is import yet, that means that the record was not uploaded into the TM.
  • To send to the TM, use update fields via virtual group filters & upload to TMS.

IE of Status Yet

File:Status Yet.1.JPG

Mantis History

nu 0002369 [EDI to TMS] (Shipment_Import) Implement Shipment_Import message in TMS/CT2 environment

nu 0002380 [EDI to TMS] (Shipment_Import) Pass Haz info during Shipment Import

nu 0002387 [EDI to TMS] (Shipment_Import) Tweaks/bugs

nu 0002461 [EDI to TMS] (Shipment_Import) Pending Address Use Case

0002468: [EDI to TMS] (Shipment_Import) Log_101B_event_into_CT2_System_Log

0002473: [EDI to TMS] (Shipment_Import) Map CT#Pick up Instructions to DocShipment@Note

0002533: [EDI to TMS] (Shipment_Import) CT2 should NOT push CT records that already have a delivery date set

0002522: [EDI to TMS] chg: The information that needs to go out to the carrier needs to be on the Special Instructions field

0002542: [EDI to TMS] (Shipment_Import) Map phone number and contact name to origin & destination locations

0002571: [EDI to TMS] (Shipment_Import) Remove empty refno value from the line item

0002482: [EDI to TMS] What to do when passing of approved shipments from the portal into the TM Fails

This was done by adding a TMS Status to the TDS dashboard and adding TMS Status to CT records header. See above #How to know when passing of CT to TMS fails & how to send to TM for IE as well as this article: Cybertrax_2.1_Client_(requirements)#Truck_Domestic_Stats_TDS_feature.

0002620: [EDI to TMS ph2] (Shipment_Import) Change: Add space between phone number & the extensions for origin & destination locations

0002693: [EDI to TMS] (Shipment_Import) Change: Pass Loose Pkgs on Shipment Import as 1 line item

  • If Commodity#Loose_Pkgs = 0 then create one Line Item in Descartes with Order
    • Order Quantity = Commodity#Qty and Container Quantity = Commodity#Plts
  • If Commodity#Loose_Pkgs > 0 & If Commodity#plts > 0 then create 2 Line Items in Descartes:
    • Order Quantity = Commodity#Qty and Container Quantity = Commodity#Plts
    • Order Quantity = empty and Container Quantity = Commodity# Loose Pkgs
  • If Commodity Loose_Pkgs > 0 & If Commodity#plts = 0 Pass only 1 line
    • Order Quantity = empty and Container Quantity = Commodity# Loose Pkgs

0002797: [EDI to TMS] (Shipment_Import) Change Mapping of the Earliest & Latest Available Date

  • Doc Shipment EarliestAvailDate from CT Created on Date to portal records Approved On Date
  • Doc Shipment LatestAvailDate from CT Created on Date to portal records Approved On Date & add X days to this date - is managed via CT2 Admin >> Client Company Admin >> TMS Tab and interval is currently set to 7days

3002: [TMS ph2 (Optimize/Streamline)] Add cargo due date to shipment import under xml attribute EarliestDelDate & LatestDelDate

Cargo due will be forwarded to TMS and 2 fields in TMS will be set accordingly - see below:

  • set Earliest Delivery Date equal to Cargo Due Date set by EA Stamford planner
  • set Latest Delivery Date equal to Cargo Due Date set by EA Stamford planner
Personal tools