نمذجة المجال في SAP CAP

المُقدّمة

نموذج المجال في SAP CAP هو نموذج يصف الجوانب الثابتة والمتعلقة بالبيانات لمجال المشكلة من حيث نماذج العلاقة بين الكيانات. في هذه المقالة سوف ندرس نمذجة المجال في SAP CAP بالتفصيل.

نمذجة المجال

بكلمات بسيطة ، ينتج CDS في SAP CAP نموذج المجال بطريقة تحدد مشكلة العمل من حيث المفاتيح والحقول والشروح. تتم كتابة التعليمات البرمجية لإنشاء نموذج المجال في مخطط CDS (db / schema.cds). يمكن استخدام نماذج المجال هذه في تعريفات الخدمة أو نماذج الثبات أو قواعد البيانات أو حتى إعادة استخدامها ضمن نموذج مجال آخر.

مثال على نموذج:

Namespace empInfo؛ باستخدام {Currency، Managed} من "@ sap / cds / common" ؛ موظفو الكيان: مُدار {key ID: Integer؛ firstName: سلسلة مترجمة (111) ؛ lastName: localized String (1111) ؛ المدير: رابطة المديرين ؛ تاريخ الانضمام: عدد صحيح ؛ الراتب: عشري (9,2) ؛ العملة: العملة؛ }

 

في هذا المثال ، أنشأنا ملف schema.cds حيث أنشأنا كيانًا للموظفين يتضمن التفاصيل الأساسية للموظف

تم إعطاء هذا المخطط بأكمله مساحة اسم مثل empInfo

يستخدم هذا المخطط نوع بيانات قياسي مثل العملة. يساعدنا استخدام نوع البيانات القياسي مثل هذا في جلب كل القيمة المحددة مسبقًا المساعدة المتعلقة بها.

نستخدم CDS لإنشاء نموذج. في ذلك CDS ، نستخدم ملفات

  1. الكيانات لتمثيل مجموعة من الكائنات الفريدة ، على سبيل المثال:
    1. المعلومات الأساسية للموظف
    2. معلومات اتصال الموظف
    3. معلومات راتب الموظف
  2. الجمعيات لتحديد العلاقات
    1. ارتباط المدير بمدير كيان آخر والذي سيكون لديه قائمة المديرين

اصطلاح التسمية والتوصيات

  1. يجب أن يبدأ اسم الكيان بحرف كبير ويجب أن يكون قابلاً للقراءة وموضحًا بذاته - على سبيل المثال ، الموظفون
  2. ابدأ العناصر بحرف صغير - على سبيل المثال ، الاسم الأول
  3. يوصى باستخدام صيغة الجمع للكيانات - على سبيل المثال ، الموظفون
  4. يوصى باستخدام شكل فردي من الأنواع - على سبيل المثال ، العملة
  5. لا تكرر السياقات - على سبيل المثال ، Employees.name بدلاً من Employees.EmployeeName
  6. تفضل الأسماء المكونة من كلمة واحدة - على سبيل المثال ، الراتب بدلاً من مبلغ الراتب
  7. استخدام المعرف للمفاتيح الأساسية التقنية - على سبيل المثال ، المعرف لمعرف الموظف
  8. يمكنك استخدام Namespace لجعل الكيانات الخاصة بك فريدة. يشبه مفهوم العميل في SAP حيث يمكن أن يكون لديك مخططات مكررة (ملفات cds) مع Namespace فريد للتمييز بينها. مساحات الأسماء اختيارية ، استخدم مساحات الأسماء إذا كان من الممكن إعادة استخدام النماذج الخاصة بك في مشاريع أخرى. في نهاية اليوم ، تكون هذه مجرد بادئات ، يتم تطبيقها تلقائيًا على جميع الأسماء ذات الصلة في الملف. - علي سبيل المثال،

كمبيوتر محمول بمساحة الاسم ؛ كيان Dell {}

..… ما يعادل:

كمبيوتر محمول الكيان. Dell {}

  1. يمكنك استخدام السياقات لمقاطع مساحة الاسم المتداخلة. - علي سبيل المثال،

كمبيوتر محمول بمساحة الاسم ؛ كيان Dell {}           //> كمبيوتر محمول ديلسياق Apple {كيان MacBookPro {}       //> كمبيوتر محمول     كيان MacBookAir {}}

 

الكيانات

الكيانات مثل الجداول ذات المفاتيح الأساسية. يمكننا إجراء عملية CRUD باستخدام هذه الكيانات. اجعلها مسطحة قدر الإمكان. لا تطبيعه أكثر من اللازم. لا تستخدم الأنواع غير القابلة لإعادة الاستخدام. هذا القسم مخصص للنمذجة فقط ، يجب إضافة التعليق التوضيحي المتعلق بالحقول الفردية فقط ويجب عدم إضافة أي تفاصيل فنية (منطق).

