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

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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