جدول ITM1 في SAP Business One (أسعار الأصناف (لكل قائمة أسعار))

ITM1 هو جدول SAP Business One الذي يخزن أسعار الأصناف: صف واحد لكل صنف وقائمة أسعار، مع السعر وعملته. اربطه بـ OITM عبر ItemCode وبـ OPLN عبر PriceList = ListNum للحصول على اسم الصنف واسم قائمة الأسعار.

الحقول الرئيسية في ITM1

الحقلما يحتويه
ItemCodeالصنف. يُربط بـ OITM.ItemCode.
PriceListرقم قائمة الأسعار. يُربط بـ OPLN.ListNum. و ItemCode + PriceList هو المفتاح الأساسي.
Priceسعر الصنف في قائمة الأسعار هذه.
Currencyعملة سعر القائمة. يُربط بـ OCRN.
Ovrwrittenإدخال سعر يدوي: Y أو N.
BasePLNumرقم قائمة الأسعار الأساسية. يُربط بـ OPLN.ListNum.
Factorالمعامل المطبّق على قائمة الأسعار الأساسية.
AddPrice1 / Currency1السعر الإضافي (1) وعملته.
AddPrice2 / Currency2السعر الإضافي (2) وعملته.
UomEntryقيد وحدة القياس. يُربط بـ OUOM.
PriceTypeI = سعر وحدة قياس المخزون، P = سعر وحدة التسعير، M = كلاهما I و P، O = سعر وحدة قياس أخرى.

كيف يرتبط ITM1 بالجداول الأخرى

يقع ITM1 بين OITM (الصنف) و OPLN (قائمة الأسعار): يشير ItemCode إلى الصنف و PriceList إلى OPLN.ListNum. قائمة الأسعار نفسها (الاسم، والقائمة الأساسية، والمعامل، والتقريب) موجودة في OPLN؛ أما سعر كل صنف فموجود في ITM1 فقط. وتُحفظ النسخ الأقدم من صفوف ITM1 في AIT1، الذي يصفه SDK بأنه Item - Prices - History؛ ويضيف مفتاحه LogInstanc إلى ItemCode + PriceList.

عمليات الربط الشائعة

  • ITM1 T0 INNER JOIN OPLN T1 ON T0.PriceList = T1.ListNum (اسم قائمة الأسعار)
  • ITM1 T0 INNER JOIN OITM T2 ON T0.ItemCode = T2.ItemCode (البيانات الرئيسية للصنف)
  • ITM1 T0 LEFT JOIN AIT1 T3 ON T0.ItemCode = T3.ItemCode AND T0.PriceList = T3.PriceList (سجل الأسعار)

متى تستخدم جدول ITM1

استخدم ITM1 لتصدير قوائم الأسعار إلى المتجر الإلكتروني أو البوابة، والأصناف بلا سعر في قائمة، ومقارنة الأسعار بين القوائم، والمراجعة قبل تحديث الأسعار. صفِّ قائمة أسعار واحدة في كل مرة إلا إذا كنت تحتاج فعلًا كل القوائم جنبًا إلى جنب.

مثال على استعلام: أسعار الأصناف مع اسم قائمة الأسعار والعملة

SQL Server

SELECT T2.ItemCode, T2.ItemName, T1.ListName, T0.Currency, T0.Price
FROM ITM1 T0
INNER JOIN OPLN T1 ON T0.PriceList = T1.ListNum
INNER JOIN OITM T2 ON T0.ItemCode = T2.ItemCode
WHERE T2.SellItem = 'Y'
ORDER BY T2.ItemCode, T1.ListNum

SAP HANA (أسماء الأعمدة بين علامتي اقتباس مزدوجتين)

SELECT T2."ItemCode", T2."ItemName", T1."ListName", T0."Currency", T0."Price"
FROM ITM1 T0
INNER JOIN OPLN T1 ON T0."PriceList" = T1."ListNum"
INNER JOIN OITM T2 ON T0."ItemCode" = T2."ItemCode"
WHERE T2."SellItem" = 'Y'
ORDER BY T2."ItemCode", T1."ListNum"

الصق أيًّا من النسختين في الأدوات ← الاستعلامات ← مولّد الاستعلامات (Tools → Queries → Query Generator). تحتاج اللهجة الأخرى لاستعلامك الخاص؟ استخدم محوّل SQL إلى HANA.

خطأ شائع: جمع أسعار بعملات مختلفة

لكل صف في ITM1 عملته الخاصة في Currency، ولكل من AddPrice1 و AddPrice2 عملته أيضًا. التقرير الذي يجمع Price أو يحسب متوسطه عبر الأصناف أو القوائم دون التحقق من Currency يخلط المبالغ. جمّع أو صفِّ حسب Currency، وصفِّ قائمة أسعار واحدة عند مقارنة الأصناف. انظر أصناف بلا سعر في قائمة أسعار.

استعلامات جاهزة تستخدم ITM1

أسئلة حول جدول ITM1

أين تُخزَّن أسعار الأصناف في SAP Business One؟

في ITM1، صف لكل صنف وقائمة أسعار (ItemCode + PriceList)، مع Price و Currency. أما OPLN فيحتوي على تعريفات قوائم الأسعار فقط، لا أسعار الأصناف.

كيف أربط ITM1 باسم قائمة الأسعار؟

اربط ITM1.PriceList مع OPLN.ListNum واقرأ OPLN.ListName.

أين سجل أسعار الصنف؟

يوثّق SAP B1 SDK الجدول AIT1 باسم Item - Prices - History، بأعمدة الأسعار نفسها الموجودة في ITM1 مع إضافة LogInstanc إلى المفتاح.

جداول ذات صلة

OPLN (قوائم الأسعار) · OITM (الأصناف (البيانات الرئيسية للصنف)) · ابحث في كل جداول SAP Business One

المصادر: توثيق SAP Business One و SDK (مرجع جداول قاعدة البيانات في DI API)، بوابة SAP Help.

جاهز للبدء؟

أخبرنا بما تحتاجه. ستحصل على إجابة تقنية واضحة ونطاق عمل محدد وسعر ثابت، عادةً خلال 24 ساعة.