Проект

Общее

Профиль

Структура подчиненности (связанные объекты) » История » Версия 2

Всеволод Дорофеев, 15.09.2025 17:24

1 1 Всеволод Дорофеев
h1. Структура подчиненности (связанные объекты)
2 1 Всеволод Дорофеев
3 1 Всеволод Дорофеев
h3. Добавление Структура подчиненности (связанные документы) в расширении
4 1 Всеволод Дорофеев
5 1 Всеволод Дорофеев
При добавлении нового реквизита в объект (документ, справочник) может возникнуть задача вывода связанных документов.
6 1 Всеволод Дорофеев
Если добавлять в расширение КритерииОтбора.СвязанныеДокументы, тогда в расширение будут добавлены все участвующие объекты.
7 1 Всеволод Дорофеев
Можно решить иначе - добавлением кода:
8 1 Всеволод Дорофеев
9 1 Всеволод Дорофеев
1. Добавляем в расширение процедуру ОбщийМодуль.ВариантыОтчетовПереопределяемый.ОпределитьОбъектыСКомандамиОтчетов
10 1 Всеволод Дорофеев
11 1 Всеволод Дорофеев
<pre>
12 1 Всеволод Дорофеев
&После("ОпределитьОбъектыСКомандамиОтчетов")
13 1 Всеволод Дорофеев
Процедура мн_ОпределитьОбъектыСКомандамиОтчетов(Объекты)
14 1 Всеволод Дорофеев
	
15 1 Всеволод Дорофеев
	Объекты.Добавить(Метаданные.Документы.ОрдерНаОтражениеИзлишковТоваров);
16 1 Всеволод Дорофеев
	Объекты.Добавить(Метаданные.Документы.ОрдерНаОтражениеНедостачТоваров);
17 1 Всеволод Дорофеев
	
18 1 Всеволод Дорофеев
КонецПроцедуры
19 1 Всеволод Дорофеев
</pre>
20 1 Всеволод Дорофеев
21 1 Всеволод Дорофеев
2. Добавляем в расширение ОбщийМодуль.СтруктураПодчиненностиСлужебный.ИндексТиповСвязанныхОбъектов
22 1 Всеволод Дорофеев
23 1 Всеволод Дорофеев
<pre>
24 1 Всеволод Дорофеев
&ИзменениеИКонтроль("ИндексТиповСвязанныхОбъектов")
25 1 Всеволод Дорофеев
Функция мн_ИндексТиповСвязанныхОбъектов()
26 1 Всеволод Дорофеев
27 1 Всеволод Дорофеев
	Индекс = Новый Соответствие;
28 1 Всеволод Дорофеев
29 1 Всеволод Дорофеев
	МетаданныеСвязанныхОбъектов = Метаданные.КритерииОтбора.СвязанныеДокументы;
30 1 Всеволод Дорофеев
	ТипыСвязанныхОбъектов = МетаданныеСвязанныхОбъектов.Тип.Типы();
31 1 Всеволод Дорофеев
	ТипПараметраКоманды = Метаданные.ОбщиеКоманды.СвязанныеДокументы.ТипПараметраКоманды;
32 1 Всеволод Дорофеев
33 1 Всеволод Дорофеев
	Для Каждого ТипСвязанногоОбъекта Из ТипыСвязанныхОбъектов Цикл
34 1 Всеволод Дорофеев
35 1 Всеволод Дорофеев
		Если Не ТипПараметраКоманды.СодержитТип(ТипСвязанногоОбъекта) Тогда
36 1 Всеволод Дорофеев
			Индекс.Вставить(ТипСвязанногоОбъекта, Истина);
37 1 Всеволод Дорофеев
		КонецЕсли;
38 1 Всеволод Дорофеев
39 1 Всеволод Дорофеев
	КонецЦикла;
40 1 Всеволод Дорофеев
#Вставка 
41 1 Всеволод Дорофеев
	//{Проект
42 1 Всеволод Дорофеев
  	Индекс.Вставить(Тип("ДокументСсылка.ОрдерНаОтражениеНедостачТоваров"), Истина);   
43 1 Всеволод Дорофеев
  	Индекс.Вставить(Тип("ДокументСсылка.ОрдерНаОтражениеИзлишковТоваров"), Истина);   
