Supply Chain Framework 1.6.0
InterSystems Supply Chain Orchestrator™ includes the InterSystems Supply Chain Framework. This page lists the changes in version 1.6.0 of the Supply Chain Framework. Note that you need IPM client version 0.9.0 in order to obtain this version of the Supply Chain Framework.
Feature Updates
The main feature released in 1.6.0 is the support of Supply Chain Orchestrator cloud service: Track and Trace Cloud Service with Descartes MacroPoint. There is no other feature change or bug fix in this release.
Supply Chain Model Updates
To support Track and Trace service, some existing objects have new properties, and some new objects have been added. This section describes the changes; also see Track and Trace Data Requirements for details on the data needed for specific kinds of shipments.
Shipment Object Changes
The SupplyShipment and SalesShipment objects now include the following new properties:
Property Name |
Description |
Data type |
---|---|---|
vehicleId |
Truck number to be tracked |
String (128) |
trailerId |
Trailer number to be tracked |
String (128) |
vehicleType |
Type of the vehicle used for truck load tracing |
String (50) |
emailCopiesOfUpdatesTo |
Email Ids to which the updates regarding the shipment to be sent. Multiple email addresses to be separated by comma |
String (256) |
notes |
To add custom notes to be displayed in notification emails at the order level |
String (256) |
railContainerNumber |
Rail Container Number to be tracked |
String (128) |
trackingServiceProvider |
Name of the service provider for which the tracking request is supposed to be created |
String (50) |
trackingStatus |
Status of the tracking request |
String (10) with value list: Created, Failed, Completed |
statusMessage |
Message regarding the status |
String (256) |
mobileNumber |
Shipment's Driver's mobile number |
String (128) |
Location Object Changes
The Location object now includes the following new properties:
Property Name |
Description |
Data type |
---|---|---|
street2 |
Street address line 2 |
String (256) |
neighborhood |
Name of the neighborhood of the location |
String (128) |
New ShipmentStop Object
ShipmentStop is a new object to store details about the different shipment stops that a shipment will make.
Property Name |
Description |
Data Type |
---|---|---|
shipmentId |
Foreign key (Shipment) referring to the shipment to which this stop is related to |
String (256) |
shipmentType |
Type of the shipment (e.g. Sales, Supply) |
String (20) |
name |
Name assigned to the stop |
String (128) |
stopType |
Type of stop; either Pickup or DropOff. |
String (20) |
locationId |
Foreign Key (Location) referring to the location data which stores the address details of the location |
String (256) |
earliestDateTime |
Earlist date/time for a shipment to arrive at a stop |
DateTime |
latestDateTime |
Latest date/time for a shipment to arrive at a stop |
DateTime |
geofence |
The geofence by the stop |
Integer |
geofenceUnit |
Unit of the geofence |
String (20) |
stopNumber |
The number of the particular stop in a multistop shipment |
Integer |
uid |
Unique id |
String (256) |
notes |
notes assigned to a stop |
String (256) |
New TrackingServices Object
TrackingServices is a new object to capture the details regarding the tracking service provider that will be used to create orders.
Property Name |
Description |
Data Type |
---|---|---|
serviceProviderId |
The Descartes MacroPoint generated ID that denotes the account(s) that will receive notifications from the tracking session |
String (50) |
stopSequencingRequired |
If True, requires Descartes MacroPoint to capture Trip Events and report Schedule Alerts in sequential order of stops on the tracking session |
Boolean |
maximumAllowableDrivingHoursPerDay |
Alters the ETA calculation for the shipment. This is typically utilized for team shipments |
Integer |
trackingServiceProvider |
Name of the tracking service provider |
String (50) |
startDate |
Start date of the contract with the service provider |
DateTime |
endDate |
End date of the contract with the service provider |
DateTime |
uid |
Unique id |
String (256) |
New ShipmentTracking Object
ShipmentTracking is a new object to capture the tracking updates regarding a shipment.
Property Name |
Description |
Data Type |
---|---|---|
shipmentId |
Foreign Key referring to Shipment object ID |
String (256) |
shipmentType |
Type of the shipment (e.g. Sales, Supply) |
String (20) |
latestLocationId |
Referring to ID of the location object having the location details |
String (256) |
trackingServiceProvider |
Name of the tracking service provider |
String (50) |
trackingServiceOrderId |
OrderId received from tracking service provider for reference and all the updates |
String (256) |
trackingServiceRequestId |
RequestId received from tracking service provider for reference and all the updates |
String (256) |
trackingServiceStatus |
Refers to the status of the tracking request (Error, Active, New, Closed) |
String (10) |
trackingServiceLastUpdatedTimeUTC |
Refers to the UTC time when the shipment tracking was last updated |
DateTime |
trackingServiceLastUpdatedTimelocal |
Refers to the local time when the shipment tracking was last updated |
DateTime |
trackingServiceShipmentStatus |
Refers to the code of the shipment status provided by the tracking service provider |
String (20) |
trackingServiceShipmentMessage |
Refers to the message of the shipment status provided by tge tracking service provider |
String (256) |
etaDateTimeUTC |
Estimated time of arrival in UTC |
DateTime |
etaDateTimeLocalTime |
Estimated time of arrival in local time |
DateTime |
unLocode |
Refers to the physical location of the port for ocean tracking |
String (15) |
uncertainity |
Approximate uncertainty radius, in miles |
Integer |
datasource |
Source the data was received from |
String (128) |
locator |
TMS ID, Truck Number, Trailer Number, or Mobile Cell Phone Number from which the data was received |
String (128) |
uid |
Unique id |
String (256) |
New ShipmentMilestone Object
ShipmentMilestone is a new object to capture the shipment tracking updates regarding the shipment stop and other milestones.
Property Name |
Description |
Data Type |
---|---|---|
shipmentId |
Foreign Key referring to Shipment object ID |
String (256) |
shipmentType |
Type of the shipment (e.g. Sales, Supply) |
String (20) |
stopId |
Refers to the stop id provided in the request while creating order |
String (256) |
milestone |
This is the event message received from the tracking service provider (e.g. Arrived, Departed, etc.) |
String (256) |
estimatedTime |
Estimated time of the milestone in UTC |
DateTime |
estimatedTimeLocal |
Estimated time of the milestone in local time |
DateTime |
distanceToStop |
Distance to the stop provided by the tracking service provider |
Integer |
distanceToStopUnit |
Unit of the distance |
String (10) |
lastUpdatedTimeUTC |
Time in ISO8601 and in UTC |
DateTime |
lastUpdatedTimeLocal |
The date and time that this event occurred in the local time zone |
DateTime |
unLocode |
Refers to the physical location of the port for ocean tracking |
String (15) |
stopType |
The type of stop that is expected to occur next: Pickup or Dropoff |
String (20) |
statusCode |
A numeric code that represents the current status of the order |
String (20) |
updatedBy |
Method event was captured. Values include: Customer (via API or Control Tower), Carrier (via integration), Driver (via mobile app), MacroPoint (via geofence) |
String (128) |
uid |
Unique id |
String (256) |
New ServiceSLA Object
ServiceSLA is a new object used to capture the service level agreement details.
Property Name |
Description |
Data Type |
---|---|---|
uid |
Unique id |
String (256) |
serviceId |
Service Id: referring to the tracking service uid for which the information belongs |
String (256) |
type |
Type of the SLA |
String (256) |
termName |
Name of the term (Key) |
String (256) |
termValue |
Value of the term (value) |
String (256) |
termValueUOM |
Unit of measure for the term |
String (256) |
serviceObject |
Name of the object to which serviceId belongs |
String (256) |
API Changes
The API endpoints for the SupplyShipment, SalesShipment, and Location objects have been updated to support the new attributes listed above.
Also, the Supply Chain Framework now includes the following new API endpoints:
For the ShipmentStop object:
-
GET/PATCH/PUT/DELETE: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/shipmentstops/{shipmentStopId}
-
GET/POST: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/shipmentstops
For the TrackingService object:
-
GET/PATCH/PUT/DELETE: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/trackingservices/{trackingServiceId}
-
GET/POST: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/trackingservices
For the ShipmentTracking object:
-
GET/PATCH/PUT/DELETE: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/shipmenttrackings/{shipmentTrackingId}
-
GET/POST: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/shipmenttrackings
For the ShipmentMilestone object:
-
GET/PATCH/PUT/DELETE: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/shipmentmilestones/{shipmentMilestoneId}
-
GET/POST: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/shipmentmilestones
For the ServiceSLA object:
-
GET/PATCH/PUT/DELETE: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/serviceslas/{serviceSLAId}
-
GET/POST: HTTPS://{SERVER}/api/{NAMESPACE}/scdata/v1/sserviceslas