FWStop

The table is used to represent a specific leg of an order that is associated with a specific schedule. The stop table is used to link a schedule table with an activity table. It is used to break the ”r;many-to-many” relationship between schedule and activity.

It is associated with an Activity and Schedule records. Activities with the same OrderKey must also be associated with the same schedule; therefore, the associated activity stops will all need to be created as a group.

For example: two activities with the same order and scheduler keys must be treated to the same order and need to be treated as a unit of work. They must be move, copied, created, and deleted as a unit.

Attribute Name

Type

Field Size

Description

Required

StopID

int

4

Unique internal DB Identifier of the Stop record.

Required

RouteID

int

4

Unique internal DB Identifier of the Route record. Must exist on the FWRoute table.

It is important that the same ScheduleID and ScheduleKey on the specified route are the same as the ScheduleID and SccheduleKey on this stop.

 

ScheduleID

nvarchar

50

Unique internal DB Identifier of the Schedule record. Must exist on the FWSchedule table.

It must be updated whenever the stop is not assigned to any route. When assigned, it must be the corresponding ScheduleKey value. When this attribute is empty, it is assigned to a specific route. The route ScheduleID can be used.

Required

ScheduleKey

nvarchar

50

Business key that identifies the Schedule this Stop refers to. Must exist on the FWSchedule table.

It is important that the ScheduleKey is always the same as the ScheduleKey of the associated route when assigned to a route and the corresponding ScheduleID key when unassigned. See creation notes above for more information.

(types pickup and drop-off)

Required

ActivityID

int

4

Unique Identifier of the Activity record. Must exist on the FWActivity table.

 

OrderID

int

4

Unique Identifier of the Order record. Must exist on the FWOrder table.

 

OrderKey

nvarchar

50

It cannot be modified. Stops associated with activities with the same OrderKey:

·     must all be assigned to the same Schedule

·     must all be moved if one is moved

·     must all be copied if one is copied

·     must all be deleted if one is deleted

 

LocationID

int

4

Unique Identifier of the Location record. Must exist on the FWLocation table.

 

LocationKey

nvarchar

50

Business key to identify the activity this Stop refers to. Must exist on the FWLocation table.

 

LocationType

nvarchar

50

The type of location, e.g., Customer, Depot, etc.

 

ModifiedBy

int

4

See ModifiedBy.

 

ModifyDate

datetime

8

See ModifyDate.

 

CreatedBy

int

4

See CreatedBy.

 

CreatedDate

datetime

8

See CreatedDate.

 

Type

tinyint

1

This field is used to identify different order types that may require different processing.

For example: we can have pickup, drop-off, breaks, and rest records created.

Valid Values:

• 0 = Initial Station Stop

• 1 = Final Station Stop

• 2 = Pickup Stop

• 3 = Delivery Stop

• 5 = Dynamic Recharge

• 8 = Redispatch Stop (Dynamic)

• 9 = Static Recharge

• 10 = Redispatch Stop (Static)

• 35 = Locationless Stop

·     66 = Pickup Complex (Used for Double Ended Jobs or Multi-Task Jobs)

·     67 = Delivery Complex (Used for Double Ended Jobs or Multi-Task jobs)

Required

State

tinyint

1

Valid Values: (default = active when created - Inactive when copied)

·     1 = ACTIVE - An active Stop cannot be deleted unless it is the only stop associated with that Activity. A special function will need to be created so that active stops can be made temporary or cancelled. By ”r;special,” we mean that the transition is done in one transaction so as not to break the rule that there must always be one, and only one, active stop at any given time.

·     2 = INACTIVE &endash; An inactive stop is reserved for a previously active stop that is no longer active but persisted for reporting or historical reasons. As with the active stop, only one inactive stop can exist for any given schedule.

·     2 = TEMPORARY &endash; A temporary stop is used to perform route testing scenarios used to perform ”r;what-if” functionality. A temporary stop can only be made active if no other stop for that activity is already active. Multiple temporary stops can exist, but only one for a given schedule.

·     3 = CANCELLED &endash; Currently not supported - A cancelled stop can only be made active if no other stop for that activity is already active. More than one cancelled stop can exist within the same schedule. Cancelled stop should be used minimally. A stop should be deleted if it is possible to delete. Meaning that if it has not shipped, do not cancel the stop but simply delete it. The cancel feature should be reserved for situations where the goods are on the road and the customer would like to reschedule or change the order without issuing a new order.

 

Status

tinyint

1

Indicates the message status.

• 1 &endash; Pending

• 2 &endash; Arrived

• 3 &endash; Completed

• 4 &endash; Delayed

• 5 &endash; En-route

• 6 &endash; Exception

• 7 &endash; Hooked

• 8 &endash; In-service

• 9 &endash; Missed

• 10 &endash; No Freight

