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

BC400_RU_ECC_2005

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

BC400

Урок: Работа с методами

4.Убедитесь, что создание инстанций и вызов методов выполняются только при первой обработке экрана.

a)См. выдержку из исходного текста в примере решения.

Результат

Выдержка из исходного текстаSAPBC400RUS_ALV_GRID

REPORT sapbc400rus_alv_grid .

...

DATA:

container_r TYPE REF TO CL_GUI_CUSTOM_CONTAINER, grid_r TYPE REF TO CL_GUI_ALV_GRID.

START-OF-SELECTION.

*fill internal table

SELECT * FROM spfli INTO TABLE gdt_spfli.

CALL SCREEN 100.

Логика выполнения для экрана 100:

PROCESS BEFORE OUTPUT.

MODULE status_0100.

MODULE clear_ok_code.

MODULE create_control.

*

PROCESS AFTER INPUT.

MODULE user_command_0100.

Выдержка из исходного текста: модуль CREATE_CONTROL

MODULE create_control OUTPUT.

IF container_r IS INITIAL.

CREATE OBJECT container_r

EXPORTING container_name = ’CONTAINER_1’.

Продолжение на следующей странице

 

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

381

06-04-2006

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

Глава 10: Повторно используемые компоненты

BC400

CREATE OBJECT grid_r

 

 

EXPORTING

i_parent = container_r.

CALL

METHOD grid_r->set_table_for_first_display

 

EXPORTING

i_structure_name = ’SPFLI’

 

CHANGING

it_outtab

= gdt_spfli.

ENDIF.

 

 

 

ENDMODULE.

 

" CREATE_CONTROL OUTPUT

382

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

 

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

06-04-2006

BC400

Урок: Работа с методами

Резюме по уроку

Теперь вы сможете:

выполнять базовые шаги объектно-ориентированного программирования ABAP (создание инстанций и вызов методов) для использования классов и методов, имеющихся в стандартной SAP-системе

выводить внутреннюю таблицу на экран с использованием SAP Grid Control (ALV List Viewer)

 

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

383

06-04-2006

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

Глава 10: Повторно используемые компоненты

BC400

Урок: Работа с BAPI

Обзор урока

На этом уроке поясняется важность интерфейсов BAPI, а также описывается поиск и использование BAPI.

Цели урока

Прослушав этот урок, вы сможете

находить подходящие BAPI

использовать вызовы BAPI в программе

Практический пример

В программе необходимо использовать стандартные функции, инкапсулированные в BAPI.

Работа с BAPI

Рисунок 217: Бизнес-объекты и BAPI

Репозитарий бизнес-объектов (РБО) SAP-системы содержит

бизнес-объекты. Формально любой бизнес-объект представляет собой некоторый класс и соответствует таблице SAP или иерархии таблиц. В

384

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

 

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

06-04-2006

BC400

Урок: Работа с BAPI

бизнес-объекте имеются BAPI (Business Application Programming Interfaces –

интерфейсы программирования бизнес-приложений), которые представлены в нем как методы. Эти BAPI вызываются для обращения к соответствующей таблице или таблицам. Таким образом, BAPI являются средством доступа к данным SAP-системы.

Обычно существуют BAPI для основных функций бизнес-объекта, таких как следующие:

создание объекта;

запрос атрибутов объекта;

изменение атрибутов объекта;

вывод списка объектов.

Функции BAPI инкапсулированы в функциональный модуль, который может вызываться удаленно. Поэтому BAPI могут вызываться как ABAP-программами той же SAP-системы, так и внешними программами.

Рисунок 218: Использование BAPI

На рисунке выше иллюстрируется использование BAPI.

Существуют стандартные методы, имеющие форму BAPI со стандартизованными именами. Ниже перечислены некоторые из наиболее важных стандартных BAPI.

Стандартные BAPI

 

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

385

06-04-2006

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

Глава 10: Повторно используемые компоненты

BC400

GetList

Возврат списка доступных объектов, соответствующих указанным критериям выбора.

GetDetail

Возврат подробной информации (атрибутов) для объекта (должен быть указан полный ключ).

Create, Change, Delete, Cancel

Создание, изменение и удаление объектов.

AddItem, RemoveItem

Добавление и удаление подобъектов (например, позиций в заказе).

Рисунок 219: BAPI Explorer

Посредством BAPI Explorer можно вывести список бизнес-объектов и соответствующих BAPI со ссылками на приложение. Для вызова BAPI Explorer в меню SAP Easy Access выберите Инструментальные средства → Бизнес-архитектура → BAPI Explorer или используйте транзакцию BAPI.

После нахождения требуемого бизнес-объекта или BAPI можно выбрать BAPI и просмотреть подробные данные о нем в правой части экрана. Можно перейти к его просмотру в построителе функций путем двойного щелчка по показанному функциональному модулю.

386

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

 

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

06-04-2006

BC400

Урок: Работа с BAPI

Рисунок 220: Атрибуты функционального модуля BAPI

Функциональные модули для BAPI должны соответствовать следующим техническим требованиям:

соглашение по присвоению имен: BAPI_<имя_бизнесобъекта>_<имя_метода>;

возможность удаленного вызова;

отсутствие диалогов пользователя и сообщений;

интерфейсным параметрам должны быть присвоены типы в соответствии с компонентами структур в ABAP-словаре, созданных для этого BAPI (префикс имени для таких структур: BAPI_);

включение изменяемых параметров не является обязательным до версии 4.6;

модули не должны инициировать каких-либо особых ситуаций: данные об ошибках передаются пользователю посредством специального параметра экспорта RETURN.

 

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

387

06-04-2006

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

Глава 10: Повторно используемые компоненты

BC400

Рисунок 221: Вызов BAPI в ABAP-программе

Если требуется использовать BAPI в той же самой SAP-системе, можно вызвать содержащий его функциональный модуль. При этом необходимо учесть описанные выше ограничения.

Рекомендация: Интерфейсы BAPI создаются согласно требованиям для “внешнего” вызова, т.е. вызова внешней системы, не являющейся SAP-системой. Поэтому суммы должны предоставляться во внешнем формате с 4 или 9 десятичными разрядами. В процессе вызова должен осуществляться перенос сумм в интерфейс в соответственно преобразованном формате, даже если в используемой валюте нет десятичных разрядов.

Это преобразование или повторное преобразование может выполняться посредством функциональных модулей группы функций BACV (пакет SBF_BAPI).

388

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

 

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

06-04-2006

BC400

Урок: Работа с BAPI

Резюме по уроку

Теперь вы сможете:

находить подходящие BAPI

использовать вызовы BAPI в программе

 

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

389

06-04-2006

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

Резюме по главе

BC400

Резюме по главе

Теперь вы сможете:

выполнять поиск функциональных модулей

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

вызывать функциональный модуль в программе

выполнять базовые шаги объектно-ориентированного программирования ABAP (создание инстанций и вызов методов) для использования классов и методов, имеющихся в стандартной SAP-системе

выводить внутреннюю таблицу на экран с использованием SAP Grid Control (ALV List Viewer)

находить подходящие BAPI

использовать вызовы BAPI в программе

Дополнительная информация

... См. онлайн-документацию по каждому инструментальному средству.

390

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

 

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

06-04-2006

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