SAP ABAP - Case Control Statement جملة التحكم الحالة في ساب

 SAP ABAP - Case Control Statement جملة التحكم الحالة في ساب

SAP ABAP - Case Control Statement جملة التحكم الحالة في ساب

SAP ABAP - Case Control Statement جملة التحكم الحالة في ساب

يتم استخدام بيان التحكم CASE عندما تحتاج إلى مقارنة حقلين أو أكثر.

صيغة بيان التحكم CASE كما يلي -

CASE <field>. 
 
WHEN <abc>. 
   <statement block>.
   
WHEN <def>. 
   <tatement block>.
   
WHEN <pqr>. 
   <statement block>. 
...... 
...... 
......  
WHEN <xyz>. 
   <statement block>. 
  
WHEN OTHERS. 
   <statement block>.  
ENDCASE.

تنطبق القواعد التالية على بيان CASE -

  • لا يمكن استخدام أي تعبيرات منطقية للحقل <field>.

  • يتم التعامل مع سلاسل الحقول المستخدمة في عبارة CASE كمتغيرات من النوع C.

  • يتم تنفيذ كتلة العبارة التي تلي جملة WHEN إذا كان محتوى الحقول المعروضة في <field> مشابهًا لأحد الحقول <abc> ، <def> ، <ghi> حتى <xyz>.

  • بعد تنفيذ جميع الشروط المحددة في بيان WHEN ، يستمر البرنامج في معالجة البيانات المتبقية بعد جملة ENDCASE.

  • يتم تنفيذ جملة WHEN OTHERS في برنامج عندما لا تتطابق قيمة <field> مع أي قيمة محددة في حقول <abc> حتى <xyz> في جملة WHEN.

  • إذا تم حذف جملة WHEN OTHERS وقيمة <field> لا تتطابق مع أي قيمة محددة في حقول <abc> حتى <xyz> من جملة WHEN ، يستمر البرنامج في معالجة العبارات المتبقية بعد جملة ENDCASE .

مخطط تدفق

بيان مراقبة الحالة

مثال

Report YH_SEP_15.
  
Data: Title_1(10) TYPE C,  
   Title_2(15) TYPE C.  
	
Title_1 = 'ABAP'.
Title_2 = 'Programming'.  

CASE Title_2.
  
WHEN 'ABAP'. 
   Write 'This is not the title'.  
	
WHEN 'Tutorials'.
   Write 'This is not the title'.  
	
WHEN 'Limited'.
   Write 'This is not the title'.
	
WHEN 'Programming'.
   Write 'Yes, this is the title'.
	
WHEN OTHERS.
   Write 'Sorry, Mismatch'.
	 
ENDCASE. 

ينتج الكود أعلاه الناتج التالي -

Yes, this is the title.