Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Р. Кречмер, В. Вейс - Разработка приложений SAP R3 на языке АВАР4.pdf
Скачиваний:
532
Добавлен:
17.02.2016
Размер:
29.74 Mб
Скачать

182

Глава16

 

 

 

Каждая строка этой таблицы соответствует определенному условию выборки. В первых двух столбцах (sign и option) указывается тип операции:

sign = I (Including): включающая операция (положительная)

sign = E (Excluding): исключающая операция (отрицательная)

option = ВТ (BeTween): между (например, фамилия начинается с буквы, находящейся между M и Shultz)

option = CР (Contains Pattern): содержит шаблон (например, фамилия, начинающаяся с буквы М)

option • EQ (EQual): равно (например, name • Smith)

option • GE (Greate than or Equal to): больше или равно (например, id >= 1)

Два последних столбца (low и high) содержат используемые при сравнении значения и связаны с соответствующими полями таблицы: они должны иметь одинаковые тип и длину (в примере то же, что и для поля customers-name). Поле high применяется только для задания диапазона значений (option = ВТ), в противном случае оно сохраняет начальное значение.

При выполнении программы внутренняя таблица, связанная с составным критерием, автоматически заполняется данными, введенными пользователем на экране выбора. Однако ее можно заполнить значениями по умолчанию до отображения этого экрана, а также работать с ней, как с обычной таблицей (например, проверять введенные пользователем данные на корректность или правдоподобность). Выполнение этих проверок лучше всего организовать на основе событий экрана выбора, работа с которыми описана в следующем разделе. Например, если какое-нибудь условие проверки не удовлетворяется, на экран выбора можно вывести соответствующее сообщение, после чего обновить экран и разрешить новый ввод данных в поля.

События экрана выбора

ВАВАР/4 предусмотрены различные события, обеспечивающие задание значений на экране выбора

иприсвоение критерию выборки этих значений:

initialization (инициализация): выполняется сразу после начала создания отчета и до обработки значений, заданных на экране выбора

at selection-screen output (вывод на экран): выполняется до того как будет выведен экрана выбора

at selection-screen on p/s (параметр или составной критерий): выполняется после задания пользователем параметра р или составного критерия s

at selection-screen: выполняется после ввода всех критериев выборки

Событие initialization происходит только однажды, а событие at selection-screen output — при каждом нажатии Enter (ввод), если экран выбора активен. После обработки всех перечисленных событий АВАР/4 продолжает выполнение события start-of-selection, обрабатывая самый верхний уровень вложения (в древовидной структуре Logical Database) события get (см. главу 15).

Контрольввода

События at selection-screen и at selection-screen on p/s рекомендуется использовать для проверки введенных пользователем данных на допустимость значений и правдоподобие. Например, если в коде ZIP задано меньше пяти символов, то пользователь, получающий отчет на основании следующей программы, увидит на экране сообщение, что значение кода ZIP недопустимо (invalid):

Каждое сообщение об ошибке, получаемое по событию at selection-screen, немедленно останавливает программу-отчет и обновляет экран выбора. При этом можно изменить все критерии выборки. Если используется дополнение on p/s, то после события разрешается ввод только данного параметра или составного критерия. Текст сообщения об ошибке создается или изменяется двойным щелчком мыши