النماذج الذكية بتنسيق SAP ABAP

⚡ ملخص ذكي

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

  • 🖨️ الغرض الأساسي: تُنتج النماذج الذكية مستندات مطبوعة بكميات كبيرة وتدعم الطباعة والفاكس والبريد الإلكتروني والإنترنت من خلال ملف XML المُنشأ.
  • 🕰️ الأصل: SAP تم تقديم النماذج الذكية في عام 1998 للتغلب على قيود SAPالنص البرمجي، وهي أسهل في التطوير والصيانة والنقل.
  • 🧱 التصميم الجرافيكي: يتم ترتيب العقد عن طريق السحب والإفلات في أداة إنشاء النماذج، بحيث يتم تعديل النموذج دون كتابة سطر واحد من لغة البرمجة النصية.
  • ⚙️ الوحدة المُنشأة: يؤدي تنشيط النموذج إلى إنشاء وحدة وظائف، ويحصل برنامج الطباعة على اسمه في وقت التشغيل باستخدام SSF_FUNCTION_MODULE_NAME.
  • 🪟 قاعدة النافذة: تحتوي الصفحة على نافذة رئيسية واحدة على الأكثر، والتي تتدفق عبر الصفحات، بينما تقوم كل نافذة ثانوية بطباعة محتوى ثابت فقط.
  • 📐 جدول أو قالب: ينمو الجدول ديناميكيًا مع البيانات، ويتم استخدام قالب عندما يكون للإخراج حجم ثابت، مثل الشيك أو التذكرة.
  • 🎨 أنماط أنيقة: يتم تخزين تنسيقات الفقرات وتنسيقات الأحرف والألوان والرموز الشريطية في نمط ذكي ويتم إعادة استخدامها عبر النماذج.

SAP نماذج ABAP الذكية

ما هي النماذج الذكية في SAP ABAP؟

SAP تُستخدم النماذج الذكية لإنشاء النماذج وصيانتها للطباعة بكميات كبيرة SAP الأنظمة.كوسيط الإخراج SAP تدعم النماذج الذكية الطابعة، أو الفاكس، أو البريد الإلكتروني، أو الإنترنت (باستخدام إخراج XML الناتج).

SAP قدمت SmartForms في عام 1998 للتغلب على القيود الموجودة في SAP البرامج النصية. تعد SmartForms أسهل في التطوير والصيانة والنقل من SAP النصي.

مقارنة بين Smart Forms و SapScripts

  • تنسيقات الصفحات المتعددة ممكنة في SmartForms وهذا ليس هو الحال SAP مخطوطات
  • من الممكن أن يكون لديك SmartForm بدون نافذة رئيسية.
  • يمكن كتابة الإجراءات الروتينية في أداة SmartForms.
  • يقوم SmartForms بإنشاء وحدة وظيفية عند تنشيطها.
  • لا يمكن إنشاء التسميات في SmartForms.
المعايير النماذج الذكية SAPسيناريو
تنسيقات الصفحات تنسيقات صفحات متعددة في نموذج واحد نموذج صفحة واحدة لكل نموذج
النافذة الرئيسية ليس إلزاميا يلزم وجود نافذة رئيسية واحدة فقط
إجراءات مكتوب داخل النموذج نفسه مكتوب في برنامج الطباعة المنفصل
تفعيل يُنشئ وحدة وظائف لم يتم إنشاء وحدة وظائف
ملصقات لا يمكن إنشاؤه يمكن إنشاء

مزايا النماذج الذكية

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

Archiبنية SAP نموذج ذكي

Archiبنية SAP نموذج ذكي

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

دليل النماذج الذكية

دعونا نذهب من خلال ذلك SAP نظام-

  1. أدخل المعاملة سمارتفورمز في مربع رمز المعاملة.
  2. في الشاشة التالية، أدخل اسم النموذج ثم انقر فوق إنشاء

دليل النماذج الذكية

الشاشة التالية مقسمة إلى ثلاثة أقسام-

دليل النماذج الذكية

نافذة التنقل تتكون من العقد والعقد الفرعية. أنها تحتوي على جميع العناصر (النص، النافذة، إلخ) التي تنتمي إلى نماذج النسغ

  • نافذة الاصلاح يظهر خصائص العناصر
  • طابعة النماذج نافذة تعرض تخطيط الصفحة

