Доработка структуры подчиненности в 1С:Управление холдингом

Содержание:
  1. Задача по доработке структуры подчиненности в 1С
  2. Доработка механизма 1С «Связанные документы»
 

Задача по доработке структуры подчиненности в 1С

Заказчик поставил задачу доработать структуру подчиненности документов в 1С:Управление холдингом таким образом, чтобы выводились ВСЕ документы, которые связаны между собой, при этом выделяя цветом тот документ, из которого открыта структура подчиненности. Если вывести структуру подчиненности из документа Полная ГТД №10006060/1404…., то Справка-корректировка пропадет, так как у нее подчинение только Временной ГТД, а если выведем структуру подчиненности из Справки-корректировки, то пропадет Полная, но появится еще одна Временная.  
Полная структура подчиненности
Полная структура подчиненности

Доработка механизма 1С «Связанные документы»

Для использования в соответствии с потребностями Заказчика типового механизма в системе 1С «Связанные документы» необходимо доработать два объекта метаданных: китерий отбора «СвязанныеДокументы» и общую команду «СтруктураПодчиненности». Если мы хотим добавить в этот механизм созданные нами объекты, то достаточно в параметр «Тип» добавить ссылку на новый документ, а в параметр «Состав» добавить реквизит нового документа, отвечающий за связь с другими объектами. Также ссылку на новый объект нужно добавить в параметр «Тип параметров команды» общей команды «СтруктураПодчиненности». Все, новый документ полноценно встраивается в типовой механизм, и на его форме можно увидеть дополнительную кнопку для запроса «Связанные документы», по нажатию на которою раскрывается знакомая форма, отображающая дерево технически связанных объектов. Но типовой механизм помогает получить связанные документы лишь на один уровень вверх и на один уровень вниз (если они есть в структуре подчиненности). Заказчик же попросил раскрыть дерево родительских объектов и подчиненных объектов настолько, насколько это возможно. Построение дерева подчиненных объектов выполняется еще в одном объекте типовой конфигурации: в модуле общей формы со уже знакомым названием «СтруктураПодчиненности». Для реализации поставленной задачи была доработаны типовая процедура модуля формы «СформироватьДеревьяДокументов», в которую добавлены два цикла поиска связанных объектов, соответственно, вверх – по родителям; и вниз – по детям, а не только на один уровень, как в типовой конфигурации. Разумеется, во избежание зацикливания процесса поиска связанных документов в циклах были поставлены соответствующие ограничения. Если находится объект, ранее уже добавленный в дерево, процесс поиска прекращается. В результате стандартный механизм конфигурации 1С “Структура подчиненности” стал раскрывать всю возможную структуру подчиненных объектов и вниз, и вверх:
Структура подчиненных объектов вниз
Структура подчиненных объектов вниз
Структура подчиненных объектов вверх
Структура подчиненных объектов вверх