ما هو نموذج برمجة التطبيقات RESTful (RAP)؟
نموذج ABAP RESTful Application Programming، الذي طوّرته شركة SAP، مبني بالكامل على لغة ABAP ويتبع إطار نقل الحالة التمثيلية (REST) لإنشاء تطبيقات تعمل وفق معمارية العميل–الخادم بواجهة موحّدة لمعالجة الموارد.
يتمثل الهدف الأساسي لنموذج RAP في تمكين المطورين من بناء تطبيقات أعمال جاهزة للسحابة بكفاءة عالية، لإدارة المعاملات التجارية المختلفة على شكل خدمات OData قياسية، أو لإنشاء امتدادات لتطبيقات قائمة دون التعديل على التعليمات البرمجية "الكود" القياسية. يدعم RAP التطوير المتكامل من نمذجة البيانات إلى نشر الخدمات، مع توافق كامل مع SAP Fiori UX.

كما يدعم RAP التطوير عبر منصات SAP المختلفة، بما في ذلك SAP BTP ABAP لبناء تطبيقات وامتدادات سحابية أصلية، بالإضافة إلى SAP S/4HANA Cloud (الإصدارات العامة والخاصة) والتي تدعم التطويرات المخصصة المتوافقة مع الابتكارات ودورات التحديث المستمرة السحابية. ومنذ إصدار SAP S/4HANA عام 1909، أصبح RAP متاحًا أيضًا للأنظمة المحلية، مما يتيح بناء تطبيقات مواكبة للمستقبل باستخدام ممارسات تطوير حديثة.
يُمارس RAP دورًا محوريًا في نموذج تطوير سحابة ABAP للتطبيقات المعاملاتية، حيث يعتمد على خدمات Core Data Services (CDS) لتعريف هياكل البيانات ووجهات العرض، ويوفر آليات لتنفيذ منطق الأعمال وضمان تكامل البيانات أثناء المعاملات.

