SkippedShipment

Bir çözümdeki gerçekleştirilmemiş gönderimlerin ayrıntılarını belirtir. Önemsiz durumlarda ve/veya atlamanın nedenini belirleyebiliyorsak nedeni burada bildiririz.

JSON gösterimi
{
  "index": integer,
  "label": string,
  "reasons": [
    {
      object (Reason)
    }
  ]
}
Alanlar
index

integer

Dizin, kaynak ShipmentModel'teki gönderinin dizinine karşılık gelir.

label

string

Shipment içinde belirtilmişse ilgili Shipment.label kopyası.

reasons[]

object (Reason)

Gönderimin neden atlandığını açıklayan nedenlerin listesi. Reason numaralı yoruma bakın. Bir gönderimin neden atlandığını anlayamazsak neden ayarlanmaz.

Neden

Gönderimin neden atlandığını açıklayabilmemiz durumunda nedenler burada listelenir. Neden tüm araçlar için aynı değilse reason öğesinde birden fazla öğe bulunur. Atlanan gönderimlerde, exampleVehicleIndex hariç tüm alanların aynı olduğu kopya nedenler olamaz. Örnek:

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
}

Atlanan gönderim tüm araçlarla uyumlu değildir. Nedenler tüm araçlar için farklı olabilir ancak en az bir aracın "Elma" kapasitesi aşılmış olur (1. araç dahil), en az bir aracın "Armut" kapasitesi aşılmış olur (3. araç dahil) ve en az bir aracın mesafe sınırı aşılmış olur (1. araç dahil).

JSON gösterimi
{
  "code": enum (Code),
  "exampleExceededCapacityType": string,
  "exampleVehicleIndex": integer
}
Alanlar
code

enum (Code)

Kodun yorumlarına bakın.

exampleExceededCapacityType

string

Neden kodu DEMAND_EXCEEDS_VEHICLE_CAPACITY ise aşılmış bir kapasite türünü belirtir.

exampleVehicleIndex

integer

Neden, gönderim aracıyla ilgili bir uyumsuzlukla ilgiliyse bu alanda ilgili bir aracın dizini sağlanır.

Kod

Neden türünü tanımlayan kod. Buradaki sıra anlamsız. Özellikle, her ikisi de geçerliyse belirli bir nedenin çözümde diğerinden önce görünüp görünmeyeceğine dair hiçbir gösterge vermez.

Sıralamalar
CODE_UNSPECIFIED Bu yöntem hiçbir zaman kullanılmamalıdır.
NO_VEHICLE Modelde, tüm gönderimlerin uygulanamaz hale gelmesine neden olan bir araç yok.
DEMAND_EXCEEDS_VEHICLE_CAPACITY Gönderinin talebi, bir aracın bazı kapasite türleri (bunlardan biri exampleExceededCapacityType) için kapasitesini aşıyor.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT

Bu gönderimi gerçekleştirmek için gereken minimum mesafe (yani aracın startLocation noktasından gönderimin teslim alınma ve/veya teslimat konumlarına ve aracın bitiş konumuna olan mesafe) aracın routeDistanceLimit değerini aşıyor.

Bu hesaplama için jeodezik mesafeleri kullandığımızı unutmayın.

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT

Seyahat süresi, bekleme süresi ve servis süresi dahil olmak üzere bu gönderimi gerçekleştirmek için gereken minimum süre, aracın routeDurationLimit değerini aşıyor.

Not: Seyahat süresi, en iyi durum senaryosuna göre hesaplanır. Yani jeodezik mesafe x 36 m/sn (yaklaşık 130 km/sa) olarak hesaplanır.

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TRAVEL_DURATION_LIMIT Yukarıdakiyle aynıdır ancak yalnızca minimum seyahat süresini ve aracın travelDurationLimit değerini karşılaştırırız.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TIME_WINDOWS Araç, en erken başlangıç zamanında başlarsa en iyi senaryoda (zaman hesaplaması için CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT bölümüne bakın) bu gönderimi gerçekleştiremez: Toplam süre, aracın en geç bitiş zamanından sonra bitmesine neden olur.
VEHICLE_NOT_ALLOWED Gönderinin allowedVehicleIndices alanı boş değil ve bu araç bu alana ait değil.