Отчёт Структура компании

Итак, коллеги! Столкнулась с такой проблемой...
Задача: нужно построить в Fast Report отчёт Структура компании... такого вида:
==Наименование==Роль
==КомпанияА=====Головная организация

======Наименование==Роль
======КомпанияБ=====Филиал

=========Наименование==Роль
=========КомпанияГ=====Партнёр
...

То есть чтобы прослеживалась чёткая взаимосвязь всех подчинённых элементов (дерево взаимосвязей) - все данные берутся из закладки Взаимосвязи.. Но во взаимосвязях только две роли: RoleA (главная) и RoleB (подчинённая)... Поэтому максимум, что я могу получить - это:

==Наименование==Роль
==КомпанияА=====Головная организация
======Наименование==Роль
======КомпанияБ=====Филиал

==Наименование==Роль
==КомпанияБ=====Филиал
======Наименование==Роль
======КомпанияГ=====Партнёр
...

То есть происходит дублирование... А это не есть красиво.
Коллеги, может быть, кто-то сталкивался с подобной задачкой... Что можете посоветовать?

Нравится

6 комментариев

Сделайте фильтр: не выбирать компании, у которых есть взаимосвязь, означающая ее подчиненность (RoleB).

Хм, Сергей, но ведь проблема со смещением подчиненных элементов так и останется нерешенной. Возникла идея... сделать отображение а-ля деталь "Комплектация" продукта или "Структура компании", и уже на основе новой детали (Холдинг) делать отчёт. Других вариантов у меня нет, к сожалению...

Добрый вечер, Надежда!

Вариантов решения задачи масса. Самым простым и быстрым вижу подготовку данных для дерева на стороне сервера (хранимая процедура T-SQL или PL/SQL). После этого формирования отчёта на основе подготовленных данных.

Не совсем понятна постановка. Уточните, пожалуйста, задачу.
На первом уровне всегда "Головная компания", на 2-м "Филиал" а на 3-м "Партнёры" или нет?

Евгений, вся проблема в том, что... Клиент может добавлять и новые записи в справочники Ролей, то есть... количество вложенности будет изменяться. Но пока цепочка выстраивается следующим образом: на первом уровне Головная структура, на 2-м Филиал и на 3-м Партнёры... но повторюсь... подчиненными элементами Филиалов могут быть и компании с ролью Дочерние... и всё-таки не проще это реализовать... в формате как деталь "Структура компании"? Где чётко видны все вложенные элементы... а дальше "поколдовать" с визуализацией всего этого безобразия...

Что могу сказать, Вам граф взаимосвязей нужно строить:smile:.

Угу, спасибо, Евгений! Спасибо, Сергей! Теперь в голове всё уложилось! :)

Показать все комментарии