لماذا تعلّم RESTful Application Programming؟
تطوّر متطلبات تطبيقات الأعمال
إن RAP ليس مجرد إطار تطوير جديد، بل يُعد النموذج الإستراتيجي لشركة SAP لتبني النهج الحديث في بناء تطبيقات الأعمال المؤسسية ضمن منظومة SAP.
تتطلب تطبيقات الأعمال الحديثة الحصول الفوري على رؤى من البيانات التشغيلية لدعم اتخاذ القرار. وبالتالي يتم دمج القدرات التحليلية مباشرةً داخل التطبيقات المعاملاتية دون الحاجة إلى تغيير السياق. يُتيح RAP التكامل المباشر بين البيانات وتدريب نماذج الذكاء الاصطناعي والتحليلات، مما يُقلل الحاجة إلى عمليات تكرار ومعالجة بيانات معقدة.
تم تحسين RAP خصيصًا لقاعدة بيانات SAP HANA، مستفيدًا من إمكانيات المعالجة داخل الذاكرة، وتنفيذ عمليات الربط، والتجميع، والحسابات المعقدة بكفاءة عالية، وهي عمليات كانت سابقًا تُمثل عنق زجاجة في قواعد البيانات التقليدية.
قدّمت SAP Fiori لغة تصميم وتجربة مستخدم جديدة لتطبيقات SAP حيث تتميز بالبساطة، والاتساق، والوصول القائم على الأدوار. يُتيح RAP كشف كائنات الأعمال كخدمات OData، مما يسمح بتكامل سلس مع عناصر Fiori وتجربة موحّدة عبر مختلف الأجهزة.
كما تم تصميم RAP وفق مبادئ الحوسبة السحابية، حيث تكون التطبيقات محسّنة بطبيعتها لبيئة SAP BTP ABAP، مع دعم كل من التوسعة داخل النظام والتوسعة الجانبية. مما يجعله مثاليًا للنشر السحابي الأصلي والمختلط.
توقعات المستخدم النهائي
تعتمد واجهات Fiori UX مباشرة على خدمات RAP OData، ما يوفّر تجربة استخدام متسقة عبر مختلف الأجهزة مع الحفاظ على سياق العمل. كما يعزز التصميم الأساسي في RAP عدم الاحتفاظ بالحالة، مما يُتيح إمكانية استئناف جلسات المستخدم من أي جهاز آخر دون فقدان السياق.
خصائص المنتج (جاهز)
تُتيح مبادئ برمجة RAP للمطورين إمكانية تضمين عدة خصائص أساسية تلقائيًا دون الحاجة إلى جهود إضافية بعد التطوير، ومنها:
- قابلية التوسع: تسمح بنية RAP عديمة الاحتفاظ بالحالة والتكامل المحسّن مع SAP HANA بنشر التطبيقات بشكل موزّع وتوسيعها بسهولة في البيئات السحابية.
- قابلية الاختبار: يوفّر RAP أدوات وتقنيات مدمجة لاختبار منطق التطبيقات، ويعزّز فصل طبقات المنطق، مما يجعل اختبارات الوحدات وتعريف السلوك سهلة الصيانة.
- قابلية التوسع: يمكّن RAP المطوّرين من إنشاء نقاط توسعة محددة بوضوح داخل التطبيقات، مما يسمح بتعديل التطبيق أو إضافة وظائف جديدة دون الحاجة إلى تغيير التعليمة البرمجية "الكود" المصدرية.
- قابلية الدعم: تُعد التطبيقات المطوّرة باستخدام RAP سهلة الصيانة بعد النشر، بفضل إمكانيات التشخيص التفصيلية وأدوات التصحيح المتقدمة.
- قابلية التوثيق: تؤدي الطبيعة التصريحية لبنية RAP، مثل تعريفات خدمات البيانات الأساسية (CDS) ونموذج البرمجة المنظّم، بشكلٍ طبيعي إلى توثيق أفضل وأسهل للفهم.
أساسيات RAP
ما هو كائن الأعمال؟
كائن الأعمال في RAP يُمثّل كيانًا أو مفهومًا تجاريًا من العالم الحقيقي ضمن نطاق أعمال معين، مثل: أمر البيع، أو العميل، أو المنتج، أو الموظف. وهو يجمع بين البيانات والسلوك والعلاقات الخاصة به. يُعد كائن الأعمال الوحدة الأساسية للتحكّم في التلاعب المتّسق بالبيانات وضمان سلامة المعاملات، حيث يحدّد بنية البيانات، وقواعد التعامل معها، ودورة حياة الكيان التجاري.
ما هو الاستعلام؟
الاستعلام هو واجهة للقراءة فقط تُستخدم للوصول إلى البيانات بغرض الاستهلاك، ويتم بناؤه فوق طرق عرض Core Data Services (CDS)، ويُستخدم الاستعلام بشكل أساسي لاسترجاع بيانات الأعمال وعرضها. كما يوفر إمكانيات استرداد البيانات وتصفيتها، وترتيبها، وتجميعها، وغالبًا ما يكون مصدر بيانات للوحات المعلومات التحليلية، أو وظائف البحث، أو قوائم الكائنات في واجهة المستخدم.
ما هي خدمة الأعمال؟
توفّر خدمات الأعمال في RAP واجهة خارجية للوصول إلى وظائف كائنات الأعمال، سواء للقراءة أو الكتابة، ويمكن التفاعل معها عبر واجهة استخدام تطبيق Fiori للمستخدمين النهائيين أو من خلال أنظمة خارجية. عادةً ما يتم كشف خدمة الأعمال عبر تعريف الخدمة الذي يوضّح ما الذي تقدّمه الخدمة وربط الخدمة الذي يُحدد كيفية كشفها باستخدام بروتوكول معيّن مثل OData v2 أو OData v4 أو واجهة مستخدم أو Web API وغير ذلك.
ما هو حدث الأعمال؟
حدث الأعمال في RAP يُمثل إشعارًا أو مُشغِّلًا محددًا يشير إلى حدوث تغيير أو إجراء مهم داخل كائن أعمال معين، وقد يؤدي إلى تشغيل أحداث أو عمليات أخرى في تطبيقات أو خدمات مرتبطة. على سبيل المثال، "تم إنشاء أمر بيع" أو "تم تغيير سعر المنتج" هو حدث أعمال يُستخدم من خلال تطبيقات أخرى وسير أعمال للمعالجة الأخرى. تُستخدم تعريفات الأحداث وروابط الأحداث للتكامل غير المتزامن بين الخدمات عبر SAP Event Mesh أو من خلال منطق مخصص.
نمذجة البيانات
تُجرى نمذجة البيانات في RAP باستخدام Core Data Services (CDS)، حيث يتم تعريف الكيانات كبنى بيانات، ارتباطاتها كعلاقات بين الكيانات والإسقاطات كطرق عرض مخصّصة لغرض الكشف. وتُعد نمذجة البيانات المحور الأساسي لتحديد بنية التطبيق بالكامل من منظور تدفّق البيانات.
لغة ABAP
تُشكّل لغة ABAP الحديثة الأساس لتنفيذ منطق الأعمال في RAP، مع الاستفادة من ميزاتها مثل Entity Manipulation Language (EML) والتعليقات التوضيحية والمفاهيم كائنية التوجّه والمكتبات الواسعة وإمكانيات معالجة الأخطاء.
الأدوات
يتم دعم تطوير RAP بواسطة مجموعة مختلفة من الأدوات، مثل CDS Editor، ومحررات التعليمة البرمجية المصدرية ABAP، ومعالجات ADT Wizard، ومحرر Service Binding، والتي تكون مدمجة بشكل أساسي ضمن ABAP Development Tools (ADT) في بيئة Eclipse IDE (وهي منصة تطوير مفتوحة المصدر تُستخدم على نطاق واسع في تطوير البرمجيات).
قابلية التوسع
يوفّر RAP آليات توسعة مدمجة تتيح للعملاء والشركاء تحسين كائنات الأعمال والخدمات القياسية أو تكييفها دون تعديل قاعدة التعليمة البرمجية الأساسية. كما تُقدّم آلية دقيقة تدعم كلا نوعَي التوسعة داخل التطبيق والتي تُتيح إضافة حقول مخصّصة، أو منطق أعمال مخصّص، أو كائنات أعمال مخصّصة مباشرةً داخل التطبيقات الحالية، والتوسعة الجانبية والتي تعتمد على بناء تطبيقات أو خدمات مستقلة تقوم باستهلاك كائنات الأعمال القياسية وتوسيعها دون التأثير على النظام الأساسي.
البنية ثلاثية الطبقات لنموذج RAP
يعتمد نموذج RAP على ثلاث طبقات أساسية، لكل طبقة دور محدد، ويُوفّر نهجًا منظّمًا لبناء تطبيقات SAP Fiori على مستوى المؤسسات، بالإضافة إلى كشف واجهات برمجة التطبيقات للتكامل مع الأنظمة الخارجية.
نمذجة البيانات والسلوك
تُمثل نمذجة البيانات وتعريف السلوك الطبقة التأسيسية. وهما يُعرّفان الكيانات التي تمثّل كائنات الأعمال، والعلاقات بين هذه الكيانات.
تُستخدم طرق عرض خدمات البيانات الأساسية لتعريف نماذج بيانات قابلة لإعادة الاستخدام، وتحديد بنية الكيانات بما يشمل الخصائص والارتباطات وتطبيق عوامل التصفية المختلفة والحسابات واستخدام التعليقات التوضيحية لتوفير بيانات وصفية تُستهلك من قِبل واجهة المستخدم.
تعريف السلوك هو المرحلة التي يتم فيها تحديد العمليات المسموح بها على بنية البيانات، مثل عمليات الإنشاء والتحديث والحذف.
يتم تعريف نموذج البيانات والعمليات المتاحة على مستوى قاعدة البيانات. بينما يتم تنفيذ المنطق الفعلي لهذه العمليات داخل فئات ABAP، والتي تحتوي على منطق الأعمال المسؤول عن إنشاء البيانات وتحديثها وحذفها وتنفيذ العمليات المخصّصة على كائنات الأعمال.
خدمة الأعمال
تتحمّل طبقة خدمة الأعمال مسؤولية كشف بنية البيانات والسلوك المعرّفين في الطبقة الأولى على شكل خدمة قابلة للاستهلاك. تتم كتابة تعريف الخدمة لتحديد كيانات خدمات البيانات الأساسية (CDS) وسلوكها التي سيتم كشفها، وبذلك يتم التحكم في نطاق الخدمة.
تُعد تعريفات ربط الخدمة الخطوة الثانية، حيث يتم فيها تحديد بروتوكول الاتصال المستخدم مع الخدمة، مثل OData v2 أو OData v4.
استهلاك الخدمة
تشير طبقة استهلاك الخدمة إلى المرحلة التي تستخدم فيها التطبيقات أو العملاء الخدمات التي تم كشفها. عندما تكون الخدمة مخصصة لتطبيق SAP Fiori Elements، يُطلق عليها خدمة واجهة المستخدم، وتهدف إلى توفير البيانات والبيانات الوصفية التي تستخدمها عناصر Fiori لإنشاء الشاشات والجداول والنماذج تلقائيًا.
يمكن كشف الخدمة أيضًا على شكل Web API ليتم استهلاكها من قِبل أي عميل OData، وفي هذه الحالة لا تتضمن الخدمة بيانات وصفية خاصة بواجهة المستخدم. تُعد هذه الخدمات مثالية للتكامل مع أنظمة غير تابعة لـ SAP وتطبيقات الهاتف المحمول والتطبيقات المخصّصة التي تتطلب التفاعل مع بيانات ومنطق الأعمال.
تطوّر نماذج برمجة ABAP
شهدت برمجة ABAP تطورًا ملحوظًا، بدءًا من البرمجة الحرة وصولًا إلى نموذج البرمجة القائم على RESTful، وذلك استجابةً للتغيرات التقنية والتحولات المعمارية ومتطلبات التطوير الحديثة، خاصة بعد ظهور SAP Fiori والتطوير السحابي الأصلي.
برمجة ABAP التقليدية
في النماذج التقليدية اعتادَ المطورون على كتابة التعليمة البرمجية ABAP بأسلوب إجرائي وتنفيذي، مما يسمح بالوصول مباشرةً إلى قواعد البيانات، مع دمج منطق الأعمال ومنطق واجهة المستخدم، مما يؤدي إلى ترابط قوي بين المكونات وصعوبة في صيانة قاعدة التعليمات البرمجية.
تم بناء واجهات المستخدم باستخدام أدوات مثل SAPscript و Smart Forms وبرمجة الحوارات (Dynpro). كانت الشاشات تُنشأ بعناصر واجهة المستخدم، وتُربط بمنطق ABAP من خلال وحدات Process Before Output (PBO) و Process After Input (PAI). كانت Dynpro فعّالة لتطبيقات سطح المكتب التقليدية، لكنها تفتقر إلى إمكانيات التصميم الحديث المتجاوب.
نموذج برمجة ABAP لتطبيقات SAP Fiori
مع ظهور SAP Fiori، ظهر نموذج برمجي جديد لتلبية متطلبات تجربة المستخدم الحديثة والمتجاوبة. يُركّز هذا النموذج على إنشاء خدمات OData يدويًا باستخدام أداة SAP Gateway Service Builder (SEGW). يقوم المطورون بتعريف الكيانات والخصائص والارتباطات، كما يقومون بتنفيذ عمليات الإنشاء والقراءة والتحديث والحذف.
باستخدام آلية OData.publish، كانت خدمات OData تُسجَّل وتُنشر ليتم استهلاكها عبر SAP Gateway، التي كانت تعمل كمحور مركزي لكشف خدمات OData وإدارتها.
سمحَت خدمة البيانات الأساسية للمطورين بتعريف نماذج بيانات غنية دلاليًا على مستوى قاعدة البيانات، تشمل إنشاء الكيانات والارتباطاتات وتنفيذ العمليات الحسابية. تم تصميم الإطار Business Object Processing (BOPF) المعتمد على خدمات البيانات الأساسية (CDS) لتبسيط تنفيذ منطق كائنات الأعمال، مثل السلوك وعمليات التحقق وعمليات الإنشاء والقراءة والتحديث والحذف (CRUD).
نموذج ABAP RESTful Application Programming
يُعد RAP أحدث تطور في نماذج البرمجة، وقد صُمم لبناء تطبيقات فعّالة وجاهزة للسحابة لكل من SAP S/4HANA و SAP BTP.
ويعتمد على مفهوم Business Service كمحور أساسي، حيث يقوم بتجميع كلٍّ من البيانات والسلوك ويحدد الكيانات والسلوكيات التي سيتم كشفها لنوع المستهلك Fiori أو تطبيق خارجي وعلى نوع البروتوكول.
تظل خدمة البيانات الأساسية عنصرًا محوريًا في RAP، حيث تُمكّن من تعريف نماذج بيانات قابلة لإعادة الاستخدام وتعليقات توضيحية لإنشاء واجهات مستخدم Fiori Elements تلقائيًا.
يفصل RAP بوضوح بين تعريف السلوك وتنفيذ السلوك. ويُحدد الوصف التصريحي العمليات الممكنة، بينما يكون تنفيذ السلوك هو المكان الذي توجد فيه تعليمة ABAP البرمجية لتنفيذ المنطق الخاص بالسلوكيات المعرّفة.
خطوات عملية التطوير في RAP
تبدأ عملية تطوير التطبيقات في نموذج RAP بتعريف بنية البيانات الأساسية مع العلاقات بينها، إضافةً إلى السلوك والبيانات الوصفية، وذلك من أجل الكشف عن الخدمة بحيث يمكن استهلاكها من خلال Fiori Elements أو من قِبل تطبيقات خارجية.
1. توفير جداول قاعدة البيانات
تتمثل الخطوة الأولى في تحديد الجداول التي سيتم استخدامها لاحتواء بيانات الأعمال. وقد تكون هذه الجداول جداول SAP قياسية موجودة مسبقًا، أو جداول مخصّصة محددة. وتجب إضافة شرح لكيفية دمج الأنظمة القديمة وأي تعديلات تم إجراؤها على الجداول، خاصةً إذا كانت جداول غير مبنية على خدمات البيانات الأساسية (CDS). كما يُعد إنشاء جداول جديدة تحتوي على سمات مخصّصة خاصة بالتطبيق خيارًا مناسبًا لتنفيذ نظيف ومنفصل.
2. تعريف نموذج البيانات
الخطوة التالية هي تعريف نموذج البيانات من خلال بناء طرق عرض خدمات البيانات الأساسية (CDS)، التي تُمثل كائنات الأعمال. يمكن أن تتكون طرق العرض هذه من جدول واحد في حالة طريقة عرض خدمات البيانات الأساسية (CDS) البسيطة، أو دمج عدة جداول لإنشاء طرق عرض مركّبة مع تعريفات الأصل–الفرع لكائنات الأعمال المعقّدة.
- تُمثل كائنات الأعمال البسيطة كيانًا واحدًا، مثل منتج أو عميل، وتحتوي على جميع السمات والسلوكيات ذات الصلة ضمن عرض خدمات البيانات الأساسية (CDS) واحد.
- أما كائنات الأعمال المركّبة، فهي تعالج سيناريوهات أعمال معقّدة تشمل عدة كيانات أعمال، مثل أمر البيع، الذي لا يكون كيانًا واحدًا بل قد يرتبط برأس أمر البيع وبنود أمر البيع.
وتحدد علاقة الأصل–الفرع الارتباط والتكوين في خدمات البيانات الأساسية (CDS)، وتدعم السلوكيات التبادلية، كما تضمن اتساق البيانات.
3. تعريف وتنفيذ السلوك (للتطبيقات التبادلية فقط)
يُحدد نموذج البيانات بنية كائن الأعمال. وعلى النقيض من ذلك، يُحدِّد تعريف السلوك وتنفيذه كيفية تصرّف كائن الأعمال من حيث المعاملات، بما في ذلك العمليات المدعومة مثل الإنشاء والتحديث والحذف. كما يتم هنا تنفيذ العمليات المخصّصة مع إجراء فحوصات التحقق قبل حفظ البيانات.
ويُستخدم Behavior Pool، وهو فئة ABAP عامة لتنفيذ السلوك، حيث تتم كتابة تعليمة ABAP البرمجية الفعلية.
وتتضمن الخصائص الرئيسية للتطبيقات المعاملاتية ما يلي:
- تمكين المسودات: يسمح للمستخدمين النهائيين بحفظ بيانات أعمال غير مكتملة كمسودة دون اعتمادها نهائيًا، مما يحسّن تجربة المستخدم من خلال تمكينهم من إيقاف العمل مؤقتًا واستئنافه لاحقًا.
- الترقيم التلقائي: توليد مفاتيح فريدة ومتسلسلة للكيانات التي تتطلب هويات مميزة، مثل أرقام أوامر البيع.
- عمليات التحقق: وهي فحوصات اتساق البيانات التي يتم تنفيذها للتأكد من أن تنسيق الإدخال والقيم المتوقعة تتوافق مع منطق الأعمال، على سبيل المثال: لا يمكن أن تكون تواريخ التسليم في الماضي، ويجب أن تكون تنسيقات أرقام الهواتف صحيحة.
- التحديدات: هي الحقول التي يتم احتسابها بناءً على قيم مُدخلة في حقول أخرى، على سبيل المثال تتم تعبئة الاسم الكامل بناءً على الاسم الأول واسم العائلة، أو عند إدخال اسم منتج، تتم تعبئة الوصف والأسعار تلقائيًا.
يمكن تجاهل تنفيذ السلوك إذا كان التطبيق يهدف فقط لعرض البيانات، مثل تقرير القوائم أو التقرير التحليلي ولا يتطلب عمليات تعديل.
4. عرض كائن الأعمال RAP
بدلًا من كشف جميع الحقول الموجودة في عرض خدمات البيانات الأساسية (CDS)، يتم كشف مجموعات محددة من الحقول عبر طرق عرض إسقاط خدمات البيانات الأساسية (CDS) لخدمة معينة. يمكن إعادة تسمية الحقول أو إضافة حقول محسوبة مسبقًا مخصصة لواجهة المستخدم مع الالتزام باتفاقية التسمية، مثل ZC_ لضمان التناسق.
على غرار نموذج إسقاط البيانات، يتيح إسقاط السلوك تمكين أو تعطيل عمليات محددة، مثل الإنشاء، والحذف، والتحديث على مستوى الخدمة. على سبيل المثال، بدلًا من إزالة عملية الحذف على مستوى سلوك خدمات البيانات الأساسية (CDS)، يمكن ببساطة عدم كشف هذه العملية على مستوى الخدمة.
تتم إضافة التعليقات التوضيحية الخاصة بواجهة المستخدم إلى عرض الإسقاط لتحديد كيفية عرض البيانات في واجهة مستخدم Fiori Elements، والتحكم في عناصر مثل تسميات الحقول، وإمكانيات البحث، والميزات التحليلية.
5. تعريف الخدمة
تعريف الخدمة هو كائن مستودع يُشير إلى عرض إسقاط خدمات بيانات أساسية (CDS) واحد أو أكثر، ويعمل كحاوية للكيانات التي سيتم كشفها كخدمة.
عادةً ما يُستخدم نمط التسمية Z ويتم وصف تعليقات توضيحية محددة للتحكم في طريقة الكشف وخصائص التنقل في واجهة المستخدم.
6. ربط الخدمة واختبارها
الخطوة الأخيرة تتمثل في تحديد ربط الخدمة من خلال وصف طرق الاستهلاك، مثل واجهة مستخدم Fiori أو التطبيقات الخارجية، والبروتوكول مثل OData v2 أو v4.
بالنسبة لخدمات واجهة المستخدم، يمكن للمطورين تمكين المعاينة لتوليد معاينة عناصر Fiori تلقائيًا، مما يسمح باختبار الوظائف بسرعة دون بناء تطبيق Fiori الكامل.
عادةً ما يُستخدم نمط التسمية ZUI_<service_Name>_04 لخدمة واجهة المستخدم لبروتوكول OData v4.
تنفيذ كائنات الأعمال
توجد طريقتان رئيسيتان لتنفيذ أنواع كائنات الأعمال في RAP:
- مُدار
- غير مُدار
تعتمد كلتا الطريقتين على نماذج بيانات معرَّفة بواسطة كيانات عرض خدمات البيانات الأساسية (CDS). ويكمن الاختلاف بينهما في كيفية توفير السلوك المعاملاتي لكائن الأعمال.
كائنات الأعمال المُدارة
يُستخدم التنفيذ من النوع المُدار بشكل أساسي عند تطوير التطبيق من الصفر، كما يُتيح الاستفادة من الدعم الجاهز الذي يوفّره الإطار لمعالجة المعاملات. يوفّر الإطار عمليات التحقق والتحديدات القياسية.
كائنات الأعمال غير المُدارة
يتم اعتماد النهج غير المُدار عند الحاجة إلى تحكّم كامل في منطق المعاملات، وعمليات الإنشاء والقراءة والتحديث والحذف (CRUD)، وآلية تخزين البيانات، خاصةً عند التعامل مع منطق أعمال معقّد أو التكامل مع أنظمة متعددة. يجب على المطورين تنفيذ المكونات الأساسية لعقد نقل الحالة التمثيلية (REST). يتم تحديد السلوك في تعريف السلوك، لكن يتم تنفيذه يدويًا في فئات ABAP ضمن مجموعة السلوك.
عندما يكون منطق الأعمال موجودًا مسبقًا داخل وحدات وظيفية، يساعد النهج غير المُدار على إعادة استخدام منطق الأعمال الحالي داخل كائنات الأعمال. كما يمكن الاستفادة من تنسيق وقت التشغيل الموحّد في RAP لإنشاء خدمة RAP.
إعادة استخدام الخدمات والمكتبات
يوفّر ABAP RAP مجموعة من الوظائف الجاهزة، وواجهات API، والمكوّنات المصممة للاستخدام عبر تطبيقات أو خدمات متعددة. تتيح إعادة استخدام الخدمات والمكتبات الحالية للمطورين توفير الوقت والجهد في مهام، مثل عمليات التحقق الموحّدة من الصلاحيات، وتحديدات النصوص، وتجنّب تكرار التعليمات البرمجية، مما يسمح بالتركيز على منطق الأعمال الفريد الخاص بالتطبيق.
توفّر المكتبات والخدمات المعرّفة مسبقًا وظائف عامة جاهزة للاستخدام في مجالات أعمال مختلفة، مثل إدارة المسودات، والتحكم في الحقول وعمليات التحقق، وإدارة المعاملات، وأدوات التاريخ والوقت، ومعالجة ETag للتحكم في تزامن البيانات، وإنشاء السجلات القياسية وتتبع الأخطاء أو الأحداث.
يتيح RAP أيضًا بناء منطق مخصّص خاص بالمجال لهذه الخدمات أو المكتبات الداخلية، مع إمكانية إعادة استخدام هذه الخدمات المخصصة في أي مكان.
إن القدرة على إعادة استخدام المكتبات القياسية أو المخصصة تسمح للمطورين بالتقليل من التعليمات البرمجية التكرارية. وهذا لا يُسرّع عملية التطوير فحسب، بل ويحسّن قابلية الصيانة. تم تصميم إعادة استخدام الخدمات والمكتبات لتتكامل بسلاسة داخل التطبيقات، حيث يمكن للمطورين استدعاء الخدمات الخارجية أو وظائف المكتبات مباشرةً من تنفيذات السلوكيات وطرق عرض الإسقاط.
الأسئلة الشائعة
يُستخدم نموذج البرمجة ABAP RESTful لتطوير تطبيقات Fiori جديدة، وإنشاء خدمات OData لكشف منطق الأعمال، وتحديث التعليمات البرمجية "الكود" المُخصصة الحالية عند الترقية إلى S/4HANA، وكذلك لتطوير قابلية التوسعة على S/4HANA.
يُستخدم نموذج RAP بشكل أساسي لتطوير خدمات OData التي تكشف البيانات والخدمات داخل منظومة SAP، مما يتيح تنفيذ عمليات الأعمال عبر واجهة SAP Fiori أو التكامل مع تطبيقات الجهات الخارجية. ويمكن أن تكون هذه الخدمات على شكل خدمات Odata، واجهات برمجية API، وخدمات تحليلية توفّر وظائف للقراءة فقط.
كائن الأعمال هو نموذج بيانات منطقي يُمثّل كيانًا أو عملية أعمال في العالم الحقيقي، مثل أمر البيع، واسم المنتج، والموظف، ويقوم بتغليف بنية البيانات ومنطق الأعمال وعمليات التحقق والسلوك. أما خدمة الأعمال، فهي الواجهة التي يتم من خلالها إتاحة بيانات كائن الأعمال وسلوكه للتطبيقات الأخرى كي تتمكن من استهلاكه والتفاعل معه لتنفيذ عمليات الأعمال.