SAP Процесс по ценности и процесс по запросу о помощи

Во-первых, если вы ничего не знаете о логике Screen Flow и ее использовании в SAP , мы рекомендуем вам ознакомиться с нашим руководством по диалоговой программе.

Теперь давайте подробно рассмотрим POH и POV.

Обработка запроса на помощь (POH): Справка F1

  • Всякий раз, когда нажимается F1, выполняется событие POH для указанного элемента данных.
  • Если событие PROCESS ON HELP-REQUEST не существует в логике процесса экрана, документация поля в ABAP-словаре берется за основу и отображается. Даже если это не завершается, помощь не отображается.
  • Чтобы отобразить справочную документацию по полям, необходимо закодировать следующую логику потока экрана в событии POH:
PROCESS ON HELP-REQUEST
FIELD <f> [MODULE <mod>] WITH <num>
  • Если для поля имеется документация по элементу данных для конкретного экрана , вы можете отобразить его, указав его номер .
  • Номер может быть литералом или переменной. Переменная должна быть объявлена ​​и заполнена в соответствующей ABAP-программе.
  • Обратите внимание: оператор FIELD не передает содержимое поля экрана. к программе ABAP в событии PROCESS ON HELP-REQUEST. Он просто показывает справочную документацию. Вот и все.

Модуль определяется в программе ABAP как обычный модуль PAI. Логика обработки модуля должна гарантировать, что для рассматриваемого поля отображается адекватная справка. Вместо вызова дополнительного экрана с текстовыми полями следует использовать один из следующих функциональных модулей для отображения подходящего SAPдокумент сценария

HELP_OBJECT_SHOW_FOR_FIELD

  • Этот функциональный модуль отображает документацию по элементам данных для компонентов любой структуры или таблицы базы данных из словаря ABAP.
  • Вы передаете имя компонента и структуру или таблицу в параметры импорта FIELD и TABLE.

HELP_OBJECT_SHOW

  • Используйте этот функциональный модуль для отображения любого SAPдокумент сценария.
  • В параметры импорта DOKCLASS и DOKNAME необходимо передать класс документа (например, TX для общих текстов, DE для документации по элементам данных) и имя документа.
  • По техническим причинам необходимо также передать пустую внутреннюю таблицу с типом строки TLINE в параметр таблиц функционального модуля.

Процесс по ценности (POV): F4

  • Когда пользователь выбирает функцию Возможные записи (F4), система отображает возможные входные значения для поля (значения, проверочная таблица, код соответствия), при условии, что они были сохранены разработчиком.
  • Событие PROCESS ON VALUE-REQUEST обрабатывается всегда, если пользователь вызвал «Возможные записи».
  • Чтобы определить возможные значения для поля на экране, вам необходимо определить следующее в событии POV логики потока экрана:
PROCESS ON VALUE-REQUEST

FIELD field name MODULE module name
  • Для возможных значений в модуле, определенном выше, вы должны использовать общий функциональный модуль HELP_VALUES_GET_WITH_TABLE чтобы получить возможные значения из словаря ABAP.

Есть и другие функции, которые также можно использовать для помощи при вводе:

F4IF_FIELD_VALUE_REQUEST

  • Динамически вызывает справку по вводу словаря ABAP.
  • Вы можете передать имена компонентов структуры или таблицы базы данных словаря ABAP в функциональный модуль в параметрах импорта TABNAME и FIELDNAME.
  • Функциональный модуль запускает ABAP-словарь введите справку для этого компонента. Все соответствующие поля экрана считываются.
  • Если указать параметры импорта DYNPPROG, DYNPNR и DYNPROFIELD, выбор пользователя возвращается в соответствующее поле на экране.
  • Если вы укажете параметр таблицы RETURN_TAB, вместо этого выборка будет возвращена в таблицу.
MODULE VALUE_CARRIER INPUT.

CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'

EXPORTING

TABNAME    = 'DEMOF4HELP'

FIELDNAME  = 'CARRIER1'

DYNPPROG   =  PROGNAME

DYNPNR  =  DYNNUM

DYNPROFIELD= 'CARRIER'.

ENDMODULE.

F4IF_INT_TABLE_VALUE_REQUEST

  • Этот функциональный модуль отображает список значений, созданный вами в ABAP-программа.
  • Список значений передается функциональному модулю как параметр таблицы VALUE_TAB.
  • Если указать параметры импорта DYNPPROG, DYNPNR и DYNPROFIELD, выбор пользователя возвращается в соответствующее поле на экране.
  • Если вы укажете параметр таблицы RETURN_TAB, вместо этого выборка будет возвращена в таблицу.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING

RETFIELD         =  'CONNID'
DYNPPROG         =  PROGNAME
DYNPNR           =  DYNNUM
DYNPROFIELD      =  'CONNECTION'
VALUE_ORG        = 'S'
TABLES
VALUE_TAB        = VALUES_TAB.

Это все для POH и POV. Оставляйте свои комментарии в случае каких-либо сомнений.