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, ShipmentModel kaynağındaki gönderinin dizinine karşılık gelir.

label

string

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

reasons[]

object (Reason)

Gönderimin neden atlandığını açıklayan nedenlerin listesi. Reason üzerindeki yoruma bakın.

Neden

Gönderimin neden atlandığını açıklayabilirsek nedenler burada listelenir. Neden tüm araçlar için aynı değilse reason, 1'den fazla öğe içerir. 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önderi, tüm araçlarla uyumlu değil. Nedenler tüm araçlarda farklı olabilir ancak en az bir aracın "Elma" değeri kapasite aşılırsa (1. araç dahil), en az bir aracın "Armutlar" değeri kapasite aşılır (3. araç dahil) ve en az bir aracın mesafe sınırı aşılır (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ızdır. Özellikle, belirli bir nedenin (her ikisi de geçerliyse) çözümde bir diğer nedenden önce görünüp görünmeyeceğini belirtmez.

Sıralamalar
CODE_UNSPECIFIED Bu ifade hiçbir zaman kullanılmamalıdır. Bir gönderinin neden atlandığını anlayamazsak boş nedenler döndürürüz.
NO_VEHICLE Modelde, tüm sevkiyatları uygulanamaz hale getiren bir araç bulunmuyor.
DEMAND_EXCEEDS_VEHICLE_CAPACITY Kargo talebi, biri exampleExceededCapacityType olan bazı kapasite türleri için aracın kapasitesini aşıyor.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT

Bu sevkiyatı gerçekleştirmek için gereken minimum mesafe (ör. aracın startLocation konumundan gönderinin teslim alma ve/veya teslimat konumlarına) aracın bitiş konumuna kadar olan minimum 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 senaryo, yani jeodezik mesafe x 36 m/sn (yaklaşık 130 km/saat) şeklinde 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şlıyorsa en iyi durum senaryosunda (zaman hesaplaması için CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT) bu gönderimi gerçekleştiremez: Toplam süre, aracın en son bitiş zamanından sonra bitmesine neden olur.
VEHICLE_NOT_ALLOWED Gönderimin allowedVehicleIndices alanı boş değil ve bu araç ona ait değil.