СКД. Иерархия по реквизиту. Способ 1.

С системой компоновкой данных в 1с работаю довольно много и в принципе неплохо в ней разбираюсь. Но однажды столкнувшись с задачей построения иерархии по реквизиту справочника впал в ступор. Несколько часов попыток разобраться с данным вопросом самостоятельно не привели к результату. Лишь покопавшись на различных форумах в интернете было собрано решение, которые мы сегодня здесь и рассмотрим.
Допустим у нас есть справочник “Договоры контрагентов” с реквизитов “ДоговорОснование” (с типом “СправочникСсылка.ДоговорыКонтрагентов”), по которому нам и нужно реализовать иерархию в отчете.

Создаем новый отчет, добавляем основную схему компоновки данных и поехали:
- Создаем набор данных запрос “Иерархия”:
1 2 3 4 5 6 7 8 |
ВЫБРАТЬ ДоговорыКонтрагентов.ДоговорОснование КАК Родитель, ДоговорыКонтрагентов.Ссылка КАК Ссылка ИЗ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов ГДЕ НЕ ДоговорыКонтрагентов.ЭтоГруппа И НЕ ДоговорыКонтрагентов.ПометкаУдаления |

- Создаем набор данных запрос “Элементы”:
1 2 3 4 5 6 7 8 9 10 |
ВЫБРАТЬ ДоговорыКонтрагентов.Ссылка КАК Ссылка ИЗ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорыКонтрагентов КАК ДоговорыИерархия ПО (ДоговорыИерархия.ДоговорОснование = ДоговорыКонтрагентов.Ссылка) ГДЕ ДоговорыИерархия.Ссылка ЕСТЬ NULL И НЕ ДоговорыКонтрагентов.ЭтоГруппа И НЕ ДоговорыКонтрагентов.ПометкаУдаления |

- Переходим на закладку “Связи набора данных” и соединяем наши запросы по следующим параметрам:

- И последнее что нам остается это правильно сформировать структуру отчета на закладке “Настройки”:

Сохраняем наш отчет и довольствуемся результатом:

Надеюсь теперь для вас построения данного отчета не вызовет трудности как у меня в свое время. Здесь был рассмотрен простой вариант построения иерархия. Отдельно выйдет статья со вторым способом решения данной задачи.
Ссылка на скачивание готового отчета:
https://yadi.sk/d/xU9BXuVHYbiMFw
Давай выкладывай и второй способ уже