Читайте также: |
|
Упражнение 15: Экраны: перенос данных
Цели упражнения
Выполнив это упражнение, вы сможете
• заполнять поля экрана данными из программы
Практический пример
Экран программы ZBC400_##_DYNPRO должен отображать подробные данные выбранной записи бронирования. Необходимо обеспечить возможность изменения данных пользователем в программе после выхода из экрана.
Задание 1:
Подготовка
1. Расширьте программу ZBC400_##_DYNPRO_1 или скопируйте шаблон SAPBC400UDS_DYNPRO_1 с присвоением ему нового имени ZBC400_##_DYNPRO_2 для дальнейшей обработки.
2. Для создания рабочей области в программе используйте оператор TABLES. Эта рабочая область будет использоваться в качестве интерфейса экрана. Она должна иметь то же имя, что и структура, используемая на экране.
3. Проверьте доступность ключевых полей выбранной записи бронирования при выборе пользователем строки основного списка (HIDE).
Задание 2:
Проверка полномочий и сбор данных перед вызовом экрана
1. Требуется изменить программу для обеспечения возможности изменения данных в базе данных. Проверьте, что обработка экрана возможна только при наличии у пользователя полномочий на изменение данных выбранной авиакомпании. Если пользователь не имеет полномочий, выполняется возврат к основному списку с выводом сообщения 047 класса BC400. Используется вид сообщения "S".
При наличии у пользователя необходимых полномочий выполняется считывание выбранных записей (всех полей) из таблицы базы данных SBOOK в рабочей области wa_sbook. При этом единичном доступе
Продолжение на следующей странице
также осуществляется сбор информации об отсутствующих данных бронирования и проверка актуальности данных, доступных для вывода на экран.
2. Непосредственно перед вызовом экрана соответствующие данные копируются из wa_sbook в рабочую область TABLES для их автоматического переноса в экран.
Решение 15: Экраны: перенос данных
Задание 1:
Подготовка
1. Расширьте программу ZBC400_##_DYNPRO_1 или скопируйте шаблон SAPBC400UDS_DYNPRO_1 с присвоением ему нового имени ZBC400_##_DYNPRO_2 для дальнейшей обработки.
a) Этот шаг выполняется в соответствии с обычной процедурой.
2. Для создания рабочей области в программе используйте оператор TABLES. Эта рабочая область будет использоваться в качестве интерфейса экрана. Она должна иметь то же имя, что и структура, используемая на экране.
a) Этот шаг выполняется в соответствии с обычной процедурой.
3. Проверьте доступность ключевых полей выбранной записи бронирования при выборе пользователем строки основного списка (HIDE).
a) См. выдержку из исходного текста в примере решения.
Задание 2:
Проверка полномочий и сбор данных перед вызовом экрана
1. Требуется изменить программу для обеспечения возможности изменения данных в базе данных. Проверьте, что обработка экрана возможна только при наличии у пользователя полномочий на изменение данных выбранной авиакомпании. Если пользователь не имеет полномочий, выполняется возврат к основному списку с выводом сообщения 047 класса BC400. Используется вид сообщения "S".
При наличии у пользователя необходимых полномочий выполняется считывание выбранных записей (всех полей) из таблицы базы данных SBOOK в рабочей области wa_sbook. При этом единичном доступе также осуществляется сбор информации об отсутствующих данных бронирования и проверка актуальности данных, доступных для вывода на экран.
a) См. выдержку из исходного текста в примере решения.
2. Непосредственно перед вызовом экрана соответствующие данные копируются из wa_sbook в рабочую область TABLES для их автоматического переноса в экран.
a) См. выдержку из исходного текста в примере решения.
Продолжение на следующей странице
Результат
Выдержка из исходного текста: SAPBC400UDS_DYNPRO_2
REPORT sapbc400uds_dynpro_2.
CONSTANTS: actvt_display TYPE activ_auth VALUE ’03’, actvt_change TYPE activ_auth VALUE ’02’.
PARAMETERS pa_anum TYPE sbook-agencynum.
* workarea for SELECT
DATA wa_sbook TYPE sbook.
* workarea for data communication with screen
Дата добавления: 2015-11-16; просмотров: 61 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
SELECT-OPTIONSname FORdata_object. | | | CLEAR wa_sbook. |