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. Оставляйте свои комментарии в случае каких-либо сомнений.