SAP ABAP - Open SQL Overview نظرة عامة على لغة الاستعلام البنيوية المفتوحة في ساب
SAP ABAP - Open SQL Overview نظرة عامة على لغة الاستعلام البنيوية المفتوحة في ساب
SAP ABAP - Open SQL Overview نظرة عامة على لغة الاستعلام البنيوية المفتوحة في ساب
يشير Open SQL إلى المجموعة الفرعية من عبارات ABAP التي تتيح الوصول المباشر إلى البيانات في قاعدة البيانات المركزية لـ AS ABAP الحالي. تعيّن عبارات SQL المفتوحة وظيفة لغة معالجة البيانات في SQL في ABAP المدعومة من قبل جميع أنظمة قواعد البيانات.
يتم تحويل عبارات Open SQL إلى SQL الخاصة بقاعدة البيانات في واجهة Open SQL لواجهة قاعدة البيانات. ثم يتم نقلها إلى نظام قاعدة البيانات وتنفيذها. يمكن استخدام عبارات SQL المفتوحة للوصول إلى جداول قاعدة البيانات المُعلنة في قاموس ABAP. يتم الوصول إلى قاعدة البيانات المركزية لـ AS ABAP افتراضيًا ويمكن أيضًا الوصول إلى قواعد البيانات الأخرى عبر اتصالات قاعدة البيانات الثانوية.
عندما يتم استخدام أي من هذه العبارات في برنامج ABAP ، فمن المهم التحقق مما إذا كان الإجراء المنفذ ناجحًا. إذا حاول المرء إدراج سجل في جدول قاعدة بيانات ولم يتم إدراجه بشكل صحيح ، فمن الضروري جدًا معرفة ذلك حتى يمكن اتخاذ الإجراء المناسب في البرنامج. يمكن القيام بذلك باستخدام حقل نظام تم استخدامه بالفعل ، وهو SY-SUBRC. عندما يتم تنفيذ جملة بنجاح ، سيحتوي حقل SY-SUBRC على قيمة 0 ، لذلك يمكن التحقق من ذلك ويمكن للمرء متابعة البرنامج إذا ظهر.
يتم استخدام بيان البيانات للإعلان عن منطقة عمل. دعونا نطلق على هذا الاسم "wa_customers1". بدلاً من الإعلان عن نوع بيانات واحد لهذا ، يمكن التصريح عن عدة حقول تشكل الجدول. أسهل طريقة للقيام بذلك هي استخدام عبارة LIKE.
إضافة حقول في ساب أريبا ABAP
تم الإعلان عن منطقة عمل wa_customers1 هنا مثل جدول ZCUSTOMERS1 ، مع الأخذ في نفس الهيكل دون أن تصبح طاولة بحد ذاتها. يمكن لمنطقة العمل هذه تخزين سجل واحد فقط. بمجرد الإعلان عنه ، يمكن استخدام عبارة INSERT لإدراج منطقة العمل والسجل الذي يحتفظ به في الجدول. سيقرأ الرمز هنا كـ "INSERT ZCUSTOMERS1 FROM wa_customers1".
يجب ملء منطقة العمل ببعض البيانات. استخدم أسماء الحقول من جدول ZCUSTOMERS1. يمكن القيام بذلك عن طريق التنقل الأمامي ، أو النقر المزدوج فوق اسم الجدول في الرمز أو عن طريق فتح جلسة جديدة واستخدام المعاملة SE11. يمكن بعد ذلك نسخ حقول الجدول ولصقها في محرر ABAP.
فيما يلي مقتطف الشفرة -
DATA wa_customers1 LIKE ZCUSTOMERS1. wa_customers1-customer = '100006'. wa_customers1-name = 'DAVE'. wa_customers1-title = 'MR'. wa_customers1-dob = '19931017'. INSERT ZCUSTOMERS1 FROM wa_customers1.
يمكن بعد ذلك استخدام عبارة CHECK على النحو التالي. هذا يعني أنه إذا تم إدخال السجل بشكل صحيح ، فسيحدد النظام ذلك. إذا لم يكن كذلك ، فسيتم عرض رمز SY-SUBRC الذي لن يساوي الصفر. فيما يلي مقتطف الشفرة -
IF SY-SUBRC = 0. WRITE 'Record Inserted Successfully'. ELSE. WRITE: 'The return code is ', SY-SUBRC. ENDIF.
تحقق من البرنامج ، واحفظه ، وقم بتنشيطه ، ثم اختبره. يجب أن تظهر نافذة الإخراج كـ "تم إدراج السجل بنجاح".
مسح حقل او استعلام
تسمح عبارة CLEAR بمسح حقل أو متغير لإدخال بيانات جديدة في مكانها ، مما يسمح بإعادة استخدامها. تُستخدم عبارة CLEAR بشكل عام في البرامج وتسمح باستخدام الحقول الموجودة عدة مرات.
في مقتطف الكود السابق ، تمت تعبئة بنية منطقة العمل بالبيانات لإنشاء سجل جديد ليتم إدراجه في جدول ZCUSTOMERS1 ثم يتم إجراء فحص التحقق من الصحة. إذا أردنا إدراج سجل جديد ، فيجب استخدام عبارة CLEAR حتى يمكن ملؤها مرة أخرى بالبيانات الجديدة.
تحديث الاستعلام في ساب ARAP
إذا كنت ترغب في تحديث واحد أو أكثر من السجلات الموجودة في جدول في نفس الوقت ، فاستخدم عبارة UPDATE. على غرار عبارة INSERT ، يتم الإعلان عن منطقة عمل ، مليئة بالبيانات الجديدة التي يتم تسجيلها بعد ذلك في السجل أثناء تنفيذ البرنامج. سيتم هنا تحديث السجل الذي تم إنشاؤه مسبقًا باستخدام بيان INSERT. ما عليك سوى تعديل النص المخزن في حقلي NAME و TITLE. ثم في سطر جديد ، يتم استخدام نفس البنية المستخدمة في عبارة INSERT ، وهذه المرة باستخدام عبارة UPDATE كما هو موضح في مقتطف الشفرة التالي -
DATA wa_customers1 LIKE ZCUSTOMERS1. wa_customers1-customer = '100006'. wa_customers1-name = 'RICHARD'. wa_customers1-title = 'MR'. wa_customers1-dob = '19931017'. UPDATE ZCUSTOMERS1 FROM wa_customers1.
عند تنفيذ جملة UPDATE ، يمكنك عرض متصفح البيانات في قاموس ABAP لترى أنه تم تحديث السجل بنجاح.
كيفية تعديل الاستعلام
يمكن اعتبار عبارة MODIFY مزيجًا من عبارات INSERT و UPDATE. يمكن استخدامه إما لإدراج سجل جديد أو تعديل سجل موجود. وهو يتبع بناء جملة مماثل للعبارتين السابقتين في تعديل السجل من البيانات المدخلة في منطقة العمل.
عند تنفيذ هذا البيان ، سيتم التحقق من الحقول الرئيسية المعنية مقابل تلك الموجودة في الجدول. إذا كان هناك بالفعل سجل به قيم الحقول الأساسية هذه ، فسيتم تحديثه. إذا لم يكن كذلك ، فسيتم إنشاء سجل جديد.
فيما يلي مقتطف الشفرة لإنشاء سجل جديد -
CLEAR wa_customers1. DATA wa_customers1 LIKE ZCUSTOMERS1. wa_customers1-customer = '100007'. wa_customers1-name = 'RALPH'. wa_customers1-title = 'MR'. wa_customers1-dob = '19910921'. MODIFY ZCUSTOMERS1 FROM wa_customers1.
في هذا المثال ، يتم استخدام عبارة CLEAR بحيث يمكن وضع إدخال جديد في منطقة العمل ، ثم يتم إضافة العميل (الرقم) 100007. نظرًا لأن هذه قيمة حقل مفتاح جديدة وفريدة من نوعها ، فسيتم إدراج سجل جديد ، ويتم إجراء فحص تحقق آخر.
عند تنفيذ ذلك وعرض البيانات في متصفح البيانات ، سيتم إنشاء سجل جديد للعميل رقم 100007 (RALPH).
ينتج الكود أعلاه الإخراج التالي (محتويات الجدول) -
التسميات: SAP ABAP Advanced Business Application Programming (برمجة تطبيقات الأعمال المتقدمة) ساب
<< الصفحة الرئيسية