SAP ABAP - Variables المتغيرات ساب
SAP ABAP - Variables المتغيرات ساب
SAP ABAP - Variables المتغيرات ساب
المتغيرات هي كائنات بيانات مسماة تستخدم لتخزين القيم داخل منطقة الذاكرة المخصصة للبرنامج. كما يوحي الاسم ، يمكن للمستخدمين تغيير محتوى المتغيرات بمساعدة عبارات ABAP. كل متغير في ABAP له نوع معين ، والذي يحدد حجم وتخطيط ذاكرة المتغير ؛ نطاق القيم التي يمكن تخزينها في تلك الذاكرة ؛ ومجموعة العمليات التي يمكن تطبيقها على المتغير.
يجب التصريح عن جميع المتغيرات قبل استخدامها. الشكل الأساسي لإعلان المتغير هو -
DATA <f> TYPE <type> VALUE <val>.
هنا <f> يحدد اسم المتغير. يمكن أن يصل اسم المتغير إلى 30 حرفًا. <type> يحدد نوع المتغير. يُعرف أي نوع بيانات بسمات فنية محددة بالكامل باسم <نوع>. يحدد <val> القيمة الأولية للمتغير <f>. في حالة تحديد متغير أساسي ثابت الطول ، تقوم عبارة DATA تلقائيًا بتعبئة قيمة المتغير بالقيمة الأولية الخاصة بالنوع. يمكن أن تكون القيم الأخرى المحتملة لـ <val> عبارة عن جملة حرفية أو ثابتة أو جملة صريحة ، مثل Is INITIAL.
فيما يلي أمثلة صالحة للإعلانات المتغيرة.
DATA d1(2) TYPE C. DATA d2 LIKE d1. DATA minimum_value TYPE I VALUE 10.
في مقتطف الكود أعلاه ، d1 هو متغير من النوع C ، و d2 هو متغير من النوع d1 ، وقيمة الحد الأدنى هي متغير من نوع ABAP الصحيح من النوع الأول.
سيشرح هذا الفصل أنواع المتغيرات المختلفة المتوفرة في ABAP. هناك ثلاثة أنواع من المتغيرات في ABAP -
- المتغيرات الثابتة
- المتغيرات المرجعية
- متغيرات النظام
المتغيرات الثابتة
يتم التصريح عن المتغيرات الثابتة في الإجراءات الفرعية والوحدات النمطية والوحدات النمطية والطرق الثابتة.
العمر مرتبط بسياق الإعلان.
باستخدام عبارة "CLASS-DATA" ، يمكنك إعلان المتغيرات داخل الفئات.
يمكن استخدام عبارة "المعلمات" للإعلان عن كائنات البيانات الأولية المرتبطة بحقول الإدخال على شاشة التحديد.
يمكنك أيضًا إعلان الجداول الداخلية المرتبطة بحقول الإدخال على شاشة التحديد باستخدام عبارة "SELECT-OPTIONS".
فيما يلي الاصطلاحات المستخدمة أثناء تسمية متغير -
لا يمكنك استخدام أحرف خاصة مثل "t" و "،" لتسمية المتغيرات.
لا يمكن تغيير اسم كائنات البيانات المحددة مسبقًا.
لا يمكن أن يكون اسم المتغير هو نفسه أي كلمة رئيسية أو عبارة ABAP.
يجب أن ينقل اسم المتغيرات معنى المتغير دون الحاجة إلى مزيد من التعليقات.
يتم حجز الواصلات لتمثيل مكونات الهياكل. لذلك ، من المفترض أن تتجنب الواصلات في أسماء المتغيرات.
يمكن استخدام حرف تسطير أسفل السطر لفصل الكلمات المركبة.
يوضح هذا البرنامج كيفية التصريح عن متغير باستخدام تعليمة PARAMETERS -
REPORT ZTest123_01. PARAMETERS: NAME(10) TYPE C, CLASS TYPE I, SCORE TYPE P DECIMALS 2, CONNECT TYPE MARA-MATNR.
هنا ، يمثل NAME معلمة من 10 أحرف ، ويحدد CLASS معلمة من نوع العدد الصحيح بالحجم الافتراضي بالبايت ، ويمثل SCORE معلمة نوع معبأة بقيم تصل إلى منزلتين عشريتين ، ويشير CONNECT إلى نوع MARA-MATNF لقاموس ABAP .
ينتج الكود أعلاه الناتج التالي -
المتغيرات المرجعية
صيغة التصريح عن المتغيرات المرجعية هي -
DATA <ref> TYPE REF TO <type> VALUE IS INITIAL.
تعلن إضافة REF TO عن متغير مرجعي المرجع.
تحدد المواصفات بعد REF TO النوع الثابت للمتغير المرجعي.
يقيد النوع الثابت مجموعة الكائنات التي يمكن أن يشير إليها <ref>.
النوع الديناميكي للمتغير المرجعي هو نوع البيانات أو الفئة التي يشير إليها حاليًا.
دائمًا ما يكون النوع الثابت أكثر عمومية أو نفس النوع الديناميكي.
يتم استخدام إضافة TYPE لإنشاء نوع مرجع مرتبط وكقيمة بداية ، ويمكن تحديد IS INITIAL فقط بعد إضافة VALUE.
مثال
CLASS C1 DEFINITION. PUBLIC SECTION. DATA Bl TYPE I VALUE 1. ENDCLASS. DATA: Oref TYPE REF TO C1 , Dref1 LIKE REF TO Oref, Dref2 TYPE REF TO I . CREATE OBJECT Oref. GET REFERENCE OF Oref INTO Dref1. CREATE DATA Dref2. Dref2→* = Dref1→*→Bl.
في مقتطف الكود أعلاه ، تم التصريح عن مرجع كائن Oref ومتغيرين مرجعيين للبيانات Dref1 و Dref2.
يتم كتابة كلا المتغيرين المرجعيين للبيانات بالكامل ويمكن إلغاء الإشارة إليه باستخدام عامل الإسناد → * في مواضع المعامل.
متغيرات النظام
يمكن الوصول إلى متغيرات نظام ABAP من جميع برامج ABAP.
يتم ملء هذه الحقول بالفعل بواسطة بيئة وقت التشغيل.
تشير القيم الموجودة في هذه الحقول إلى حالة النظام في أي نقطة زمنية معينة.
يمكنك العثور على القائمة الكاملة لمتغيرات النظام في جدول SYST في SAP.
يمكن الوصول إلى الحقول الفردية لهيكل SYST باستخدام إما "SYST-" أو "SY-".
مثال
REPORT Z_Test123_01. WRITE:/'SY-ABCDE', SY-ABCDE, /'SY-DATUM', SY-DATUM, /'SY-DBSYS', SY-DBSYS, /'SY-HOST ', SY-HOST, /'SY-LANGU', SY-LANGU, /'SY-MANDT', SY-MANDT, /'SY-OPSYS', SY-OPSYS, /'SY-SAPRL', SY-SAPRL, /'SY-SYSID', SY-SYSID, /'SY-TCODE', SY-TCODE, /'SY-UNAME', SY-UNAME, /'SY-UZEIT', SY-UZEIT.
ينتج الكود أعلاه الناتج التالي -
SY-ABCDE ABCDEFGHIJKLMNOPQRSTUVWXYZ SY-DATUM 12.09.2015 SY-DBSYS ORACLE SY-HOST sapserver SY-LANGU EN SY-MANDT 800 SY-OPSYS Windows NT SY-SAPRL 700 SY-SYSID DMO SY-TCODE SE38 SY-UNAME SAPUSER SY-UZEIT 14:25:48
التسميات: SAP ABAP Advanced Business Application Programming (برمجة تطبيقات الأعمال المتقدمة) ساب
<< الصفحة الرئيسية