Структура подчиненности (связанные объекты) » История » Версия 1
Версия 1/5
-
Следующее » -
Текущая версия
Всеволод Дорофеев, 15.09.2025 17:19
Структура подчиненности (связанные объекты)¶
Добавление Структура подчиненности (связанные документы) в расширении¶
При добавлении нового реквизита в объект (документ, справочник) может возникнуть задача вывода связанных документов.
Если добавлять в расширение КритерииОтбора.СвязанныеДокументы, тогда в расширение будут добавлены все участвующие объекты.
Можно решить иначе - добавлением кода:
1. Добавляем в расширение процедуру ОбщийМодуль.ВариантыОтчетовПереопределяемый.ОпределитьОбъектыСКомандамиОтчетов
&После("ОпределитьОбъектыСКомандамиОтчетов") Процедура мн_ОпределитьОбъектыСКомандамиОтчетов(Объекты) Объекты.Добавить(Метаданные.Документы.ОрдерНаОтражениеИзлишковТоваров); Объекты.Добавить(Метаданные.Документы.ОрдерНаОтражениеНедостачТоваров); КонецПроцедуры
2. Добавляем в расширение ОбщийМодуль.СтруктураПодчиненностиСлужебный.ИндексТиповСвязанныхОбъектов
&ИзменениеИКонтроль("ИндексТиповСвязанныхОбъектов") Функция мн_ИндексТиповСвязанныхОбъектов() Индекс = Новый Соответствие; МетаданныеСвязанныхОбъектов = Метаданные.КритерииОтбора.СвязанныеДокументы; ТипыСвязанныхОбъектов = МетаданныеСвязанныхОбъектов.Тип.Типы(); ТипПараметраКоманды = Метаданные.ОбщиеКоманды.СвязанныеДокументы.ТипПараметраКоманды; Для Каждого ТипСвязанногоОбъекта Из ТипыСвязанныхОбъектов Цикл Если Не ТипПараметраКоманды.СодержитТип(ТипСвязанногоОбъекта) Тогда Индекс.Вставить(ТипСвязанногоОбъекта, Истина); КонецЕсли; КонецЦикла; #Вставка //{Проект Индекс.Вставить(Тип("ДокументСсылка.ОрдерНаОтражениеНедостачТоваров"), Истина); Индекс.Вставить(Тип("ДокументСсылка.ОрдерНаОтражениеИзлишковТоваров"), Истина); // } Проект . #КонецВставки Возврат Индекс; КонецФункции