كلما قمنا بإنشاء نماذج ذكية، SAP ينشئ/ينشئ وحدة دالة SAPمخطوطات, SAP تسمح لك النماذج بتغيير اللغة.

ستجد في نافذة التنقل

إعلانات البيانات العالمية : يمكن استخدام البيانات المحددة هنا في النموذج الذكي لأغراض الترميز.

واجهة النموذج : هنا يتم تعريف كافة البيانات التي سيتم تمريرها إلى النموذج الذكي من برنامج الطباعة.

دليل النماذج الذكية

سيؤدي النقر بزر الماوس الأيمن على الصفحات إلى السماح بإنشاء صفحة أو نافذة أو رسم أو عنوان جديد.

دليل النماذج الذكية

ستتم الطباعة على أساس حقل "الصفحة التالية".

لكن المعالجة ستتم وفقًا للتسلسل الموجود في نافذة التنقل!

دليل النماذج الذكية

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

دليل النماذج الذكية

الإعدادات في قسم الرسومات في نافذة النموذج الذكي-

دليل النماذج الذكية

Windows في النماذج الذكية

Windows في النماذج الذكية

هناك نوعان من Windows

  1. الرئيسية
  2. ثانوي

نقاط مهمة يجب ملاحظتها

  • لا يمكنك أن يكون لديك أكثر من نافذة رئيسية واحدة في الصفحة. يمكنك أن يكون لديك عدة نوافذ ثانوية
  • مهما كان ما تطبعه في النافذة الثانوية... يجب أن يكون ثابتًا. (إذا كان لديك 20 سطرًا في أمر شراء وكان هناك قيد صفحة، يتم نقل الأسطر إلى الصفحة التالية في النافذة الرئيسية. أي في نوع المحتوى السابق واللاحق، سيتم طباعتها بالتسلسل في النافذة الرئيسية. هذا غير مسموح به في النوافذ الثانوية.

Windows في النماذج الذكية

داخل النافذة الرئيسية يمكننا إضافة نص كمقدمة لتخصيص مخرجات النموذج.

Windows في النماذج الذكية

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

Windows في النماذج الذكية

توفر Smartforms خيار إعطاء رقم العنوان الذي يتم الاحتفاظ به في إدارة العناوين المركزية. سيتم أخذ العنوان مباشرة من جدول ADRC وسيتم ملؤه في النموذج.

Windows في النماذج الذكية

يتوفر محرران مختلفان في Smartforms، وهما: المحرر العادي

Windows في النماذج الذكية

ومحرر الرسومات.

Windows في النماذج الذكية

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

الجداول في نافذة

في رسام الجدول، يمكنك رسم التنسيق حسب متطلبات العميل (على سبيل المثال العنوان، العنوان الفرعي، العنصر، الإجمالي الفرعي، الإجمالي العام وما إلى ذلك)

يمكنك استخدام تخطيط الجدول لتحديد:

  • عدد الخطوط والخلايا
  • ارتفاع كل سطر
  • عرض كل خلية
  • محاذاة الجدول في النافذة

Windows في النماذج الذكية

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

Windows في النماذج الذكية

تدفق برمجة النماذج الذكية

عندما SAP يتم إنشاء قالب النموذج الذكي، ويقوم المستخدم بإنشاء تخطيط النموذج، وتحديد الحقول المطلوبة والشروط وتعليمات البرمجة الخاصة في قالب النموذج الذكي باستخدام Smart Form Builder.

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

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

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

يمكن تمرير اسم النموذج الذكي إلى الدالة Module – 'SSF_FUNCTION_MODULE_NAME'

تدفق برمجة النماذج الذكية

سيؤدي هذا إلى إرجاع اسم الوحدة النمطية للنموذج الذكي المشار إليه.

تدفق برمجة النماذج الذكية

سيقوم برنامج الطباعة باستدعاء FM "SSF_FUNCTION_MODULE_NAME" للحصول على اسم الوحدة الوظيفية في وقت التشغيل. وبعد ذلك سيتم استدعاء وحدة الوظيفة التي تم الحصول عليها لتنفيذ النموذج الذكي.

تدفق برمجة النماذج الذكية

كيفية استدعاء نموذج ذكي من برنامج طباعة

تُكتب عملية الاستدعاء المكونة من خطوتين والموصوفة أعلاه دائمًا بنفس الطريقة. يقوم البرنامج أولاً بحل الاسم المُولّد، ثم ينفذه باستخدام بيانات التطبيق.

  1. قم بحل اسم وحدة الوظائف: مرر اسم النموذج إلى SSF_FUNCTION_MODULE_NAME. يتغير الاسم المُنشأ مع كل نظام، لذا يجب عدم تضمينه بشكل ثابت في الكود.
  2. استدعاء الوحدة النمطية المُنشأة ديناميكيًا: استخدم CALL FUNCTION مع المتغير الذي يحتوي على الاسم الذي تم حله، وقم بتمرير البيانات من خلال المعلمات المحددة في واجهة النموذج.
  3. التحكم في المخرجات: قم بتعبئة بنية التحكم SSFCTRLOP لإخفاء مربع حوار الطباعة أو لطلب معاينة، وقم بتعبئة SSFCOMPOP بجهاز الإخراج.
  4. معالجة الاستثناءات: يقوم النموذج المُنشأ بإثارة الأخطاء FORMATTING_ERROR و INTERNAL_ERROR و SEND_ERROR و USER_CANCELED، لذلك يجب التحقق من SY-SUBRC بعد الاستدعاء.
DATA: lv_fm_name TYPE rs38l_fnam,
      ls_control TYPE ssfctrlop,
      ls_output  TYPE ssfcompop.

* 1. Get the name of the generated function module
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
  EXPORTING
    formname           = 'Z_SMART_INVOICE'
  IMPORTING
    fm_name            = lv_fm_name
  EXCEPTIONS
    no_form            = 1
    no_function_module = 2
    OTHERS             = 3.

IF sy-subrc <> 0.
  MESSAGE e001(zsf).          " Form not found
ENDIF.

* 2. Call the generated module with the form data
ls_control-no_dialog = 'X'.
ls_control-preview   = 'X'.

CALL FUNCTION lv_fm_name
  EXPORTING
    control_parameters = ls_control
    output_options     = ls_output
    is_header          = ls_header
  TABLES
    it_items           = lt_items
  EXCEPTIONS
    formatting_error   = 1
    internal_error     = 2
    send_error         = 3
    user_canceled      = 4
    OTHERS             = 5.

⚠️ تحذير: يختلف اسم وحدة الوظائف المُنشأة، على سبيل المثال /1BCDWB/SF00000123، من نظام لآخر. لذا، يجب دائمًا حله باستخدام SSF_FUNCTION_MODULE_NAME، وإلا سيفشل البرنامج بعد النقل.

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

على سبيل المثال، نموذج الضرائب/ الشيكات/ نموذج شركة الطيران/ تذكرة السكك الحديدية: كل هذه النماذج تستخدم.

الفرق الكبير بين الجدول والقالب هو أن ارتفاع الجدول يتغير ديناميكيًا. أما في القالب، فنسمي الصف "سطرًا".

القوالب بتنسيق SAP ABAP

الأنماط الذكية

يحتوي النمط الذكي على:

  • بيانات الرأس التي تحتوي على القيم الافتراضية للنمط الذكي
  • تنسيقات الفقرة بما في ذلك المسافات البادئة والتباعد وسمات الخط وعلامات التبويب والمخطط التفصيلي والترقيم
  • تنسيقات الأحرف بما في ذلك التأثيرات (المرتفعة والمنخفضة) والرمز الشريطي وسمات الخط
  • الألوان والتسطير لتنسيق الفقرة أو الحرف

يمكنك استخدام المعاملة "smartforms" / "smartstyles" لإنشاء نمط ذكي.

القوالب بتنسيق SAP ABAP

💡 نصيحة: قم بتعيين النمط الذكي في خصائص النموذج بدلاً من تعيينه على كل عقدة نصية. سيؤدي تغيير واحد في النمط إلى تطبيقه على جميع فقرات النموذج.

هذا كل شيء في هذا البرنامج التعليمي

الأسئلة الشائعة

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

قم بتعيين GETOTF في بنية التحكم، واقرأ بيانات OTF التي تُرجعها الوحدة المُولَّدة، ومرّرها إلى وحدة الدالة CONVERT_OTF. والنتيجة هي جدول ثنائي يمكن إرساله عبر البريد الإلكتروني أو تنزيله.

لا. النموذج الذكي مستقل عن العميل، لذا فهو متاح في كل عميل للنظام بعد التفعيل. SAPيعتمد شكل النص البرمجي على العميل ويجب نسخه باستخدام SCC1.

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

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

تلخيص هذه التدوينة بـ: