Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

BC400_RU_ECC_2005

.pdf
Скачиваний:
1459
Добавлен:
21.05.2015
Размер:
40.8 Mб
Скачать

BC400

Урок: Работа с элементарными объектами данных

Вслучае функций открывающая скобка является частью имени функции. Остальные символы также должны быть отделены по крайней мере одним пробелом.

Вцелом, в отношении последовательности обработки применяются стандартные алгебраические правила: сначала обрабатываются выражения в скобках, затем степени, умножение/деление и, наконец, сложение/вычитание.

Для получения подробной информации о доступных операциях и функциях см. документацию по ключевым словам оператора COMPUTE.

Рисунок 56: Условные ветви

 

© 2006 г. SAP AG All rights reserved. Авторские

91

06-04-2006

права защищены.

Глава 4: Основные языковые элементы ABAP

BC400

В ABAP существуют два способа выполнения различных последовательностей операторов, в зависимости от определенных условий:

В конструкте IF можно определить в качестве условий проверки любые логические выражения. Если условие удовлетворяется, в системе выполняется соответствующий блок операторов. В противном случае проверяется условие, указанное в ветви ELSEIF (возможен ввод нескольких условий), и т.д. Если ни одно из указанных условий не выполнено, то выполняется ветвь ELSE, если она доступна. Ветви ELSEIF и ELSE являются необязательными. Для получения подробной информации о составлении логического выражения см. документацию по ключевым словам для оператора IF.

Конструкт CASE можно использовать для четкого разграничения блоков. Содержимое поля, указанное в компоненте CASE, проверяется по объектам данных, перечисленным в ветвях WHEN, для определения соответствия. Если содержимое поля совпадает, то обрабатывается соответствующий блок операторов. Если соответствие отсутствует,

в системе выполняется ветвь OTHERS, если таковая доступна. Все дальнейшие дополнения необязательны, за исключением первой ветви

WHEN.

В обоих конструктах проверка условия или соответствия выполняется последовательно сверху вниз. После выполнения блока операторов ветви осуществляется немедленный переход к ENDIF или ENDCASE.

Рекомендация: При необходимости выполнения проверок соответствия значения поля другим значениям следует выбрать конструкт CASE, а не оператор IF, поскольку он обеспечивает

большую четкость и более верный результат.

92

© 2006 г. SAP AG All rights reserved. Авторские

 

права защищены.

06-04-2006

BC400

Урок: Работа с элементарными объектами данных

Рисунок 57: Циклы

В ABAP существуют четыре конструкта циклов. В циклах DO и WHILE системное поле SY-INDEX содержит номер текущего прогона цикла. Следовательно, запрос этого системного поля целесообразен только в рамках цикла. Во вложенных циклах поле SY-INDEX всегда содержит номер прогона цикла, к которому оно относится.

Безусловные/управляемые индексом циклы

Блок операторов между DO и ENDDO непрерывно выполняется до выхода из цикла с помощью команд прерывания, таких как EXIT. Также имеется возможность определения максимального количества прогонов цикла; в противном случае возможно образование бесконечного цикла.

Управляемые заголовком циклы

Блок операторов между WHILE и ENDWHILE непрерывно выполняется до тех пор, пока не перестанет удовлетворяться указанное условие. Перед очередным выполнением блока операторов всегда осуществляется проверка условия.

Циклы считывания

Цикл SELECT можно использовать для последовательного считывания нескольких записей из таблицы базы данных. Во внутренней таблице (табличной переменной в программе) та же функция считывания реализуется в цикле LOOP.

 

© 2006 г. SAP AG All rights reserved. Авторские

93

06-04-2006

права защищены.

Глава 4: Основные языковые элементы ABAP

BC400

Рисунок 58: Диалоговые сообщения

Оператор MESSAGE используется для отправки диалоговых сообщений пользователям программы. При этом необходимо указать трехзначный номер сообщения и класс сообщения.

