как открыть форму обработки в тонком клиенте?
Типовая УТ 11.4
Есть обработка, зарегистрированная в справочнике допобработок. Хочу из документа по кнопке вызвать эту обработку. Делаю через расширение, конфа на поддержке, использование тонкого клиента для заказчика принципиально
На толстом клиенте все работает прекрасно. На тонком - падает на
получает Неопределено и само-собой никакую форму открыть не может.
Как быть?
Есть обработка, зарегистрированная в справочнике допобработок. Хочу из документа по кнопке вызвать эту обработку. Делаю через расширение, конфа на поддержке, использование тонкого клиента для заказчика принципиально
&НаКлиенте
Процедура Расш1_ОткрытьОбработкуСертПосле(Команда)
Спр = ОткрытьСерт();
КонецПроцедуры
&НаСервере
Функция ОткрытьСерт()
Спр = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("Печать сертификатов",Истина);
Если НЕ Спр.Пустая() Тогда
ДвоичныеДанные = Спр.ХранилищеОбработки.Получить();
ИмяФайла = ПолучитьИмяВременногоФайла("epf");
ДвоичныеДанные.Записать(ИмяФайла);
Обработка = ВнешниеОбработки.Создать(ИмяФайла);
Обработка.Док = Объект.Ссылка;
Обработка.ПолучитьФорму("ВнешняяОбработка.ПечатьСертификатов.Форма").Открыть();
КонецЕсли;
КонецФункции
ПоказатьНа толстом клиенте все работает прекрасно. На тонком - падает на
Обработка.ПолучитьФорму("ВнешняяОбработка.ПечатьСертификатов.Форма")
получает Неопределено и само-собой никакую форму открыть не может.
Как быть?
По теме из базы знаний
- Безудержный танец с бубном или «Как открыть форму незаписанного документа в управляемом приложении»
- Под капотом управляемых форм
- Как работают управляемые формы и тонкий клиент 1С – взгляд "из-под капота"
- Infostart Toolkit – инструмент, в котором сделано то, что давно просят от 1С
- Процессор 1С – групповая обработка данных
Найденные решения
(1)
&НаКлиенте
Процедура Команда2(Команда)
ИияОбработки = ПоместитьОбработкуВХранилище();
ОткрытьФорму("ВнешняяОбработка."+ ИияОбработки + ".Форма");
КонецПроцедуры
&НаСервере
Функция ПоместитьОбработкуВХранилище()
Спр = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("Печать сертификатов",Истина);
Если НЕ Спр.Пустая() Тогда
ДвоичныеДанные = Спр.ХранилищеОбработки.Получить();
Возврат ВнешниеОбработки.Подключить(ПоместитьВоВременноеХранилище(ДвоичныеДанные, УникальныйИдентификатор));
КонецЕсли;
КонецФункции
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
&НаКлиенте
Процедура Команда2(Команда)
ИияОбработки = ПоместитьОбработкуВХранилище();
ОткрытьФорму("ВнешняяОбработка."+ ИияОбработки + ".Форма");
КонецПроцедуры
&НаСервере
Функция ПоместитьОбработкуВХранилище()
Спр = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("Печать сертификатов",Истина);
Если НЕ Спр.Пустая() Тогда
ДвоичныеДанные = Спр.ХранилищеОбработки.Получить();
Возврат ВнешниеОбработки.Подключить(ПоместитьВоВременноеХранилище(ДвоичныеДанные, УникальныйИдентификатор));
КонецЕсли;
КонецФункции
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот