تظهر لدينا رسالة تحذير حرجة (Critical Error) بالنص التالي:
There are inconsistent transfer costs, please contact customer support - THIS IS URGENT
ما سبب ظهور هذه الرسالة؟ وما الخطوات اللازمة لحلها؟
تظهر لدينا رسالة تحذير حرجة (Critical Error) بالنص التالي:
There are inconsistent transfer costs, please contact customer support - THIS IS URGENT
ما سبب ظهور هذه الرسالة؟ وما الخطوات اللازمة لحلها؟
تظهر هذه الرسالة عندما يكتشف النظام عدم تطابق في تكلفة التحويلات المخزنية بين المخازن.
عند تحويل صنف من مخزن إلى آخر، يُفترض أن تكون تكلفة الصنف الخارجة من المخزن المصدر مساوية للتكلفة الداخلة إلى المخزن المستلم (مع إضافة أي تكاليف إضافية على التحويل إن وُجدت). عندما يجد النظام فرقًا بين التكلفة الخارجة والتكلفة الداخلة يزيد عن جنيه واحد لأحد التحويلات، فإنه يرفع هذه الرسالة الحرجة لأن ذلك يعني أن أرصدة التكلفة أصبحت غير متسقة وتحتاج إلى إعادة معالجة.
ملاحظة مهمة: هذه المشكلة تخص طريقة تسعير المتوسط (Average) فقط، ولا تظهر مع طريقة الوارد أولًا صادر أولًا (FIFO).
السبب الأكثر شيوعًا هو التحويلات على المكشوف (Overdraft Transfers):
التحويل على المكشوف هو أن يتم صرف الصنف من المخزن المصدر قبل توفّر رصيده فعليًا (يصبح الرصيد سالبًا وقت التحويل). في هذه الحالة لا تكون التكلفة معلومة بشكل صحيح وقت التحويل، فتنشأ فروقات بين التكلفة الخارجة والداخلة، وينتج عنها عدم اتساق في التكاليف.
النظام يمنع التحويلات على المكشوف بشكل افتراضي، ولكن بعض العملاء يطلبون تفعيل خيار السماح بها لأن طبيعة العمل قد تستلزم ذلك أحيانًا. لا نوصي بالسماح بالتحويلات على المكشوف إطلاقًا، لأنها المصدر الرئيسي لهذا النوع من المشاكل. إذا كان الخيار مفعّلًا لديك، فيُفضّل مراجعة الحاجة إليه وإيقافه متى أمكن.
قبل تحديد تاريخ البدء، يُنصح بتشغيل الاستعلام التالي لعرض المستندات المتأثرة وتواريخها ومقدار الفرق في التكلفة، حتى تختار تاريخ البدء المناسب بناءً على أقدم مستند به مشكلة فعلية:
select i.originType, i.originCode, i.originId, i.valueDate, abs(i.totalCost-i.additionalCost-o.totalCost)
from CostInTransLine i
inner join CostOutTransLine o on i.originLineId = o.originLineId
where i.originType in ('StockTransfer','IssueStockTransfer','ReceiptStockTransfer')
and abs(i.totalCost-i.additionalCost-o.totalCost) >= 1
and i.valueDate >= '20250201'
order by i.strSequence
يعرض الاستعلام لكل تحويل غير متطابق: نوع المستند وكوده وتاريخه ومقدار الفرق. راجع النتائج وحدّد أقدم تاريخ (valueDate) تريد البدء منه، ثم استخدمه في الخطوة التالية.
الحل يتم عن طريق إعادة معالجة تكلفة التحويلات غير المتطابقة اعتبارًا من تاريخ محدد. النظام يوفّر أداة جاهزة لهذا الغرض، تقوم بحصر التحويلات المتأثرة ثم إعادة احتساب تسلسل تكلفتها تلقائيًا.
يتم تشغيل الأداة من خلال فتح الرابط التالي في المتصفح (مع استبدال yyyyMMdd بالتاريخ المطلوب البدء منه):
http://<server>/erp/utils?util=com.namasoft.modules.supplychain.domain.utils.FastReprocessInvalidTransfersFromDate-yyyyMMdd
مثال: لإعادة المعالجة اعتبارًا من 1 فبراير 2025:
http://<server>/erp/utils?util=com.namasoft.modules.supplychain.domain.utils.FastReprocessInvalidTransfersFromDate-20250201
ماذا تفعل الأداة؟
إرشادات عند التشغيل: