‏إظهار الرسائل ذات التسميات SAP ABAP Advanced Business Application Programming (برمجة تطبيقات الأعمال المتقدمة) ساب. إظهار كافة الرسائل
‏إظهار الرسائل ذات التسميات SAP ABAP Advanced Business Application Programming (برمجة تطبيقات الأعمال المتقدمة) ساب. إظهار كافة الرسائل

SAP ABAP - User Exits خروج المستخدم من ساب

 SAP ABAP - User Exits خروج المستخدم من ساب

SAP ABAP - User Exits خروج المستخدم من ساب

SAP ABAP - User Exits خروج المستخدم من ساب

يتم استخدام مخارج المستخدم في الاستخراج إذا لم توفر مستخلصات SAP القياسية البيانات المتوقعة أو الوظائف المطلوبة ، على سبيل المثال في التراخيص أو فحوصات الوقت. تُستخدم مخارج المستخدم بشكل شائع في وحدات المبيعات والتوزيع (SD). هناك العديد من المخارج التي توفرها SAP في مجالات المبيعات والنقل والشحن والفواتير. تم تصميم خروج المستخدم لإجراء بعض التغييرات عندما لا يكون SAP القياسي قادرًا على تلبية جميع المتطلبات.

لتتمكن من الوصول إلى المخارج المتوفرة في كل مجال من مجالات المبيعات ، انتقل إلى IMG باستخدام هذا المسار: IMG ← المبيعات والتوزيع ← تعديلات النظام ← خروج المستخدم. يتم شرح الوثائق الخاصة بكل مخرج في مناطق SD بدقة.

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

التسلسلخروج المستخدم والوصف
1

USEREXIT_FIELD_MODIFICATION

تستخدم لتعديل سمات الشاشة.

2

USEREXIT_SAVE_DOCUMENT

يساعد في إجراء العمليات عندما يقوم المستخدم بالضغط على Save.

3

USEREXIT_SAVE_DOCUMENT_PREPARE

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

4

USEREXIT_MOVE_FIELD_TO_VBAK

تُستخدم عندما يتم نقل تغييرات رأس المستخدم إلى منطقة عمل الرأس.

5

USEREXIT_MOVE_FIELD_TO_VBAP

تُستخدم عند نقل تغييرات عنصر المستخدم إلى منطقة عمل عنصر SAP.

يخدم خروج المستخدم نفس الغرض مثل خروج العميل ولكنها متاحة فقط لوحدة SD. يتم تنفيذ الخروج على أنه استدعاء لوحدة الوظيفة. عمليات خروج المستخدم هي تعديلات على برامج SAP القياسية.

مثال

REPORT ZUSEREXIT1. 
TABLES:   
   TSTC, TSTCT,
   TADIR, TRDIR, TFDIR, ENLFDIR,
   MODSAPT, MODACT. 
	
DATA:   
   JTAB LIKE TADIR OCCURS 0 WITH HEADER LINE,
   field1(30),
   v_devclass LIKE TADIR-devclass. 
	
PARAMETERS:
   P_TCODE LIKE TSTC-tcode OBLIGATORY. 
	
SELECT SINGLE *
   FROM TSTC
   WHERE tcode EQ P_TCODE. 
	
IF SY-SUBRC EQ 0.
   SELECT SINGLE *
   FROM TADIR
	
   WHERE pgmid = 'R3TR' AND 
         object = 'PROG' AND
         obj_name = TSTC-pgmna.
		
   MOVE TADIR-devclass TO v_devclass.
	
   IF SY-SUBRC NE 0.
   SELECT SINGLE * 
      FROM TRDIR
      WHERE name = TSTC-pgmna.
		
   IF TRDIR-subc EQ 'F'.
      SELECT SINGLE *
         FROM TFDIR
         WHERE pname = TSTC-pgmna.
			
      SELECT SINGLE *
         FROM ENLFDIR 
         WHERE funcname = TFDIR-funcname.
			
      SELECT SINGLE * 
         FROM TADIR
         WHERE pgmid = 'R3TR' AND
               object = 'FUGR' AND 
               obj_name EQ ENLFDIR-area.
         MOVE TADIR-devclass TO v_devclass.
      ENDIF.
   ENDIF.
	
   SELECT *
      FROM TADIR
      INTO TABLE JTAB
		
      WHERE pgmid = 'R3TR' AND
            object = 'SMOD' AND
            devclass = v_devclass.
			
   SELECT SINGLE *
      FROM TSTCT
      WHERE sprsl EQ SY-LANGU AND
            tcode EQ P_TCODE.
			
   FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
   WRITE:/(19) 'Transaction Code - ', 
      20(20) P_TCODE,
      45(50) TSTCT-ttext.
   SKIP.
	
   IF NOT JTAB[] IS INITIAL.
      WRITE:/(95) SY-ULINE.
      FORMAT COLOR COL_HEADING INTENSIFIED ON.
		
      WRITE:/1 SY-VLINE, 
            2 'Exit Name',
            21 SY-VLINE , 
            22 'Description',
            95 SY-VLINE.
			
      WRITE:/(95) SY-ULINE.
      LOOP AT JTAB.
         SELECT SINGLE * FROM MODSAPT
         WHERE sprsl = SY-LANGU AND
               name = JTAB-obj_name.
				
         FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
         WRITE:/1 SY-VLINE,
               2 JTAB-obj_name HOTSPOT ON,
               21 SY-VLINE ,
               22 MODSAPT-modtext,
               95 SY-VLINE.
      ENDLOOP.
		
      WRITE:/(95) SY-ULINE.
      DESCRIBE TABLE JTAB.
      SKIP.
      FORMAT COLOR COL_TOTAL INTENSIFIED ON.
      WRITE:/ 'No of Exits:' , SY-TFILL.
		
   ELSE.
      FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
      WRITE:/(95) 'User Exit doesn’t exist'.
   ENDIF. 
ELSE.

   FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
   WRITE:/(95) 'Transaction Code Does Not Exist'. 
ENDIF.
 
AT LINE-SELECTION.
   GET CURSOR FIELD field1.
   CHECK field1(4) EQ 'JTAB'.
   SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
   CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN. 

أثناء المعالجة ، أدخل رمز المعاملة "ME01" واضغط على الزر F8 (تنفيذ). ينتج الكود أعلاه الناتج التالي -

رمز المعاملة 'ME01




SAP ABAP - Customer Exits خروج العميل من ساب

 SAP ABAP - Customer Exits خروج العميل من ساب

SAP ABAP - Customer Exits خروج العميل من ساب


SAP ABAP - Customer Exits خروج العميل من ساب

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

خروج العميل للمعاملات القياسية

فيما يلي الخطوات للعثور على مخارج العملاء فيما يتعلق بالمعاملات القياسية. دعونا نحدد مخارج العميل المتاحة في MM01 (إنشاء المواد الرئيسية).

إنشاء ماجستير المواد

الخطوة 1 - انتقل إلى المعاملة MM01 وحدد اسم برنامج MM01 بالانتقال إلى شريط القائمة ← النظام ← الحالة كما هو موضح في لقطة الشاشة أعلاه.

الخطوة 2 - احصل على اسم البرنامج من الشاشة المنبثقة. اسم البرنامج هو "SAPLMGMM".

الخطوة 3 - انتقل إلى المعاملة SE38 ، وأدخل اسم البرنامج وانقر فوق عرض.

الخطوة 4 - انتقل إلى Go to → Properties واكتشف حزمة اسم البرنامج هذا.

تجمع الوظائف

اسم الحزمة هو "MGA".

الخطوة 5 - انتقل إلى رمز المعاملة SMOD الذي يستخدم عادة لتحديد مخارج العميل. انتقل إلى Utilities → Find (أو) يمكنك الضغط مباشرة على Ctrl + F على رمز المعاملة SMOD.

الخطوة 6 - بعد الانتقال إلى شاشة "Find Exits" ، أدخل اسم الحزمة الذي حصلنا عليه سابقًا واضغط على الزر F8 (تنفيذ).

البحث عن مخارج

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

البحث عن مخرج



SAP ABAP - SAP scripts سكريبتات ساب

 SAP ABAP - SAP scripts سكريبتات ساب

SAP ABAP - SAP scripts سكريبتات ساب


SAP ABAP - SAP scripts سكريبتات ساب

يمكن استخدام أداة SAPscript لنظام SAP لإنشاء وإدارة نماذج الأعمال مثل الفواتير وأوامر الشراء. توفر أداة SAPscript العديد من القوالب التي تبسط تصميم نموذج العمل إلى حد كبير.

يأتي نظام SAP مع نماذج SAPscript القياسية التي يتم تسليمها مع عميل SAP القياسي (بشكل عام كعميل 000). فيما يلي بعض الأمثلة على نماذج SAPscript القياسية المقدمة مع العميل 000 -

التسلسلاسم النموذج والوصف
1

RVORDER01

نموذج تأكيد طلب المبيعات

2

RVDELNOTE

قائمة التعبئة

3

RVINVOICE01

فاتورة

4

MEDRUCK

أمر شراء

5

F110_PRENUM_CHCK

الشيك المرقّم مسبقًا

يتكون هيكل نموذج SAPscript من مكونين رئيسيين -

المحتوى - يمكن أن يكون نصًا (بيانات الأعمال) أو رسومات (شعار الشركة).

التخطيط - يتم تحديده من خلال مجموعة من النوافذ التي يظهر فيها محتوى النموذج.

SAPscript - أداة رسام النماذج

توفر أداة "نسخ النموذج" تخطيطًا رسوميًا لنموذج SAPscript ووظائف متنوعة لمعالجة النموذج. في المثال التالي ، سنقوم بإنشاء نموذج فاتورة بعد نسخ هيكل التخطيط الخاص به من نموذج SAPscript قياسي RVINVOICE01 ، وعرض تخطيطه من خلال الوصول إلى أداة نسخ النموذج.

الخطوة 1 - افتح رسام النموذج. يمكنك طلب الشاشة إما عن طريق التنقل في قائمة SAP أو باستخدام رمز المعاملة SE71.

الخطوة 2 - في رسام النموذج ، شاشة الطلب ، أدخل اسمًا ولغة لنموذج SAPscript في حقلي النموذج واللغة ، على التوالي. دعنا ندخل "RVINVOICE01" و "EN" على التوالي في هذه الحقول.

طلب رسام النموذج

الخطوة 3 - حدد زر الاختيار تخطيط الصفحة في مربع مجموعة الكائنات الفرعية.

الخطوة 4 - حدد الأدوات المساعدة → نسخ من العميل لإنشاء نسخة من نموذج RVINVOICE01. تظهر شاشة "نسخ النماذج بين العملاء".

الخطوة 5 - في شاشة "نسخ النماذج بين العملاء" ، أدخل الاسم الأصلي للنموذج ، "RVINVOICE01" ، في حقل اسم النموذج ، ورقم العميل المصدر "000" في حقل عميل المصدر ، واسم النموذج الهدف كـ "ZINV_01" في حقل نموذج الهدف. تأكد من بقاء الإعدادات الأخرى دون تغيير.

نسخ النموذج بين العميل

الخطوة 6 - بعد ذلك ، انقر فوق رمز التنفيذ في شاشة "نسخ النماذج بين العملاء". يظهر مربع الحوار "إنشاء إدخال دليل كائن". انقر فوق أيقونة حفظ.

يتم نسخ النموذج ZINV_01 من نموذج RVINVOICE01 ويتم عرضه في شاشة "نسخ النماذج بين العملاء" كما هو موضح في اللقطة التالية -

نسخ النموذج بين العميل

الخطوة 7 - انقر فوق رمز الرجوع مرتين وانتقل مرة أخرى إلى شاشة Form Painter: Request التي تحتوي على اسم النموذج المنسوخ ZINV_01.

الخطوة 8 - بعد النقر على زر العرض ، تظهر نافذة "Form ZINV_01: Layout of Page FIRST" وشاشة "Form: Change Page Layout: ZINV_01" كما هو موضح في لقطة الشاشة التالية.

تخطيط الصفحة

الخطوة 9 - تظهر نافذة "Form ZINV_01: Layout of Page FIRST" التخطيط الأولي للنموذج. يحتوي تخطيط النموذج على خمسة نوافذ: HEADER و ADDRESS و INFO و INFO1 و MAIN. يمكن الوصول إلى وصف هذه النوافذ في محرر الكمبيوتر.

على سبيل المثال ، بمجرد تحديد النافذة الرئيسية والنقر فوق رمز النص في شاشة "النموذج: تغيير تخطيط الصفحة: ZINV_01" ، يمكنك عرض جميع قيم الهوامش كما هو موضح في لقطة الشاشة التالية -

تغيير تخطيط الصفحة


SAP ABAP - Smart Forms النماذج الذكية في ساب

 SAP ABAP - Smart Forms النماذج الذكية في ساب

SAP ABAP - Smart Forms النماذج الذكية في ساب


SAP ABAP - Smart Forms النماذج الذكية في ساب

يمكن استخدام أداة SAP Smart Forms لطباعة المستندات وإرسالها. هذه الأداة مفيدة في تطوير النماذج وملفات PDF ورسائل البريد الإلكتروني والمستندات للإنترنت. توفر الأداة واجهة لإنشاء تخطيط ومنطق النموذج والحفاظ عليهما. تقدم SAP أيضًا مجموعة مختارة من النماذج للعمليات التجارية مثل تلك المستخدمة في إدارة علاقات العملاء (CRM) والمبيعات والتوزيع (SD) والمحاسبة المالية (FI) والموارد البشرية (HR).

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

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

فيما يلي بعض الأمثلة على النماذج الذكية القياسية المتوفرة في نظام SAP -

  • يمثل SF_EXAMPLE_01 فاتورة بمخرجات جدول لحجز رحلة لعميل.

  • تمثل SF_EXAMPLE_02 فاتورة مشابهة لـ SF_EXAMPLE_01 ، ولكن بإجماليات فرعية.

  • تحدد SF_EXAMPLE_03 فاتورة مماثلة لفاتورة SF_EXAMPLE_02 ، ولكن يمكن فيها اختيار عدة عملاء في برنامج التطبيق.

إنشاء نموذج

لنقم بإنشاء نموذج باستخدام أداة SAP Smart Forms. ستتعلم أيضًا كيفية إضافة عقدة في النموذج الذكي واختبار النموذج في هذا البرنامج التعليمي. نبدأ هنا بإنشاء نسخة من نموذج SF_EXAMPLE_01. نموذج SF_EXAMPLE_01 هو نموذج ذكي قياسي متاح في نظام SAP.

الخطوة 1 - Smart Form Builder هي الواجهة الرئيسية المستخدمة لبناء نموذج ذكي. يتوفر على الشاشة الأولية لنماذج SAP الذكية. نحتاج إلى كتابة رمز المعاملة "SMARTFORMS" في حقل الأوامر لفتح الشاشة الأولية لنماذج SAP الذكية. في هذه الشاشة ، أدخل اسم النموذج ، SF_EXAMPLE_01 ، في حقل النموذج.

الخطوة 2 - حدد النماذج الذكية ← انسخ أو انقر فوق رمز النسخ لفتح مربع الحوار نسخ النموذج أو النص.

الخطوة 3 - في حقل الكائن الهدف ، أدخل اسمًا للنموذج الجديد. يجب أن يبدأ الاسم بحرف Y أو Z. في هذه الحالة ، اسم النموذج هو "ZSMM1".

نموذج SAP الذكي

الخطوة 4 - انقر فوق أيقونة متابعة أو اضغط على المفتاح ENTER في مربع الحوار Copy Form أو Text بحيث يتم إنشاء نموذج ZSMM1 كنسخة من النموذج المحدد مسبقًا SF_EXAMPLE_01.

الخطوة 5 - انقر فوق أيقونة حفظ. يتم عرض اسم النموذج في حقل النموذج على الشاشة الأولية لنماذج SAP الذكية.

الخطوة 6 - انقر فوق الزر "إنشاء" على الشاشة الأولية لنماذج SAP الذكية. يظهر نموذج ZSMM1 في Form Builder.

الخطوة 7 - يتم إنشاء صفحة المسودة الأولى بنافذة رئيسية. تعتمد جميع مكونات النموذج الجديد على SF_EXAMPLE_01 النموذج المحدد مسبقًا. يمكنك فقط النقر فوق عقدة في قائمة التنقل لعرض محتواها.

 منشئ نموذج SAP

إنشاء عقدة نصية في النموذج

الخطوة 1 - افتح نموذجًا في وضع التغيير لشاشة SAP Form Builder وانقر بزر الماوس الأيمن فوق خيار Main Window في عقدة الصفحة الأولى وحدد Create → Text من قائمة السياق.

الخطوة 2 - قم بتعديل النص في حقل النص إلى My_Text والنص الموجود في حقل المعنى إلى Text_Demo. أدخل النص "Hello TutorialsPoint ....." في مربع تحرير النص في الإطار الأوسط لـ Form Builder كما هو موضح في اللقطة التالية -

إنشاء نص عقدة

الخطوة 3 - انقر فوق الزر حفظ لحفظ العقدة.

الخطوة 4 - تنشيط واختبار العقدة عن طريق النقر فوق الرمزين تنشيط واختبار ، على التوالي. تظهر الشاشة الأولية لـ Function Builder.

الخطوة 5 - قم بتنشيط واختبار وحدة الوظيفة عن طريق النقر فوق الرموز التنشيط والتنفيذ. يتم عرض معلمات وحدة الوظيفة في الشاشة الأولية لـ Function Builder.

الخطوة 6 - قم بتنفيذ وحدة الوظيفة بالنقر فوق أيقونة التنفيذ. يظهر مربع الحوار "طباعة".

الخطوة 7 - حدد جهاز الإخراج كـ "LP01" وانقر فوق زر معاينة الطباعة.

ستنتج الخطوات المذكورة أعلاه الناتج التالي -

معاينة قبل الطباعة



SAP ABAP - Dialog Programming برمجة الحوارات في ساب

 SAP ABAP - Dialog Programming برمجة الحوارات في ساب

SAP ABAP - Dialog Programming برمجة الحوارات في ساب

SAP ABAP - Dialog Programming برمجة الحوارات في ساب

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

فيما يلي المكونات الرئيسية لبرامج الحوار -

  • شاشات
  • تجمعات وحدة
  • روتين
  • القوائم
  • المعاملات

مجموعة الأدوات

مجموعة الأدوات

يجب تطوير برامج الحوار بواسطة مستعرض الكائنات (المعاملة: SE80) بحيث تصبح جميع الكائنات مرتبطة بالبرنامج الرئيسي دون الحاجة إلى توجيه كل كائن بشكل صريح. تعمل تقنيات التنقل المتقدمة على تحسين عملية الانتقال من كائن إلى آخر.

تتكون الشاشات من سمات الشاشة وتخطيط الشاشة والحقول ومنطق التدفق. يتكون تجمع الوحدات النمطية من بناء جملة معياري يتم وضعه في الداخل بما في ذلك برامج برنامج الحوار. يمكن استدعاء هذه الوحدات من خلال منطق التدفق ، والذي تتم معالجته بواسطة معالج الحوار.

إنشاء برنامج حوار جديد

الخطوة 1 - ضمن المعاملة SE80 ، حدد "برنامج" من القائمة المنسدلة وأدخل اسم Z لبرنامج SAP المخصص الخاص بك باسم "ZSCREENEX".

الخطوة 2 - اضغط على Enter ، واختر "With TOP INCL" وانقر فوق الزر "نعم".

إنشاء برنامج حوار جديد

الخطوة 3 - أدخل اسمًا لأعلى قائمة تتضمن "ZSCRTOP" وانقر فوق علامة التجزئة الخضراء.

الخطوة 4 - داخل شاشة السمات ، ما عليك سوى إدخال عنوان والنقر فوق الزر "حفظ".

إضافة شاشة لبرنامج الحوار

الخطوة 1 - لإضافة شاشة إلى البرنامج ، انقر بزر الماوس الأيمن على اسم البرنامج وحدد الخيارات Create → Screen.

الخطوة 2 - أدخل رقم الشاشة كـ "0211" وانقر فوق علامة التجزئة الخضراء.

إضافة شاشة إلى مربع الحوار

الخطوة 3 - في الشاشة التالية ، أدخل عنوانًا قصيرًا ، واضبط على نوع الشاشة العادي وانقر على زر الحفظ في شريط أدوات التطبيق العلوي.

تخطيط الشاشة وإضافة نص "Hello World"

الخطوة 1 - انقر فوق زر التخطيط داخل شريط أدوات التطبيق وستظهر نافذة Screen Painter.

الخطوة 2 - أضف حقل نص وأدخل بعض النصوص مثل "Hello World".

أضف Hello World

الخطوة 3 - حفظ وتنشيط الشاشة.

إنشاء الصفقة

الخطوة 1 - لإنشاء رمز معاملة لبرنامجك ، ما عليك سوى النقر بزر الماوس الأيمن على اسم البرنامج واختيار الخيار "إنشاء ← معاملة" وإدخال رمز المعاملة باسم "ZTRANEX".

إنشاء الصفقة

الخطوة 2 - أدخل نص المعاملة والبرنامج والشاشة التي أنشأتها للتو (ZSCREENEX & 0211) ، وحدد مربع الاختيار "SAPGUI for Windows" في قسم "دعم واجهة المستخدم الرسومية".

تنفيذ البرنامج

احفظ ونشط كل شيء. يمكنك تنفيذ البرنامج. أثناء تنفيذ البرنامج ، يتم عرض النص الذي أدخلته على الشاشة كما هو موضح في لقطة الشاشة التالية.

تنفيذ البرنامج








SAP ABAP - Report Programming برمجة التقرير في ساب

 SAP ABAP - Report Programming برمجة التقرير في ساب

SAP ABAP - Report Programming برمجة التقرير في ساب

SAP ABAP - Report Programming برمجة التقرير في ساب

تقرير هو عرض البيانات في هيكل منظم. تتضمن العديد من أنظمة إدارة قواعد البيانات كاتب تقرير يمكّنك من تصميم التقارير وإنشائها. تدعم تطبيقات SAP إنشاء التقارير.

يتم إنشاء تقرير كلاسيكي باستخدام بيانات الإخراج في عبارة WRITE داخل حلقة. لا تحتوي على أي تقارير فرعية. يوفر SAP أيضًا بعض التقارير القياسية مثل RSCLTCOP التي تُستخدم لنسخ الجداول عبر العملاء و RSPARAM المستخدمة لعرض معلمات المثيل.

تتكون هذه التقارير من شاشة واحدة فقط كمخرج. يمكننا استخدام أحداث مختلفة مثل INITIALIZATON & TOP-OF-PAGE لإنشاء تقرير كلاسيكي ، ولكل حدث أهميته الخاصة أثناء إنشاء تقرير كلاسيكي. يرتبط كل حدث من هذه الأحداث بإجراء مستخدم معين ولا يتم تشغيله إلا عندما يقوم المستخدم بهذا الإجراء.

فيما يلي جدول يصف الأحداث والأوصاف -

التسلسلالحدث والوصف
1

INITIALIZATON

يتم تشغيله قبل عرض شاشة التحديد.

2

في شاشة التحديد

يتم تشغيله بعد معالجة إدخال المستخدم على شاشة التحديد. يتحقق هذا الحدث من إدخال المستخدم قبل تنفيذ البرنامج. بعد معالجة إدخال المستخدم ، تظل شاشة التحديد في الوضع النشط.

3

بدء الاختيار

لا يتم تشغيله إلا بعد انتهاء معالجة شاشة الاختيار ؛ أي عندما ينقر المستخدم على أيقونة التنفيذ على شاشة التحديد.

4

نهاية الاختيار

يتم تشغيله بعد تنفيذ العبارة الأخيرة في حدث START-OF-SELECTON.

5

أعلى الصفحة

تم تشغيله بواسطة عبارة WRITE الأولى لعرض البيانات في صفحة جديدة.

6

نهاية الصفحة

تم تشغيله لعرض النص في نهاية صفحة في تقرير. لاحظ أن هذا الحدث هو الحدث الأخير أثناء إنشاء تقرير ، ويجب دمجه مع عبارة LINE-COUNT في عبارة REPORT.

مثال

لنقم بإنشاء تقرير كلاسيكي. سنعرض المعلومات المخزنة في قاعدة البيانات القياسية MARA (تحتوي على بيانات المواد العامة) باستخدام سلسلة من العبارات في محرر ABAP.

REPORT ZREPORT2 
LINE-SIZE 75 
LINE-COUNT 30(3) 
NO STANDARD PAGE HEADING. 
Tables: MARA. 
TYPES: Begin of itab, 

MATNR TYPE MARA-MATNR, 
MBRSH TYPE MARA-MBRSH, 
MEINS TYPE MARA-MEINS, 
MTART TYPE MARA-MTART, 

End of itab. 

DATA: wa_ma TYPE itab,
      it_ma TYPE STANDARD TABLE OF itab.
		
SELECT-OPTIONS: MATS FOR MARA-MATNR OBLIGATORY. 
INITIALIZATION. 
MATS-LOW = '1'. 
MATS-HIGH = '500'. 

APPEND MATS. 
AT SELECTION-SCREEN. .
IF MATS-LOW = ' '. 
MESSAGE I000(ZKMESSAGE). 
ELSEIF MATS-HIGH = ' '. 
MESSAGE I001(ZKMESSAGE). 
ENDIF. 

TOP-OF-PAGE. 
WRITE:/ 'CLASSICAL REPORT CONTAINING GENERAL MATERIAL DATA  
FROM THE TABLE MARA' COLOR 7. 
ULINE. 
WRITE:/ 'MATERIAL' COLOR 1, 

24 'INDUSTRY' COLOR 2, 
38 'UNITS' COLOR 3, 
53 'MATERIAL TYPE' COLOR 4. 
ULINE. 
END-OF-PAGE. 

START-OF-SELECTION. 
SELECT MATNR MBRSH MEINS MTART FROM MARA  
INTO TABLE it_ma WHERE MATNR IN MATS. 
LOOP AT it_ma into wa_ma. 
WRITE:/  wa_ma-MATNR, 

25 wa_ma-MBRSH, 
40 wa_ma-MEINS, 
55 wa_ma-MTART. 
ENDLOOP. 
END-OF-SELECTION. 

ULINE. 
WRITE:/ 'CLASSICAL REPORT HAS BEEN CREATED' COLOR 7.
ULINE. 
SKIP. 

ينتج الكود أعلاه الإخراج التالي الذي يحتوي على بيانات المواد العامة من الجدول القياسي MARA -

تقرير البرمجة