Saptece введение в архитектуру sap netweaver




※ Download: Saptece введение в архитектуру sap netweaver





BC400_RU_ECC_2005

Saptece введение в архитектуру sap netweaver

If the Azure VM is part of an Azure virtual network or on-premises domain, make sure that the relevant proxy settings are set, as described in. Location: Where to deploy the new virtual machine.

Saptece введение в архитектуру sap netweaver

Этот нестандартный и неинтуитивный тип определения структуры используется только для программирования экранов. Войдите в число участников, кто успешно сдает сертификацию с первого раза после прохождения Академий SuccessFactors. Некоторые программные продукты, предлагаемые компанией SAP SE и ее дистрибьюторами, содержат запатентованные компоненты от других поставщиков программного обеспечения.


BC400 Введение в ABAPинструментальные средства SAP NetWeaver Дата Учебный центр Преподаватели Веб-сайт Руководство для участников курса Версия курса: 2-й квартал 2005 г. Продолжительность курса: 5 Дн. Номер материала: 50072594 Используйте SAP-курс во время учебы и в процессе работы! Авторское право Авторское право © 2006 г. SAP AG All rights reserved.

Воспроизведение и передача любого фрагмента настоящей публикации в любой форме и с любой целью без особого разрешения SAP AG запрещены. Кроме того, данная публикация и ее содержание предоставляется только для вашего личного использования и не подлежит сдаче в аренду, передаче или продаже без четкого разрешения со стороны SAP AG.

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

ORACLE® является зарегистрированной торговой маркой корпорации ORACLE. INFORMIX®-OnLine for SAP и INFORMIX® Dynamic ServerTM являются зарегистрированными торговыми марками Informix Software Incorporated.

Citrix®, Citrix logo, ICA®, Program Neighborhood®, MetaFrame®, WinFrame®, VideoFrame®, MultiWin® и другие имена продуктов Citrix, упоминаемые в данных материалах, являются зарегистрированными торговыми марками Citrix Systems, Inc. HTML, DHTML, XML, XHTML являются торговыми марками или зарегистрированными торговыми марками W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. JAVA® является зарегистрированной торговой маркой Sun Microsystems, Inc. JAVASCRIPT® является зарегистрированной торговой маркой Sun Microsystems, Inc.

Все прочие продукты, упомянутые в данных материалах, являются торговыми марками или зарегистрированными торговыми марками соответствующих компаний. НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ SAP НЕ БУДЕТ НЕСТИ ОТВЕТСТВЕННОСТИ ЗА ЛЮБОЙ ПРЯМОЙ, КОСВЕННЫЙ, ПРЕДНАМЕРЕННЫЙ, СЛУЧАЙНЫЙ, ПОБОЧНЫЙ ИЛИ ПОДЛЕЖАЩИЙ НАКАЗАНИЮ УЩЕРБ КАКОГО БЫ ТО НИ БЫЛО РОДА, ВКЛЮЧАЯ СРЕДИ ПРОЧЕГО ПОТЕРЯННЫЕ ДОХОДЫ ИЛИ УПУЩЕННУЮ ПРИБЫЛЬ, КОТОРЫЕ МОГЛИ БЫ ЯВИТЬСЯ РЕЗУЛЬТАТОМ ИСПОЛЬЗОВАНИЯ ЭТИХ МАТЕРИАЛОВ ИЛИ ВКЛЮЧЕННЫХ ПРОГРАММНЫХ КОМПОНЕНТОВ.

Информация об этом справочнике Данное руководство дополняет презентацию к курсу и служит справочным материалом. Оно не предназначено для самостоятельной работы. Типографские обозначения В данном руководстве используются следующие типографские обозначения: Стиль Иллюстративный текст Описание Слова или знаки, воспроизводимые на экране.

К ним относятся имена полей, заголовки экранов, названия кнопок, а также имена меню, пути по меню и опции. Также используется для перекрестных ссылок, как внутренних в данном документе , так и внешних на документацию, находящуюся в других местах, например в SAPNet.

Иллюстративный текст Выделенные слова и фразы в основном тексте, названиях рисунков и графиков, таблиц. Такие, как имена отчетов и программ, коды транзакций, имена таблиц, отдельные ключевые слова языка программирования, включенные в основной текст, например SELECT и INCLUDE. ИЛЛЮСТРАТИВНЫЙ ТЕКСТ 06-04-2006 © 2006 г. SAP AG All rights reserved.

Такие, как имена файлов, директорий и путей к ним, сообщения, имена переменных и параметров, фрагменты исходных текстов программы. Это - слова и знаки, упомянутые в документации и точно в таком виде вводимые пользователем в систему. Угловые скобки указывают на то, что заключенные в них слова и знаки должны быть заменены подходящими данными. Иллюстративный текст iv © 2006 г. SAP AG All rights reserved. Пиктограмма Значение Дополнительная информация, подсказки или вводная информация Примечание или дополнительные объяснения к предыдущему пункту Оговорка или предупреждение Процедура Тема представлена в презентации преподавателя 06-04-2006 © 2006 г.

SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. Основное внимание уделяется концепциям и фундаментальным принципам. Также вводится соответствующая терминология, необходимая при работе с подробной документацией. Эти темы рассматриваются с использованием практических прикладных примеров, что позволяет немедленно применить полученные знания на практике. Кроме того, демонстрируется, насколько мало усилий необходимо для быстрого создания высокоэффективных бизнес-приложений в ABAP-инструментальных средствах.

Этот курс позволит немедленно начать разработку и предоставит знания, которые позволят избежать затруднений при прохождении последующих курсов. Именно поэтому этот курс является предпосылкой для более подробных курсов по программированию при помощи ABAP-инструментальных средств. SAP AG All rights reserved.

Информация о компоненте программного обеспечения SAP Информация в данном курсе относится к следующим компонентам и выпускам программного обеспечения SAP: x © 2006 г. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. В SAP Web Application Server параметры представления данных, прикладная логика и места хранения данных могут быть присвоены различным системам.

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

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

Техническое распределение программного обеспечения не зависит от его физического местоположения на оборудовании. SAP AG All rights reserved.

В данном курсе в первую очередь рассматривается взаимодействие между одним пользователем и одной ABAP-программой. Конкретные процессы, отвечающие за управление действиями пользователя на сервере приложений, имеют меньшее значение с точки зрения того, каким образом должны создаваться ABAP-программы. Поэтому далее в курсе будет использоваться упрощенная схема, на которой отсутствуют процессы диспетчеризации и рабочие процессы. На некоторых слайдах, однако, эти детали также будут учтены как важные для ABAP-программирования.

ABAP-программы обрабатываются на сервере приложений. При написании прикладных программ должны учитываться способы разработки диалогов пользователя и доступа к базе данных. SAP AG All rights reserved. Технические аспекты программирования для пользователя менее интересны. Например, ему не требуются точные сведения о том, как именно выполняется ABAP-программа на сервере приложений. Но, например, с технической точки зрения существует три типа экранов: обычные экраны, экраны выбора и списки. Каждый тип экрана имеет различные функции.

В этом случае задача разработчика состоит в выборе для каждого диалога пользователя именно тех типов, которые больше всего подходят для выполнения поставленных задач. Поэтому крайне важно иметь четкое представление о технических аспектах. SAP AG All rights reserved.

При этом обрабатываются только определенные компоненты ABAP-программы. При вызове в рамках ABAP-программы следующего диалога пользователя система осуществляет передачу экрана, и управление снова возвращается к серверу презентации. SAP AG All rights reserved. На этом экране пользователь может запустить ABAP-программу посредством выбора пути по меню. Рисунок 6: Загрузка контекста программы 06-04-2006 © 2006 г.

SAP AG All rights reserved. Контекст программы содержит области памяти для переменных и комплексных объектов данных, информацию относительно экранов для диалогов пользователя и блоки обработки ABAP. Исполняющая система получает эту информацию из репозитария, представляющего собой особый компонент базы данных.

В программе-образце в качестве диалога пользователя используется экран выбора, в качестве объектов данных — переменная и структура; эта программа включает в себя один блок обработки ABAP.

Список, используемый для вывода данных, создается динамически во время выполнения. Управление последующим выполнением программы осуществляется исполняющей системой ABAP. Рисунок 7: Передача экрана выбора из исполняющей системы Так как программа содержит экран выбора, исполняющая система ABAP передает этот экран на сервер презентации.

Сервер презентации управляет выполнением программы до завершения пользователем ввода данных в поля ввода. Экраны выбора позволяют пользователям вводить критерии выбора, необходимые для продолжения выполнения программы. SAP AG All rights reserved. Введенные данные автоматически размещаются в соответствующих объектах данных в программе, и управление обработкой возвращается к исполняющей системе ABAP.

В приведенном примере простой программы существует только один блок обработки ABAP. Исполняющая система ABAP инициирует последовательную обработку этого блока обработки ABAP. Если записи пользователя относятся к неправильному типу, автоматически выдается сообщение об ошибке. После этого пользователь должен исправить некорректные данные.

SAP AG All rights reserved. Поэтому базе данных передается информация о требуемой таблице базы данных и строке, которая должна быть считана из этой таблицы. Рисунок 10: Возврат данных из базы данных в программу 10 © 2006 г. SAP AG All rights reserved. В случае обращения к отдельной записи этот объект данных обычно является структурой, содержащей соответствующие компоненты для всех требуемых полей базы данных.

Рисунок 11: Отправка списка исполняющей системой Формат вывода последующего списка запрограммирован в блоке обработки. После его завершения исполняющая система отправляет этот список на сервер презентации в качестве экрана. Обзор тем Описанная выше программа-образец включает в себя различные понятия, рассматриваемые в данном курсе.

Ниже приведено содержание с перечислением тем по разделам, позволяющее сориентироваться относительно дальнейшего изучения данного курса. Раздел 1 Выполнение ABAP-программы Раздел 2 Введение в ABAP-инструментальные средства Раздел 3 Введение в ABAP-словарь 06-04-2006 © 2006 г.

SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. Здесь также рассматривается навигатор по объектам — основное инструментальное средство разработчика.

SAP AG All rights reserved. Репозитарий используется как для сохранения объектов, определенных SAP, так и для сохранения объектов, определенных клиентами. Репозитарий находится в базе данных и всегда является общим для всех мандантов, т. Кроме репозитария, база данных также содержит таблицы приложений и таблицы пользовательской настройки, которые обычно являются зависящими от манданта, т. SAP AG All rights reserved. В пределах прикладного компонента например, MM имеется несколько пакетов, содержащих соответствующие объекты для более детального логического подразделения данных.

Каждый создаваемый объект репозитария должен быть присвоен пакету. Объекты репозитария часто состоят из подобъектов, которые также называются объектами репозитария. Инструменты поиска в репозитарии Информационная система репозитария используется для произвольного т. SAP AG All rights reserved. При двойном щелчке по определенному типу объекта появляется экран выбора, позволяющий ограничить поиск. Рисунок 15: Иерархия приложений SAP 06-04-2006 © 2006 г. SAP AG All rights reserved.

Иерархия прикладных компонентов представлена в форме древовидной структуры. При раскрытии узла позиции на экран выводятся все пакеты, присвоенные соответствующему компоненту. Теперь можно выбрать любую ветвь при помощи кнопки Выбрать и затем перейти непосредственно к информационной системе репозитария при помощи кнопки Информационная система.

В системе все соответствующие пакеты выбранных ветвей сохраняются и автоматически выводятся на экране выбора информационной системы. Это позволяет выполнять поиск в предварительно выбранных приложениях. Работа с навигатором по объектам Рисунок 16: Инструменты ABAP-инструментальных средств 20 © 2006 г.

SAP AG All rights reserved. Эти инструментальные средства охватывают весь цикл разработки программного обеспечения. Однако более удобным способом вызова этих инструментов является доступ из навигатора по объектам. Этот центральный инструмент разработки позволяет вывести на экран список требуемых объектов репозитария. Для обработки одного из объектов необходимо дважды щелкнуть по нему для его выбора.

Соответствующее инструментальное средство вызывается автоматически и включает в себя выбранный объект репозитария, который можно просмотреть или обработать требуемым образом. SAP AG All rights reserved. В обеих областях можно выбирать функции при помощи контекстного меню, для вызова которого используется правая кнопка мыши или левая кнопка, если установлены соответствующие параметры мыши.

В контекстном меню содержатся только те функции, которые предназначены для соответствующего объекта. SAP AG All rights reserved. Например, если для просмотра выбран пакет, то в этой области перечисляются все объекты репозитария, принадлежащие к указанному пакету.

Двойной щелчок по одному из перечисленных объектов позволяет просмотреть объект или обработать его. Существует возможность переключения между списками объектов, которые выводились на экран ранее в текущем режиме навигатора по объектам синие стрелки. Часто используемые списки объектов можно добавить к фаворитам. SAP AG All rights reserved. Существует возможность переключения между объектами, которые ранее были выведены на экран в текущем режиме навигатора по объектам синие стрелки.

Кроме того, можно также вывести подокно с историей навигации. При двойном щелчке по объекту в истории навигации данный объект отображается в инструментальной области.

SAP AG All rights reserved. Это позволяет гибко использовать обе области. Путем выбора опции Просмотр списка объектов в области навигации можно просмотреть список объектов, связанных с тем объектом, который в настоящее время обрабатывается в инструментальной области.

Кроме того, можно использовать кнопки Обработать объект или Другой объект… для создания любых необходимых объектов. SAP AG All rights reserved. SAP AG All rights reserved. Кроме того, описывается внедрение пакетов разработки в среду SAP при помощи ABAP-инструментальных средств. SAP AG All rights reserved. В начале проекта разработок руководитель проекта создает запрос на изменение, в котором перечисляются сотрудники, участвующие в этом проекте. Запрос на изменение создается в организаторе переносов или непосредственно в ABAP-инструментальных средствах.

Затем в организаторе переносов для каждого сотрудника проекта создаются задачи, входящие в запрос на изменение. Во время обработки или создания объекта разработки соответствующий сотрудник присваивает этому объекту запрос на изменение. Этот объект вводится в задачу сотрудника. Таким образом, все объекты репозитария, с которыми в течение проекта разработок работает сотрудник, собраны в пределах его задачи.

SAP AG All rights reserved. В пути переноса задействованных пакетов в которых имеются новые разработки указывается последующая система, в которую осуществляется перенос. Таким образом, несмотря на то, что программа всегда принадлежит только одному пакету, она может в различные моменты времени относиться к различным проектам.

SAP AG All rights reserved. Перейдите к навигатору по объектам. Выберите один из двух вариантов: a В области навигации выберите тип объекта Пакет и введите имя пакета в поле ввода внизу. Удостоверьтесь в соблюдении соглашений области имен клиента. Если указанный пакет еще не существует, на экран выводится диалог для создания пакета. В диалоговом окне найдите поле определения пакета и введите имя пакета. Затем нажмите кнопку создания объекта F5.

Они обрабатываются в соответствии с приведенным здесь описанием. Существует одно незначительное ограничение для версии 4. Установите атрибуты для создаваемого пакета. Рисунок 23: Настройка атрибутов пакета пример Атрибуты имеют следующее значение для получения подробной информации можно воспользоваться справкой к полю F1 : Продолжение на следующей странице 30 © 2006 г.

SAP AG All rights reserved. Компонент программного обеспечения Для собственных разработок в качестве компонента программного обеспечения необходимо ввести HOME. Уровень переноса При необходимости выполнения собственных разработок следует создать для них уровень переноса, который затем указывается в атрибутах. Уровень переноса определяет необходимость переноса объектов этого пакета в последующую систему и, при наличии такой необходимости, целевую систему переноса.

Рисунок 24: Указание пути переноса Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. Присвойте пакет запросу на изменение. При помощи кнопки Мои задачи можно просмотреть все запросы на изменение, содержащие задачи сотрудника.

Просто выберите соответствующий запрос при помощи двойного щелчка. Рисунок 25: Присвоение запросу на изменение Примечание: В системе обеспечивается точное присвоение задачи сотрудника. Рекомендация: Все создаваемые или изменяемые объекты репозитария должны быть присвоены запросу на изменение соответствующего проекта.

Каждая группа курса имеет свою задачу в этом запросе на изменение. SAP AG All rights reserved. Для поддержки обработки данных того или иного типа поддерживаются преобразования типов и определение типов. При помощи переводимых текстовых элементов можно разрабатывать многоязычные приложения. Стандарт Open SQL, вложенный в ABAP, позволяет осуществлять прямой доступ к базе данных. ABAP-объекты являются объектно-ориентированным расширением языка ABAP-программирования. ABAP-синтаксис не зависит от платформы.

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

SAP AG All rights reserved. Первое слово в операторе называется ABAP-ключевым словом. Между словами всегда должен быть по крайней мере один пробел.

Каждый оператор должен заканчиваться точкой. Операторы могут вводиться с отступом. Операторы могут занимать несколько строк. В одной строке может быть несколько операторов. В исполняющей системе ABAP не различаются прописные и строчные буквы в ключевых словах, дополнениях и операндах. Для представления наиболее удобного обзора в этом курсе далее будут приведены все ключевые слова и их дополнения прописными буквами, а все операнды — строчными буквами.

Для введения отступов и для изменения регистра букв можно использовать функцию структурной печати выберите соответствующую кнопку в редакторе. SAP AG All rights reserved. Генератор кода распознает соответствующую строку как комментарий, вследствие чего она игнорируется в исполняющей системе. Последовательность операторов с одинаковым началом можно объединить в цепную запись. После двоеточия перечисляются конечные компоненты операторов отделенные запятыми.

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

SAP AG All rights reserved. Нулевое значение указывает на то, что оператор был выполнен успешно. Для получения информации о том, каким образом устанавливается это значение возврата в отдельных случаях, см.

SAP AG All rights reserved. Кнопка i с описанием Справка по... Разработка ABAP-программы В этом разделе рассматривается создание программ и транзакций в ABAP-инструментальных средствах. Также описываются цели активации программы. SAP AG All rights reserved. Перейдите к навигатору по объектам. Выберите один из трех вариантов: a В области навигации выберите тип объекта Программа и введите имя программы в поле ввода внизу.

Удостоверьтесь в соблюдении соглашений области имен клиента. Подтвердите ввод с помощью Enter. Если программа еще не существует, на экран выводится диалог для создания программы. Перейти к диалогу для создания программы можно через контекстное меню для пакета или путем выбора узла Программы. В диалоговом окне найдите поле определения программы и введите имя программы.

Затем нажмите кнопку создания объекта F5. В настоящем учебном курсе следует удалить индикатор С TOP-INCLUDE. В противном случае исходный текст будет распределен по нескольким программам. Измените заголовок на понятный краткий текст. В качестве типа программы в этом курсе всегда следует выбирать Исполняемая программа. Все другие классы разработок необязательны. Для получения подробной информации вызовите справку F1. Рисунок 30: Создание ABAP-программы 38 © 2006 г.

SAP AG All rights reserved. Таким образом, имеется активная и неактивная версия объекта. Эта версия становится новой активной версией объекта. Следует отметить, что деблокирование запроса и, следовательно, перенос разработанных объектов возможны только в том случае, если все объекты в запросе активированы. Если программа доступна в обеих версиях активной и неактивной , в этом случае можно переключаться между просмотром этих двух версий при помощи соответствующей кнопки в редакторе.

При каждой активации программы в системе отображается список всех обработанных неактивных объектов — рабочий список пользователя. Выберите объекты, которые необходимо активировать в текущей операции активации. SAP AG All rights reserved. Рисунок 32: Создание динамических объектов При генерации объекта разработки в системе создается отдельный динамический объект компиляция LOAD , который также сохраняется в репозитарии.

Эта сгенерированная версия является версией, выполняемой интерпретируемой во время выполнения. Таким образом, выполняется компиляция LOAD, сгенерированная при последней активации. Если запускается неактивная версия, загруженная в редактор при помощи кнопки F8, в этом случае из нее создается и выполняется временный динамический объект.

SAP AG All rights reserved. Создание транзакций В меню роли, а также в фавориты пользователя, можно добавить только транзакции. Поэтому при необходимости добавления в меню программы следует создать транзакцию, представляющую эту программу, и интегрировать ее в меню.

При этом можно запустить программу путем ввода кода транзакции в поле команды. SAP AG All rights reserved.

В навигаторе по объектам вызовите список объектов для своей программы. Введите необходимый код транзакции.

Удостоверьтесь в соблюдении соглашений области имен клиента! Присвойте краткий текст и выберите идентификатор Программа и экран выбора транзакция отчета. На следующем экране введите имя программы и выберите Транзакция профессионального пользователя. Выберите GUI активирован и установите индикатор SAP GUI для Windows. Рисунок 33: Создание транзакции 5. Так как каждая транзакция является объектом репозитария, необходимо присвоить ее пакету и запросу на изменение на следующих экранах.

SAP AG All rights reserved. Перейдите к первому экрану меню SAP Easy Access. В контекстном меню Фавориты выберите Вставить транзакцию.

В появившемся диалоговом окне введите требуемый код транзакции. Теперь можно запустить соответствующую программу путем двойного щелчка. Закрытие проектов разработок После выполнения своей задачи разработки сотрудник проекта производит проверку качества и деблокирует свою задачу в запросе на изменение. SAP AG All rights reserved. Тем не менее, все сотрудники проекта все еще могут обрабатывать эти объекты.

После деблокирования всех задач запроса на изменение руководитель проекта выполняет окончательную проверку объектов и деблокирует запрос на изменение. На этом проект завершается. SAP AG All rights reserved.

Копии разработанных объектов экспортируются в собственный каталог переноса системы и остаются там до тех пор, пока системный администратор не импортирует их в определенную целевую систему.

Другая копия экспортированных объектов разработки хранится в собственной базе данных версий системы. SAP AG All rights reserved. SAP AG All rights reserved. Для логического группирования объектов репозитария и их переноса необходимо создать пакет.

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

Введите новый личный пароль. Задание 2: Создание пакета 1. Присвойте его запросу на изменение, указанному преподавателем. Присвойте все свои объекты репозитария в следующих упражнениях этому пакету и запросу на изменение. Рекомендация: Для этого рекомендуется использовать инструментальное средство навигатор по объектам.

Этот инструмент предоставляет обзор всех объектов репозитария в пакете. Отсюда можно непосредственно обработать каждый объект путем его выбора из списка. SAP AG All rights reserved. Войдите в операционную систему, а затем в указанную систему обучения с использованием имени пользователя, указанного преподавателем. Этот шаг выполняется в соответствии с обычной процедурой. Введите новый личный пароль. Задание 2: Создание пакета 1. Присвойте его запросу на изменение, указанному преподавателем.

Этот шаг выполняется в соответствии с описанием в учебных материалах. Присвойте все свои объекты репозитария в следующих упражнениях этому пакету и запросу на изменение. Рекомендация: Для этого рекомендуется использовать инструментальное средство навигатор по объектам. Этот инструмент предоставляет обзор всех объектов репозитария в пакете. Отсюда можно непосредственно обработать каждый объект путем его выбора из списка.

SAP AG All rights reserved. Данные должны считываться из таблицы базы данных SFLIGHT. Задание 1: Создание программы 1. Задание 2: Изменение программы 1. Для каждой записи данных выведите содержимое полей carrid, connid, fldate, seatsocc и seatsmax в списке: NEW-LINE.

Проверьте программу на наличие синтаксических ошибок. Протестируйте и активируйте программу. SAP AG All rights reserved. Задание 2: Изменение программы 1. Для каждой записи данных выведите содержимое полей carrid, connid, fldate, seatsocc и seatsmax в списке: NEW-LINE.

Продолжение на следующей странице 50 © 2006 г. SAP AG All rights reserved. Проверьте программу на наличие синтаксических ошибок. Протестируйте и активируйте программу. SAP AG All rights reserved. SAP AG All rights reserved. Задание 1: Создание транзакции 1. Рекомендация: В определении транзакции выберите Программа и экран выбора транзакция отчета в качестве начального объекта. Выполните программу путем ввода нового кода транзакции в поле команды. Задание 2: Определение фаворитов 1. Выполните программу путем двойного щелчка по новой записи фаворита.

SAP AG All rights reserved. Рекомендация: В определении транзакции выберите Программа и экран выбора транзакция отчета в качестве начального объекта. Этот шаг выполняется в соответствии с описанием в учебных материалах.

Выполните программу путем ввода нового кода транзакции в поле команды. Задание 2: Определение фаворитов 1. Этот шаг выполняется в соответствии с описанием в учебных материалах. Выполните программу путем двойного щелчка по новой записи фаворита. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. Кроме того, описываются базовые описательные элементы в ABAP-словаре, а также ситуации, в которых целесообразно и необходимо использовать типы данных описания данных из ABAP-словаря.

SAP AG All rights reserved. Например, сущностью является бизнес-единица. Сущности находятся во взаимосвязи друг с другом, что фиксируется в базовой модели данных. Такая модель называется моделью отношений между сущностями Entity Relationship Model — ERM. Эта модель данных используется в качестве основы для внедрения соответствующих определений таблиц прозрачных таблиц , включая их связи друг с другом в ABAP-словаре. Путем активации определений таблиц в базе данных автоматически создаются соответствующие таблицы базы данных.

Фактические прикладные данные вводятся в эти таблицы позже. SAP AG All rights reserved. В рамках этого курса достаточно привести простую выдержку из этой модели данных. Каково время вылета для рейсов на требуемую дату?

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

Объем имеющихся данных существенно превышает объем, необходимый клиенту. Необходимо обеспечить возможность программного выбора и вывода только тех данных, которые требуются клиенту. SAP AG All rights reserved. Каждый бронируемый рейс всегда относится только к одному существующему расписанию рейсов.

Возможно присвоение городам близлежащих аэропортов. С помощью этих взаимосвязей можно осуществлять управление всеми необходимыми данными без возникновения избыточной информации. В то же время турагентство сможет получать любые данные, запрошенные клиентом. SAP AG All rights reserved. Сначала она представляет собой только не зависящее от платформы описание таблицы базы данных, а не фактическую таблицу базы данных. Однако при активации прозрачной таблицы в базе данных автоматически создается таблица с тем же именем.

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

Ключ таблицы табличный ключ состоит из ключевых полей. Этот ключ также называется первичным ключом. Записи данных в той же таблице должны быть уникальными с точки зрения значений первичного ключа. Таким образом, значение ключа записи данных представляет собой уникальный идентификатор в пределах таблицы.

Описательные элементы в ABAP-словаре Перед рассмотрением прозрачных таблиц необходимо пояснить два дополнительных термина словаря: элемент данных и домен. SAP AG All rights reserved.

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

SAP AG All rights reserved. Рисунок 43: Прозрачные таблицы в ABAP-словаре Поля прозрачной таблицы формируют столбцы с идентичными именами в соответствующей таблице базы данных. SAP AG All rights reserved.

При многократном использовании элемента данных в определении полей различных таблиц можно обеспечить соответствие полей в разных таблицах. Индикатор Ключ используется для определения поля как ключевого.

Рисунок 44: Структуры в ABAP-словаре Как правило, структура в ABAP-словаре используется для централизованного описания переменных структуры, которые должны содержать поля различных таблиц.

Затем эти структуры словаря данных можно использовать в ABAP-программе для определения объектов данных конкретных переменных структуры , предназначенных для временного сохранения данных в программе или используемых в качестве интерфейса для переноса полей между экраном и ABAP-программой.

Более подробно эта процедура описана в следующем разделе. Определение структуры словаря данных почти идентично определению структуры прозрачной таблицы. Единственное различие заключается в том, что описание ключевых полей и указание технических параметров для структур не является ни целесообразным, ни необходимым. Однако при использовании структур, в отличие от полей и элементов данных, определяются компонент и тип компонента, поскольку, в отличие от прозрачных таблиц, структура может являться компонентом другой структуры.

Такие структуры с включенными подструктурами в качестве компонентов называются сложными структурами. Соответственно, структуры с простыми компонентами называются простыми структурами. SAP AG All rights reserved. Возврат объекта данных переменной того же типа, что и поле структуры sbc400focc-connid.

Возврат поля ввода на экране выбора, а также переменной того же типа, что и поле таблицы spfli-carrid. Возврат структурной переменной того же типа, что и структура словаря данных sbc400focc.

Возврат структурной переменной того же типа, что и строка таблицы spfli. SAP AG All rights reserved. Когда пользователь нажимает на экране выбора кнопку F1 или F4, автоматически генерируется диалог документации или диалог справки по вводу. Необходимая информация извлекается из ABAP-словаря документация элемента данных или доступное средство поиска. SAP AG All rights reserved. SAP AG All rights reserved.

Рекомендация: Основной целью этого раздела является получение информации для указанной программы не из ее синтаксиса. Поэтому изучение синтаксиса программы в полном объеме не требуется. Это в особенности относится к операторам TABLES и MOVE-CORRESPONDING. Их значение и функциональные возможности будут описаны далее в этом курсе. Задание 1: Поиск и выполнение программы 1.

Просмотрите список объектов для пакета BC400 в навигаторе по объектам. Во время выполнения упражнения не выходите из режима просмотра. Выполните программу для изучения принципов ее работы. Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved.

Какую информацию необходимо предоставить для программы на экране выбора? Используйте справку по полю F1. Какие значения можно ввести? Используйте справку по вводу F4. Каково техническое имя поля ввода имя определения в программе?

Найдите эту информацию в определении в исходном тексте, а затем попробуйте найти ту же информацию в поле Техническая информация в справке к полю F1. Какая информация также содержит техническое имя поля ввода? Задание 3: Анализ экрана 1. Каков номер просматриваемого экрана? Для ответа на этот вопрос выберите опцию Статус в меню Система на экране.

Продолжение на следующей странице 70 © 2006 г. SAP AG All rights reserved. Какая информация выводится на экран? Воспользуйтесь справкой к полю F1. Каковы технические имена полей экрана? Относятся ли эти поля к структуре с типом, определенным в ABAP-словаре? Задание 4: Анализ исходного текста программы с использованием списка объектов программы 1. Какие объекты данных переменные определены в программе см. В каком месте программы они определены? Где в программе используются эти объекты данных?

Выберите опцию Ведомость использования в ABAP-редакторе. Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. Под каким именем определено поле ввода на экране выбора программы?

Включено ли это имя в список объектов программы? SAP AG All rights reserved. Просмотрите список объектов для пакета BC400 в навигаторе по объектам. Во время выполнения упражнения не выходите из режима просмотра.

Этот шаг выполняется в соответствии с обычной процедурой. Выполните программу для изучения принципов ее работы. Задание 2: Анализ экрана выбора 1. Какую информацию необходимо предоставить для программы на экране выбора? Используйте справку по полю F1. Ответ: Краткое описание авиакомпании. Какие значения можно ввести? Используйте справку по вводу F4. Ответ: С помощью кнопки F4 выводится список доступных и используемых кодов авиакомпаний: AA, LH и т.

Каково техническое имя поля ввода имя определения в программе? Найдите эту информацию в определении в исходном тексте, а затем попробуйте найти ту же информацию в поле Техническая информация в справке к полю F1.

Какая информация также содержит техническое имя поля ввода? Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. Каков номер просматриваемого экрана? Для ответа на этот вопрос выберите опцию Статус в меню Система на экране. Какая информация выводится на экран? Воспользуйтесь справкой к полю F1. Ответ: Краткое описание, подробное название и внутренняя валюта запрошенной авиакомпании.

Каковы технические имена полей экрана? Относятся ли эти поля к структуре с типом, определенным в ABAP-словаре? Эти компоненты можно просмотреть с помощью двойного щелчка по указанной структуре. Задание 4: Анализ исходного текста программы с использованием списка объектов программы 1. Какие объекты данных переменные определены в программе см. В каком месте программы они определены? Ответ: В списке объектов программы откройте узел Поля и просмотрите оператор в программе путем двойного щелчка по соответствующей переменной.

Где в программе используются эти объекты данных? Выберите опцию Ведомость использования в ABAP-редакторе. Ответ: Вызвать ведомость использования объекта данных в программе можно как из списка объектов посредством контекстного меню рассматриваемого объекта данных, так и из ABAP-редактора после выбора требуемого объекта данных и нажатия кнопки ведомости использования.

На экране появится список найденных мест в программе. Путем двойного щелчка можно перейти к требуемой части программы. Продолжение на следующей странице 74 © 2006 г. SAP AG All rights reserved. Под каким именем определено поле ввода на экране выбора программы? Включено ли это имя в список объектов программы? SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. Кроме того, рассматриваются некоторые базовые ABAP-операторы.

Описывается использование ABAP-отладчика для анализа выполнения программы. Кроме того, необходимо найти семантические ошибки в программах с помощью ABAP-отладчика. Типы данных и объекты данных Формальное описание переменной называется типом данных. Объектом данных является переменная, точно описанная посредством типа данных. На следующем рисунке показаны возможности использования типов данных. SAP AG All rights reserved. Тип интерфейсного параметра определяет тип значения текущих параметров, передаваемых при вызове единицы модуляризации.

На этом уроке описывается главным образом использование типов для определения внутренних переменных для программы. Рассмотрим стандартные типы ABAP, предварительно определенные SAP внедренные типы. Они подразделяются на две группы: полные и неполные. Перечисленные ниже внедренные стандартные типы ABAP являются полными.

Это означает, что они уже содержат информацию о фиксированной длине, связанную с тем или иным типом. Полные стандартные типы ABAP D Тип даты Date , формат — ГГГГММДД, длина — 8 фиксированная. T Тип времени Time , формат — ЧЧММСС, длина — 6 фиксированная.

SAP AG All rights reserved. F Тип числа с плавающей запятой Floating , длина — 8 фиксированная. STRING Тип символьной строки динамической длины. XSTRING Тип байтовой последовательности динамической длины HeXadecimal string.

Следующие стандартные типы не содержат фиксированной длины являются неполными. В случае их использования для определений объекта данных необходимо указывать длину переменной. Неполные стандартные типы ABAP C Тип символьной строки Character , для которой необходимо определить фиксированную длину. N Тип числовой символьной строки Numerical character , для которой необходимо указать фиксированную длину. X Тип для байтовой последовательности HeXadecimal string , для которой необходимо указать фиксированную длину P Тип упакованного числа Packed number , для которого необходимо указать фиксированную длину.

В определении упакованного числа также может быть указано количество десятичных знаков. Для получения дополнительной информации о предварительно определенных типах ABAP см. SAP AG All rights reserved. Эти типы существуют только в рассматриваемой программе и, следовательно, могут использоваться только в ней.

Описание выполняется посредством оператора TYPES. Рисунок 48: Описание локальных типов Тип данных, определенный в ABAP-словаре, называется глобальным, поскольку может использоваться во всей системе т. SAP AG All rights reserved. Другие глобальные типы данных описываются далее в этом курсе. Существуют три категории типов: стандартные, локальные и глобальные. Эти типы используются для определения переменных объектов данных.

SAP AG All rights reserved. Для ввода объекта данных можно использовать стандартный, локальный или глобальный тип ABAP. При определении дополнительных переменных можно использовать ссылку на уже определенный объект данных дополнение LIKE. SAP AG All rights reserved. Если в определении переменной отсутствует информация о типе, то предполагается, что это переменная стандартного типа C. Напротив, при отсутствии заданной длины используется соответствующая длина по умолчанию для стандартного типа неполного.

Длина по умолчанию для неполных стандартных типов, а также другая информация, приведена в документации по ключевым словам оператора TYPES или DATA.

SAP AG All rights reserved. Литералы и константы относятся к фиксированным объектам данных. Литералы можно использовать для указания постоянных значений в программах. Существуют числовые литералы указываются без верхних кавычек и текстовые литералы указываются с верхними кавычками. На представленном выше рисунке показаны некоторые примеры литералов. Константы определяются с помощью оператора CONSTANTS. Тип константы определяется аналогично элементарным объектам данных.

Для констант дополнение VALUE является обязательным. Таким образом определяются значения констант. Следует по возможности полностью избегать литералов при выполнении операторов. Вместо этого следует использовать константы. Это значительно упрощает написание программы.

SAP AG All rights reserved. Глобальные типы данных, напротив, могут использоваться во всей системе. В ABAP-словаре имеется опция создания ведомости использования для глобального типа данных. В ведомостях использования перечислены объекты репозитария, в которых используется этот тип данных. Помимо технической информации, глобальные типы данных могут также содержать семантическую информацию, соответствующую бизнес-описаниям определяемых объектов. Они также могут использоваться для проектирования способов представления данных на экране например, краткого описания слева от поля ввода.

SAP AG All rights reserved. Все элементарные объекты данных предварительно присваиваются специфичному для вида начальному значению, за исключением случая присвоения другого значения в результате добавления VALUE. Оператор MOVE используется для переноса содержимого объекта данных в другой объект данных. Если оба объекта данных var1 и var2 относятся к различным типам, возникает конфликт типов. В этом случае при наличии правила преобразования автоматически выполняется преобразование типа.

Для получения подробной информации о копировании и правилах преобразования см. SAP AG All rights reserved. Для получения подробной информации о начальных значениях для определенного типа данных см. Рисунок 55: Вычисления В ABAP можно программировать арифметические выражения на любом уровне вложения. Некоторые функции для различных типов данных предварительно определяются в среде выполнения ABAP. Например, следующий оператор определяет текущую длину содержимого символьной переменной.

SAP AG All rights reserved. Остальные символы также должны быть отделены по крайней мере одним пробелом. Для получения подробной информации о доступных операциях и функциях см. Рисунок 56: Условные ветви 06-04-2006 © 2006 г. SAP AG All rights reserved. Если условие удовлетворяется, в системе выполняется соответствующий блок операторов. В противном случае проверяется условие, указанное в ветви ELSEIF возможен ввод нескольких условий , и т. Если ни одно из указанных условий не выполнено, то выполняется ветвь ELSE, если она доступна.

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

Если содержимое поля совпадает, то обрабатывается соответствующий блок операторов. Если соответствие отсутствует, в системе выполняется ветвь OTHERS, если таковая доступна. Все дальнейшие дополнения необязательны, за исключением первой ветви WHEN. После выполнения блока операторов ветви осуществляется немедленный переход к ENDIF или ENDCASE. Рекомендация: При необходимости выполнения проверок соответствия значения поля другим значениям следует выбрать конструкт CASE, а не оператор IF, поскольку он обеспечивает большую четкость и более верный результат.

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

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

Перед очередным выполнением блока операторов всегда осуществляется проверка условия. Циклы считывания Цикл SELECT можно использовать для последовательного считывания нескольких записей из таблицы базы данных. Во внутренней таблице табличной переменной в программе та же функция считывания реализуется в цикле LOOP. SAP AG All rights reserved. При этом необходимо указать трехзначный номер сообщения и класс сообщения.

Номера и классы сообщений однозначно определяют выводимое на экран сообщение. Тип сообщения используется для указания способа вывода сообщения. Если указанное сообщение содержит метки-заполнители, им можно присвоить значения путем добавления WITH. В тексте выводимого сообщения вместо меток-заполнителей будут отображаться перенесенные значения. Для получения дополнительной информации о синтаксических альтернативах оператору MESSAGE см.

SAP AG All rights reserved. Описанная выше установка точки прерывания в редакторе возможна только для активных исходных текстов. SAP AG All rights reserved. SAP AG All rights reserved. Можно просмотреть содержимое объемом до восьми объектов данных. SAP AG All rights reserved. При выборе Дальше программа выполняется до следующей точки прерывания.

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

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

SAP AG All rights reserved. На экране выбора необходимо ввести значения и арифметическую операцию. Результат должен выводиться в виде списка. Задание 1: Создание программы 1. Задание 2: Определите входные параметры неявное определение экрана выбора.

Задание 3: Выполните вычисления и создайте список вывода. Кроме того, определите элементарный объект данных для результата; тип: упакованное число с двумя десятичными разрядами рекомендуемое имя: result.

Выполните вычисление в зависимости от указанной арифметической операции. Для ветви используйте оператор CASE.

Результат должен выводиться в виде списка. Продолжение на следующей странице 2. SAP AG All rights reserved. Если пользователь указал недействительную арифметическую операцию, в списке должно выводиться сообщение об ошибке.

Для проверки используйте оператор IF. При попытке деления на нуль в списке должно выводиться сообщение об ошибке. SAP AG All rights reserved. Задание 2: Определите входные параметры неявное определение экрана выбора. Задание 3: Выполните вычисления и создайте список вывода. Кроме того, определите элементарный объект данных для результата; тип: упакованное число с двумя десятичными разрядами рекомендуемое имя: result.

Выполните вычисление в зависимости от указанной арифметической операции. Для ветви используйте оператор CASE. Результат должен выводиться в виде списка. Задание 4: Выполните поиск ошибок. Если пользователь указал недействительную арифметическую операцию, в списке должно выводиться сообщение об ошибке. Для проверки используйте оператор IF. Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. При попытке деления на нуль в списке должно выводиться сообщение об ошибке.

DATA result TYPE p DECIMALS 2. Продолжение на следующей странице 104 © 2006 г. SAP AG All rights reserved. Примечание: Дополнения для оператора WRITE, указанные в скобках, описываются в одном из следующих уроков. На данном этапе эти дополнения можно опустить. SAP AG All rights reserved. SAP AG All rights reserved.

Кроме того, рассматриваются возможности использования базовых ABAP-операторов для структурированных объектов данных. SAP AG All rights reserved. Это позволяет комбинировать значения, логически составляющие один объект данных. Структуры могут быть вложенными. Это означает, что компоненты могут состоять из нескольких структур или даже внутренних таблиц.

В программе структурные переменные определяются с помощью оператора DATA аналогично элементарным объектам данных. На следующем рисунке представлено определение структурной переменной с помощью локально описанного типа структуры.

SAP AG All rights reserved. Каждому компоненту можно присвоить любой тип посредством добавления TYPE. Для получения дополнительной информации см. Объект данных определяется непосредственно обычным способом. При необходимости можно также непосредственно определить структурированный объект данных. Для этого необходимо заменить ведущее ключевое слово TYPES словом DATA. SAP AG All rights reserved. Поэтому использовать дефисы в именах не следует. Рисунок 67: Копирование структурных компонентов с одним и тем же именем 110 © 2006 г.

SAP AG All rights reserved. Учитываются только те компоненты, которые имеют одно и то же имя в исходной и целевой структуре. Все другие структурные компоненты остаются неизменными. Присвоение отдельных значений можно выполнить с помощью оператора MOVE.

Рисунок 68: Структуры в режиме отладки В отладчике можно отслеживать содержимое поля структуры путем ввода имени структуры в области Имена полей или его копирования из исходного текста путем двойного щелчка. Просмотреть структурный компонент можно с помощью двойного щелчка по имени структуры в области Имена полей. SAP AG All rights reserved.

SAP AG All rights reserved. Задание 1: Выполнение программы в режиме отладки 1. На экране выбора введите значение LH в поле Авиакомпания. Для выполнения программы нажмите F8. Будет выполнен переход в режим отладки. Убедитесь в том, что все объекты данных имеют начальные значения. Перенесите все объекты данных, определенные в программе, в ракурс поля. Просмотрите типизацию и содержимое структурных компонентов.

Этот нестандартный и неинтуитивный тип определения структуры используется только для программирования экранов. Определенная в программе структура используется в качестве интерфейса для обмена данными между программой и экраном. Для получения дополнительной информации см. Выполните шаги программы с использованием функции пошагового выполнения. Продолжение на следующей странице 2. SAP AG All rights reserved. Какое значение принимает системное поле SY-SUBRC после выполнения этого оператора? Какие значения полей копируются?

ABAP-оператор CALL SCREEN 100 используется для обработки экрана 100. Каковы технические имена полей на экране? На экране введите соответствующие значения для имени пользователя, даты и времени и продолжите выполнение программы путем нажатия Enter.

Какие объекты данных программы выведены теперь в списке? Продолжение на следующей странице 114 © 2006 г. SAP AG All rights reserved.

Теперь проверьте процесс составления списка с помощью оператора WRITE. Рекомендация: После выполнения первого оператора WRITE в строке инструментов появляется дополнительная кнопка. Эта кнопка используется для просмотра созданного буфера списка.

Однако строка буфера списка выводится на экран только при его закрытии, т. Задание 4: Установка точек прерывания и изменение содержимого поля 1. Перезапустите программу в режиме отладки. Установите точку прерывания для всех операторов WRITE. Продолжите выполнение программы путем выбора Дальше и проверьте причины остановки программы в каждом конкретном случае. Перезапустите программу в режиме отладки. Установите точку прерывания для оператора CALL SCREEN и выполняйте программу до тех пор, пока не будет достигнут этот оператор.

Рекомендация: Для изменения значения поля в отладчике выберите Изменение содержимого поля в области Имена полей. Теперь выполните оператор CALL SCREEN. Что отображается на экране? SAP AG All rights reserved. На экране выбора введите значение LH в поле Авиакомпания. Для выполнения программы нажмите F8. Будет выполнен переход в режим отладки.

Этот шаг выполняется в соответствии с описанием. Убедитесь в том, что все объекты данных имеют начальные значения. Перенесите все объекты данных, определенные в программе, в ракурс поля. Просмотрите типизацию и содержимое структурных компонентов. Этот нестандартный и неинтуитивный тип определения структуры используется только для программирования экранов.

Определенная в программе структура используется в качестве интерфейса для обмена данными между программой и экраном. Для получения дополнительной информации см. Этот шаг выполняется в соответствии с описанием в учебных материалах. Выполните шаги программы с использованием функции пошагового выполнения. Задание 2: Анализ содержимого полей 1. Какое значение принимает системное поле SY-SUBRC после выполнения этого оператора? SAP AG All rights reserved.

Какие значения полей копируются? Ответ: Значение полей с одинаковыми именами: MANDT, CARRID, CARRNAME и CURRCODE. ABAP-оператор CALL SCREEN 100 используется для обработки экрана 100. Каковы технические имена полей на экране? На экране введите соответствующие значения для имени пользователя, даты и времени и продолжите выполнение программы путем нажатия Enter.

Какие объекты данных программы выведены теперь в списке? На экране отображаются или вводятся значения именно этих полей. Задание 3: Контроль структуры списка 1.

Теперь проверьте процесс составления списка с помощью оператора WRITE. Рекомендация: После выполнения первого оператора WRITE в строке инструментов появляется дополнительная кнопка.

Эта кнопка используется для просмотра созданного буфера списка. Однако строка буфера списка выводится на экран только при его закрытии, т. Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved.

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

Перезапустите программу в режиме отладки. Установите точку прерывания для оператора CALL SCREEN и выполняйте программу до тех пор, пока не будет достигнут этот оператор.

Рекомендация: Для изменения значения поля в отладчике выберите Изменение содержимого поля в области Имена полей. Теперь выполните оператор CALL SCREEN. Что отображается на экране? На экране в поле Пользователь отображается имя, ранее указанное в отладчике.

Для получения дополнительной информации о переносе полей между экраном и программой см. SAP AG All rights reserved. SAP AG All rights reserved. После этого выполняется анализ внутренних таблиц в ABAP-отладчике во время выполнения.

Работа с внутренними таблицами Рисунок 69: Внутренние таблицы: варианты использования 120 © 2006 г. SAP AG All rights reserved. Количество записей данных ограничено только масштабом конкретных внедренных систем. Исполняющая система ABAP осуществляет динамическое управление размером внутренней таблицы.

Это означает, что разработчик не должен выполнять какие-либо действия по управлению памятью. Отдельные наборы данных во внутренней таблице называются строками таблицы или записями таблицы. Поэтому отдельные компоненты в строке носят название полей или столбцов внутренней таблицы.

Тип строки внутренней таблицы, определяемый с помощью любого типа данных, описывает структуру строк записей таблицы. Таким образом, внутренние таблицы предоставляют простой способ обработки больших наборов данных в структурированном виде.

Рисунок 70: Атрибуты внутренних таблиц Следующие свойства полностью определяют внутреннюю таблицу: 06-04-2006 © 2006 г. SAP AG All rights reserved. Для этого, как правило, необходимо указать тип структуры. Однако могут использоваться любые типы данных. Ключ Ключ внутренней таблицы состоит из ключевых полей с учетом порядка их расположения. Порядок ключевых полей используется, помимо прочего, для сортировки в соответствии с ключами. В зависимости от вида доступа, ключ может быть определен как уникальный или групповой.

Уникальный ключ означает, что строка с определенными ключевыми значениями, возможно, является уникальной в пределах таблицы. Тип таблицы Существует три различных типа таблиц: стандартные , отсортированные и хеш-таблицы.

Из соображений производительности, следует выбирать соответствующий тип таблицы в зависимости от используемого вида доступа. На следующем рисунке показан выбор соответствующего типа таблицы. Рисунок 71: Атрибуты и использование типов таблицы Если доступ к записи таблицы осуществляется путем указания соответствующего номера строки, такой способ называется доступом по индексу. Напротив, доступ к записи путем ввода ключевого значения называется доступом по ключу. SAP AG All rights reserved.

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

Ключ должен быть уникальным. В случае хеш-таблиц возможен доступ только по ключу. Этот тип таблицы следует выбирать в том случае, когда внутренняя таблица является чрезвычайно объемной, и используется только доступ по ключу. В этом курсе рассматриваются только стандартные таблицы, однако за исключением нескольких особых случаев синтаксис для всех трех типов таблиц является идентичным.

SAP AG All rights reserved. Типы таблицы могут определяться глобально в ABAP-словаре или локально в программе. На приведенном выше рисунке показан тип таблицы, описанный в ABAP-словаре, а также определение в рамках программы табличной переменной со ссылкой на тип таблицы. Для получения подробной информации относительно описания глобальных типов таблицы в ABAP-словаре см.

SAP AG All rights reserved. Для получения подробной информации относительно определения локальных типов таблиц см. Кроме того, можно непосредственно определить внутреннюю таблицу.

Для этого следует просто использовать оператор DATA вместо оператора TYPES. SAP AG All rights reserved. На следующем рисунке представлен обзор возможных определений внутренних таблиц.

Рисунок 75: Возможные определения внутренних таблиц В приведенном выше кратком тексте для определения таблицы неявно используются следующие значения по умолчанию: тип таблицы: стандартная по умолчанию ; 126 © 2006 г. SAP AG All rights reserved.

Рекомендация: Поскольку, как правило, использование ключа по умолчанию не является целесообразным, его можно применять для определения внутренней таблицы только в том случае, если ключ не требуется для обработки таблицы. Внимание: Наиболее типичная синтаксическая ошибка начинающего пользователя заключается в следующем: DATA itab TYPE TABLE OF. В этом случае будет определена внутренняя таблица, строки которой также будут являться внутренними таблицами указанного типа!

Рисунок 76: Определение структурированных объектов данных: обзор 06-04-2006 © 2006 г. SAP AG All rights reserved. На вышеприведенном рисунке представлена обработка внутренней таблицы с использованием соответствующей рабочей области. APPEND Добавление содержимого структуры к внутренней таблице. Эта операция может использоваться только со стандартными таблицами. INSERT Вставка содержимого структуры во внутреннюю таблицу. В случае стандартной таблицы это содержимое просто добавляется к таблице, в случае отсортированной таблицы содержимое вставляется в таблицу в требуемом месте согласно ключу, а в случае хеш-таблицы вставка производится в соответствии с хеш-алгоритмом.

READ Копирование содержимого записи таблицы в структуру. MODIFY Перезапись строки внутренней таблицы с использованием содержимого структуры. SAP AG All rights reserved. COLLECT Суммирование содержимого структуры в строке внутренней таблицы, имеющей тот же самый ключ. При этом добавляются только неключевые поля. Следовательно, этот оператор может использоваться только для тех таблиц, все неключевые поля которых являются числовыми. Для получения подробной информации относительно описанных здесь ABAP-операторов см.

Рисунок 78: Обработка наборов записей обзор LOOP. ENDLOOP Оператор LOOP по очереди размещает строки внутренней таблицы в структуру, указанную в выражении INTO. В пределах оператора LOOP существует возможность вывода или изменения текущего содержимого структуры с последующей записью обратно в таблицу. DELETE Удаление строк внутренней таблицы, удовлетворяющих определенному.

SAP AG All rights reserved. APPEND Добавление содержимого нескольких строк внутренней таблицы к другой стандартной таблице. Для получения подробной информации относительно описанных здесь ABAP-операторов см. Рисунок 79: Пример синтаксиса: вставка строки Существует возможность вставки строки во внутреннюю таблицу путем записи требуемых данных в подготовленную рабочую область с последующей вставкой во внутреннюю таблицу посредством оператора INSERT.

В случае стандартных и хеш-таблиц происходит добавление строки. В случае отсортированной таблицы строка вставляется согласно ключу. SAP AG All rights reserved. При выполнении поиска в системном поле sy-tabix содержится номер строки текущей записи таблицы. Приведенный выше пример показывает вывод соответствующей текущей записи с использованием оператора WRITE при обработке.

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

Для этого используется следующий синтаксис: MODIFY itab FROM wa. SAP AG All rights reserved. В приведенном выше примере последовательно просматриваются только первые пять строк внутренней таблицы. Для считывания отдельной записи можно использовать оператор READ TABLE.

В целях указания номера строки, содержащей требуемую запись, используется дополнение INDEX. Обратите внимание на то, что в обоих приведенных выше примерах используется индекс, что возможно только в случае индексных таблиц т. SAP AG All rights reserved.

В приведенном выше примере обрабатываются только те строки внутренней таблицы, поле CARRID которых имеет значение LH. Рекомендация: С точки зрения времени, затрачиваемого на выполнение, наиболее подходящей для этого вида обработки таблицей является отсортированная таблица, поле CARRID которой представляет собой ее первое ключевое поле.

Существует возможность использования синтаксиса READ TABLE, представленного на приведенном выше рисунке, для считывания определенной строки внутренней таблицы. В этом случае всем ключевым полям после дополнения WITH TABLE KEY необходимо присвоить соответствующие значения. Рекомендация: С точки зрения времени, затрачиваемого на выполнение, в случае большого объема данных наиболее подходящей для этого вида единичного доступа является хеш-таблица.

SAP AG All rights reserved. При необходимости ограничения полей следует использовать дополнение WITH KEY.

Рисунок 83: Пример синтаксиса: сортировка и удаление содержимого С помощью оператора SORT можно выполнить сортировку стандартных и хеш-таблиц в порядке возрастания или убывания по табличному ключу или столбцам.

Если порядок сортировки ASCENDING или DESCENDING не определен, то по умолчанию используется первый вариант. При необходимости могут использоваться правила сортировки, принятые в конкретной компании.

Для внедрения лексикографической сортировки можно использовать необязательное дополнение AS TEXT. В случае добавления STABLE, которое также является необязательным, относительный порядок записей данных, имеющих идентичные ключи сортировки, при сортировке остается неизменным. Для получения дополнительной информации см. Для удаления содержимого таблицы можно использовать следующие операторы: 134 © 2006 г.

SAP AG All rights reserved. Однако часть ранее используемой памяти остается доступной для будущих вставок. CLEAR Для внутренних таблиц без строки заголовка всех тех, что были ранее описаны в курсе оператор CLEAR имеет ту же функцию, что и оператор REFRESH. Однако для внутренних таблиц со строкой заголовка см. FREE Этот оператор используется для удаления всего содержимого внутренней таблицы, а также для освобождения ранее используемой памяти.

Оператор FREE используется для внутренних таблиц, которые уже были проанализированы и больше не требуются в процессе выполнения программы. В результате ранее присвоенная, но больше не являющаяся необходимой память становится доступной для последующего использования. Рисунок 84: Внутренние таблицы в режиме отладки 06-04-2006 © 2006 г. SAP AG All rights reserved. В качестве альтернативы можно воспользоваться кнопкой Таблица и указать имя таблицы в поле Внутренняя таблица.

Затем можно перейти к просмотру содержимого таблицы путем нажатия клавиши Enter. Рисунок 85: Сравнение внутренних таблиц со строками заголовка и без строк заголовка Дополнение WITH HEADER LINE в определении внутренней таблицы предоставляет возможность создания таблицы со строкой заголовка. В этом случае соответствующая таблице рабочая область строка заголовка создается автоматически, и необходимость в ее дополнительном определении отсутствует. Это также упрощает синтаксис команд таблицы, поскольку система всегда обращается к автоматически созданной рабочей области, 136 © 2006 г.

SAP AG All rights reserved. Несмотря на упомянутые преимущества, дальнейшее использование таблицы со строками заголовка не представляется целесообразным по указанным ниже причинам. Таблицы со строками заголовка не допускается использовать в следующих случаях: — —.

Внутренние таблицы со строками заголовка упоминаются на этом уроке только потому, что они используются в некоторых ранних программах, с которыми периодически требуется работать. С этой целью ниже перечислены некоторые особенности строк заголовка: В случае внутренней таблицы со строкой заголовка под названием itab для адресации к соответствующему полю в рабочей области используется itab- Поле таблицы. В следующем примере поясняется описанная выше ситуация.

DATA itab1 TYPE TABLE OF scarr WITH HEADER LINE. DATA itab2 LIKE itab1. Только операции со строками заголовка! Операции с телом таблицы для комплексных объектов данных структур и внутренних таблиц, компонентами которых также являются внутренние таблицы ; для ABAP-объектов объектно-ориентированных расширений ABAP.

Следующий устаревший синтаксис также определяет внутреннюю таблицу со строкой заголовка даже с учетом того, что непосредственное указание на это отсутствует. DATA: BEGIN OF itab OCCURS n, field1 TYPE... SAP AG All rights reserved.

SAP AG All rights reserved. Задание 1: Определение внутренней таблицы 1. Определите внутреннюю таблицу в качестве буфера для данных из таблицы базы данных SPFLI. Для этого следует определить для внутренней таблицы тип строки, который является совместимым со структурой строк таблицы SPFLI. В ABAP-словаре выполните поиск всех типов таблиц, удовлетворяющих этому условию. Рекомендация: Необходимо вывести прозрачную таблицу SPFLI в ABAP-словаре.

Затем воспользуйтесь соответствующей кнопкой для вызова ведомости использования SPFLI в виде списка. Обратите внимание на правильность выбора при создании ведомости использования. Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. Для вывода списка буферизированных данных во внутренней таблице используйте оператор LOOP.

SAP AG All rights reserved. Этот шаг выполняется в соответствии с обычной процедурой. Определите внутреннюю таблицу в качестве буфера для данных из таблицы базы данных SPFLI.

Для этого следует определить для внутренней таблицы тип строки, который является совместимым со структурой строк таблицы SPFLI. В ABAP-словаре выполните поиск всех типов таблиц, удовлетворяющих этому условию. Рекомендация: Необходимо вывести прозрачную таблицу SPFLI в ABAP-словаре. Затем воспользуйтесь соответствующей кнопкой для вызова ведомости использования SPFLI в виде списка.

Обратите внимание на правильность выбора при создании ведомости использования. Этот шаг выполняется в соответствии с описанием. Задание 2: Заполнение и вывод внутренней таблицы 1. Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. Для вывода списка буферизированных данных во внутренней таблице используйте оператор LOOP.

SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved.

Кроме того, представлен обзор методов, позволяющих получать доступ к нескольким таблицам баз данных. В заключение приведена информация относительно способов доступа к таблицам базы данных, в результате которого инициируется внесение изменений.

SAP AG All rights reserved. Каждая система управления реляционной базой данных имеет собственный SQL, т. Native SQL, который является специфичным для базы данных. Соответственно, ABAP-программа с операторами Native SQL не может использоваться без ограничений во всех SAP-системах из-за различий в системах БД разных SAP-систем. Open SQL — это определенный SAP стандарт SQL для языка ABAP, который является не зависящим от базы данных.

Операторы Open SQL динамически преобразуются в соответствующие операторы Native SQL используемой системы баз данных, и таким образом, не зависят от конкретной базы данных. Они позволяют разработчикам ABAP обращаться к данным унифицированным способом, вне зависимости от установленной системы базы данных. SAP AG All rights reserved. Возможен также свободный поиск с использованием информационной системы репозитария.

Рисунок 88: Доступ к базе данных для чтения обзор 148 © 2006 г. SAP AG All rights reserved. Выражение FROM служит для указания имени источника таблицы базы данных или ракурса , из которого должны быть выбраны данные. В выражении INTO определяется целевая переменная, в которой должны быть размещены выбранные данные. В выражении WHERE указываются столбцы таблицы, которые должны быть выбраны. Для получения информации о других выражениях см.

Рисунок 89: Считывание отдельных записей Оператор SELECT SINGLE позволяет считывать отдельные записи из таблицы базы данных. Для обеспечения уникального доступа необходимо, чтобы все ключевые поля выражения WHERE были заполнены. Исключением является поле манданта: если оно не заполнено, используется текущий мандант.

Следует отметить, что мандант может быть указан в операторе выбора SELECT только в комбинации с дополнением CLIENT SPECIFIED. Более подробная информация будет представлена далее. SAP AG All rights reserved.

Этот вариант иллюстрируется на следующем рисунке. Выражение INTO используется для указания целевой переменной, в которую должна быть скопирована запись данных.

Выровненная по левому краю целевая область должна быть структурирована аналогично строке таблицы или указанным обязательным полям этой строки. При обнаружении системой подходящей записи значение возврата SY-SUBRC равно 0. Рисунок 90: Подходящая целевая структура для списка полей При необходимости выбора определенных считываемых полей из строки таблицы они могут быть указаны в форме списка полей в рамках оператора SELECT см.

Затем в выражении INTO следует присвоить имя целевой структурной переменной, структура которой совпадает со структурой списка полей по крайней мере, в начале , т. Соответствовать друг другу должны лишь поля сопоставляемых типов.

Имена полей целевой структуры не учитываются. Альтернативой указанию целевой структуры является перечисление соответствующих целевых полей в выражении INTO. SAP AG All rights reserved. В результате в целевой области будут заполнены только поля с одинаковыми именами. Следует удостовериться, что соответствующие типы полей также являются идентичными, поскольку в противном случае как в операторе MOVE осуществляется сложное преобразование, в результате которого в целевые поля могут быть перенесены неполные данные по причине отсечения.

Эта структура отличается простотой ведения, так как расширение списка полей или целевой структуры не требует внесения в программу дополнительных изменений, поскольку в структуре уже существует поле с тем же самым именем и, возможно, тем же самым типом. SAP AG All rights reserved. С помощью выражения WHERE определяются строки, которые будут считываться в целевую структуру и обрабатываться с использованием блока операторов, указанных в теле цикла. Несколько логических условий в рамках выражения WHERE могут быть логически соединены с помощью AND и OR.

Данные передаются из базы данных в интерфейс базы данных сервера приложений в виде пакетов. После этого записи построчно копируются указанным блоком обработки в целевую область для обработки. Цикл завершается автоматически после считывания и анализа всех требуемых строк. Значение возврата должно быть запрошено после выполнения цикла SELECT т. Если была считана хотя бы одна строка, значение переменной SY-SUBRC равно 0. В этом случае переменная SY-DBCNT содержит количество считанных записей. SAP AG All rights reserved.

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

Так как выборка массива не является видом обработки циклов, операторENDSELECT не требуется и даже не является допустимым.

Аналогично описанным выше вариантам SELECT, внутренняя таблица, указанная в качестве целевой для выборки массива, должна быть выровнена по левому краю и структурирована так же, как и список полей. Если внутренняя таблица не отвечает этому условию, вместо INTO TABLE необходимо использовать дополнение INTO CORRESPONDING FIELDS OF TABLE. В этом случае столбцы базы данных, указанные в списке полей, копируются в столбцы внутренней таблицы, имеющие те же самые имена. Кроме того, следует также удостовериться, что типы полей связанных столбцов соответствуют друг другу, во избежание сложного преобразования и возможного появления неполных данных в целевой таблице.

При выборке массива информация, которая могла содержаться во внутренней таблице, перезаписывается. При необходимости добавления, а не перезаписи строк, можно использовать дополнение APPENDING TABLE. SAP AG All rights reserved. В данном случае переменная SY-DBCNT содержит количество считанных строк. Рисунок 94: Считывание данных из таблиц, зависящих от манданта Таблица базы данных называется зависящих от манданта, если поле манданта тип данных CLNT является первым ключевым столбцом, и таблица содержит записи, которые являются специфичными для манданта.

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

Следует отметить, что это возможно только при использовании дополнения CLIENT SPECIFIED после выражения FROM. Поскольку считывание данных для всех мандантов на практике требуется редко и не соответствует контексту данного курса, поле манданта в презентациях обычно опускается.

SAP AG All rights reserved. Данная операция выполняется в режиме просмотра соответствующей прозрачной таблицы в ABAP-словаре с использованием кнопки Индексы. При активации индекса в базе данных создается вторичный индекс. При выборе из зависящих от манданта таблиц мандант всегда переносится в базу данных т. Следовательно, при определении индекса для подобных таблиц имеет смысл включать поле манданта. В ходе выполнения оно может использоваться для ограничения поиска в рамках базы данных соответствующим блоком манданта посредством вторичного индекса.

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

Указывать индекс вручную в операторе SELECT не требуется. SAP AG All rights reserved. Он используется для ускорения доступа при выборе по всем ключевым полям или, по крайней мере, части ключевых полей, выровненной по левому краю.

Рекомендация: Необходимо отметить, что использование индексов, в которых нет необходимости, оказывает негативное воздействие на производительность системы.

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

Рисунок 96: Повторное использование компонентов для сбора данных 156 © 2006 г. SAP AG All rights reserved. Информация о трех других методах приведена в соответствующих разделах. При отсутствии повторно используемых компонентов для выбора данных следует организовать доступ для чтения самостоятельно. В целом наиболее быстрым методом является внедрение с использованием объединения таблиц.

В качестве примера рассмотрим считывание и вывод записей SPFLI. Для каждой записи также будет выведено полное название соответствующей авиакомпании, хранящееся в таблице SCARR. На следующем рисунке представлен логический процесс объединения таблиц, при котором все требуемые данные могут быть выбраны с использованием оператора SELECT. SAP AG All rights reserved. SAP AG All rights reserved. Условие соединения Какому условию должны соответствовать записи, выбираемые из объединяемых таблиц и преобразуемые в объединенную запись?

Рисунок 99: Варианты внедрения объединения таблиц 06-04-2006 © 2006 г. SAP AG All rights reserved. Более подробная информация содержится в онлайн-документации по ABAP-инструментальным средствам в разделе ABAP-словарь. В ходе выполнения в интерфейсе базы данных системой динамически создается соответствующий запрос базы данных.

Для получения дополнительной информации см. Рекомендация: Объединение таблиц представляет собой ракурс соответствующих таблиц базы данных и не содержит какие-либо избыточные данные.

При выборе данных из объединения таблиц требуемые данные считываются из соответствующих таблиц базы данных. В объединение таблиц можно включать и более двух таблиц. Рисунок 100: Доступ к базе данных для изменения 160 © 2006 г. SAP AG All rights reserved. Однако для реализации доступа к базе данных для изменения, предоставляемого этими операторами, необходимы знания о концепции транзакций SAP; в противном случае это может стать причиной противоречивости данных.

Концепция транзакций SAP рассматривается в курсе BC414. SAP AG All rights reserved. SAP AG All rights reserved. Список должен также включать в себя процентное соотношение занятых мест для каждого рейса.

Задание 1: Считывание нескольких строк с использованием цикла согласно выбору пользователя 1. После этого используйте глобальную структуру SBC400FOCC для типизации. Просмотрите информацию о полях этой структуры. Определите параметр ввода для сокращенного названия авиакомпании.

В таблице базы данных SFLIGHT должны выбираться все расписания рейсов для выбранной пользователем авиакомпании. Ограничьте выбор полями таблицы, для которых в рабочей области содержится целевое поле. Каково первое ключевое поле прозрачной таблицы SFLIGHT? Содержит ли оператор SELECT выражение WHERE? Используется ли первичный индекс в интерфейсе базы данных до сих пор?

Продолжение на следующей странице 06-04-2006 © 2006 г. SAP AG All rights reserved. В рамках оператора цикла должен производиться расчет процентной занятости мест в каждом рейсе. Присвойте результат полю PERCENTAGE в рабочей области. Расширьте вывод списка путем включения данных о процентном соотношении занятых мест. SAP AG All rights reserved. Этот шаг выполняется в соответствии с обычной процедурой.

После этого используйте глобальную структуру SBC400FOCC для типизации. Просмотрите информацию о полях этой структуры. За исключением последнего компонента, все прочие поля имеют тот же самый тип, что и поля с аналогичными именами из прозрачной таблицы SFLIGHT. В таблице SFLIGHT отсутствует соответствие для поля PERCENTAGE, в которое должны переноситься данные о занятости мест в текущем рейсе. Определите параметр ввода для сокращенного названия авиакомпании. Продолжение на следующей странице 06-04-2006 © 2006 г.

SAP AG All rights reserved. В таблице базы данных SFLIGHT должны выбираться все расписания рейсов для выбранной пользователем авиакомпании. Ограничьте выбор полями таблицы, для которых в рабочей области содержится целевое поле. Каково первое ключевое поле прозрачной таблицы SFLIGHT? Содержит ли оператор SELECT выражение WHERE? Используется ли первичный индекс в интерфейсе базы данных до сих пор?


Saptece введение в архитектуру sap netweaver

BC400_RU_ECC_2005 - Saptece введение в архитектуру sap netweaver


Saptece введение в архитектуру sap netweaver
SAP назвал свою систему «системой реального времени» — ведь больше не нужно было ждать ночи, когда обрабатывались перфокарты. SAP AG All rights reserved. SAP AG All rights reserved. SAP AG All rights reserved. Инновационный SAP: серия вебинаров от SAP Education материалы Этой осенью эксперты SAP рассказали о приоритетных инновационных решениях SAP на серии бесплатных онлайн-вебинаров.
Saptece введение в архитектуру sap netweaver
SAP System Architecture Overview - SAP NetWeaver - Ana Lekic SAP
Saptece введение в архитектуру sap netweaver

Управление жизненным циклом приложений и проекты SAP Международные корпорации ежегодно тратят сотни миллионов долларов на модернизацию, настройку и установку реализаций решений SAP®.

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

Отсутствие унифицированного подхода к управлению ИТ-инфраструктурой, распространяющегося на интеграцию и развертывание пакетов приложений, приложений собственной разработки и систем от сторонних поставщиков, ведет к хаосу, несоблюдению графиков и возникновению дефектов, которые нарушают согласованность между бизнесом и ИТ-службой. В этой статье рассказывается, как объединенные решения IBM для управления выпуском и качеством приложений позволяют создать инфраструктуру управления жизненным циклом приложений для проектов SAP.

Инструменты IBM® Rational® RequisitePro®, IBM® Rational® ClearQuest®, IBM® Rational® Functional Tester и IBM® Rational® Performance Tester интегрированы с решениями SAP и все вместе обеспечивают согласованное управление требованиями, изменениями и качеством, включая управление тестированием и процессом выявления дефектов.

IBM Rational Software Delivery Platform Продукты из семейства IBM Rational Software Delivery Platform позволяет организациям более эффективно управлять бизнес-процессами, связанными с развертыванием программного обеспечения и программных систем, благодаря использованию проверенных процессов и комплексной системы управления жизненным циклом приложений. Развертывание предполагает не только настройку приложений, разработанных собственными силами, но и внедрение нестандартных, готовых систем, а также приложений, созданных сторонними поставщиками, которые предприятиям необходимо интегрировать при разработке бизнес-решений.

Использование ПО Rational для управления этим процессом позволяет обеспечить более высокую эффективность, управляемость и согласованность при интеграции, построении и сопровождении ПО и программных систем. Согласно исследованию IBM Global CEO, проведенному в 2006 г. Такой акцент на трансформации бизнеса увеличивает необходимость в эффективном управлении. Проблема состоит в том, чтобы добиться баланса между инновациями и надзором. Следует эффективно регулировать все аспекты бизнеса.

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

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

Компании хотят более тесных взаимоотношений между ИТ-службой и подразделениями бизнеса, чтобы эффективно соотносить инвестиции в технологии с целями организации. Именно на это ориентированы продукты IBM Rational Software. В основе решений IBM Rational рис. В данном разделе исследуется каждый из компонентов решения IBM Rational ALM и рассматривается, как он может быть применен к проектам SAP.

Управление требованиями По большей части, проекты SAP представляют собой корпоративные проекты интеграции. Проекты SAP могут воздействовать на многие ключевые бизнес-процессы и охватывать множество заинтересованных лиц, как со стороны бизнеса, так и со стороны ИТ-службы.

Кроме того, системы SAP часто нужно интегрировать с уже существующими приложениями, собственными нестандартными приложениями, приложениями сторонних поставщиков и другими готовыми приложениями. Такие аспекты, как область воздействия, сложность и степень влияния, обуславливают применение всеобъемлющего подхода для управления потребностями заинтересованных лиц, требованиями бизнеса, отклонениями от требований и реализациями для систем как построенных на базе решений SAP, так и иных. Все эти формы «требований» должны быть официально задокументированы и отслеживаться на многочисленных этапах типичного проекта поставки ПО.

Трассируемость имеет первостепенное значение в стремлении учесть все требования бизнеса при реализации ИТ-системы. Способность контролировать нужды и требования бизнеса, а затем учитывать эти требования при выполнении тестов, позволяет гарантировать, что желаемые изменения будут фактически реализованы в процессе реального создания системы.

Кроме того, многие организации должны соблюдать нормативные и законодательные ограничения, требующие ведения журнал аудита для документирования трассируемости жизненного цикла и любых изменений в рабочей системе. Кроме того, вы можете собирать технические характеристики объектов RICEF Reports, Interfaces, Conversions, Enhancements and Forms , управлять ими и отслеживать их для выявления расхождений.

Инструменты RequisitePro также позволяют привязать любую форму требования к запросу на изменение в IBM Rational ClearQuest, тем самым, обеспечивая трассируемость в цикле разработки.

Для проектов SAP к таким запросам на изменение относятся Deliverables и SAP Change Requests. Функциональные возможности IBM Rational RequisitePro Наконец, возможности RequisitePro позволяют привязывать требования бизнеса и отклонения от требований к ресурсам управления тестированием в соответствующей функциональности IBM Rational ClearQuest.

Это обеспечивает контроль выполнения требований при тестировании и позволяет создать архитектуру тестирования, отражающую потребности бизнеса. Управление выпусками и изменениями Корпоративные проекты интеграции проходят несколько этапов, включая постановку задачи, разработку, тестирование и поставку готового продукта. Участники рабочих групп сотрудничают между собой, чтобы надлежащим образом учесть все изменения и зависимости при реализации.

Управление изменениями — ключевой компонент в руководстве проектом, поэтому для эффективного управления запросами на изменения требуется общий информационный репозиторий, к которому имеют доступ все члены групп.

Процесс утверждения конкретных типов запросов определяет жизненный цикл управления запросами на изменения. Все артефакты, связанные с запросом требования, код, модели, документы и т. В контрольной таблице отражается воздействие, которое изменение оказывает на другие артефакты в составе продукта. IBM Rational ClearQuest интегрирован с SAP Transport Management System рис. IBM Rational ClearQuest ALM Schema for SAP обеспечивает единую процедуру управления вашими корпоративными проектами интеграции, распространяющимися на SAP, унаследованные системы, собственное нестандартное ПО и ПО сторонних поставщиков.

Управление запросами на изменения средствами IBM Rational ClearQuest Записи действий в ClearQuest используются для отслеживания полученных рабочих результатов, связанных с устранением расхождений с требованиями. Записи по передаваемым рабочим продуктам поддерживают отношение «родитель-потомок» 1:N. Родительская запись может считаться завершенной только в том случае, если завершены все дочерние записи. Любая заблокированная дочерняя запись будет передаваться исходной родительской записи с соответствующей информацией о статусе.

Это гарантирует, что все требования, связанные с данным продуктом, будут выполнены до окончательной передачи готовой работы. Другие системы, воздействующие на SAP, развертываются единообразно с помощью решения IBM® Rational® Build Forge®. Это особенно важно, поскольку предприятия реализуют свои бизнес-процессы как интегрированный набор услуг, что позволяет воспользоваться преимуществами сервис-ориентированной архитектуры SOA.

При использовании SOA бизнес-приложения работают на основе составных сервисов, координируя информацию и процессы, имеющие место в готовых, унаследованных и разработанных собственными силами системах. Изменения на уровне бизнес-процесса воздействуют на многие системы; таким образом, ClearQuest и Build Forge совместно обеспечивают поставку всех необходимых артефактов в надлежащие системы.

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

Затем вы можете сгруппировать варианты тестирования в наборы и выполнить их. Или же вы можете выполнять каждый из вариантов тестирования независимо. Выполнение теста предполагает запуск определенного сценария ручного теста, теста на функциональность или на производительность.

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

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

Управление планами тестирования, сценариями и наборами тестов с помощью IBM Rational ClearQuest Возможности, предусмотренные в ClearQuest, обеспечивают единый интерфейс для управления тестированием и отчетности по тестам как для систем SAP, так и для других систем. Вы имеете полный доступ к мощным инструментам создания отчетов в ClearQuest, а также можете отслеживать все артефакты тестирования и связанные с ними требования в RequisitePro. Типичный ландшафт SAP состоит из множества систем для каждого из этапов жизненного цикла поставки, таких как развертывание, обеспечение качества, запуск системы в эксплуатацию.

При передаче реализованных в системе SAP изменений в систему обеспечения качества эти изменения тестируются, чтобы гарантировать удовлетворение требований, вызвавших внесение изменений.

Руководители проектов пользуются диаграммами тенденций по ошибкам и другими отчетами, чтобы проверить степень готовности к выпуску. Выполнение тестов и их анализ Тестирование корпоративных приложений предполагает выполнение тестов на функциональность и производительность, которые необходимы для того, чтобы убедиться, что соответствующие бизнес-процессы реализованы в ИТ-системах.

Важно, что решения тестирования на функциональность и производительность могут использовать широкий спектр имеющихся на сегодняшний день графических интерфейсов пользователя GUI , баз данных, сетевых протоколов и связующего ПО. Тестирование на базе SOA: тестирование сервисов с GUI, которые реализованы с использованием SOAP и других протоколов, приобретает все более важное значение по мере того, как предприятия внедряют бизнес-процессы в качестве составных сервисов.

Эти сервисы связывают вместе унаследованные, готовые приложения и нестандартные системы. Использование сценария в IBM Rational Functional Tester Extension for SAP Solutions IBM Rational Performance Tester выявляет и диагностирует проблемы с производительностью для Web-приложений, приложений на базе систем SAP, SOA, Siebel, Oracle и Citrix. Благодаря прямой интеграции с клиентом SAP GUI, это решение обеспечивает надежное, воспроизводимое взаимодействие с приложениями SAP. Rational Functional Tester также распознает нестандартные элементы управления пользовательским интерфейсом из Web-приложений SAP Netweaver.

Это позволяет ускорить процесс создания, выполнения и анализа системных тестов с целью раннего выявления ошибок в приложениях SAP GUI и SAP Netweaver и их устранения.

IBM Rational Performance Tester предоставляет средства тестирования производительности и масштабируемости приложений SAP GUI и SAP Netweaver. Rational Performance Tester автоматически выполняет идентификацию, корреляцию и вариацию данных SAP, что позволяет сократить затраты времени на разработку повторяемых, реалистичных тестов производительности для реализаций SAP GUI и SAP Netweaver.

Расширение IBM Rational Performance Tester Extension для решений SAP Краткий обзор продуктов Rational и их преимуществ Платформа IBM Rational Software Delivery Platform обеспечивает полную поддержку жизненного цикла реализации бизнес-процессов уровня предприятия с учетом унаследованных систем, пакетов приложений, ПО собственной разработки и ПО от сторонних поставщиков.

Это семейство продуктов Rational включает средства управления жизненным циклом приложений ALM для проектов SAP, что позволяет вам применять унифицированный подход к руководству предприятием и интегрировать процессы разработки программного обеспечения по всему предприятию.

Categories: apk