Номера и классы сообщений однозначно определяют выводимое на экран сообщение. Тип сообщения используется для указания способа вывода сообщения. Способ отображения различных типов сообщений можно проверить при помощи демонстрационной программы DEMO_MESSAGES, поставляемой со стандартной системой SAP.

Если указанное сообщение содержит метки-заполнители, им можно присвоить значения путем добавления WITH. В тексте выводимого сообщения вместо меток-заполнителей будут отображаться перенесенные значения.

Для получения дополнительной информации о синтаксических альтернативах оператору MESSAGE см. документацию по ключевым словам.

94

© 2006 г. SAP AG All rights reserved. Авторские

 

права защищены.

06-04-2006

BC400

Урок: Работа с элементарными объектами данных

Использование ABAP-отладчика

Рисунок 59: Выполнение программы в режиме отладки

Существует несколько способов запуска программы в режиме отладки из

навигатора по объектам:

a)В области навигации для выбранной программы в контекстном меню выберите Выполнить → Отладка.

b)В области редактора выберите требуемую строку программы, начиная с которой должна производиться отладка. Нажмите кнопку Создать/Удалить точку прерывания. Затем запустите программу путем нажатия F8 или путем выбора в контекстном меню области навигации посредством Выполнить → Напрямую. (Описанная выше установка точки прерывания в редакторе возможна только для активных исходных текстов.)

 

© 2006 г. SAP AG All rights reserved. Авторские

95

06-04-2006

права защищены.

Глава 4: Основные языковые элементы ABAP

BC400

Рисунок 60: Переход к режиму отладки во время выполнения

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

Существуют две возможности перехода:

a)Выберите Система → Утилиты → Отладка ABAP (или экран).

b)Введите /h в поле команды в стандартной строке инструментов и нажмите

Enter.

96

© 2006 г. SAP AG All rights reserved. Авторские

 

права защищены.

06-04-2006

BC400

Урок: Работа с элементарными объектами данных

Рисунок 61: Режим отладки: отдельный шаг и содержимое поля

В режиме отладки можно выбрать Отдельный шаг для выполнения программы последовательно по отдельному оператору.

Можно просмотреть содержимое объемом до восьми объектов данных. Для этого введите имена объектов в области Имя поля или скопируйте их путем “двойного щелчка” по соответствующим объектам данных исходного текста.

 

© 2006 г. SAP AG All rights reserved. Авторские

97

06-04-2006

права защищены.

Глава 4: Основные языковые элементы ABAP

BC400

Рисунок 62: Режим отладки: точки прерывания

Точку прерывания можно выбрать с помощью двойного щелчка по строке исходного текста. Также можно установить точку прерывания для определенных ABAP-операторов: Точки прерывания → ТочкаПрерыв при → Оператор. При выборе Дальше программа выполняется до следующей точки прерывания.

Установленные точки прерывания действительны только для текущего сеанса отладчика. Однако при выборе Сохранить точки прерывания сохраняются на всем протяжении SAP-режима.

98

© 2006 г. SAP AG All rights reserved. Авторские

 

права защищены.

06-04-2006

BC400

Урок: Работа с элементарными объектами данных

Рисунок 63: Режим отладки: отслеживание изменений данных

Точки наблюдения представляют собой точки прерывания, зависящие от содержимого поля.

При выборе в поле точки наблюдения без оператора/значения для сравнения и выборе пункта меню Дальше программа выполняется до изменения содержимого поля.

Однако в случае определения оператора сравнения и значения для сравнения после выбора пункта меню Дальшепрограмма выполняется до удовлетворения указанного условия.

Можно создать до 10 точек наблюдения и связать их с помощью логического оператора (И или ИЛИ).

 

© 2006 г. SAP AG All rights reserved. Авторские

99

06-04-2006

права защищены.

Глава 4: Основные языковые элементы ABAP

BC400

100

© 2006 г. SAP AG All rights reserved. Авторские

 

права защищены.

06-04-2006

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]