• 11 &endash; Refused

• 12 &endash; Returned

• 13 &endash; Skipped

• 14 &endash; Spotted

• 15 &endash; Dispatched

• 16 &endash; Home

• 17 &endash; End Route

• 18 &endash; Begun

• 19 &endash; Departed

• 20 &endash; Enroute Recharge

• 99 &endash; Info

Required

OnBoardMeasure1-9

float

8

Sum of OnBoard Capacity for all Activities.

 

AvailableDate

datetime

8

Earliest date an item (or, resource carrying it) can leave the initial depot. If this is not supplied, then the Schedule date is used with AvailableTime. If there are multiple PackageItems for a Job, the latest value for the PackageItems and Job is used for the Job.

 

AvailableTime

datetime

8

Earliest time of the day an item (or, resource carrying it) can leave the initial depot. If there are multiple PackageItems for a Job, the latest value for the PackageItems and Job is used for the Job.

 

GeoStopNumber

smallint

2

This attribute represents a unique location where duplicate numbers are possible if more then one stop is at the same location. Meaning, different stops can have the same GeoStopNumber if they are at the same location. The number will range from one to the total number of stops on a given route. It is also sequenced based on unique locations. When it is unassigned, or not associated with a route, this value is 0.

Required when on a route

StopNumber

smallint

2

This attribute represents the stop number in the sequence on the route. The number will range from one to the total number of stops on a given route. All stops are accounted for. Every time a route is sequenced, this number is changed to reflect the new sequence. When it is unassigned or not associated with a route, this value is 0.

Required when on a route

PhysicalStopNumber

smallint

2

This attribute is very similar to the StopNumber, which represents the stop number in sequence on the route, except it will not include any stops that have violations. The number will range from one to the total number of stops, but can be less if some stops are in violations. This value cannot be greater than the StopNumber value. Every time a route is sequenced, this number changes to reflect the new sequence. When it is unassigned or not associated with a route, this value is 0.

Required when on a route

CustomerStopNumber

smallint

2

This attribute represents a unique customer where duplicate numbers are possible if more then one stop is to service the same location for the same customer. The number will range from one to the total number of stops on a given route. It is also sequenced based on unique customer. When it is unassigned or not associated with a route, this value is 0.

 

ArrivedDate

datetime

8

Projected arrival date and time.

Must be empty if Previous stop DepartedDate is empty. Must be equal to or greater than Previous stop DepartedDate.

 

BegunDate

datetime

8

Projected date and time begun.

Must be empty if ArrivedDate is empty. Must be equal to or greater than ArrivedDate.

 

CompletedDate

datetime

8

Date and time when job or task was completed.

Must be empty if BegunDate is empty. Must be equal to or greater than BegunDate

 

DepartedDate

datetime

8

The actual date and time that the vehicle departed the depot.

Must be empty if CompletedDate is empty. Must be equal to or greater than CompletedDate

 

ActualMeasure1-9

float

8

Actual reading reported for Measure 1&ldots;9

 

ProjectedViolation

int

4

Used to identify stop violations which will need to be translated before they are displayed.

 

ProjectedProfit

float

8

This is the system calculated profit for the stop.

 

ProjectedArrivalDate

datetime

8

Must be empty if not assigned to a route. Required when assigned to a route.

 

ProjectedBegunDate

datetime

8

Must be empty if ProjectedArrivedDate is empty. Must be equal to or greater than ProjectedArrivedDate

 

ProjectedCompletedDate

datetime

8

Must be empty if ProjectedBegunDate is empty. Must be equal to or greater than ProjectedBegunDate.

Calculation: Add the pre-service duration and the service duration of the Stop and Route to the ProjectedArrivedDate. 

Note―  This is a derived value and may not be available in the future.

 

ProjectedDepartDate

datetime

8

Must be empty if ProjectedCompletedDate is empty. Must be equal to or greater than ProjectedCompletedDate.

Calculation: Add the pre-service the service and the post-service duration of the Stop and Route to the ProjectedArrivedDate. 

Note―  This is a derived value and may not be available in the future.

 

ProjectedElapsedTime

int

4

Projected time in seconds from start of route to completion of this stop.

Calculation: Difference between initial stop ProjectedArrivedDate to the current stop ProjectedCompletedDate.

Note―  This is a derived value and may not be available in the future.

 

ProjectedDeltaElapsedTime

int

4

Projected time in seconds between stops. Calculation: Difference between previous stop ProjectedCompletedDate to the current stop ProjectedCompletedDate.

Note―  This is a derived value and may not be available in the future.

 

ProjectedTimeDriven

int

4

Time in seconds from the beginning of the route to this stop.

Calculation: Total of all the ProjectedDeltaTimeDriven of all the stops between the initial stop and the current stop (including the current stop).

