طلبات المبيعات ومعاملات الاحتياطي


عند استلام الطلب، يتم حجز الأسهم وفقا للطلب. وظائف التشغيل العمليات المحجوزة

الوظيفة

التصنيف

جدول أو عمود

check_reserved_rows()

يقوم بتحرير أنواع حجز الخطوط اعتمادا على خيار الحجز على أساس المستند في الترتيب. تم إغلاق مرحلة الطلب في الخط ويتم تعيين جميع البنود باستثناء مرحلة التسليم الزائد على أنها محجوزة.

يتم تشغيل هذه الوظيفة حيث يتم عند تحديد اختيار "احتياطي المخزون" والدالة saveFrom().

ذا كانت الجلسة تحتوي على spect_type أثناء تسجيل الطلب وكانت تساوي 5 ولم يتم حذف المنتج ، فإنها تحفظ صفوف stock_row المحددة لمواصفات المخزون المراد حجزها في جدول STOCKS_ROW_RESERVED..

حقل RESERVE_TYPE في جدول ORDER_ROW


إضافة إلى الجدول STOCKS_ROW_RESERVED

add_reserve_row()

تحديث المعلومات المحجوزة ومراحل البند في الترتيب.

يقوم بإنشاء رابط فاتورة الشحن للطلب. إذا كان هناك طلب مسحوب من الفواتير إلى بوليصة الشحن ، فعند إلغاء بوليصة الشحن ، يتم أيضا حذف الاتصال بالطلب الذي تم إرساله إلى بوليصة الشحن وتحديث مراحل بند الطلب في وظيفة add_reserve_row.

  1. سند الإلغاء: إذا تم إلغاء بوليصة الشحن ، وكان هناك طلب مسحوب على بوليصة الشحن ؛ يتم كسر روابط أوامر بوليصة الشحن ويتم تحديث مراحل بند الطلب وأنواع الحجز.

  2. على الرغم من أنه مرسوم في بوليصة الشحن ، إذا لم يتم تحديده فهو محجوزًا في سطر الطلب ، فلن يتم تغيير النوع المحجوز ، ولن يتم تغيير المراحل المحجوزة للأوامر مع CHANGE_RESERVE_STATUS 0 ، أي في قائمة no_change_order_list. يحتفظ بند عدم الاستلام الذي يجعل حركة المخزون بالنوع المحجوز في الطلب

  3. في إضافة وتحديث المعاملات، إذا تم حجز سطر واحد أو حجزه جزئيا، يتم تحديد الحجز على أساس مستند. في معاملات الحذف والإلغاء، سيتم تحديث البنود المحجوزة جزئيا والمغلقة كما هي محجوزة أدناه، لذلك يجب اختيارها على أنها محجوزة على أساس المستند.

  4. وفقا للمبلغ الإجمالي المسحوب على بوليصة الشحن ، يتم تحديث مرحلة الطلب ، ويتم تحديث نوع الاحتياطي اعتمادا على المبلغ الذي يجعل حركة الأسهم. جدول(ORDER_ROW)

  5. إذا لم تكن هناك بوليصة شحن يتم سحب الطلب عليها ، إعادة شحن مراحل نقص التسليم والإغلاق والتسليم الزائد ، ويتم تحديث الخطوط المحجوزة المغلقة والمفقودة على أنها محجوزة.

  6. يتم تشكيل القيمة IS_PROCESSED في جدول الطلبات عن طريق التحقق من بوليصة الشحن والفاتورة المرتبطة بالطلب ، ويتم تعيينها إلى 1 إذا كان الحقل المحجوز صحيحا إذا كان paper_general_reserve_type صحيحا. وبعبارة أخرى، إذا تم حجز سطر واحد أو حجزه جزئيا بالإضافة إلى التحديث، يتم تحديده على أنه محجوز على أساس المستند ويتم دائما وضع علامة على هذا الحقل (RESERVED ="المخزون الاحتياطي").

ORDER_ROW_RESERVED

عند إصدار مذكرة التسليم;

إذا كان هناك أمر مسحوب على بوليصة الشحن ، فإنه يرسل القيمة is_order_process على أنها 1 إلى وظيفة add_reserve_row ، والأوامر التي لن تغير احتياطيات الصف التي يتم تحديث هذه المعاملات من أجلها ، على الرغم من أنها مرتبطة بالطلب والفاتورة. إذا تمت إضافة قيم المعرف إلى القائمة ، إرسال الطلب إلى بوليصة الشحن ، ويتم تحديث مراحل البند من الطلب. إذا تم استدعاؤه في صفحة تحديث أو حذف بوليصة الشحن ، حذف السجلات orders_ship لبوليصة الشحن هذه أول.

