SkippedShipment

Çözümdeki başarılı olmayan gönderimlerin ayrıntılarını belirtir. Önemsiz durumlar için ve/veya atlama nedenini belirleyebiliyorsak nedenini 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'te belirtilmişse ilgili Shipment.label öğesinin kopyası.

reasons[]

object (Reason)

Gönderimin neden atlandığını açıklayan nedenlerin listesi. Reason sayfasının üstündeki yoruma bakın. Bir gönderinin neden atlandığını anlayamazsak nedenler belirlenmez.

Neden

Gönderimin neden atlandığını açıklayabilirsek nedenler burada listelenir. Neden tüm araçlar için aynı değilse reason öğesinde birden fazla öğe bulunur. Atlanan bir gönderinin yinelenen nedenleri olamaz (exampleVehicleIndex dışında tüm alanların aynı olduğu). Ö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)

Kod'daki açıklamalara bakın.

exampleExceededCapacityType

string

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

exampleVehicleIndex

integer

Neden sevkiyat-araç uyumsuzluğuyla ilgiliyse bu alan ilgili bir aracın dizinini sağlar.

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 sevkiyatları uygulanamaz hale getiren bir araç bulunmuyor.
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 hesaplamada jeodezik mesafeleri kullandığımıza dikkat edin.

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ı ancak yalnızca minimum seyahat süresi ile aracın travelDurationLimit değerini karşılaştırıyoruz.
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önderimin allowedVehicleIndices alanı boş değil ve bu araç ona ait değil.