44 1 Всеволод Дорофеев
45 1 Всеволод Дорофеев
    // } Проект .
46 1 Всеволод Дорофеев
#КонецВставки 
47 1 Всеволод Дорофеев
	Возврат Индекс;
48 1 Всеволод Дорофеев
49 1 Всеволод Дорофеев
КонецФункции
50 1 Всеволод Дорофеев
</pre>
51 2 Всеволод Дорофеев
52 2 Всеволод Дорофеев
3. Добавляем в расширение ОбщиеФормы.СвязанныеДокументы:
53 2 Всеволод Дорофеев
* ОбъектыПоКритериюОтбора
54 2 Всеволод Дорофеев
* ВывестиРодительскиеОбъекты
55 2 Всеволод Дорофеев
56 2 Всеволод Дорофеев
57 2 Всеволод Дорофеев
<pre>
58 2 Всеволод Дорофеев
59 2 Всеволод Дорофеев
&НаСервере
60 2 Всеволод Дорофеев
&ИзменениеИКонтроль("ОбъектыПоКритериюОтбора")
61 2 Всеволод Дорофеев
Функция пл_ОбъектыПоКритериюОтбора(ЗначениеКритерияОтбора)
62 2 Всеволод Дорофеев
63 2 Всеволод Дорофеев
	ШаблонЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
64 2 Всеволод Дорофеев
	|	ПредставлениеТаблицы.Ссылка КАК Ссылка
65 2 Всеволод Дорофеев
	|ИЗ
66 2 Всеволод Дорофеев
	|	ИмяТаблицы КАК ПредставлениеТаблицы
67 2 Всеволод Дорофеев
	|ГДЕ
68 2 Всеволод Дорофеев
	|	ПредставлениеТаблицы.ИмяРеквизита = &ЗначениеКритерияОтбора";
69 2 Всеволод Дорофеев
70 2 Всеволод Дорофеев
	ШаблонЗапросаОбъединения = "ВЫБРАТЬ
71 2 Всеволод Дорофеев
	|	ПредставлениеТаблицы.Ссылка КАК Ссылка
72 2 Всеволод Дорофеев
	|ИЗ
73 2 Всеволод Дорофеев
	|	ИмяТаблицы КАК ПредставлениеТаблицы
74 2 Всеволод Дорофеев
	|ГДЕ
75 2 Всеволод Дорофеев
	|	ПредставлениеТаблицы.ИмяРеквизита = &ЗначениеКритерияОтбора";
76 2 Всеволод Дорофеев
77 2 Всеволод Дорофеев
	ЧастиЗапроса = Новый Массив;
78 2 Всеволод Дорофеев
	ТекстЧастиЗапроса = "";
79 2 Всеволод Дорофеев
80 2 Всеволод Дорофеев
	Для Каждого ЭлементСостава Из Метаданные.КритерииОтбора.СвязанныеДокументы.Состав Цикл
81 2 Всеволод Дорофеев
82 2 Всеволод Дорофеев
		Если НЕ ЭлементСостава.Тип.СодержитТип(ТипЗнч(ЗначениеКритерияОтбора)) Тогда
83 2 Всеволод Дорофеев
			Продолжить;
84 2 Всеволод Дорофеев
		КонецЕсли;
85 2 Всеволод Дорофеев
86 2 Всеволод Дорофеев
		ПутьКДанным = ЭлементСостава.ПолноеИмя();
87 2 Всеволод Дорофеев
88 2 Всеволод Дорофеев
		Если СтрНайти(ПутьКДанным, "ТабличнаяЧасть") Тогда
89 2 Всеволод Дорофеев
			ОбъектМетаданных = ЭлементСостава.Родитель().Родитель();
90 2 Всеволод Дорофеев
		Иначе
91 2 Всеволод Дорофеев
			ОбъектМетаданных = ЭлементСостава.Родитель();
92 2 Всеволод Дорофеев
		КонецЕсли;
93 2 Всеволод Дорофеев
94 2 Всеволод Дорофеев
		Если НЕ ПравоДоступа("Чтение", ОбъектМетаданных) Тогда
95 2 Всеволод Дорофеев
			Продолжить;
96 2 Всеволод Дорофеев
		КонецЕсли;
97 2 Всеволод Дорофеев
98 2 Всеволод Дорофеев
		Точка = СтрНайти(ПутьКДанным, ".", НаправлениеПоиска.СКонца);
99 2 Всеволод Дорофеев
		ИмяРеквизита = Сред(ПутьКДанным, Точка + 1);
100 2 Всеволод Дорофеев
101 2 Всеволод Дорофеев
		ИмяТаблицы = ЭлементСостава.Родитель().ПолноеИмя();
102 2 Всеволод Дорофеев
		ИмяТаблицы = СтрЗаменить(ИмяТаблицы, "ТабличнаяЧасть.", "");
103 2 Всеволод Дорофеев
104 2 Всеволод Дорофеев
		Точка = СтрНайти(ИмяТаблицы, ".", НаправлениеПоиска.СКонца);
105 2 Всеволод Дорофеев
		ПредставлениеТаблицы = Сред(ИмяТаблицы, Точка + 1);
106 2 Всеволод Дорофеев
107 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = ?(ТекстЧастиЗапроса = "", ШаблонЗапроса, ШаблонЗапросаОбъединения);
108 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ИмяТаблицы", ИмяТаблицы);
109 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ПредставлениеТаблицы", ПредставлениеТаблицы);
110 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ИмяРеквизита", ИмяРеквизита);
111 2 Всеволод Дорофеев
112 2 Всеволод Дорофеев
		ЧастиЗапроса.Добавить(ТекстЧастиЗапроса);
113 2 Всеволод Дорофеев
114 2 Всеволод Дорофеев
	КонецЦикла;
115 2 Всеволод Дорофеев
#Вставка 
116 2 Всеволод Дорофеев
    	//Проект Всеволод
117 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = ?(ТекстЧастиЗапроса = "", ШаблонЗапроса, ШаблонЗапросаОбъединения);
118 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ИмяТаблицы", "Документ.ОрдерНаОтражениеИзлишковТоваров");
119 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ПредставлениеТаблицы", "ОрдерНаОтражениеИзлишковТоваров");
120 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ИмяРеквизита", "пл_ДокументОснование");
121 2 Всеволод Дорофеев
122 2 Всеволод Дорофеев
		ЧастиЗапроса.Добавить(ТекстЧастиЗапроса);
123 2 Всеволод Дорофеев
		
124 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = ?(ТекстЧастиЗапроса = "", ШаблонЗапроса, ШаблонЗапросаОбъединения);
125 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ИмяТаблицы", "Документ.ОрдерНаОтражениеНедостачТоваров");
126 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ПредставлениеТаблицы", "ОрдерНаОтражениеНедостачТоваров");
127 2 Всеволод Дорофеев
		ТекстЧастиЗапроса = СтрЗаменить(ТекстЧастиЗапроса, "ИмяРеквизита", "пл_ДокументОснование");
128 2 Всеволод Дорофеев
		
129 2 Всеволод Дорофеев
		ЧастиЗапроса.Добавить(ТекстЧастиЗапроса);
130 2 Всеволод Дорофеев
  
131 2 Всеволод Дорофеев
    // } Проект .
132 2 Всеволод Дорофеев
#КонецВставки 
133 2 Всеволод Дорофеев
	Если ЧастиЗапроса.Количество() > 0 Тогда
134 2 Всеволод Дорофеев
		Запрос = Новый Запрос;
135 2 Всеволод Дорофеев
		Разделитель = Символы.ПС + "ОБЪЕДИНИТЬ" + Символы.ПС;
136 2 Всеволод Дорофеев
		Запрос.Текст = СтрСоединить(ЧастиЗапроса, Разделитель);
137 2 Всеволод Дорофеев
		Запрос.УстановитьПараметр("ЗначениеКритерияОтбора", ЗначениеКритерияОтбора);
138 2 Всеволод Дорофеев
		Возврат Запрос.Выполнить().Выгрузить();
139 2 Всеволод Дорофеев
	Иначе
140 2 Всеволод Дорофеев
		Возврат Новый ТаблицаЗначений;
141 2 Всеволод Дорофеев
	КонецЕсли;
142 2 Всеволод Дорофеев
143 2 Всеволод Дорофеев
КонецФункции
144 2 Всеволод Дорофеев
145 2 Всеволод Дорофеев
&НаСервере
146 2 Всеволод Дорофеев
&ИзменениеИКонтроль("ВывестиРодительскиеОбъекты")
147 2 Всеволод Дорофеев
Процедура пл_ВывестиРодительскиеОбъекты(ТекущийОбъект, ДеревоРодитель, ВыведенныеОбъекты, СлужебныеОбъекты, ИндексСвязейОбъектов)
148 2 Всеволод Дорофеев
149 2 Всеволод Дорофеев
	МетаданныеОбъекта = ТекущийОбъект.Метаданные();
150 2 Всеволод Дорофеев
	СписокРеквизитов  = Новый Массив;
151 2 Всеволод Дорофеев
152 2 Всеволод Дорофеев
	Если СлужебныеОбъекты = Неопределено Тогда 
153 2 Всеволод Дорофеев
		СлужебныеОбъекты = Новый Соответствие;
154 2 Всеволод Дорофеев
	КонецЕсли;
155 2 Всеволод Дорофеев
156 2 Всеволод Дорофеев
	Если ИндексСвязейОбъектов = Неопределено Тогда 
157 2 Всеволод Дорофеев
		ИндексСвязейОбъектов = Новый Соответствие;
158 2 Всеволод Дорофеев
	КонецЕсли;
159 2 Всеволод Дорофеев
160 2 Всеволод Дорофеев
	Для Каждого Реквизит Из МетаданныеОбъекта.Реквизиты Цикл
161 2 Всеволод Дорофеев
162 2 Всеволод Дорофеев
		Если Не Метаданные.КритерииОтбора.СвязанныеДокументы.Состав.Содержит(Реквизит) Тогда
163 2 Всеволод Дорофеев
			Продолжить;
164 2 Всеволод Дорофеев
		КонецЕсли;
165 2 Всеволод Дорофеев
166 2 Всеволод Дорофеев
		Для Каждого ТекущийТип Из Реквизит.Тип.Типы() Цикл
167 2 Всеволод Дорофеев
168 2 Всеволод Дорофеев
			МетаданныеРеквизита = МетаданныеТипаРеквизита(ТекущийТип);
169 2 Всеволод Дорофеев
			Если МетаданныеРеквизита.Метаданные = Неопределено Тогда
170 2 Всеволод Дорофеев
				Продолжить;
171 2 Всеволод Дорофеев
			КонецЕсли;
172 2 Всеволод Дорофеев
173 2 Всеволод Дорофеев
			ЗначениеРеквизита = ТекущийОбъект[Реквизит.Имя];
174 2 Всеволод Дорофеев
			Если ЗначениеЗаполнено(ЗначениеРеквизита)
175 2 Всеволод Дорофеев
				И ТипЗнч(ЗначениеРеквизита) = ТекущийТип
176 2 Всеволод Дорофеев
				И ЗначениеРеквизита <> ТекущийОбъект
177 2 Всеволод Дорофеев
				И СписокРеквизитов.Найти(ЗначениеРеквизита) = Неопределено Тогда
178 2 Всеволод Дорофеев
179 2 Всеволод Дорофеев
				СписокРеквизитов.Добавить(ЗначениеРеквизита);
180 2 Всеволод Дорофеев
			КонецЕсли;
181 2 Всеволод Дорофеев
		КонецЦикла;
182 2 Всеволод Дорофеев
183 2 Всеволод Дорофеев
	КонецЦикла;
184 2 Всеволод Дорофеев
#Вставка 
185 2 Всеволод Дорофеев
	//Проект Всеволод
186 2 Всеволод Дорофеев
	Попытка
187 2 Всеволод Дорофеев
		Если ТипЗнч(ТекущийОбъект) = Тип("ДокументСсылка.ОрдерНаОтражениеНедостачТоваров")
188 2 Всеволод Дорофеев
			или ТипЗнч(ТекущийОбъект) = Тип("ДокументСсылка.ОрдерНаОтражениеИзлишковТоваров")
189 2 Всеволод Дорофеев
			Тогда
190 2 Всеволод Дорофеев
			
191 2 Всеволод Дорофеев
			СписокРеквизитов.Добавить(ТекущийОбъект.пл_ДокументОснование);