الأنواع

الأنواع مثل المجال في SAP ABAP ، يتم استخدامه لتحديد نوع عناصر البيانات.

النواحي

الجوانب هي امتدادات النماذج وتستخدم بشكل أساسي لتوسيع التعريفات والتعليقات التوضيحية الحالية. بمجرد تحديد النموذج ، يمكننا استخدام ملفات أقراص مضغوطة مختلفة (الجانب) لإضافة تعليقات توضيحية فوقها لمهمة محددة.

فمثلا-

  • أقراص مدمجة- نموذج المجال الأساسي الخاص بك ، نظيفًا وبسيطًا ومفهومًا
  • نموذج التدقيق- يضيف الحقول الإضافية المطلوبة للتدقيق في ملف
  • المصادقة-model.cds- يضيف التعليقات التوضيحية للترخيص.

المفاتيح الأساسية

مثل الجداول والأقراص المضغوطة في SAP ABAP ، نحتفظ بالمفاتيح الأساسية للكيان باستخدام الكلمات الرئيسية الرئيسية.

يمكن إعادة استخدام المفتاح الأساسي عبر النموذج باستخدام منهجية التعريفات الشائعة.

يمكننا إنشاء نموذج cds مشترك حيث يمكن تخزين جميع التعريفات الشائعة.

// تعريفات مشتركة

الكيان StandardEntity {key ID: UUID؛ } الآن يمكن إعادة استخدام هذه التعريفات الشائعة على النحو التالي: استخدام {StandardEntity} من './common'؛ الكيان الموظف: StandardEntity {الاسم: String؛ ...} مدير الكيان: StandardEntity {name: String؛ ...}

 

تم بالفعل إنشاء الملف الشائع افتراضيًا باستخدام كيان معرف مسبقًا باسم كويد.

تعيين UUIDs إلى OData

تقوم CDS بتعيين UUIDs إلى Edm.Guid افتراضيًا في جميع نماذج OData. ومع ذلك ، يضع معيار OData قواعد مقيدة لقيم Edm.Guid - على سبيل المثال ، يُسمح فقط بالسلاسل الموصولة - والتي قد تتعارض مع البيانات الموجودة. لذلك ، نسمح بتجاوز التعيين الافتراضي على النحو التالي:

كتب الكيان {

معرف المفتاح: UUID odata. النوع: "Edm.String" ؛

...

}

إذا لزم الأمر ، يمكنك أيضًا إضافة التعليق التوضيحي @ odata.MaxLength لتجاوز الخاصية المقابلة أيضًا.

جمعية

يتم استخدامه لتحديد العلاقة بين كيانين. مثل ABAP CDS ، هنا أيضًا نستخدم الكلمة جمعية. هنا ، الكلمة كثير يشير إلى 0 .. * عدد العناصر في المجموعة. يمكن إضافة قيود العلاقة الأساسية كقيد (حيث الشرط) - على سبيل المثال ، استخدام ليس لاغيا.

التراكيب

على عكس الارتباط حيث نربط مجال الكيان بكائنات كيان بأكمله ، فإن التراكيب تشير فقط إلى حقل معين لكيان آخر. تتمتع بميزة إضافية للعمليات العميقة المدارة ذاتيًا (إدراج / تحديث) والحذف المتتالي (حذف جدول متعدد التبعية).

// تحديد الطلبات باستخدام عناصر الأمر المضمنةأوامر الكيان {key ID: UUID؛ العناصر: تكوين العديد من Order_Items على Items.parent = $ self؛} الكيان Order_Items { // يجب الوصول إليها من خلال الطلبات فقط  الوالد الرئيسي: رابطة للأوامر ؛ الكتاب الرئيسي: رابطة الكتب. الكمية: عدد صحيح؛}

أفضل الممارسات

  1. لا تقم بإضافة التفاصيل الفنية في النماذج التي نستخدمها النواحيمن أجل هذا
  2. استعمل أسماء قصيرة و نماذج مسطحة بسيطة
  3. لا تطبيع الكيانات في النماذج
  4. استخدم تسلسلات الأعداد الصحيحة المحلية إذا كنت تتعامل حقًا مع الأحمال والكميات الكبيرة. خلاف ذلك ، تفضل UUIDs

حتى الآن ما تعلمناه: إنشاء النموذج والجوانب فوقه.

نمذجة المجال في SAP CAP

اترك تعليقا

يستخدم هذا الموقع نظام Akismet لتقليل الرسائل الضارة. تعرف كيف تتم معالجة بيانات تعليقك.