0
toypaul
гуру
03.09.21
✎
10:25
|
И не просто статичные параметры, которые можно объявить при добавлении команды, а параметры, которые определяются (выбором в форме) перед печатью.
|
|
1
toypaul
гуру
03.09.21
✎
10:36
|
Ничего лучше не придумалось ...
Процедура ПередатьВПараметрыКоманды(ИмяКоманды, ДополнительныеПараметры)
АдресКомандПечатиВоВременномХранилище = ЭтотОбъект.Команды.Найти("АдресКомандПечатиВоВременномХранилище").Действие;
КомандыПечати = ПолучитьИзВременногоХранилища(АдресКомандПечатиВоВременномХранилище);
НайденныеСтроки = КомандыПечати.НайтиСтроки(Новый Структура("ИмяКомандыНаФорме", ИмяКоманды));
Для каждого КомандаПечати Из НайденныеСтроки Цикл
Для каждого Элемент Из ДополнительныеПараметры Цикл
КомандаПечати.ДополнительныеПараметры.Вставить(Элемент.Ключ, Элемент.Значение);
КонецЦикла;
КонецЦикла;
ПоместитьВоВременноеХранилище(КомандыПечати, АдресКомандПечатиВоВременномХранилище);
КонецПроцедуры
вызывается из команды обработки печати
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("МойПараметр", МойПараметр);
ПередатьВПараметрыКоманды(КомандаДопПараметр.Имя, ДополнительныеПараметры);
УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(КомандаДопПараметр, ЭтотОбъект, Объект);
|
|