SkippedShipment

Gibt Details zu nicht ausgeführten Sendungen in einer Lösung an. Bei einfachen Fällen und/oder wenn wir die Ursache für das Überspringen ermitteln können, geben wir den Grund hier an.

JSON-Darstellung
{
  "index": integer,
  "label": string,
  "reasons": [
    {
      object (Reason)
    }
  ]
}
Felder
index

integer

Der Index entspricht dem Index der Sendung in der Quelle ShipmentModel.

label

string

Kopie der entsprechenden Shipment.label, sofern in der Shipment angegeben.

reasons[]

object (Reason)

Eine Liste der Gründe, warum die Sendung übersprungen wurde. Siehe Kommentar oben Reason. Wenn wir nicht nachvollziehen können, warum eine Sendung übersprungen wurde, werden keine Gründe angegeben.

Grund

Wenn wir den Grund für das Überspringen der Sendung erklären können, wird er hier aufgeführt. Wenn der Grund nicht für alle Fahrzeuge gleich ist, hat „reason“ mehr als ein Element. Eine übersprungene Sendung darf keine doppelten Gründe haben, d.h. alle Felder mit Ausnahme von exampleVehicleIndex müssen identisch sein. Beispiel:

reasons {
  code: DEMAND_EXCEEDS_VEHICLE_CAPACITY
  exampleVehicleIndex: 1
  exampleExceededCapacityType: "Apples"
}
reasons {
  code: DEMAND_EXCEEDS_VEHICLE_CAPACITY
  exampleVehicleIndex: 3
  exampleExceededCapacityType: "Pears"
}
reasons {
  code: CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT
  exampleVehicleIndex: 1
}

Der übersprungene Versand ist mit allen Fahrzeugen nicht kompatibel. Die Gründe können für alle Fahrzeuge unterschiedlich sein, aber die Kapazität von mindestens einem Fahrzeug wird überschritten (einschließlich Fahrzeug 1), mindestens eines Fahrzeugs für „Birnen“ wird überschritten (einschließlich Fahrzeug 3) und mindestens eines Fahrzeugs wird überschritten (einschließlich Fahrzeug 1).

JSON-Darstellung
{
  "code": enum (Code),
  "exampleExceededCapacityType": string,
  "exampleVehicleIndex": integer
}
Felder
code

enum (Code)

Weitere Informationen finden Sie in den Kommentaren zum Code.

exampleExceededCapacityType

string

Wenn der Ursachencode DEMAND_EXCEEDS_VEHICLE_CAPACITY lautet, wird ein Kapazitätstyp dokumentiert, der überschritten wurde.

exampleVehicleIndex

integer

Wenn der Grund mit einer Inkompatibilität zwischen Sendung und Fahrzeug zusammenhängt, enthält dieses Feld den Index eines entsprechenden Fahrzeugs.

Code

Code, der den Grundtyp identifiziert. Die Reihenfolge hier ist bedeutungslos. Insbesondere gibt es keinen Hinweis darauf, ob ein bestimmter Grund in der Lösung vor einem anderen erscheint, wenn beide zutreffen.

Enums
CODE_UNSPECIFIED Dieser Wert sollte nicht verwendet werden.
NO_VEHICLE Im Modell ist kein Fahrzeug vorhanden, sodass alle Lieferungen nicht möglich sind.
DEMAND_EXCEEDS_VEHICLE_CAPACITY Die Anforderungen der Sendung übersteigen die Kapazität eines Fahrzeugs für einige Kapazitätstypen, darunter exampleExceededCapacityType.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT

Die für die Durchführung dieser Lieferung erforderliche Mindeststrecke, d. h. vom startLocation des Fahrzeugs zu den Abhol- und/oder Lieferorten der Sendung und zum Endstandort des Fahrzeugs, überschreitet die routeDistanceLimit des Fahrzeugs.

Beachten Sie, dass wir für diese Berechnung die geodätischen Entfernungen verwenden.

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT

Die für den Versand erforderliche Mindestzeit, einschließlich Reise-, Wartezeit und Servicezeit, überschreitet die routeDurationLimit des Fahrzeugs.

Hinweis: Die Reisezeit wird im Best-Case-Szenario berechnet, nämlich als geodätische Entfernung × 36 m/s (ungefähr 130 km/h).

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TRAVEL_DURATION_LIMIT Wie oben, aber wir vergleichen nur die minimale Reisezeit und die travelDurationLimit des Fahrzeugs.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TIME_WINDOWS Das Fahrzeug kann diese Lieferung im Bestfall nicht ausführen (siehe CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT für die Zeitberechnung), wenn es zum frühestmöglichen Startzeitpunkt startet: Die Gesamtzeit würde dazu führen, dass das Fahrzeug nach seiner spätesten Endzeit endet.
VEHICLE_NOT_ALLOWED Das Feld allowedVehicleIndices der Sendung ist nicht leer und dieses Fahrzeug gehört nicht dazu.