الدروس · الدرس 5 من 5
الأوراق، والثغرات
أي مستندات الشحن يطبعها التطبيق، وأي الحقول لها قارئ، وأين يضطرّ الورق إلى مغادرة النظام.
الدرس 5 من 5 · 18 د
لماذا يوجد المستند
الثوب العابر حدوداً يسافر ومعه ورق. بعضه يقول لمخزن ماذا يفعل. وبعضه يقول لموظّف جمارك ما في الصندوق. وبعضه يقول لمصرف أن يفرج عن مال.
وهذه وظائف مختلفة، والنظام الذي ينتج واحدة منها لا ينتج الأخريات. وهذا الدرس يقابل ما يطبعه التطبيق فعلاً بما تحتاجه الشحنة فعلاً، وهو في معظمه درس عن الفجوة. وقراءته خطأً مكلفة، لأن الورق الذي لا يملكه أحد يُكتشف في أسوأ لحظة.
وفي تشينتشا نيتووركس (Chincha Knitworks) هذا عمل إلسا باريديس (Elsa Paredes). فهي تحجز الباخرة، وتلاحق وكيل الشحن، وتجمع الملف الذاهب إلى المصرف. ومعظم ما تحتاجه ليس في التطبيق، والمفيد أن تعرف أي الأجزاء فيه بالضبط.
الأساس. كل مستند وحقل ورسالة أدناه مقروء من مصدر التطبيق. وحيث يقول الدرس إن لا شيء يقرأ حقلاً، فذلك من تتبّع كل إشارة إليه في الشيفرة.
ماذا يطبع التطبيق
في التطبيق كلّه أحد عشر مستنداً قابلاً للطباعة. وكل واحد منها يحمل ترويسة المصنع نفسه من هويّة الشركة التي تضبطها مرّة واحدة.
| المستند | ينتمي إلى |
|---|---|
| عرض السعر | البيع |
| تأكيد الطلبية، موسوماً بروفورما | البيع |
| ورقة التكلفة المعيارية | التكلفة |
| الملف الفني | المنتج |
| طلب الشراء | الشراء |
| أمر الشراء | الشراء |
| إشعار استلام البضاعة | الاستلام |
| قسيمة صرف الخامات | المخزن |
| بطاقة العمل | الإنتاج |
| ورقة الفحص | الجودة |
| تعليمة التعبئة | الشحن |
واحد من الأحد عشر مستند شحن، وهو تعليمة لا سجلّ. والتطبيق لا يطبع شيئاً يصف شحنة بعد حدوثها.
ورقة تعليمة التعبئة
تصل إليها من لوحة التعبئة أو من /orders/ORD/packing/print. وهي جيّدة في عملها حقّاً.
خمسة أقسام مرقّمة: الطيّ والتكييس، والتوضيب والكراتين، وخطة الكراتين من تفصيل الطلبية، وعلامات الشحن مع موضع طباعتها، وأي تعليمات خاصة. وتحذير الاختناق، إن أُشِّر عليه، يُطبع سطراً مستقلّاً بأحرف كبيرة. وثلاثة سطور توقيع تُغلق الورقة: لمنسّق التجارة الذي أعدّها، وللمخزن الذي عبّأ، ولمراقب الجودة الذي فحص.
وإن لم يكن للطلبية تعليمة، قالت الورقة ذلك ودلّتك إلى أين تذهب بدل طباعة صناديق فارغة. وإن تعذّر حساب خطة الكراتين، طُبعت الثغرات بالألفاظ نفسها التي تستعملها الشاشة.
ثم، في أسفل قسم علامات الشحن، جملة واحدة تكشف اللعبة كلّها:
ترقيم الكراتين "n من N" يجب أن يطابق قائمة التعبئة.
ولا توجد قائمة تعبئة. ولا شيء في هذا التطبيق ينتجها. فالورقة تأمر مخزناً بمطابقة ترقيم كراتينه على مستند لا يصنعه النظام.
والادّعاء نفسه يظهر في موضع ثانٍ، وهذا شاشة إعدادات. فتحت هويّة الشركة يقول التطبيق إن ترويسته "تُطبع على كل مستند يواجه المشتري (تأكيد الطلبية / البروفورما، وقائمة التعبئة، وورقة التكلفة، وإشعار الاستلام…)". وثلاثة من تلك الأربعة موجودة. والأسوأ أن ترويسة ورقة التعبئة نفسها تطبع اسم الشركة ولا شيء غيره. لا السجلّ التجاري ولا تفاصيل المصرف التي تسمّيها شاشة الإعدادات نفسها لازمةً لفاتورة تصدير صحيحة.
العلامات الافتراضية
وثمّة أمر أخير يُفحص قبل الطباعة، وسيفاجئ مصنعاً خارج بلد واحد.
خانة العلامة الرئيسية تُملأ سلفاً من الطلبية، وهي لا تطمس أبداً ما كتبته أنت. والملء السابق خمسة سطور: اسم المشتري بأحرف كبيرة، وأمر شراء المشتري أو رقم الطلبية، والموديل، ثم سطر وجهة فارغ يقرأ DEST: ____________، ثم سطر أخير ثابت. والسطر الثابت هو MADE IN EGYPT.
وهو ثابت في الشيفرة. وتشينتشا نيتووركس في بيرو، وإن لم يحرّر أحد تلك الخانة وُسمت الكراتين مصنوعةً في مصر. وعلامة بلد المنشأ إقرار جمركيّ، فهذا ليس افتراضاً تجميلياً.
وسطر الوجهة الفارغ هو النصف الثاني من الغرابة نفسها. فالطلبية تحمل أصلاً بلد وجهة، في تبويب نظرة عامة تحت الأرقام المرجعية. والملء السابق لا يستعمله، ويترك سطراً من الشُّرَط السفلية بدلاً منه.
والعلامة الجانبية تُملأ سلفاً قالباً من الفراغات: رقم الكرتونة من المجموع، واللون والمقاس، والكمية، والوزن الصافي والقائم، والأبعاد. وتلك الفراغات أمينة، فهي وقائع لكل كرتونة على حدة. لكن انتبه إلى الوزنين. فالتطبيق ليس فيه حقل وزن صافٍ ولا حقل وزن قائم في أي موضع، فذانك الفراغان لا يُملآن إلا باليد، ولن يعرف شيء في التطبيق أبداً ماذا كُتب فيهما.
أي الأرقام المرجعية لها قارئ
يحمل تبويب نظرة عامة قسماً اسمه الأرقام المرجعية، مقدَّماً بعبارة "مراجع الأطراف الأخرى على هذه الشحنة — كلّها اختيارية؛ اتركها فارغة حين لا يوجد رقم." وفيه سبعة حقول، وهي ليست سواءً. فأربعة منها يقرؤها شيء في التطبيق. وثلاثة تخزين.
| الحقل | ما يقرأه |
|---|---|
| رقم أمر شراء المشتري | تأكيد الطلبية، والعلامة الرئيسية الافتراضية، وتحذير جاهزية حين يكون فارغاً |
| رقم الاعتماد المستندي | تأكيد الطلبية وحده |
| الشحنات الجزئية (الاعتماد) | بوّابة شحن الدفعة |
| بلد الوجهة | فحص رسوم الكويز (QIZ) |
| مرجع الوكيل / الحجز | لا شيء |
| مرجع وكيل الشحن | لا شيء |
| رقم بوليصة الشحن | لا شيء |
وليست تلك حجّةً لحذف الثلاثة الأخيرة. فالرقم المرجعيّ الذي يجده الإنسان في أربع ثوانٍ يستحقّ التسجيل، والقسم يقول صريحاً إن هذه مراجع الأطراف الأخرى. بل هي حجّة على أن لا تتوقّع منها فعلاً. فلا استثناء ينطلق لغياب رقم بوليصة قبل باخرة بثلاثة أيام، ولا شيء يقابل مرجع حجز بدفعة.
وبلد الوجهة يستحقّ تحذيراً واحداً. فهو يغذّي قراراً حقيقياً، وهو فحص الرسوم للطلبيات المتّجهة إلى الولايات المتحدة، والمطابقة قائمة قصيرة. فالفحص يعرف US وUSA وUNITED STATES، بأي حالة أحرف، مع تشذيب الفراغات. وحقل نصّ حرّ يغذّي قاعدة رسوم عبر ثلاث هجاءات مقبولة موضعٌ يجب فيه الضبط.
التواريخ التي تنطلق فعلاً
الدفع هو الجزء الوحيد من الورق الذي يراقبه التطبيق، وهو يراقب التواريخ لا المال. وقسم الدفع في أعلى تبويب الشحن يقول ذلك: "التطبيق يتتبّع التواريخ ويرفع ما استحقّ أو تأخّر في «عملي»؛ أمّا المال نفسه فيتحرّك في نظام تخطيط الموارد لديك."
وفيه سبعة حقول تواريخ. وثلاثة منها ترفع استثناءات.
- تاريخ استحقاق العربون، غير مدفوع، يرفع بطاقة كهرمانية خلال سبعة أيام وحمراء متى مضى.
- وتاريخ استحقاق الرصيد يسلك المسلك نفسه.
- وتاريخ انتهاء الاعتماد يرفع كهرمانية خلال أربعة عشر يوماً وحمراء متى انقضى.
ولقاعدة الاعتماد دقّة يوضّحها المصدر. فاستلام الاعتماد لا يُسكت مراقبة الانتهاء، لأن الانتهاء آخر موعد لتقديم المصنع مستنداته. فالساعة تجري على الطرف الحامل للاعتماد. فالتطبيق يسجّل تاريخ استلام الاعتماد، ويقرأه، ويمتنع عمداً عن استعماله في إسكات شيء. والشيء الوحيد الذي يغلق مراقبة الاعتماد هو تسجيل الرصيد مستلَماً.
والفراغ يعني الغياب في كل هذا. فالتاريخ الغائب لا يرفع شيئاً، والقسم يقول ذلك: مسح التاريخ يعيده غائباً، ولا يُعامل أبداً على أنه اليوم.
ماذا يُسكت الشحن وماذا لا يُسكت
سلوك أخير، لأنه يوقع الناس في الأسبوع التالي لمغادرة الحاوية.
تعليم الطلبية مشحونة يوقف استثناءاتها التشغيلية. وقاعدة غرفة قيادة الطلب صريحة: الطلبية المشحونة لا تنتج استثناءات. فانطلاقة مرور تاريخ الشحن، وأوامر الشراء المتأخّرة، وتحذيرات الخطر، تسكت كلّها دفعة واحدة.
واستثناءات الدفع والاعتماد ينتجها موضع آخر تماماً، وذلك المنتج لا يتخطّى إلا الطلبيات الملغاة. فالطلبية المشحونة تظلّ ترفع بطاقة انتهاء اعتمادها حتى يُسجَّل الرصيد مستلَماً. وذلك صحيح، وهو الوجه الصحيح للأمر. فالبضاعة رحلت. والمستندات لم تُقدَّم، والموعد الذي ما زال يكلّف مالاً حقيقياً هو الذي يبقى على اللوحة.
اختبر فهمكطلبية مشحونة واللوحة ما زالت تعرض بطاقة حمراء عليها. يقول زميل إن ذلك خلل حتماً. أهو كذلك؟أظهر الإجابة
شبه مؤكّد أنه ليس كذلك. فمنتجان مختلفان يبنيان التغذية، ولهما قاعدتان مختلفتان في الطلبية المشحونة. فاستثناءات غرفة قيادة الطلب لا تعيد شيئاً لطلبية حالها مشحونة، فلا تستطيع انطلاقة تاريخ شحن أو أمر شراء النجاة من الشحن. ومنتج الدفع والاعتماد لا يتخطّى إلا الملغاة، فالعربون والرصيد وانتهاء الاعتماد تظلّ تنطلق بعد مغادرة البضاعة. اقرأ البطاقة. إن كانت عن مال أو عن اعتماد مستندي، فالتطبيق يسلك كما صُمِّم ويخبرك بشيء ما زال صحيحاً. وسبيل إغلاقها تسجيل تاريخ الدفع لا إغلاق الطلبية، فالطلبية مغلقة أصلاً.
اختبر فهمكتريد إلسا أن ينبّهها التطبيق حين لا تصل بوليصة شحن قبل انتهاء اعتماد بيومين. ماذا يتطلّب ذلك، وماذا يقول الجواب عن الحقول المرجعية السبعة؟أظهر الإجابة
لا يمكن بناؤه ممّا هو موجود. فحقل البوليصة نصّ حرّ بلا تاريخ بجانبه، فلا يستطيع التطبيق تمييز بوليصة وصلت اليوم من أخرى سُجِّلت قبل شهر، ولا شيء يقرأ الحقل على أي حال. ونصف الاعتماد يعمل أصلاً، فتاريخ الانتهاء يقود مراقبة حقيقية عند أربعة عشر يوماً وعند الصفر. فالتنبيه يحتاج إذن أمرين جديدين: تاريخاً على البوليصة، وقاعدةً تصلها بساعة الاعتماد. والنقطة العامّة أن الحقل يصير نافعاً لنظام حين يقرأه شيء، والقراءة تحتاج أكثر من نصّ. فهي تحتاج عادةً تاريخاً أو حالاً أو قاعدةً تسمّي الحقل. وثلاثة من السبعة لا يقرؤها شيء، ورابعها، وهو رقم الاعتماد المستندي، يُطبع فقط ولا يرتبط بتاريخ ولا حال ولا قاعدة. ولذلك هي تسهيل حفظ لا أداة ضبط.
موجّه · مَن يصنع كل مستند في هذه الشحنة
مرّة لكل ليسترٍ، ومرّة أخرى أول شحنة إلى وجهة جهذهدة أو بموجب اعتماد مستنهذه جهذهد.
ساعدني في بناء قائمة مستندات شحنة واحدة، وقل لي عن كل مستند مَن ينتجه وأين سيسكن. سأعطيك: الليستري، وبلد الوجهة، وشرط التسليم، وهل الدفع باعتماد مستنهذه، وماذا يطبع نظامي. عدّد المستندات التي ترجَّح حاجة هذه الشحنة إلماذاا. ولكل واحد، أعطني أربعة أشياء: لماذا هو، ومَن ينتجه، وهل يستطيع نظامي أنتاجه، وأين ستُحفَظ النسخة الموقَّعة. وكن دقيقاً في الفرق بين مستند يوجّه مخزني ومستند يُرضي مصرفاً أو موظّف جمارك. ثم سمِّ الثغرات ثغرات. فإن كان نظامي يطبع تعليمة للتعبئة ولا يطبع سجلّاً لما عُبِّئ، فقل ذلك بهذه الألفاظ بدل وصف حلّ التفافي كأنه خاصّية. ثم أجرِ فحص الاتّساق، فهنا يضيع المال. عدّد كل رقم يظهر في أكثر من واحد من هذه المستندات: مجموع الكراتين، ومجموع القطع، والوزن الصافي والقائم، ومرجع الطلبية أو الاعتماد. ولكل واحد، قل لي أي مستند هو المصدر وأيّها ينسخ عنه، فيكون لتغيير في موضع قائمة معروفة من المواضع تتبعه. وقاعدتان. لا تقل لي ما المستندات المطلوبة عادة — بل اسألني ماذا يشترط هذا الليستري وهذه الوجهة فعلاً، وقل صراحةً حين لا تعرف. ولا تفترض أبداً أن نظاماً ينتج مستنداً لأن نظاماً من نوعه ينتجه عادة.
قد يخطئ الذكاء الاصطناعي — تحقّق من أي شيء ستتصرّف بناءً عليه.