جدول CUFD في SAP Business One (الحقول المعرفة من المستخدم (التعريفات))
CUFD هو جدول SAP Business One الذي يصف كل حقل معرّف من المستخدم (UDF): صف واحد لكل جدول وحقل، مع اسم الحقل (AliasID) والوصف والنوع والحجم والقيمة الافتراضية وعلامة الإلزام والجدول المرتبط. والحقل نفسه عمود اسمه U_ متبوعًا بـ AliasID في الجدول المحدد في TableID؛ وقيمه الصالحة في UFD1.
الحقول الرئيسية في CUFD
| الحقل | ما يحتويه |
|---|---|
TableID | الجدول الذي ينتمي إليه الحقل، مثل OINV. |
FieldID | رقم الحقل داخل الجدول. يحدد مع TableID الحقل. |
AliasID | اسم الحقل (العنوان). عمود قاعدة البيانات هو U_ متبوعًا بهذا الاسم. |
Descr | وصف الحقل. |
TypeID | نوع الحقل. |
EditType | نوع التحرير (النوع الفرعي). |
SizeID / EditSize | الحجم وحجم التحرير. |
Dflt | القيمة الافتراضية. |
NotNull | Y = حقل إدخال إلزامي. |
IndexID | Y = إنشاء فهرس. |
RTable | الجدول المرتبط. يُربط بـ OUTB.TableName. |
RelUDO / RelSO | الكائن المعرّف من المستخدم المرتبط وكائن النظام المرتبط. |
كيف يرتبط CUFD بالجداول الأخرى
CUFD هو طبقة تعريف الحقول المعرفة من المستخدم. يحتوي UFD1 على القيم الصالحة للحقل، ويُربط عبر TableID و FieldID. ويشير RTable إلى جدول معرّف من المستخدم في OUTB عندما يكون الحقل مرتبطًا بأحدها. والقيم التي يكتبها المستخدمون ليست في CUFD: إنها في أعمدة U_ في جدول العمل نفسه.
عمليات الربط الشائعة
CUFD T0 LEFT JOIN UFD1 T1 ON T1.TableID = T0.TableID AND T1.FieldID = T0.FieldID(القيم الصالحة)CUFD T0 LEFT JOIN OUTB T2 ON T2.TableName = T0.RTable(الجدول المعرّف من المستخدم المرتبط)
متى تستخدم جدول CUFD
استخدم CUFD لتوثيق كل الحقول المعرفة من المستخدم في الشركة قبل الترقية أو الترحيل، ولإيجاد الحقول الإلزامية التي تعطّل الترحيل عبر DI API أو Service Layer، ولمقارنة الحقول المعرفة من المستخدم بين قاعدة بيانات تجريبية وقاعدة بيانات فعلية.
مثال على استعلام: كل الحقول المعرفة من المستخدم في رأس فاتورة المبيعات مع قيمها الصالحة
SQL Server
SELECT T0.TableID, T0.FieldID, 'U_' + T0.AliasID AS ColumnName, T0.Descr, T0.TypeID, T0.SizeID, T0.NotNull, T0.Dflt, T1.FldValue, T1.Descr AS ValueDescr FROM CUFD T0 LEFT JOIN UFD1 T1 ON T1.TableID = T0.TableID AND T1.FieldID = T0.FieldID WHERE T0.TableID = 'OINV' ORDER BY T0.FieldID, T1.IndexID
SAP HANA (أسماء الأعمدة بين علامتي اقتباس مزدوجتين)
SELECT T0."TableID", T0."FieldID", 'U_' || T0."AliasID" AS "ColumnName", T0."Descr", T0."TypeID", T0."SizeID", T0."NotNull", T0."Dflt", T1."FldValue", T1."Descr" AS "ValueDescr" FROM CUFD T0 LEFT JOIN UFD1 T1 ON T1."TableID" = T0."TableID" AND T1."FieldID" = T0."FieldID" WHERE T0."TableID" = 'OINV' ORDER BY T0."FieldID", T1."IndexID"
الصق أيًّا من النسختين في الأدوات ← الاستعلامات ← مولّد الاستعلامات (Tools → Queries → Query Generator). تحتاج اللهجة الأخرى لاستعلامك الخاص؟ استخدم محوّل SQL إلى HANA.
خطأ شائع: الاستعلام عن AliasID دون البادئة U_
يخزن CUFD.AliasID الاسم دون البادئة، لكن العمود في جدول العمل هو U_ متبوعًا بذلك الاسم. والاستعلام الذي يختار AliasID كما هو يفشل بخطأ عمود غير صالح. واربط أيضًا UFD1 عبر TableID و FieldID معًا؛ فـ FieldID وحده يتكرر في كل جدول. انظر جدول UFD1 (القيم الصالحة للحقول المعرفة من المستخدم).
أسئلة حول جدول CUFD
أين تُعرَّف الحقول المعرفة من المستخدم في SAP Business One؟
في CUFD، صف واحد لكل جدول (TableID) وحقل (FieldID). والقيم الصالحة في UFD1.
ما اسم عمود الحقل المعرّف من المستخدم؟
U_ متبوعًا بـ CUFD.AliasID، في الجدول المسمى في CUFD.TableID.
كيف أجد الحقول المعرفة من المستخدم الإلزامية؟
صفِّ على CUFD.NotNull = 'Y'.
جداول ذات صلة
UFD1 (الحقول المعرفة من المستخدم (القيم الصالحة)) · OUTB (الجداول المعرفة من المستخدم) · ابحث في كل جداول SAP Business One
المصادر: توثيق SAP Business One و SDK (مرجع جداول قاعدة البيانات في DI API)، بوابة SAP Help.
جاهز للبدء؟
أخبرنا بما تحتاجه. ستحصل على إجابة تقنية واضحة ونطاق عمل محدد وسعر ثابت، عادةً خلال 24 ساعة.
