الشراء بالصندوق والبيع بالقطعة: كيف تحدد وحدات الكمية في تطبيق عملك؟
إذا كان فريقك يشتري المنتج بالصندوق ويستهلكه أو يبيعه بالقطعة، فلا تكفي خانة تحمل اسم «الكمية». حدد وحدة يُسجّل بها مخزون كل منتج، ووحدات الشراء والبيع المسموح بها، وطريقة التحويل بينها. ينبغي أن تظهر الكمية مع وحدتها حتى يعرف الموظف ما الذي يطلبه أو يستلمه فعلاً.
هذا دليل لتخطيط تطبيق صغير للمخزون أو الطلبات أو مواد العمل، وليس دعوة إلى بناء نظام مخصص إذا كانت أداتك الحالية تنفذ المطلوب. ابدأ بطلب عرض الحالات التالية في النظام الموجود قبل إضافة مشروع جديد.
تتبع منتجاً من المورد إلى العميل
راجع مساراً فعلياً من عملك، مع استخدام بيانات منتجات وهمية في العرض التجريبي. بأي وحدة يعرض المورد بضاعته؟ ماذا يصل إلى المستودع؟ ماذا يعد الموظفون؟ وبأي وحدة يطلب العميل؟ قد تصف هذه الكميات البضاعة نفسها بطرق مختلفة.
تذكر وثائق وحدات القياس في Odoo شراء عبوة كبيرة ثم بيع محتوياتها منفردة بوصفه أحد أسباب التحويل بين الوحدات. وتوضح أن وحدة المخزون تحدد طريقة قياسه وتُستخدم أيضاً في النقل الداخلي، كما تصف التحويل من وحدة الشراء إلى وحدة المخزون. هذه وظائف موثقة في Odoo، وليست وعداً بأن أي شاشة مخزون تنفذها تلقائياً.
اكتب الوحدة عند كل خطوة في وصف المشروع. عبارة «نستلم بالصندوق ونسجل المخزون بالقطعة ونبيع بالقطعة» أوضح من «نحتاج دعماً للكميات». اطلب إظهار أثر الاستلام على المخزون قبل تأكيد العملية.
معنى الصندوق يعتمد على المنتج
في مثال افتراضي لمتجر مستلزمات، يحتوي صندوق المشابك على اثنتي عشرة قطعة، بينما يحتوي صندوق منتج آخر على عدد مختلف. اسم «صندوق» وحده لا يحدد معامل تحويل يصلح لكل المنتجات.
اربط تعريف العبوة بالمنتج المعني أو باتفاق التوريد المناسب. وإذا كانت هناك أحجام متعددة، فاجعلها واضحة ومتميزة في نموذج الطلب. لا ينبغي أن يعتمد النظام على تذكّر الموظف للصندوق الذي يقصده كل مورد.
وفرّق بين محتوى ثابت وكمية تحتاج إلى قياس. إذا كان الوزن الفعلي للصندوق يتغير، فإن معرفة عدد القطع لا تثبت وزنه. قرر هل يجب عند الاستلام إدخال كمية مقاسة إلى جانب عدد الصناديق. لا تجعل التطبيق يفترض علاقة بين القطع والوزن ما لم تكن هناك علاقة محددة لذلك المنتج.
السعر لأي وحدة؟
يجب أن تكون وحدة الكمية وأساس السعر مفهومين معاً. هل المبلغ المعروض سعر صندوق أم قطعة أم طول معين من مادة؟ اعرض أساس السعر بجانب المبلغ واحتفظ به في تأكيد الطلب.
اتفق على التعامل مع عرض المورد عندما يستخدم وحدة مختلفة عن شاشة المخزون. لا تطلب من الموظف تخمين المقصود من كبر المبلغ أو صغره. تنسيق العملة والفواصل العشرية مسألة عرض منفصلة، ولا يحدد عدد القطع داخل الصندوق.
اطلب من المطور بيان موضع التحويل وأين تبقى الكمية الأصلية التي أدخلها الموظف متاحة. فإذا أظهر سجل الاستلام الكمية المحوّلة فقط، فقد يصعب مطابقته مع مستند المورد المكتوب بالصناديق.
هل تسمح بكسور الوحدة؟
حدد لكل وحدة ما إذا كانت تقبل أجزاء، وكيف يتصرف التطبيق عندما ينتج عن التحويل مقدار غير مسموح به. قد تقبل بيع جزء من طول كابل، لكن لا تقبل جزءاً من قطعة غيار غير قابلة للتجزئة. هذه قاعدة تخص المنتج والعمل، وليست قراراً تتخذه خانة أرقام عامة.
اختر بين رفض المقدار غير الصحيح، أو طلب وحدة أخرى، أو تطبيق قاعدة تقريب متفق عليها صراحة. التقريب الصامت ليس خياراً مناسباً عندما يغيّر ما سيُطلب أو يُسلّم. وافصل بين دقة العرض والكمية التي تُستخدم في حركة المخزون.
تغيير حجم العبوة لا يغيّر معنى التسليمات القديمة
إذا غيّر المورد محتوى العبوة، فحدد موعد بدء العمل بالتعريف الجديد. من المتطلبات المقترحة الاحتفاظ بالوحدة ومعامل التحويل المستخدمين في العملية المؤكدة، بدلاً من إظهار تسليم قديم وكأنه احتوى على حجم العبوة الحالي.
اسأل أيضاً عن طلب شراء ما زال مفتوحاً وقد أُنشئ قبل التغيير. قد يحتاج إلى مراجعة صريحة بدلاً من تعديل تلقائي. وينبغي ربط المرتجع بالعملية الأصلية ووحداتها حتى يستطيع الموظف شرح ما يجري عكسه. هذه توصيات تناقشها مع المطور، وليست ادعاءات عن طريقة Odoo في حفظ البيانات التاريخية.
اختبر مسار الكمية كاملاً
استخدم نسخة اختبار معزولة واتفق على النتائج المطلوبة قبل العرض:
- استلم عبوة معروفة واعرض حركة المخزون الناتجة بوحدة التخزين المختارة.
- اطلب المنتج نفسه بحجم عبوة آخر مسموح به من دون التباس بين الحجمين.
- ارفض كسراً لا يسمح به العمل، أو عالجه وفق القاعدة المتفق عليها.
- أظهر أساس السعر في الطلب والتأكيد وملف التصدير المعني.
- غيّر تعريف العبوة وافحص المعاملة المتفق عليها للعمليات القديمة والمفتوحة.
- أعد جزءاً من كمية مستلمة واشرح المتبقي بالوحدات المعنية.
سجّل النتائج في معايير قبول التطبيق، مع أسماء الوحدات لا أرقام مجردة. وإذا كان المسار يحتاج فعلاً إلى أداة مخصصة، فضمّنه في مناقشة نطاق تطوير التطبيق. النتيجة المفيدة هي حركة بضاعة يمكن تفسيرها، لا مجرد قائمة أسماء وحدات.
المصدر وحدود الدليل
وثائق Odoo 19، Units of measure: https://www.odoo.com/documentation/19.0/applications/inventory_and_mrp/inventory/product_management/configure/uom.html
يدعم المصدر أمثلة Odoo المتعلقة بوحدات المخزون والشراء والتحويل بينها. أما حفظ تعريفات العبوات القديمة وعرض أساس السعر وقواعد الأجزاء وحالات الاختبار، فهي متطلبات عملية مقترحة لتطبيقك. لا يحدد هذا الدليل قواعد محاسبية أو ضريبية أو متطلبات قانونية لوضع بيانات المنتجات.