جدول OSRN في SAP Business One (الأرقام التسلسلية (البيانات الرئيسية))
OSRN هو جدول SAP Business One الذي يخزن البيانات الرئيسية للأرقام التسلسلية: صف واحد لكل صنف ورقم تسلسلي، مع الرقم التسلسلي ورقم الشركة المصنّعة وتواريخ الضمان والانتهاء والحالة. أما مكان تخزين الوحدة فليس هنا: الكميات لكل مستودع في OSRQ، وتُربط عبر OSRQ.MdAbsEntry = OSRN.AbsEntry.
الحقول الرئيسية في OSRN
| الحقل | ما يحتويه |
|---|---|
AbsEntry | المفتاح الداخلي للرقم التسلسلي. يشير إليه OSRQ.MdAbsEntry. |
ItemCode | الصنف. يُربط بـ OITM.ItemCode. |
SysNumber | رقم النظام الداخلي لكل صنف. يحدد مع ItemCode الرقم التسلسلي. |
DistNumber | الرقم التسلسلي الذي يراه المستخدمون. |
MnfSerial | الرقم التسلسلي للشركة المصنّعة. |
LotNumber | رقم الدفعة (Lot). |
InDate | تاريخ الإدخال. |
GrntStart / GrntExp | تاريخا بداية ونهاية ضمان الشركة المصنّعة. |
ExpDate | تاريخ الانتهاء. |
Status | 0 = متاح، 1 = غير متاح، 2 = مخصص. |
Location | موقع بنص حر. |
CreateDate / UpdateDate | تاريخا الإنشاء والتحديث. |
كيف يرتبط OSRN بالجداول الأخرى
OSRN هو البيانات الرئيسية للأرقام التسلسلية، و OSRQ يحتوي على صف واحد لكل رقم تسلسلي ومستودع مع Quantity و CommitQty و CountQty. اربطهما عبر OSRQ.MdAbsEntry = OSRN.AbsEntry، أو عبر ItemCode و SysNumber معًا. لا توجد صفوف هنا إلا للأصناف المُدارة بالأرقام التسلسلية (OITM.ManSerNum = Y).
عمليات الربط الشائعة
OSRN T0 INNER JOIN OSRQ T1 ON T1.MdAbsEntry = T0.AbsEntry(الكمية لكل مستودع)OSRN T0 INNER JOIN OSRQ T1 ON T1.ItemCode = T0.ItemCode AND T1.SysNumber = T0.SysNumber(الربط نفسه، حسب الصنف ورقم النظام)OSRN T0 INNER JOIN OITM T2 ON T2.ItemCode = T0.ItemCode(البيانات الرئيسية للصنف)
متى تستخدم جدول OSRN
استخدم OSRN مع OSRQ لسرد الأرقام التسلسلية الموجودة في المخزون لكل مستودع، وللبحث عن رقم تسلسلي في مطالبة ضمان، ولتقرير الأرقام التسلسلية التي ينتهي ضمان الشركة المصنّعة لها قريبًا، وللتحقق من وجود رقم تسلسلي ممسوح قبل ترحيل التسليم.
مثال على استعلام: الأرقام التسلسلية في المخزون لكل مستودع مع تاريخ نهاية الضمان
SQL Server
SELECT T0.ItemCode, T2.ItemName, T0.DistNumber AS SerialNumber, T0.MnfSerial, T0.GrntExp, T1.WhsCode FROM OSRN T0 INNER JOIN OSRQ T1 ON T1.MdAbsEntry = T0.AbsEntry INNER JOIN OITM T2 ON T2.ItemCode = T0.ItemCode WHERE T1.Quantity > 0 ORDER BY T0.ItemCode, T0.DistNumber
SAP HANA (أسماء الأعمدة بين علامتي اقتباس مزدوجتين)
SELECT T0."ItemCode", T2."ItemName", T0."DistNumber" AS "SerialNumber", T0."MnfSerial", T0."GrntExp", T1."WhsCode" FROM OSRN T0 INNER JOIN OSRQ T1 ON T1."MdAbsEntry" = T0."AbsEntry" INNER JOIN OITM T2 ON T2."ItemCode" = T0."ItemCode" WHERE T1."Quantity" > 0 ORDER BY T0."ItemCode", T0."DistNumber"
الصق أيًّا من النسختين في الأدوات ← الاستعلامات ← مولّد الاستعلامات (Tools → Queries → Query Generator). تحتاج اللهجة الأخرى لاستعلامك الخاص؟ استخدم محوّل SQL إلى HANA.
خطأ شائع: OSRN وحده يسرد أرقامًا تسلسلية بيعت بالفعل
يبقى كل رقم تسلسلي استُلم في أي وقت في OSRN، بما في ذلك الوحدات التي سُلّمت منذ زمن. لمعرفة ما في المخزون، اربط OSRQ وصفِّ على Quantity > 0. والربط على ItemCode وحده، دون SysNumber أو MdAbsEntry، يضاعف الصفوف لأن للصنف الواحد أرقامًا تسلسلية كثيرة. انظر استعلام المخزون حسب المستودع.
استعلامات جاهزة تستخدم OSRN
- المخزون حسب المستودع: الكمية المتوفرة والمحجوزة والمطلوبة والمتاحة لكل صنف ومستودع.
أسئلة حول جدول OSRN
أين يُخزن الرقم التسلسلي في SAP Business One؟
في OSRN.DistNumber، صف واحد لكل صنف ورقم تسلسلي. والرقم التسلسلي للشركة المصنّعة في OSRN.MnfSerial.
كيف أعرف في أي مستودع يوجد رقم تسلسلي؟
اربط OSRQ عبر OSRQ.MdAbsEntry = OSRN.AbsEntry واقرأ OSRQ.WhsCode حيث OSRQ.Quantity > 0.
ماذا تعني قيم Status في OSRN؟
0 = متاح، 1 = غير متاح، 2 = مخصص.
جداول ذات صلة
OSRQ (كميات الأرقام التسلسلية (لكل مستودع)) · OITM (الأصناف (البيانات الرئيسية للصنف)) · OBTN (أرقام التشغيلات (البيانات الرئيسية)) · ابحث في كل جداول SAP Business One
المصادر: توثيق SAP Business One و SDK (مرجع جداول قاعدة البيانات في DI API)، بوابة SAP Help.
جاهز للبدء؟
أخبرنا بما تحتاجه. ستحصل على إجابة تقنية واضحة ونطاق عمل محدد وسعر ثابت، عادةً خلال 24 ساعة.