1. يجب ألا تكون بوليصة الشحن مدرجة في قائمة الطلبات المتقطعة

2. ألا يكون قد تم استدعائه في عملية الإلغاء أو الحذف

3-إذا تم استدعاؤه في عملية التحديث ، فلا يجب أن يكون في قائمة الطلبات التي لن تتغير

لأنه لا يتم حذف السجلات orders_ship لهذه الأوامر في التحديث. يتم أخذ كميات المنتج من الطلب ويتم حساب الأنواع والكميات المحجوزة وفقا للقيم التي تم إرجاعها من هذا الاستعلام. إذا تم استدعاؤه من بوليصة الشحن ، ملء الحقلين order_id order_wrk_row_id ship_id و period_id في جدول order_row_reserved. يتم الاحتفاظ برابط الطلب في بنود بوليصة الشحن في حقل wrk_row_relation_id.
Iإذا stock_id spect_id قائمة حالة المخزون وتم حجز المنتج عن طريق إرسال كميات ، فلن يتم استرداد القيم من order_row إذا لم يكن الاحتياطي هو عملية فك التشفير ، استرداده في جدول order_row_reserved. من هذا الجدول;

1. الحد الأقصى. يتم تحديد مبلغ الاحتياطي

2. يضاف المبلغ المراد إلغاؤه إلى المبلغ المراد حله أو حجزه. إذا كان المبلغ الاحتياطي أكبر من الحد الأقصى للمبلغ الاحتياطي ، فإنه يعطي تحذيرا "لقد تجاوزت الحد الأقصى للمبلغ المحجوز".

3.إذا كانت قيمة مبلغ الاحتياطي أكبر من الصفر ، فسيتم تعيين القيم لجدول order_row_reserved ، والذي يسترد القيم هنا ويحدّث حقول order_row reserve_type ، و reserve_order_id (معرّفًا) قيمة نوع_الاحتياطي في ذلك الجدول ، ويحدّث الحقل المحجوز في الأوامر الطاولة.

أوامر المبيعات
ومعاملات الاحتياطي
1- مفتوح ، 2- توريد ، 3- إقفال ، 4-  إنتاج جزئي ، 5- إنتاج ، 6- شحن ، 7- تسليم ناقص ، 8- تسليم زائد ، 9- ملغى ، 10- مغلق (يدوي)
1- محجوزة، 2- محجوزة جزئيا، 3- غير محجوزة، 4- محجوزة
تعتمد مرحلة الطلب (order_currency) على إجمالي الكمية التي تم شحنها.
يتم حساب reserve_type وفقا للكميات الموجودة في بوليصة الشحن التي تقوم بتحركات الأسهم. يتم تحديد reserve_type لبنود الطلب نتيجة لمقارنة قيمة مبلغ الطلب بقيمة المبلغ المحجوز.
إذا كان مبلغ الطلب مساويا لمبلغ مذكرة التسليم ---> مغلق
إذا كان ---> كبير التسليم المفقود
إذا كانت صغيرة ---> نقلها إلى مرحلة التسليم الزائد
إذا كانت قيمة مبلغ الطلب أقل من المبلغ المحجوز ---> المحجوز
---> الاحتياطي الجزئي إذا كان أكبر
إذا لم يكن هناك أي شيء ، أي 0 ، يتم تحديث ----> على أنه غير محجوز
إذا كانت مرحلة الطلب هي 3- ، 7- ، 8- وكانت قيمة مبلغ الطلب أكبر من مبلغ بوليصة الشحن ، نقل مرحلة الطلب إلى مرحلة الإرسال والتسليم
إذا كان النوع المحجوز الطلب غير محجوز وكانت مرحلة الطلب مغلقة (يدوية) وتم إلغاؤها، فلن يتم تغيير النوع المحجوز الطلب، يكون الطلب كما هو. حتى إذا تم رسمها على بوليصة الشحن ، إذا لم يتم تحديد الحجز في بند الطلب ، فلن يتم تغيير نوع الحجز.
. إذا لم يتم تحديد الحجز في بند الطلب ، فلن يتم تغيير نوع الحجز.

في حالة عدم وجود بوليصة شحن الطلب ، يتم إعادة شحن مراحل التسليم غير المكتمل والإغلاق والتسليم الزائد، ويتم تحديث البنود المحجوزة والمغلقة والمفقودة على أنها محجوزة.

?

?