SkippedShipment

Specifica i dettagli delle spedizioni non eseguite in una soluzione. Per casi banali e/o se siamo in grado di identificare la causa dell'esclusione, segnaliamo il motivo qui.

Rappresentazione JSON
{
  "index": integer,
  "label": string,
  "reasons": [
    {
      object (Reason)
    }
  ]
}
Campi
index

integer

L'indice corrisponde all'indice della spedizione nell'origine ShipmentModel.

label

string

Copia del valore Shipment.label corrispondente, se specificato in Shipment.

reasons[]

object (Reason)

Un elenco di motivi che spiegano perché la spedizione è stata saltata. Vedi il commento sopra Reason.

Motivo

Se possiamo spiegare il motivo per cui la spedizione è stata saltata, i motivi saranno elencati qui. Se il motivo non è uguale per tutti i veicoli, reason includerà più di un elemento. Una spedizione saltata non può avere motivi duplicati, ovvero tutti i campi sono gli stessi ad eccezione di exampleVehicleIndex. Esempio:

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
}

La spedizione saltata non è compatibile con tutti i veicoli. I motivi possono essere diversi per tutti i veicoli, ma la capacità di "Mele" di almeno un veicolo verrebbe superata (incluso il veicolo 1), la capacità di "Pere" di almeno un veicolo (incluso il veicolo 3) e il limite di distanza di almeno un veicolo (incluso il veicolo 1).

Rappresentazione JSON
{
  "code": enum (Code),
  "exampleExceededCapacityType": string,
  "exampleVehicleIndex": integer
}
Campi
code

enum (Code)

Fai riferimento ai commenti di Code.

exampleExceededCapacityType

string

Se il codice motivo è DEMAND_EXCEEDS_VEHICLE_CAPACITY, documenta un tipo di capacità che è stato superato.

exampleVehicleIndex

integer

Se il motivo è correlato a un'incompatibilità tra spedizione e veicolo, questo campo fornisce l'indice di un veicolo pertinente.

Codice

Codice che identifica il tipo di motivo. L'ordine qui è privo di significato. In particolare, non offre alcuna indicazione se un determinato motivo apparirà prima di un altro nella soluzione, nel caso in cui siano entrambi applicabili.

Enum
CODE_UNSPECIFIED Questa opzione non deve mai essere utilizzata. Se non riusciamo a capire perché una spedizione è stata saltata, restituiamo semplicemente una serie di motivi vuoti.
NO_VEHICLE Il modello non contiene nessun veicolo, pertanto non è possibile effettuare tutte le spedizioni.
DEMAND_EXCEEDS_VEHICLE_CAPACITY La domanda della spedizione supera la capacità di un veicolo per alcuni tipi di capacità, uno dei quali è exampleExceededCapacityType.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT

La distanza minima necessaria per eseguire questa spedizione, ovvero dal startLocation del veicolo ai punti di ritiro e/o consegna della spedizione, e alla località di arrivo, supera i routeDistanceLimit del veicolo.

Tieni presente che per questo calcolo vengono utilizzate le distanze geodetiche.

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT

Il tempo minimo necessario per eseguire questa spedizione, inclusi il tempo di percorrenza, i tempi di attesa e i tempi di assistenza, supera le routeDurationLimit del veicolo.

Nota: il tempo di percorrenza è calcolato nello scenario migliore, ovvero come distanza geodetica x 36 m/s (circa 130 km/ora).

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TRAVEL_DURATION_LIMIT Come sopra, ma confrontiamo solo il tempo di percorrenza minimo e i travelDurationLimit del veicolo.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TIME_WINDOWS Il veicolo non può effettuare questa spedizione nello scenario migliore (vedi CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT per il calcolo del tempo) se inizia alla prima ora di inizio: il tempo totale fa terminare il veicolo dopo l'ora di fine più recente.
VEHICLE_NOT_ALLOWED Il campo allowedVehicleIndices della spedizione non è vuoto e questo veicolo non appartiene.