SkippedShipment

किसी समाधान में, ऐसे शिपमेंट की जानकारी देता है जिनकी परफ़ॉर्मेंस अच्छी नहीं है. छोटे मामलों में और/या अगर हम स्किप करने की वजह का पता लगा पाते हैं, तो हम यहां उसकी वजह बताते हैं.

JSON के काेड में दिखाना
{
  "index": integer,
  "label": string,
  "reasons": [
    {
      object (Reason)
    }
  ]
}
फ़ील्ड
index

integer

इंडेक्स, सोर्स ShipmentModel में शिपमेंट के इंडेक्स से मेल खाता है.

label

string

अगर Shipment में बताया गया है, तो उससे जुड़े Shipment.label की कॉपी.

reasons[]

object (Reason)

शिपमेंट को छोड़ने की वजहों की सूची. Reason के ऊपर मौजूद टिप्पणी देखें. अगर हमें यह समझ नहीं आता कि शिपमेंट को क्यों छोड़ा गया था, तो वजहें सेट नहीं की जाएंगी.

कारण

अगर हम इस बात की जानकारी देंगे कि शिपमेंट को स्किप क्यों किया गया, तो इसकी वजहें यहां बताई जाएंगी. अगर सभी वाहनों के लिए वजह एक जैसी नहीं है, तो reason में एक से ज़्यादा एलिमेंट होंगे. जिस शिपमेंट को छोड़ा गया है उसके लिए, डुप्लीकेट वजहें नहीं हो सकतीं. इसका मतलब है कि exampleVehicleIndex के अलावा सभी फ़ील्ड एक जैसे होने चाहिए. उदाहरण:

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
}

छोड़ा गया शिपमेंट, सभी वाहनों के साथ काम नहीं करता. हर वाहन के लिए इसकी वजहें अलग-अलग हो सकती हैं. हालांकि, कम से कम एक वाहन की "सेब" की क्षमता (एक वाहन भी शामिल है) से ज़्यादा होगी. कम से कम एक वाहन की "नाशपाती" की क्षमता (वाहन 3 भी शामिल है) से ज़्यादा होगी. साथ ही, कम से कम एक वाहन के लिए दूरी की सीमा (वाहन 1 भी शामिल है) पार होगी.

JSON के काेड में दिखाना
{
  "code": enum (Code),
  "exampleExceededCapacityType": string,
  "exampleVehicleIndex": integer
}
फ़ील्ड
code

enum (Code)

कोड की टिप्पणियां देखें.

exampleExceededCapacityType

string

अगर वजह का कोड DEMAND_EXCEEDS_VEHICLE_CAPACITY है, तो इसका मतलब है कि आपने एक तरह की क्षमता से ज़्यादा दस्तावेज़ अपलोड किए हैं.

exampleVehicleIndex

integer

अगर वजह, शिपमेंट और वाहन के काम न करने से जुड़ी है, तो इस फ़ील्ड में उस वाहन का इंडेक्स दिया जाता है जो काम का है.

कोड

वजह बताने वाला कोड. यहां दिए गए क्रम का कोई मतलब नहीं है. खास तौर पर, इससे यह नहीं बताया जाता कि समाधान में, दी गई वजह किसी दूसरी वजह से पहले दिखेगी या नहीं, अगर दोनों लागू होते हैं.

Enums
CODE_UNSPECIFIED इसका इस्तेमाल कभी नहीं किया जाना चाहिए.
NO_VEHICLE मॉडल में कोई ऐसा वाहन नहीं है जिसकी वजह से सभी शिपमेंट मुश्किल से भरे जा सकें.
DEMAND_EXCEEDS_VEHICLE_CAPACITY वाहन की कुछ कपैसिटी के लिए, शिपमेंट की मांग, वाहन की क्षमता से ज़्यादा है. इनमें से एक मांग exampleExceededCapacityType है.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT

इस शिपमेंट के लिए ज़रूरी कम से कम दूरी, जैसे कि वाहन का startLocation से लेकर शिपमेंट और/या डिलीवरी की जगह तक और वाहन की आखिरी जगह तक की दूरी, वाहन के routeDistanceLimit से ज़्यादा है.

ध्यान दें कि इसके लिए हम जियोडेसिक दूरी का इस्तेमाल करते हैं.

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT

इस शिपमेंट के लिए ज़रूरी कम से कम समय, वाहन के routeDurationLimit से ज़्यादा का है. इसमें यात्रा में लगने वाला समय, इंतज़ार का समय, और सेवा में लगने वाला समय शामिल है.

ध्यान दें: यात्रा में लगने वाले समय का हिसाब, सबसे बेहतर स्थिति में लगाया जाता है. उदाहरण के लिए, जियोडेसिक दूरी x 36 मी॰/घं॰ (करीब 130 कि॰मी॰/घंटा).

CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TRAVEL_DURATION_LIMIT जैसा कि ऊपर बताया गया है, लेकिन हम सिर्फ़ यात्रा में लगने वाले कम से कम समय और वाहन के travelDurationLimit की ही तुलना करते हैं.
CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TIME_WINDOWS अगर वाहन सबसे पहले शुरू होने के समय पर शुरू होता है, तो वह सबसे अच्छी स्थिति में भी यह शिपमेंट नहीं कर सकता (समय का हिसाब लगाने के लिए CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT देखें): कुल समय के हिसाब से, वाहन के खत्म होने का समय, उसके खत्म होने के आखिरी समय के बाद होगा.
VEHICLE_NOT_ALLOWED शिपमेंट का allowedVehicleIndices फ़ील्ड खाली नहीं है और यह वाहन उससे जुड़ा नहीं है.