- •Часть I. Основы языка 5
- •Часть II. Расширенные приемы программирования в sap bw 37
- •Часть III. Полезные советы 85
- •Вступление
- •Задание атрибутов программы
- •Составление исходного текста программы
- •Локальные данные программы Определение полей с помощью элементарных типов и ссылок
- •Записи и внутренние таблицы
- •Объявление составных неэлементарных типов и объектов
- •Область определения данных
- •Глобальные таблицы словаря Dictionary
- •Отображение определения
- •Отображение содержимого таблицы
- •Создание таблицы или структуры
- •Использование таблиц и структур в программе
- •Создание доменов
- •Работа с данными Копирование полей с помощью команд Move и Compute
- •Преобразования содержимого полей
- •Копирование структурированных объектов
- •Арифметические выражения и математические функции
- •Операции со строками текста Конкатенация и разделение строк
- •Замена и преобразование символов в строке
- •Поиск символьных строк в полях или внутренних таблицах
- •Символ «Перенос каретки»
- •Запись данных
- •Простой формат вывода
- •Использование символов и пиктограмм
- •Использование цветов
- •Интерфейсы форм
- •Подпрограммы и функции Глобальные функции
- •Функциональные группы
- •Создание функций
- •Вызов функции
- •Чтение таблиц базы данных Построение простейшего запроса
- •Использование конструкции where
- •Чтение единственного элемента таблицы
- •Извлечение ограниченного числа полей
- •Упорядочение результатов запроса
- •Динамическая выборка данных
- •Вложенные циклы select
- •Часть II. Расширенные приемы программирования в sap bw Тип функции планирования
- •Создание класса
- •Определение нового типа функции планирования
- •Разработка класса Считывание значений управляющих параметров
- •Определение ссылочных данных
- •Добавление сообщений в спул вывода
- •Обработка данных для изменения
- •Badi для консолидации (перенос данных)
- •Чтение данных инфо-провайдера
- •Формирование структуры признаков из настроечной таблицы
- •Отправка e-mail сообщения из abap на внешний адрес
- •Выполнение расчетов в параллельных (фоновых) задачах
- •Подпрограмма преобразования
- •Вызов транзакции через web интерфейс
- •Передача параметров
- •Загрузка данных из 1с 8
- •Загрузка справочников
- •Загрузка транзакционных данных
- •Загрузка данных из файлов Excel с помощью ole
- •Загрузка сообщений (tcode se91) из файла Excel
- •Программа загрузки данных из файла csv в таблицу бд
- •Вызов последовательности планирования из abap
- •Динамическое программирование
- •Определение полей таблицы в runtime
- •Создание динамической таблицы в runtime
- •Генерирование abap подпрограммы в runtime
- •Создание пользовательского средства поиска
- •Часть III. Полезные советы Создание abap программы без ключа разработчика
- •Поиск внутренних таблиц
- •Редактирование данных в таблицах sap, недоступных для ведения
- •Оптимизация выборки данных
- •Справочник транзакций
Отображение содержимого таблицы
Просмотреть содержимое таблицы можно прямо из окна просмотра ее структуры, нажав кнопку Contents , а далее ограничте вывод записей от 0 до 10000, как это показано на рисунке и нажмите кнопку Execute .
Рисунок 7
В итоге Вы увидите все содержимое таблицы ABAPTREE.
Рисунок 8
Создание таблицы или структуры
Для создания таблицы или структуры войдите в ABAP Dictionary, в поле Database table введите имя таблицы (например "ZTEST") и нажмите кнопку Create. Важно, что имя таблицы должно начинаться с символа "Z".
В появившемся окне введите короткое описание (например "My first table") и в поле Delivery class выберите класс создания. При разработке собственной таблицы рекомендуется выбирать класс "А" (Application table) или С (Customizing table).
Рисунок 9
Далее на закладке Fields введите поля Вашей таблицы и определите первичный ключ.
Рисунок 10
После того, как все поля заполнены, нажмите кнопку Save , чтобы сохранить таблицу. Однако эта таблица не будет доступна другим таблицам или программам, если Вы ее не активизируете, нажав на кнопку Activate .
Использование таблиц и структур в программе
Обычно содержимое таблиц считывается или изменяется с помощью программы. Для того, чтобы работать с таблицей из программы, необходимо в первую очередь ее объявить, используя ключевое слово tables, за которым должно следовать имя таблице.
Рассмотрим пример, который извлекает все значения поля ID из таблицы и выводит его на экран.
report z_chap0501.
tables: abaptree.
select * from abaptree.
write: / abaptree-id.
endselect.
Структуры определяются аналогично таблицам. Единственное различие в том, что для структур нельзя использовать оператор select.
Для просмотра списка использования таблицы необходимо нажать кнопку Where used list в окне просмотра определения таблицы. На экране появится окно со списком всех объектов, которые используют данную таблицу.
Рисунок 11
Добавление структур
Иногда вместо того, чтобы составлять заново список всех полей, которые должна содержать таблица или структура, полезно просто включить одну структуру в другую. Для этого в окне определения таблицы в колонке Fields написать .INCLUDE (начитается с точки), а в колонке Field type выбрать включаемую структуру.
Рисунок 12
Глобальные таблицы словаря Dictionary
Работа с элементами данных
Элемент данных содержит информацию о поле, действительную для каждого поля, которое ссылается на данный элемент данных, независимо от таблицы, в которой проявляется данное поле. Семантическая информация, а также внешнее текстовое представление приписываются элементу данных вместе с соответствующим описанием поля. Элементы данных описывают роли доменов в одном или нескольких приложениях.
Отображение определения элементов данных
На экране, отображающем определение таблицы, можно получить отображение элемента данных, дважды щелкнув мышью на экранном элементе Fields.
Рисунок 13
Сопровождение элементов данных
В окне отображения элементов данных при наличии соответствующих прав можно вносить изменения в выбранный элемент данных.
Создать новый элемент данных можно в окне ABAP Dictionary, выбрав переключатель Data type.
Рисунок 14
В появившемся окне заполните параметры элемента данных, после чего сохраните его и активируйте.
Рисунок 15
Глобальные таблицы словаря Dictionary
Создание и использование доменов
Домен описывает набор возможных значений и выходных характеристик поля таблицы. Допустимые значения данных, ссылающихся на домен поля, определены диапазоном значений домена. Один домен может являться базовым для любого количества полей одинаковой структуры.
Отображение определения домена
Отображение определения домена можно вывести на экран разными способами. Например, дважды щелкнув мышью на поле таблицы, чтобы открыть окно элемента данных, а затем дважды щелкнув на поле Domain Name.
Рисунок 16
Для доменов и элементов данных всегда можно просмотреть список объектов, в которых используется данный домен или элемент данных. Для этого достаточно нажать кнопку Where used list .