Навчальний посібник із підекранів ABAP: підекран виклику SAP

Перш ніж прочитати цей посібник, переконайтеся, що таке діалогова програма...

ПІДЕКРАН ДЗВІНКУ

  • Підекран — це незалежний екран, який відображається в області іншого («головного») екрана.
  • Підекрани дозволяють вбудовувати один екран в інший під час виконання. На головному екрані можна включити кілька підекранів.
  • Термін підекран застосовується як до екрана, який ви вбудовуєте, так і до області на головному екрані, у якій ви його розміщуєте. У цьому посібнику йдеться про підекранні області. Фактичні екрани, створені через транзакцію SE51, називаються екранами підекранів, якщо вони визначені в атрибутах екрана.
  • Коли ви використовуєте підекран, логіка потоку вбудованого екрана також вбудована в логіку потоку головного екрана. Отже, використання підекранів на екранах схоже на використання включення в Програми ABAP.

Щоб використовувати підекран, ви повинні виконати три прості кроки

  1. Визначте підекранні області на екрані
  2. Визначте відповідні підекранні екрани
  3. Включіть підекранний екран у підекранну область.

Крім того, вам потрібно налаштувати рамку підекрана та головного екрана. Його потрібно вказати в полі імені поля.

Крім того, вам також потрібно налаштувати поля на підекрані, щоб вони відображалися на головному екрані. Якщо підекран визначено більшим, ніж доступна область на головному екрані, буде видно лише ту частину підекрана, яка вміщується в доступну область. Площа завжди вимірюється від верхнього лівого кута екрана. Тому вам слід бути належним чином уважним під час визначення підекранних областей і створення підекранів.

приклад

Наприклад, тут ми визначили дві підекранні області на головному екрані та прикріпили два різні підекрани до відповідних областей. Щоразу, коли викликається головний екран, викликається PBO головного екрана. Але перед відображенням також викликаються PBO кожного екрана, доданого до підекранних областей на головному екрані.

Виклик Subscreen в SAP

Ви можете включити допоміжний екран за допомогою оператора CALL SUBSCREEN у логіку потоку головного екрана.

Щоб включити екран підекрана в область підекрана головного екрана та викликати його логіку потоку PBO, скористайтеся наступним оператором у події PBO головного екрана:

PROCESS BEFORE OUTPUT.

CALL SUBSCREEN <area> INCLUDING [<prog>] <dynp>.

Цей оператор призначає підекранний екран із номером до підекранної області, що називається . Ви також можете вказати програму, у якій визначається підекран (необов’язково). Якщо ви не вкажете програму явно, система шукатиме доекранний екран у тій самій програмі ABAP, що й основна програма. Якщо він не знаходить відповідний підекран, виникає помилка виконання. Логіка потоку PBO підекранного екрана також включена в ту саму точку. Це може викликати модулі PBO програми ABAP, у якій визначено підекранний екран. Наприкінці підекрану PBO глобальні поля з програми передаються до будь-яких полів екрана з ідентичними назвами на підекрані. Логіка потоку PBO екрана підекрану може сама включати додаткові підекрани.

Ім'я підекранної області необхідно вводити безпосередньо без лапок. Ви можете вказати імена і або як літерали, або як змінні. Якщо ви використовуєте змінні, ви повинні оголосити та заповнити однакові імена змінних у програмі ABAP. Номер екрана має містити 4 символи. Якщо ви не призначите підекран для області, вона залишиться порожньою.

Щоб викликати логіку потоку PAI підекрана, скористайтеся наступним оператором у логіці потоку PAI головного екрана:

PROCESS AFTER INPUT.

CALL SUBSCREEN <area>.

Цей оператор включає логіку потоку PAI підекранного екрана, включеного в підекранну область у події PBO. Це може викликати модулі PAI програми ABAP, у якій визначено підекранний екран. Дані транспортуються між полями з ідентичними назвами на підекрані та програмою ABAP або під час ініціювання події PAI, або у відповідних операторах FIELD у логіці потоку PAI на підекрані.

Оригінали пам'яті

  • Назви елементів підекранів на екрані мають бути унікальними
  • Ви не повинні мати OK_CODE або FCODE, додані до підекрану. Сам OK_CODE головного екрана є OK_CODE додаткового екрана
  • Підекрани не можуть мати жодних діалогових модулів, які містять SET TITLEBAR, SET PF-STATUS, SET SCREEN, LEAVE SCREEN або LEAVE TO SCREEN. Це спричинить помилку виконання.
  • Вам потрібно викликати його в логіці потоку (як PBO, так і PAI) на головному екрані.
  • CALL SUBSCREEN не дозволяється в операторах CHAIN..ENDCHAIN ​​і LOOP ENDLOOP
  • Не може мати модуль AT EXIT-COMMAND
  • Поля, які ви використовуєте, є глобальними. Вони повинні бути оголошені у верхній частині списку
  • Якщо використовувати підекрани з іншого діалогова програма передача даних не відбудеться, якщо ви не додасте спеціальний код.