Текущее время: Сб, июл 19 2025, 12:39

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Развертка иерархии из таблицы в itab для ALV
СообщениеДобавлено: Пт, фев 24 2006, 15:04 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 06 2005, 17:52
Сообщения: 559
Задача, я думаю, достаточно стандартная - как говориться, не я первый, не я последний.

Нужно взять иерархию из таблицы (в данном случае - фин. позиций, fmhici) и "развернуть" в itab так, чтобы в АЛВ обеспечить промежуточное суммирование по иерархии.

Данные лежат в виде:

id
parent_id
first_child_id
next_id
level

Ну, я думаю, кто сталкивался с иерархией, тот в курсе.
Известно, что уровней вложенности не более 10.

Если имеем узел 1, у которого потомки 2 и 3, а у узла 2 потомки 2-1 и 2-2, то развернуть нужно как (по столбцам)

1 2 2-1
1 2 2-2
1 3

Опять же, я думаю, кто суммировал по АЛВ - тот в курсе :-)

Вопрос - как наиболее человечно ;-) это сделать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, фев 24 2006, 15:14 
Гость
ИМХО, используйте для этого ALV-tree


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, фев 24 2006, 15:18 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 06 2005, 17:52
Сообщения: 559
Задача стоит как поставили :-)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Развертка иерархии из таблицы в itab для ALV
СообщениеДобавлено: Пт, фев 24 2006, 22:43 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, янв 24 2005, 16:22
Сообщения: 749
Пол: Мужской
Sergeant написал(а):
Задача, я думаю, достаточно стандартная - как говориться, не я первый, не я последний.

Нужно взять иерархию из таблицы (в данном случае - фин. позиций, fmhici) и "развернуть" в itab так, чтобы в АЛВ обеспечить промежуточное суммирование по иерархии.

Данные лежат в виде:

id
parent_id
first_child_id
next_id
level

Ну, я думаю, кто сталкивался с иерархией, тот в курсе.
Известно, что уровней вложенности не более 10.

Если имеем узел 1, у которого потомки 2 и 3, а у узла 2 потомки 2-1 и 2-2, то развернуть нужно как (по столбцам)

1 2 2-1
1 2 2-2
1 3

Опять же, я думаю, кто суммировал по АЛВ - тот в курсе :-)

Вопрос - как наиболее человечно ;-) это сделать?


Если делать через ALV, то необходимо создать 10 столбцов (level1...level10), в которые и кидать соответствующие значения. А потом просто в ALV добавить по ним сортировку и подсуммирование...

и выражайте свой вопрос точнее, напишите что получилось и задайте вопрос о своей проблеме...

Цитата:
Задача стоит как поставили

хочется верить, что сами хоть какое-то время подумали над проблемой, а не побежали сломя голову на форум

_________________
Счастье есть!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, фев 25 2006, 15:31 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 06 2005, 17:52
Сообщения: 559
Подумал. Про необходимость использования десяти столбцов и обращения к ним через field-symbols додумался.

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

Вопрос задал несколько "в общем" именно потому, что думал - задачи такого рода должны часто встречаться.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, фев 26 2006, 06:10 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, авг 26 2004, 05:04
Сообщения: 922
Откуда: Челябинск
Пол: Мужской
Sergeant написал(а):
Подумал. Про необходимость использования десяти столбцов и обращения к ним через field-symbols додумался.

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

Вопрос задал несколько "в общем" именно потому, что думал - задачи такого рода должны часто встречаться.

Самый удачный алгоритм - alv-tree, все остальное как говорится - через одно место.

_________________
Все будет хорошо...
http://sap-blog.ru/


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB