Руководство для участников курса Версия курса 2й квартал 2005 г. Продолжительность курса 5 Дн. Номер материала 50072594
Скачать 38.91 Mb.
|
Глава 2: Введение в ABAP-инструментальные средства BC400 Решение 2: Разработка ABAP-программ Задание 1: Создание программы 1. Создайте исполняемую программу ZBC400_##_GS_LIST без “TOP-INCLUDE”. a) Этот шаг выполняется в соответствии с описанием в учебных материалах. Задание 2: Изменение программы 1. Определите рабочую область для сбора и просмотра данных (рекомендуемое имя: wa_flight): DATA wa_flight TYPE sflight. a) См. выдержку из исходного текста в примере решения. 2. Запрограммируйте циклический доступ ко всем записям данных в таблице базы данных SFLIGHT: SELECT * FROM sflight INTO wa_flight. ENDSELECT. a) См. выдержку из исходного текста в примере решения. 3. Для каждой записи данных выведите содержимое полей carrid, connid, fldate, seatsocc и seatsmax в списке: NEW-LINE. WRITE wa_flight-carrid. WRITE ... a) См. выдержку из исходного текста в примере решения. Продолжение на следующей странице 50 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Разработка программ и организация разработок 4. Проверьте программу на наличие синтаксических ошибок. Протестируйте и активируйте программу. a) Этот шаг выполняется в соответствии с описанием в учебных материалах. Результат Выдержка из исходного текста: SAPBC400WBS_GS_LIST REPORT sapbc400wbs_gs_list. DATA wa_flight TYPE sflight. SELECT * FROM sflight INTO wa_flight. NEW-LINE. WRITE: wa_flight-carrid, wa_flight-connid, wa_flight-fldate, wa_flight-seatsocc, wa_flight-seatsmax. ENDSELECT. 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 51 Глава 2: Введение в ABAP-инструментальные средства BC400 52 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Разработка программ и организация разработок Упражнение 3: Создание транзакций Цели упражнения Выполнив это упражнение, вы сможете • создавать транзакции • определять коды транзакций в качестве личных фаворитов Практический пример Пользователям на предприятии необходимо запускать ABAP-программы как транзакции или определять их в качестве личных фаворитов. Задание 1: Создание транзакции 1. Создайте код транзакции ZBC400_##_GS для исполняемой программы ZBC400_##_GS_LIST. Рекомендация: В определении транзакции выберите Программа и экран выбора (транзакция отчета) в качестве начального объекта. 2. Выполните программу путем ввода нового кода транзакции в поле команды. Задание 2: Определение фаворитов 1. Добавьте код транзакции ZBC400_##_GS к личным фаворитам. 2. Выполните программу путем двойного щелчка по новой записи фаворита. 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 53 Глава 2: Введение в ABAP-инструментальные средства BC400 Решение 3: Создание транзакций Задание 1: Создание транзакции 1. Создайте код транзакции ZBC400_##_GS для исполняемой программы ZBC400_##_GS_LIST. Рекомендация: В определении транзакции выберите Программа и экран выбора (транзакция отчета) в качестве начального объекта. a) Этот шаг выполняется в соответствии с описанием в учебных материалах. 2. Выполните программу путем ввода нового кода транзакции в поле команды. a) Этот шаг выполняется в соответствии с обычной процедурой. Задание 2: Определение фаворитов 1. Добавьте код транзакции ZBC400_##_GS к личным фаворитам. a) Этот шаг выполняется в соответствии с описанием в учебных материалах. 2. Выполните программу путем двойного щелчка по новой записи фаворита. a) Этот шаг выполняется в соответствии с обычной процедурой. 54 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Разработка программ и организация разработок Резюме по уроку Теперь вы сможете: • перечислять и использовать утилиты для правильной организации процесса разработки программного обеспечения • создавать пакеты • создавать программы • создавать транзакции 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 55 Резюме по главе BC400 Резюме по главе Теперь вы сможете: • описывать структуру репозитария • перечислять и использовать инструменты поиска репозитария • использовать навигатор по объектам для просмотра объектов репозитария • перечислять и использовать утилиты для правильной организации процесса разработки программного обеспечения • создавать пакеты • создавать программы • создавать транзакции Дополнительная информация ... См. онлайн-документацию по каждому инструментальному средству. 56 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 Глава 3 Введение в ABAP-словарь Обзор главы См. цели отдельных уроков в рамках этого раздела. Цели главы Прослушав эту главу, вы сможете • пояснять цели и преимущества использования модели данных в разработке приложений • описывать модель данных о рейсах SAP • описывать значение и структуру элементов данных и доменов • описывать значение и структуру прозрачной таблицы • описывать значение и формат структуры • использовать перечисленные элементы словаря в ABAP-программах Содержание главы Урок: Моделирование данных и описательные элементы в ABAP-словаре .................................................................. 58 Упражнение 4: Использование глобальных структур для объектов данных и диалогов ......................................................... 69 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 57 Глава 3: Введение в ABAP-словарь BC400 Урок: Моделирование данных и описательные элементы в ABAP-словаре Обзор урока На этом уроке приводится обзор моделирования данных, которое должно выполняться перед разработкой приложений. Кроме того, описываются базовые описательные элементы в ABAP-словаре, а также ситуации, в которых целесообразно и необходимо использовать типы данных (описания данных) из ABAP-словаря. Цели урока Прослушав этот урок, вы сможете • пояснять цели и преимущества использования модели данных в разработке приложений • описывать модель данных о рейсах SAP • описывать значение и структуру элементов данных и доменов • описывать значение и структуру прозрачной таблицы • описывать значение и формат структуры • использовать перечисленные элементы словаря в ABAP-программах Практический пример При определении объектов данных в ABAP-программе следует пользоваться преимуществами, предоставляемыми ABAP-словарем. 58 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Моделирование данных и описательные элементы в ABAP-словаре Моделирование данных Рисунок 37: Моделирование данных При разработке организационно-экономического программного обеспечения элементы реальной среды должны быть представлены в виде данных. Например, сущностью является бизнес-единица. Сущности находятся во взаимосвязи друг с другом, что фиксируется в базовой модели данных. Такая модель называется моделью отношений между сущностями (Entity Relationship Model – ERM). Эта модель данных используется в качестве основы для внедрения соответствующих определений таблиц (прозрачных таблиц), включая их связи друг с другом в ABAP-словаре. Путем активации определений таблиц в базе данных автоматически создаются соответствующие таблицы базы данных. Фактические прикладные данные вводятся в эти таблицы позже. 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 59 Глава 3: Введение в ABAP-словарь BC400 Рисунок 38: Модель данных о рейсах для учебных курсов ABAP В учебных курсах ABAP, онлайн-документации и документации по ключевым словам ABAP в качестве примера используется одна и та же модель данных о рейсах. Объекты репозитария для модели данных о рейсах содержатся в пакете SAPBC_DATAMODEL. В рамках этого курса достаточно привести простую выдержку из этой модели данных. Если клиенту турагентства требуется попасть из одного местоположения в другое, то он запрашивает у турагентства следующую информацию: • Какие направления обеспечивают наиболее удобный и прямой маршрут? • Каково время вылета для рейсов на требуемую дату? • Каким образом можно улучшить условия перелета для выбора оптимального варианта; т. е. какой рейс является наиболее дешевым, быстрым и обеспечивает прибытие максимально близко к необходимому времени? Точка зрения турагентства несколько отличается от точки зрения клиента. В модели данных, разработанной для управления необходимыми данными, данные в централизованной базе данных сортируются по техническим критериям в таблицах. Объем имеющихся данных существенно превышает объем, необходимый клиенту. Необходимо обеспечить возможность программного выбора и вывода только тех данных, которые требуются клиенту. 60 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Моделирование данных и описательные элементы в ABAP-словаре Рисунок 39: Реляционная модель Модель данных о рейсах содержит объекты для всей логически связанной бизнес-информации, например: • города; • аэропорты; • авиакомпании; • авиалинии; • рейсы; • Эти объекты связаны друг с другом определенным образом: • Каждое расписание рейсов содержит только одну авиакомпанию, один аэропорт вылета и один аэропорт прибытия. • Каждый бронируемый рейс всегда относится только к одному существующему расписанию рейсов. • Возможно присвоение городам близлежащих аэропортов. С помощью этих взаимосвязей можно осуществлять управление всеми необходимыми данными без возникновения избыточной информации. В то же время турагентство сможет получать любые данные, запрошенные клиентом. 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 61 Глава 3: Введение в ABAP-словарь BC400 Рисунок 40: Преобразование с помощью прозрачных таблиц Для каждой сущности, зафиксированной в модели данных, разработчик создает прозрачную таблицу в ABAP-словаре. Сначала она представляет собой только не зависящее от платформы описание таблицы базы данных, а не фактическую таблицу базы данных. Однако при активации прозрачной таблицы в базе данных автоматически создается таблица с тем же именем. Прозрачная таблица содержит различные поля (столбцы) для структурированного сохранения и управления записями данных. Поля таблицы должны быть описаны как ключевые поля в том случае, если их содержимое должно использоваться для четкой идентификации записей данных в таблице базы данных. Ключ таблицы (табличный ключ) состоит из ключевых полей. Этот ключ также называется первичным ключом. Записи данных в той же таблице должны быть уникальными с точки зрения значений первичного ключа. Таким образом, значение ключа записи данных представляет собой уникальный идентификатор в пределах таблицы. Описательные элементы в ABAP-словаре Перед рассмотрением прозрачных таблиц необходимо пояснить два дополнительных термина словаря: элемент данных и домен. 62 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Моделирование данных и описательные элементы в ABAP-словаре Рисунок 41: Элемент данных и домен Элемент данных представляет собой общее описание поля. Оно включает в себя семантические и технические атрибуты поля. Семантические атрибуты поля включают документацию к полю и названия полей. Они сохраняются непосредственно в определении элемента данных. Напротив, технические атрибуты поля, такие как тип данных и длина поля (а также возможность многократного использования), обычно не указываются в фактическом элементе данных, но доступны посредством ссылки на определенный домен. Элементы данных используются для определения внутренних программных переменных или описания полей прозрачных таблиц. 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 63 Глава 3: Введение в ABAP-словарь BC400 Рисунок 42: Техническая структура прозрачной таблицы В ABAP-словаре прозрачная таблица представляет собой внедренное описание соответствующей таблицы базы данных, содержащей фактические прикладные данные. Рисунок 43: Прозрачные таблицы в ABAP-словаре Поля прозрачной таблицы формируют столбцы с идентичными именами в соответствующей таблице базы данных. 64 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Моделирование данных и описательные элементы в ABAP-словаре Для ввода поля прозрачной таблицы обычно используется элемент данных. При многократном использовании элемента данных в определении полей различных таблиц можно обеспечить соответствие полей в разных таблицах. Индикатор Ключ используется для определения поля как ключевого. Рисунок 44: Структуры в ABAP-словаре Как правило, структура в ABAP-словаре используется для централизованного описания переменных структуры, которые должны содержать поля различных таблиц. Затем эти структуры словаря данных можно использовать в ABAP-программе для определения объектов данных (конкретных переменных структуры), предназначенных для временного сохранения данных в программе или используемых в качестве интерфейса для переноса полей между экраном и ABAP-программой. (Более подробно эта процедура описана в следующем разделе.) Определение структуры словаря данных почти идентично определению структуры прозрачной таблицы. Единственное различие заключается в том, что описание ключевых полей и указание технических параметров для структур не является ни целесообразным, ни необходимым. Однако при использовании структур, в отличие от полей и элементов данных, определяются компонент и тип компонента, поскольку, в отличие от прозрачных таблиц, структура может являться компонентом другой структуры. Такие структуры с включенными подструктурами в качестве компонентов называются сложными структурами. Соответственно, структуры с простыми компонентами называются простыми структурами. 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 65 Глава 3: Введение в ABAP-словарь BC400 Рисунок 45: Использование элементов словаря для определения объектов данных в программе Определения на приведенном выше рисунке имеют следующее значение: • DATA mycarrid TYPE s_carr_id. Возврат объекта данных (переменной) типа, указанного в элементе данных s_carr_id. • DATA myconnid TYPE sbc400focc-connid. Возврат объекта данных (переменной) того же типа, что и поле структуры sbc400focc-connid. • PARAMETERS pa_carr TYPE spfli-carrid. Возврат поля ввода на экране выбора, а также переменной того же типа, что и поле таблицы spfli-carrid. • DATA wa_focc TYPE sbc400focc. Возврат структурной переменной того же типа, что и структура словаря данных sbc400focc. • DATA wa_spfli TYPE spfli. Возврат структурной переменной того же типа, что и строка таблицы spfli. 66 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Моделирование данных и описательные элементы в ABAP-словаре Рисунок 46: PARAMETERS: определение с помощью элемента словаря В случае использования элемента данных, структурного компонента или поля прозрачной таблицы для определения поля ввода на экране выбора (оператор PARAMETERS), в дополнение к техническим свойствам, можно использовать семантические свойства соответствующего элемента данных. Когда пользователь нажимает на экране выбора кнопку F1 или F4, автоматически генерируется диалог документации или диалог справки по вводу. Необходимая информация извлекается из ABAP-словаря (документация элемента данных или доступное средство поиска). 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 67 Глава 3: Введение в ABAP-словарь BC400 68 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 06-04-2006 BC400 Урок: Моделирование данных и описательные элементы в ABAP-словаре Упражнение 4: Использование глобальных структур для объектов данных и диалогов Цели упражнения Выполнив это упражнение, вы сможете • определять технические имена типов данных (= описания) и объектов данных (= переменные), используемых в диалогах пользователя • вызывать ведомости использования для ABAP-программы Практический пример Необходимо проверить указанную ABAP-программу и выяснить, используются ли в ней глобальные типы данных (= описания, определенные в словаре), и если да, то какие именно. Рекомендация: Основной целью этого раздела является получение информации для указанной программы не из ее синтаксиса. Поэтому изучение синтаксиса программы в полном объеме не требуется. Это в особенности относится к операторам TABLES и MOVE-CORRESPONDING. Их значение и функциональные возможности будут описаны далее в этом курсе. Задание 1: Поиск и выполнение программы 1. Просмотрите список объектов для пакета BC400 в навигаторе по объектам. Найдите программу SAPBC400WBT_GETTING_STARTED и просмотрите список ее объектов. Во время выполнения упражнения не выходите из режима просмотра. 2. Выполните программу для изучения принципов ее работы. Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. Авторские права защищены. 69 |