Как вернуть табличный документ внешней обработки
Можно ли вызвать программно команду внешней обработки, чтобы она вернула мне табличный документ сформированный внешней обработкой.
пытаюсь делать что-то подобное, пока ничего не получается. Мне нужно не сформировать, а вернуть в документ.
В модуле объекта обработки
пытаюсь делать что-то подобное, пока ничего не получается. Мне нужно не сформировать, а вернуть в документ.
Процедура Получить()
ПараметрыКоманды = Новый Структура();
МассивОбъектов = Новый Массив;
МассивОбъектов.Добавить(Объект.Ссылка);
ПараметрыКоманды.Вставить("ДополнительнаяОбработкаСсылка", ПолучитьОбработку());
ПараметрыКоманды.Вставить("ИдентификаторКоманды", "ВПФТест");
ПараметрыКоманды.Вставить("ОбъектыНазначения", МассивОбъектов);
ТабДок = новый ТабличныйДокумент();
ТабДок = ПолучитьТабДок(ПараметрыКоманды);
ТабДок.Показать();
КонецПроцедуры
&НаСервере
Функция ПолучитьОбработку()
Возврат Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("ТестВызовКоманд");
КонецФункции
&НаСервере
Функция ПолучитьТабДок(ПараметрыКоманды)
Возврат ДополнительныеОтчетыИОбработки.ВыполнитьКоманду(ПараметрыКоманды);
КонецФункции
ПоказатьВ модуле объекта обработки
Функция ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполнения) Экспорт
Если ИдентификаторКоманды = "ВПФТест" Тогда
Возврат СформироватьПечатнуюФорму(ПараметрыВыполнения);
КонецЕсли;
КонецФункции
Функция СформироватьПечатнуюФорму(Документ)
ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("ТестМакет");
Возврат ТабДок
КонецФункции
ПоказатьПо теме из базы знаний
- Резервы отпусков в Документе "Отражение Зарплаты в Регламентированном Учете" (Оценочные Обязательства)
- Поиск контрагента в документах для управляемых форм
- Поиск ссылок на справочник, документ, перечисление, план видов расчетов и характеристик, план счетов в документах и в справочниках на Управляемых и Обычных формах
- Расходный ордер на товары из документа Реализация товаров и услуг, из Заказа клиента, из Заказа на перемещение или из Перемещения товаров
- Заполнение чека ККМ из Реализации или Заказа через штрихкод документа
Найденные решения
Сделал так, вдруг кому пригодится
&НаКлиенте
Процедура СотрудникПриИзменении(Элемент)
ТабДок = ПолучитьОбработку();
ТабДок.Показать();
КонецПроцедуры
&НаСервере
Функция ПолучитьОбработку()
ОбработкаСсылка = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("ТестВызовКоманд");
ПараметрыКоманды = Новый Структура();
МассивОбъектов = Новый Массив;
МассивОбъектов.Добавить(Объект.Ссылка);
ПараметрыКоманды.Вставить("ДополнительнаяОбработкаСсылка", ОбработкаСсылка);
ПараметрыКоманды.Вставить("ИдентификаторКоманды", "ВПФТест");
ПараметрыКоманды.Вставить("ОбъектыНазначения", МассивОбъектов);
ТабДок = новый ТабличныйДокумент();
АдресРезультата = Новый УникальныйИдентификатор();
ИмяФайла = ПолучитьИмяВременногоФайла();
ДвоичныеДанные = ОбработкаСсылка.ХранилищеОбработки.Получить();
ДвоичныеДанные.Записать(ИмяФайла);
ВнешняяОбработка = ВнешниеОбработки.Создать(ИмяФайла);
ТабДок = ВнешняяОбработка.ВыполнитьКоманду("ВПФТест", ПараметрыКоманды);
возврат ТабДок;
КонецФункции
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Сделал так, вдруг кому пригодится
&НаКлиенте
Процедура СотрудникПриИзменении(Элемент)
ТабДок = ПолучитьОбработку();
ТабДок.Показать();
КонецПроцедуры
&НаСервере
Функция ПолучитьОбработку()
ОбработкаСсылка = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("ТестВызовКоманд");
ПараметрыКоманды = Новый Структура();
МассивОбъектов = Новый Массив;
МассивОбъектов.Добавить(Объект.Ссылка);
ПараметрыКоманды.Вставить("ДополнительнаяОбработкаСсылка", ОбработкаСсылка);
ПараметрыКоманды.Вставить("ИдентификаторКоманды", "ВПФТест");
ПараметрыКоманды.Вставить("ОбъектыНазначения", МассивОбъектов);
ТабДок = новый ТабличныйДокумент();
АдресРезультата = Новый УникальныйИдентификатор();
ИмяФайла = ПолучитьИмяВременногоФайла();
ДвоичныеДанные = ОбработкаСсылка.ХранилищеОбработки.Получить();
ДвоичныеДанные.Записать(ИмяФайла);
ВнешняяОбработка = ВнешниеОбработки.Создать(ИмяФайла);
ТабДок = ВнешняяОбработка.ВыполнитьКоманду("ВПФТест", ПараметрыКоманды);
возврат ТабДок;
КонецФункции
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот