أرغب في الحصول على مثال لجملة استعلام SQL تُستخدم داخل تخطيط الموارد بالتصنيع (MRP) للاستعلام عن الكميات المتاحة من صنف معين على مجموعة محددة من المخازن.
Originally posted at https://answers.namasoft.com/question/147/.
أرغب في الحصول على مثال لجملة استعلام SQL تُستخدم داخل تخطيط الموارد بالتصنيع (MRP) للاستعلام عن الكميات المتاحة من صنف معين على مجموعة محددة من المخازن.
Originally posted at https://answers.namasoft.com/question/147/.
المثال التالي يوضح كيفية الاستعلام عن الكميات المتاحة لصنف معين خلال تخطيط التصنيع، مع تقييد النتيجة بمجموعة محددة من المخازن وبتاريخ معين:
select case
when sum(q.inBasePValue - q.outBaseSValue) < 0 then 0
else sum(q.inBasePValue - q.outBaseSValue)
end
from QtyTransLine q
left join Warehouse w on w.id = q.warehouse_id
where q.valueDate <= {valueDate}
and q.item_id = {$currentLine.invItem.id}
and q.legalEntity_id = {legalEntity.id}
and w.code in ('001','002','...')
ملاحظات على المتغيرات المستخدمة:
{valueDate} — التاريخ الذي يُحسب عنده الرصيد.{$currentLine.invItem.id} — معرّف الصنف من السطر الحالي في وثيقة تخطيط التصنيع.{legalEntity.id} — معرّف الكيان القانوني (الشركة).w.code in ('001','002','...') — استبدل هذه القائمة بأكواد المخازن التي ترغب في تجميع رصيدها.التعبير case when sum(...) < 0 then 0 else sum(...) end يضمن عدم إرجاع كميات سالبة كرصيد متاح، حيث يُعامَل أي عجز كصفر.
Originally posted at https://answers.namasoft.com/question/147/.