Note―  This is a derived value and may not be available in the future.

 

ProjectedDeltaTimeDriven

float

8

Time in seconds spent driving between this and the previous stop. The projected (current or updated) drive time in minutes, as opposed to the original planned drive time.

Calculation: Difference between current stop ArrivedDate to the previous stop DepartedDate.

Note―  This is a derived value and may not be available in the future.

 

ProjectedDistance

float

8

Distance driven in meters from the beginning of the route to this stop. Must be equal to or greater than ProjectedDeltaDistance.

Calculation: Total of all the ProjectedDeltaDistance of all the stops between the initial stop and the current stop (including the current stop).

Note―  This is a derived value and may not be available in the future.

 

ProjectedDeltaDistance

float

8

Must be equal to or less than ProjectedDistance.

 

ProjectedDeltaPenalty

float

8

Incremental cost between successive stops of a route.

 

ProjectedBreaks

smallint

2

Number of breaks taken between the prior and current stops. Cannot be empty if BreakTime is not empty.

 

ProjectedBreakTime

int

4

Break time in seconds taken between the prior and current stops. Cannot be empty if NumberOfBreaks is not empty.

Calculation: Number of Breaks on this stop multiplied by the BreakDuration of the associated route.

Note―  This is a derived value and may not be available in the future.

 

ProjectedRests

int

4

Number of rests taken between the prior and current stops. Cannot be empty if RestTime is not empty.

 

ProjectedRestTime

int

4

Rest time in seconds taken between the prior and current stops. Cannot be empty if NumberOf Rests is not empty.

Calculation: Number of rests on this stop multiplied by the RestDuration of the associated route.

Note―  This is a derived value and may not be available in the future.

 

ProjectedWaitTime

int

4

Time in seconds waiting for the time window to open.

Calculation: Difference between current stop ArrivedDate to the current stop WindowOpen.

Note―  This is a derived value and may not be available in the future.

 

ProjectedWorkTime

int

4

Time in seconds to do the work.

Calculation: Difference between current stop BegunDate to the current stop CompletedDate.

Note―  This is a derived value and may not be available in the future.

 

ProjectedSlackTime

int

4

Slack time is the amount of time the beginning of the service on a job can be delayed without introducing violations or changing the net profit of the route.

 

ProjectedOffset

int

4

The number of minutes the location of the Stop is offset from UTC (based on the location's TimeZone).

 

Projected3rdPartyDistance

float

8

Total driving distance calculated by a 3rd party application from the starting depot to a current stop along a Rmpi-generated route. FW 7.1 and 8.1 support PCMiler for this purpose.

 

PlannedArrivedDate

datetime

8

Keeps the original value of the ProjectedArrivedDate. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedBegunDate

datetime

8

Keeps the original value of the ProjectedBegunDate. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedCompletedDate

datetime

8

Keeps the original value of the ProjectedCompletedDate. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedDepartedDate

datetime

8

Keeps the original value of the ProjectedDepartedDate. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedStopNumber

int

4

Keeps the original value of the StopNumber. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedDistance

int

4

Keeps the original value of the ProjectedDistance. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedTimeDriven

int

4

Keeps the original value of the ProjectedTimeDriven. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedElapsedTime

int

4

Keeps the original value of the ProjectedElapsedTime. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

PlannedWorkTime

int

4

Keeps the original value of the ProjectedWorkTime. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged.

 

ActualDistance

int

4

Stores the Actual reported Distance

 

ActualElapsedTime

int

4

Stores the Actual Elapsed time based on time stamps

 

ActualServiceDuration

int

4

Stores the Actual Service Duration based on time stamps

 

ActualTravelTime

int

4

Stores the actual travel time based on time stamps

 

DeltaDistance

int

4

This is the delta distance based on the following calculation, (Actual Distance &endash; Planned Distance).

 

DeltaTravelTime

int

4

This is the delta time traveled based on the following calculation, (ActualTravelTime &endash; PlannedTravelTime).

 

DeltaServiceDuration

int

4

This is the delta service duration based on the following calculation, (ActualServiceDuration &endash; ServiceDuration).

 

DeltaElapsedTime

int

4

This is the delta elapsed time based on the following calculation, (ActualElapsedTime &endash; PlannedElapsedTime).

 

PerfElapsedTime

float

8

This is the performance elapsed time based on the following calculation, ((PlannedElapsedTime/ActualElapsedTime) * 100).

 

PerfServiceDuration

float

8

This is the performance service duration based on the following calculation, ((PlannedServiceDuration/ActualServiceDuration) * 100).

 

PerfTravelTime

float

8

This is the performance travel time based on the following calculation, ((PlannedTimeDriven/ActualTimeDriven) * 100).

 

PerfDistance

float

8

This is the performance distance based on the following calculation, ((PlannedDistance/ActualDistance) * 100).

 

MasterRoute

int

4

Indicates if this is a Master Route. Valid values are:

·        0 &endash; Normal Route

·        1 &endash; Master Route

Required

MasterRoutePosition

int

 

Route position in the master route

 

UnassignedWirelessInd

bit

1

Indicate that it is unassigned by wireless message

 

ReportedLatitude

float

 

Contains the report latitude of the stop.

 

ReportedLongitude

float

 

Contains the reported longitude of the stop.

 

ProjectedWorkUnits

float

 

Projected work units

 

Delayed

bit

1

Flag to indicate when a delay has been reported

 

StartDate

datetime

8

Start date for the delay

 

EndDate

datetime

8

End date for the delay

 

LastRteHistMsgID

int

4

Last route history recode ID

 

LastRteHistMstIDWActual

int

4

Last route history record ID with actual measures or time

 

ArrivedDateUTC

datetime

8

Actual Arrived Date (Coordinated Universal Time)

 

BegunDateUTC

datetime

8

Date and time when job or task was started. (Coordinated Universal Time)

 

CompletedDateUTC

datetime

8

Date and time when job or task was completed. (Coordinated Universal Time)

 

DepartedDateUTC

datetime

8

Date and time when job or task was departed. (Coordinated Universal Time)

 

PlannedArrivedDateUTC

datetime

8

Keeps the original value of the ProjectedArrivedDate. Once the route enters into an execution state (first GPS or Status msg is received) this field will remain unchanged. (Coordinated Universal Time)

 

PlannedBegunDateUTC

datetime

8

The planned begun date for the stop. (Coordinated Universal Time)

 

PlannedCompleteDateUTC

datetime

8

The planned completed date for the stop. (Coordinated Universal Time)

 

PlannedDepartedDateUTC

datetime

8

The planned departed date for the stop. (Coordinated Universal Time)

 

projectedarrivedDateUTC

datetime

8

The projected arrived date for the stop. (Coordinated Universal Time)

 

projectedBegunDateUTC

datetime

8

The projected begun date for the stop. (Coordinated Universal Time)

 

ProjectedCompleteDateUTC

datetime

8

The projected completed date for the stop. (Coordinated Universal Time)

 

ProjectedDepartedDateUTC

datetime

8

The projected departed date for the stop. (Coordinated Universal Time)

 

StartDateUTC

datetime

8

Start date/time of the route (Coordinated Universal Time)

 

EndDateUTC

datetime

8

End date/time of the route

 

ResidualMeasure1

 

 

 

 

Published

int

 

This field indicates if a Stop has been published either caused by Publishing a Route or the stop.

Possible Values:

Null or 0: Unpublished

1: Published

2: Changed After Published

 

startupAllocCost

float

 

Reserved for future development

 

DistanceWeightAllocCost

float

 

Reserved for future development

 

IdleTime

float

 

Idle time at the stop level is calculated using GPS Status messages received between a stop’s Arrive and Complete or Departed status. The GPS messages used are all those that belong to the same chain where the Ignition=true and Speed=0. Several chains may exist within the window between Arrive and Complete or Departed status.

 

GPSArrival

datetime

 

Displays the GPS arrival time value of a stop. The GPS Arrival field will be marked in red if the value is greater than ’x’ minutes different than the reported arrival.

 

GPSDepart

datetime

 

Displays the GPS departure time value of a stop. The GPS Depart field will be marked in red if the value is greater than ’x’ minutes different than the reported departure.

 

GPSServiceTime

datetime

 

Displays the GPS service time value of a stop. The GPS Service Time field will be marked in red if the value is over a configured threshold.

 

SelectedWindowMeasure1&ldots;9

float

 

Measure delivered based on the selected time window.

 

PlannedGeoStopNumber

 

 

When assigning or unassigning stops, the PlannedGeoStopNumber value will be equal to the GeoStopNumber. When a statused stop is added in the middle of a route, the PlannedGeoStopNumber value will not change, but the GeoStopNumber value will change.

 

AVLStatus

int

4

Field reserved for AVL generated status codes. The status codes are:

·        1 &endash; Pending

·        2 &endash; Arrived

·        3 &endash; Completed

·        4 &endash; Delayed

·        5 &endash; En-route

·        6 &endash; Exception

·        7 &endash; Hooked

·        8 &endash; In-service

·        9 &endash; Missed

·        10 &endash; No Freight

·        11 &endash; Refused

·        12 &endash; Returned

·        13 &endash; Skipped

·        14 &endash; Spotted

·        15 &endash; Dispatched

·        16 &endash; Home

·        17 &endash; End Trip

·        18 &endash; Departed

·        19 &endash; Dropped

·        20 &endash; Assigned

·        21 - Rescheduled