192 2 Всеволод Дорофеев
			
193 2 Всеволод Дорофеев
		КонецЕсли;
194 2 Всеволод Дорофеев
	Исключение
195 2 Всеволод Дорофеев
	КонецПопытки;
196 2 Всеволод Дорофеев
	// } Проект .
197 2 Всеволод Дорофеев
#КонецВставки 
198 2 Всеволод Дорофеев
	Для Каждого ТабличнаяЧасть Из МетаданныеОбъекта.ТабличныеЧасти Цикл
199 2 Всеволод Дорофеев
200 2 Всеволод Дорофеев
		ИменаРеквизитов = "";
201 2 Всеволод Дорофеев
		СодержимоеТЧ = ТекущийОбъект[ТабличнаяЧасть.Имя].Выгрузить(); // ТаблицаЗначений
202 2 Всеволод Дорофеев
		Для Каждого Реквизит Из ТабличнаяЧасть.Реквизиты Цикл
203 2 Всеволод Дорофеев
204 2 Всеволод Дорофеев
			Если Не Метаданные.КритерииОтбора.СвязанныеДокументы.Состав.Содержит(Реквизит) Тогда
205 2 Всеволод Дорофеев
				Продолжить;
206 2 Всеволод Дорофеев
			КонецЕсли;
207 2 Всеволод Дорофеев
208 2 Всеволод Дорофеев
			Для Каждого ТекущийТип Из Реквизит.Тип.Типы() Цикл
209 2 Всеволод Дорофеев
				МетаданныеРеквизита = МетаданныеТипаРеквизита(ТекущийТип);
210 2 Всеволод Дорофеев
				Если МетаданныеРеквизита.Метаданные = Неопределено Тогда
211 2 Всеволод Дорофеев
					Продолжить;
212 2 Всеволод Дорофеев
				КонецЕсли;
213 2 Всеволод Дорофеев
214 2 Всеволод Дорофеев
				ИменаРеквизитов = ИменаРеквизитов + ?(ИменаРеквизитов = "", "", ", ") + Реквизит.Имя;
215 2 Всеволод Дорофеев
				Прервать;
216 2 Всеволод Дорофеев
			КонецЦикла;
217 2 Всеволод Дорофеев
218 2 Всеволод Дорофеев
		КонецЦикла;
219 2 Всеволод Дорофеев
220 2 Всеволод Дорофеев
		СодержимоеТЧ.Свернуть(ИменаРеквизитов);
221 2 Всеволод Дорофеев
		Для Каждого КолонкаТЧ Из СодержимоеТЧ.Колонки Цикл
222 2 Всеволод Дорофеев
223 2 Всеволод Дорофеев
			Для Каждого СтрокаТЧ Из СодержимоеТЧ Цикл
224 2 Всеволод Дорофеев
225 2 Всеволод Дорофеев
				ЗначениеРеквизита = СтрокаТЧ[КолонкаТЧ.Имя];
226 2 Всеволод Дорофеев
				МетаданныеЗначения = МетаданныеТипаРеквизита(ТипЗнч(ЗначениеРеквизита));
227 2 Всеволод Дорофеев
				Если МетаданныеЗначения.Метаданные = Неопределено Тогда
228 2 Всеволод Дорофеев
					Продолжить;
229 2 Всеволод Дорофеев
				КонецЕсли;
230 2 Всеволод Дорофеев
231 2 Всеволод Дорофеев
				Если ЗначениеРеквизита = ТекущийОбъект
232 2 Всеволод Дорофеев
					Или СписокРеквизитов.Найти(ЗначениеРеквизита) <> Неопределено Тогда
233 2 Всеволод Дорофеев
					Продолжить;
234 2 Всеволод Дорофеев
				КонецЕсли;
235 2 Всеволод Дорофеев
236 2 Всеволод Дорофеев
				СписокРеквизитов.Добавить(ЗначениеРеквизита);
237 2 Всеволод Дорофеев
			КонецЦикла;
238 2 Всеволод Дорофеев
		КонецЦикла;
239 2 Всеволод Дорофеев
	КонецЦикла;
240 2 Всеволод Дорофеев
241 2 Всеволод Дорофеев
	Если СписокРеквизитов.Количество() > 0 Тогда
242 2 Всеволод Дорофеев
		ВыводимыеОбъекты = ЗапросПоРеквизитамОбъектов(СписокРеквизитов).Выполнить().Выгрузить();
243 2 Всеволод Дорофеев
		ВыводимыеОбъекты.Сортировать("Дата");
244 2 Всеволод Дорофеев
		Для каждого ВыводимыйОбъект Из ВыводимыеОбъекты Цикл 
245 2 Всеволод Дорофеев
246 2 Всеволод Дорофеев
			Если ИндексСвязейОбъектов[ТекущийОбъект] = ВыводимыйОбъект.Ссылка Тогда 
247 2 Всеволод Дорофеев
				Продолжить;
248 2 Всеволод Дорофеев
			КонецЕсли;
249 2 Всеволод Дорофеев
250 2 Всеволод Дорофеев
			ИндексСвязейОбъектов[ТекущийОбъект] = ВыводимыйОбъект.Ссылка;
251 2 Всеволод Дорофеев
252 2 Всеволод Дорофеев
			НоваяСтрока = ДобавитьСтрокуВДерево(ДеревоРодитель, ВыводимыйОбъект, ВыведенныеОбъекты);			
253 2 Всеволод Дорофеев
			Если НоваяСтрока <> Неопределено
254 2 Всеволод Дорофеев
				И Не ДобавляемыйОбъектИмеетсяСредиРодителей(ДеревоРодитель, ВыводимыйОбъект.Ссылка) Тогда
255 2 Всеволод Дорофеев
                      a
256 2 Всеволод Дорофеев
				// @skip-check query-in-loop - Рекурсивный алгоритм обработки дерева.
257 2 Всеволод Дорофеев
				ВывестиРодительскиеОбъекты(ВыводимыйОбъект.Ссылка, НоваяСтрока, ВыведенныеОбъекты,
258 2 Всеволод Дорофеев
				СлужебныеОбъекты, ИндексСвязейОбъектов);
259 2 Всеволод Дорофеев
260 2 Всеволод Дорофеев
			ИначеЕсли СлужебныеОбъекты[ВыводимыйОбъект.Ссылка] = Неопределено Тогда 
261 2 Всеволод Дорофеев
262 2 Всеволод Дорофеев
				СлужебныеОбъекты[ВыводимыйОбъект.Ссылка] = Истина;
263 2 Всеволод Дорофеев
				// @skip-check query-in-loop - Рекурсивный алгоритм обработки дерева.
264 2 Всеволод Дорофеев
				ВывестиРодительскиеОбъекты(ВыводимыйОбъект.Ссылка, ДеревоРодитель, ВыведенныеОбъекты,
265 2 Всеволод Дорофеев
				СлужебныеОбъекты, ИндексСвязейОбъектов);
266 2 Всеволод Дорофеев
267 2 Всеволод Дорофеев
			КонецЕсли;
268 2 Всеволод Дорофеев
		КонецЦикла;
269 2 Всеволод Дорофеев
	КонецЕсли;
270 2 Всеволод Дорофеев
271 2 Всеволод Дорофеев
КонецПроцедуры
272 2 Всеволод Дорофеев
273 2 Всеволод Дорофеев
</pre>
274 2 Всеволод Дорофеев
275 2 Всеволод Дорофеев
4. Добавляем в расширение Документы.ОрдерНаОтражениеНедостачТоваров.МодульМенеджера.ДобавитьКомандыОтчетов
276 2 Всеволод Дорофеев
277 2 Всеволод Дорофеев
<pre>
278 2 Всеволод Дорофеев
279 2 Всеволод Дорофеев
&После("ДобавитьКомандыОтчетов")
280 2 Всеволод Дорофеев
Процедура пл_ДобавитьКомандыОтчетов(КомандыОтчетов, Параметры)
281 2 Всеволод Дорофеев
	
282 2 Всеволод Дорофеев
	ИнтеграцияИСПереопределяемый.ДобавитьКомандуСтруктураПодчиненности(КомандыОтчетов);	//Всеволод
283 2 Всеволод Дорофеев
	
284 2 Всеволод Дорофеев
КонецПроцедуры
285 2 Всеволод Дорофеев
286 2 Всеволод Дорофеев
</pre>