КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Три основных события
Events (События). Программы ABAP/4 управляемы событиями. Событие (event) – тэг, который идентифицирует раздел кода. Раздел кода, связанный с событием, начинается с названия события и заканчивается тогда, когда начинается следующее событие. Основные события – initialization, start-of-selection, и end-of-selection. Названия события – зарезервированные слова. Вы не можете создать новые события. Вы можете только использовать существующие. report ztx1701. initialization. write / '1'.
start-of-selection. write / '2'.
end-of-selection. write / '3'. Программа драйвера (driver program) – программа, которая управляет другой программой. Программы драйвера находятся в системе R/3. Когда Вы запускаете свою программу, сначала начинает работать программа драйвера, которая управляет событиями в Вашей программе. Код, связанный с событием, вызван оператором в программе драйвера. События вызываются программой драйвера в предопределенной последовательности. Порядок выполнения событий определен программой драйвера, а не Вашей программой. Поэтому, Вы можете записывать события в любом порядке, однако порядок выполнения событий будет одним и тем же. Порядок событий в Вашей программе не имеет значения; они будут всегда вызываться в той последовательности, в которой записаны в программе драйвера. report ztx1702. data f1 type i value 1.
end-of-selection. write: / '3. f1 =', f1.
start-of-selection. write: / '2. f1 =', f1. f1 = 99.
initialization. write: / '1. f1 =', f1. add 1 to f1. 1. f1 = 1 2. f1 = 2 3. f1 = 99 Последовательность выполнения всегда – initialization, start-of-selection, end-of-selection. Также есть другие события; некоторые происходят после initialization, некоторые происходят между start-of-selection и end-of-selection. Программисты обычно записывают события в порядке их выполнения. Есть одиннадцать различных событий в ABAP/4, они категоризированны согласно тому, как они вызваются. События ABAP/4
События драйвера вызваны программой драйвера. Пользовательские события вызваны пользователем через пользовательский интерфейс. События программы – вызванные изнутри Вашей программы. Использование событий с оператором write. У событий есть два необычных эффекта при использовании их с оператором write:
Событие top-of-page. Выполняется в начале страницы. Событие start-of-selection. Выполняется в начале выбора. report ztx1703 no standard page heading. parameters p1(8).
write: / 'p1 =', p1.
initialization. p1 = 'Init'.
end-of-selection. write: /(14) sy-uline, / 'End of program'.
top-of-page. write: / 'This is My Title'. skip. This is My Title p1 = INIT -------------- End of program Нельзя помещать вызов событий в операторы условий и цикла. Это вызовет ошибку!!! Пример неправильного вызова: report ztx1704. data f1.
start-of-selection. f1 = 'A'.
if f1 = 'A'. end-of-selection. write: / f1. endif. У событий более высокий приоритет чем других операторов ABAP/4. Вы не должны помещать определения данных в пределах событий. Хотя это не вызывает синтаксическую ошибку, это – плохой стиль программирования. Все определения данных должны быть сделаны в начале программы. Прекращение событий. Вы можете выйти из события в любое время, используя следующие операторы:
Эффект stop не зависит от того, записан ли он в цикле или нет. Во всех событиях
В событиях, которые происходят перед start-of-selection
В start-of-selection и событиях, которые происходят после этого
check, exit и stop не устанавливает значение sy-subrc. Если Вы хотите установить это значение, Вы можете назначить числовое значение этой переменной перед остановкой.
Дата добавления: 2014-01-07; Просмотров: 919; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |