Комментарии по теме

«Инстру­кция по созданию отчёта в тра­нза­кции SQVI»
Олег Точенюк:
Ну это вы погорячились вязать код БЕ заголовка, с кодом БЕ позиции. Код БЕ заголовка отвечает за то, где будет отражена кредиторская задолженность, а код БЕ в позиции отвечает за то, где будет...
«Тра­нза­кция SM02: сообщения в SAP системе»
Олег Башкатов:
С помощью ФМ TH_POPUP можно отправить сообщение конкретному пользователю :-)
«Тра­нспо­ртная система SAP для чайников»
Вячеслав Шиболов:
Хорошая метафора с коробками. Наглядная.

База знаний

Вы можете подписаться на эту колонки этого автора, если авторизируетесь или зарегистрируетесь

ABAP OBJECTS ALV

Все публикации автора

Глава 1. Создание ALV GRID. Часть 1

20 октября 2014, 10:04

Цель данной главы - создать ALV Grid.

Рис. 1

Для этого нам необходимо создать следующие объекты:

  • Объекты словаря
  • Селекционный экран
  • Класс модель
  • Класс контроллер
  • ALV экран
  • Шаблон-интерфейс (ALV Grid) для класса представления
  • Класс представление

Создание данных объектов описано в параграфах 1 – 7. В 8 параграфе на примере кнопки «Обновить» представлено взаимодействие класса представления данных и класса модели через класс контроллер.

§ 1. Создание объектов словаря

Необходимо создать следующие объекты:

Имя объекта

Тип

Назначение

ZST_MVC_001_CONTEXT

Структура

Передача данных с селекционного экрана в класс контроллер

ZST_MVC_001_ALV

Структура

Отображение полей в ALV отчете

ZST_MVC_001_OUTTAB

Структура

Структура выходной таблицы. Включает в себя структуру  ZST_MVC_001_ALV и дополнительные поля необходимые в процессе выборки

ZTT_MVC_001_OUTTAB

Тип таблицы

Тип таблицы на основе структуры ZST_MVC_001_OUTTAB

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

Поиск структуры RANGE осуществляется в таблице DD03L. Мы знаем, что в структуре есть поле LOW интересующего нас типа (в данном примере домен S_CARR_ID).

Рис. 1

Рис. 2

Рис. 3

Далее просто копируем значения столбца “Имя таблицы” (в данном примере найдено только одно значение).

В таблице DD40L осуществляем поиск типа таблицы по найденным структурам.

Рис. 4

Заполняем поле “Имя типа строки” значениями из таблицы DD03L.

Рис. 5

Рис. 6

В столбце “Тип таблицы” содержатся интересующие нас RANGE. Если же данный алгоритм не привел к желаемому результату, необходимо создать Z-объекты (структуру и тип таблицы).

Создаем структуру ZST_MVC_001_CONTEXT.

Рис. 7

Рис. 8

Рис. 9

Создаем структуру ZST_MVC_001_ALV.

Рис. 10

Рис. 11

Создаем структуру ZST_MVC_001_OUTTAB.

Рис. 12

Рис. 13

Создаем тип таблицы ZTT_MVC_001_OUTTAB.

Рис. 14

Рис. 15

Ролевое назначение : SAP Консультант / Consultant

Функциональная область : Информационные технологии / IT, Basis, ABAP

Ключевые слова : создание отчетов / Report Building

Комментарии:

Олег Точенюк (Рейтинг: 10859) 00:15, 20 октября 2014

Цель данной главы создать ALV Grid - Серьезно? После прочтения цель данной главы создание объектов словаря данных, а вот лично ALVGrid-у вроде как все равно что выводить, пользовательскую таблицу или уже существующую, или в вообще локально объявленную. А то молодежь же офигеет и кинется на каждый чих таблицы плодить в словаре данных. Вопрос зачем?
09:35, 20 октября 2014

Александр Дублин (Рейтинг: 14531)

Это только часть главы. Будет еще продолжение. Много продолжений ...
16:11, 20 октября 2014

Олег Точенюк (Рейтинг: 10859)

Да дело то не в этом что это часть, просто вот эта часть к созданию ALV-таблицы, точнее выводу данных не имеет никакого отношения. Это скажем так ближе к описанию BC430 - Словарь данных и работа с ним. Можно же было вообще начать с ... ну скажем так описания SAP Logon-а

Багдат Кенжалиев (Рейтинг: 63) 14:56, 22 октября 2014

По-моему, самое простое это воспользоваться ФМ "REUSE_ALV_GRID_DISPLAY" или на худой конец использовать класс "cl_salv_table". Согласен с Олегом Точенюком, зачем плодить объекты словаря.
20:30, 22 октября 2014

Добрый вечер.
 
Глава 1. Создание ALV GRID. § 1. Создание объектов словаря
Думаю логично почему в данном параграфе рассказывается о создании объектов словаря.
 
Да, можно использовать ФМ "REUSE_ALV_GRID_DISPLAY".
А можно все засунуть в 10000 строк кода без инклудов с локальными переменными.
 
Данная инструкция на простейших примерах объясняет как создавать сложные ALV отчеты с 2,3,4 alv на одном экране, которые взаимодействуют
друг с другом. В главах 2 и 3 примеры с двумя ALV.
 
Вся информация об инструкции sapland.ru/blogs/phaizullin
 
Просьба дождаться выхода хотя бы первой главы и делать выводы.
22:49, 22 октября 2014

Олег Точенюк (Рейтинг: 10859)

Да можно все конечно объединить в колонке, что-то типа от обезьяны до профессионального SAP консультанта, но вот именно к работе с ALV это будет мало соотносимо. Если вы переживаете, что сама по себе работа с ALV таблицами не тема колонки, то зря, одно из описаний, что я видел, тянуло страниц на 170 десятого шрифта, да и то, там много интересных тем было упущено. Поэтому я бы не распылялся на расскажу про все что знаю, а брал бы тему ALV и старался бы ее раскрыть, а так вы про словарь данных не рассказали собственно ничего, например там дальше когда объявляете свой тип таблицы через словарь, интересная закладочка индексы есть, вот вы про нее ничего не сказали... а ведь кто-то может индекс нарисовать для быстродействия, а потом получить проблемы при отражении такой таблицы через ALV-компоненты. Так что я просто к тому что не надо распыляться. Словарь данных сам по себе штука очень мощная, начиная с определения доменов данных и дальше по восходящей.
08:00, 23 октября 2014

Доброе утро.
 
Описание колонки: В этой колонке будет опубликована инструкция по созданию ALV отчётов с использованием шаблонов программирования Model-View-Controller.
 
Не про "словарь данных","интересная закладочка индексы", "кто-то может индекс нарисовать для быстродействия".
 
Дальше продолжать спор нет ни времени, ни желания.
 
У нас свободная демократическая страна можно просто не читать.
13:00, 23 октября 2014

Олег Точенюк (Рейтинг: 10859)

Логично, а я то думал что мы просто мнениями обменивались по сути вопроса работы с ALV, а оказывается мы спорили. Не знал :-)
06:53, 23 октября 2014

Багдат Кенжалиев (Рейтинг: 63)

Доброе утро,
 
Шамиль, может после окончания всех статей по данной теме Вы скинете все в один PDF файл. Чтобы можно было читать офлайн.
 
С уважением,
Багдат.
(Комментарий удалён)
07:52, 23 октября 2014

Доброе утро.
E-mail: sfayzullin86@gmail.com
Skype: sfayzullin86
 
Пишите отвечу на вопросы по поводу материалов