الاثنين، 19 أكتوبر 2020

SAP ABAP - Operators المشغلات في ساب


SAP ABAP - Operators المشغلات في ساب

SAP ABAP - Operators المشغلات في ساب

يوفر ABAP مجموعة غنية من العوامل للتعامل مع المتغيرات. يتم تصنيف جميع مشغلي ABAP إلى أربع فئات -

  • العمليات الحسابية
  • عوامل المقارنة
  • عوامل Bitwise
  • عوامل سلسلة الأحرف

العمليات الحسابية

تُستخدم العوامل الحسابية في التعبيرات الرياضية بنفس الطريقة التي تُستخدم بها في الجبر. تصف القائمة التالية المعاملات الحسابية. افترض أن المتغير الصحيح A يحمل 20 والمتغير B يحمل 40.

S. لا.عامل الحساب والوصف
1

+ (إضافة)

يضيف قيمًا على جانبي عامل التشغيل. مثال: A + B سيعطي 60.

2

- (الطرح)

يطرح معامل اليد اليمنى من المعامل الأيسر. مثال: A - B سيعطي -20.

3

* (عمليه الضرب)

يضاعف القيم على جانبي عامل التشغيل. مثال: A * B سيعطي 800.

4

/ (القسمة)

يقسم المعامل الأيسر بواسطة المعامل الأيمن. مثال: سيعطي B / A 2.

5

MOD (معامل)

يقسم المعامل الأيسر بواسطة المعامل الأيمن ويعيد الباقي. مثال: سيعطي B MOD A 0.

مثال

REPORT YS_SEP_08. 
DATA: A TYPE I VALUE 150, 
B TYPE I VALUE 50, 
Result TYPE I. 
Result =  A / B. 
WRITE / Result.

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

3

عوامل المقارنة

دعنا نناقش الأنواع المختلفة من عوامل المقارنة لمختلف المعاملات.

S. لا.عامل المقارنة والوصف
1

= (اختبار المساواة). النموذج البديل هو EQ.

للتحقق مما إذا كانت قيم المعاملين متساوية أم لا ، إذا كانت الإجابة بنعم ، يصبح الشرط صحيحًا. المثال (أ = ب) ليس صحيحًا.

2

<> (اختبار عدم المساواة). النموذج البديل هو NE.

للتحقق مما إذا كانت قيم المعاملين متساوية أم لا. إذا كانت القيم غير متساوية ، يصبح الشرط صحيحًا. المثال (A <> B) صحيح.

3

> (أكبر من الاختبار). النموذج البديل هو GT.

للتحقق مما إذا كانت قيمة المعامل الأيسر أكبر من قيمة المعامل الأيمن. إذا كانت الإجابة بنعم ، يصبح الشرط صحيحًا. المثال (أ> ب) ليس صحيحًا.

4

<(أقل من اختبار). الشكل البديل هو LT.

للتحقق مما إذا كانت قيمة المعامل الأيسر أقل من قيمة المعامل الأيمن. إذا كانت الإجابة بنعم ، يصبح الشرط صحيحًا. المثال (أ <ب) صحيح.

5

> = (أكبر من أو يساوي) النموذج البديل هو GE.

للتحقق مما إذا كانت قيمة المعامل الأيسر أكبر من قيمة المعامل الأيمن أو مساوية لها. إذا كانت الإجابة بنعم ، يصبح الشرط صحيحًا. المثال (أ> = ب) ليس صحيحًا.

6

<= (اختبار أقل من أو يساوي). النموذج البديل هو جنيه مصري.

للتحقق مما إذا كانت قيمة المعامل الأيسر أقل من قيمة المعامل الأيمن أو مساوية لها. إذا كانت الإجابة بنعم ، يصبح الشرط صحيحًا. المثال (أ <= ب) صحيح.

7

a1 بين a2 و a3 (اختبار الفاصل الزمني)

للتحقق مما إذا كان a1 يقع بين a2 و a3 (ضمناً). إذا كانت الإجابة بنعم ، يصبح الشرط صحيحًا. المثال (أ بين ب وج) صحيح.

8

مبدئي

يصبح الشرط صحيحًا إذا لم تتغير محتويات المتغير وتم تخصيص قيمته الأولية تلقائيًا. المثال (A INITIAL) ليس صحيحًا

9

ليست أولية

يصبح الشرط صحيحًا إذا تغيرت محتويات المتغير. المثال (A ليس أوليًا) صحيح.

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

فيما يلي ترتيب التفضيل -

  • إذا كان أحد الحقول من النوع الأول ، فسيتم تحويل الآخر إلى النوع الأول.

  • إذا كان أحد الحقول من النوع P ، فسيتم تحويل الآخر إلى النوع P.

  • إذا كان أحد الحقول من النوع D ، فسيتم تحويل الآخر إلى النوع D. ولكن لا يتم تحويل النوعين C و N ويتم مقارنتهما مباشرة. هذا هو الحال مع النوع T.

  • إذا كان أحد الحقول من النوع N والآخر من النوع C أو X ، فسيتم تحويل كلا الحقلين إلى النوع P.

  • إذا كان أحد الحقول من النوع C والآخر من النوع X ، يتم تحويل النوع X إلى النوع C.

مثال 1

REPORT YS_SEP_08. 

DATA: A TYPE I VALUE 115,
      B TYPE I VALUE 119.
      IF A LT B.
      WRITE: / 'A is less than B'.
      ENDIF

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

A is less than B 

مثال 2

REPORT YS_SEP_08. 

DATA: A TYPE I.
      IF A IS INITIAL.
      WRITE: / 'A is assigned'.
      ENDIF.

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

A is assigned.

عوامل Bitwise

يوفر ABAP أيضًا سلسلة من المعاملات المنطقية التي يمكن استخدامها لبناء التعبيرات الجبرية المنطقية. يمكن دمج عوامل البت في تعبيرات معقدة باستخدام الأقواس وما إلى ذلك.

S. لا.عامل Bitwise والوصف
1

بت لا

عامل أحادي يقلب جميع البتات في رقم سداسي عشري إلى القيمة المعاكسة. على سبيل المثال ، تطبيق هذا العامل على رقم سداسي عشري له قيمة مستوى البت 10101010 (على سبيل المثال "AA") سيعطي 01010101.

2

بت و

يقارن هذا المشغل الثنائي كل حقل بتًا بتة باستخدام عامل التشغيل المنطقي AND.

3

BIT-XOR

عامل التشغيل الثنائي الذي يقارن كل حقل بت بتًا باستخدام عامل التشغيل المنطقي XOR (OR الحصري).

4

BIT-OR

عامل التشغيل الثنائي الذي يقارن كل حقل بت بتًا باستخدام عامل التشغيل المنطقي OR.

على سبيل المثال ، فيما يلي جدول الحقيقة الذي يوضح القيم التي تم إنشاؤها عند تطبيق عوامل التشغيل المنطقية AND أو OR أو XOR مقابل قيمتي البت الموجودة في الحقل A والحقل B.

الحقل أالحقل بوأوXOR
00000
01011
10011
11110

عوامل سلسلة الأحرف

فيما يلي قائمة بعوامل تشغيل سلسلة الأحرف -

S. لا.مشغل سلسلة الأحرف والوصف
1

CO (يحتوي فقط)

للتحقق مما إذا كان A يتكون فقط من الأحرف الموجودة في B.

2

CN (لا يحتوي فقط)

للتحقق مما إذا كان A يحتوي على أحرف ليست موجودة في B.

3

CA (يحتوي على أي)

للتحقق مما إذا كان A يحتوي على حرف واحد على الأقل من B.

4

غير متوفر (لا يحتوي على أي)

للتحقق مما إذا كان A لا يحتوي على أي حرف من الحرف B.

5

CS (يحتوي على سلسلة)

للتحقق مما إذا كان A يحتوي على سلسلة الحرف B.

6

NS (لا يحتوي على سلسلة)

للتحقق مما إذا كانت A لا تحتوي على سلسلة الأحرف B.

7

CP (يحتوي على نمط)

يتحقق مما إذا كان A يحتوي على النمط الموجود في B.

8

NP (لا يحتوي على نمط)

يتحقق مما إذا كان A لا يحتوي على النمط الموجود في B.

مثال

REPORT YS_SEP_08. 
DATA: P(10) TYPE C VALUE 'APPLE',
      Q(10) TYPE C VALUE 'CHAIR'.
      IF P CA Q.
	
      WRITE: / 'P contains at least one character of Q'.
      ENDIF.

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

P contains at least one character 


التسميات: