Добрый день. После обновления бухгалтерии перестала работать внешняя печатная форма. Попытался подключить отладку через процедуру печать модуля объекта, но до этой процедуры не доходит программа (не приходит сообщение из кода ниже)
Подскажите, пожалуйста, как подключить отладку, чтоб перехватить процедуру ПриОткрытии()?
Сообщить("Выполняется печать");
ВнешняяОбработка = ВнешниеОбработки.Создать("D:\folder\АктПередачи_Внешняя.epf", Ложь);
ВнешняяОбработка .Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);
Возврат;
Подскажите, пожалуйста, как подключить отладку, чтоб перехватить процедуру ПриОткрытии()?
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПараметрыПечати = Новый Структура;
Если ТипЗнч(Параметры.ОбъектыНазначения) = Тип("Массив") И Параметры.ОбъектыНазначения.Количество() = 1 Тогда
ПараметрыПечати.Вставить("ЗаголовокФормы", Параметры.ОбъектыНазначения[0]);
КонецЕсли;
ПараметрыИсточника = Новый Структура("ИдентификаторКоманды, ОбъектыНазначения");
ПараметрыИсточника.ИдентификаторКоманды = Параметры.ИдентификаторКоманды;
ПараметрыИсточника.ОбъектыНазначения = Параметры.ОбъектыНазначения;
ПараметрыОткрытия = Новый Структура("ИсточникДанных, ПараметрыИсточника, ПараметрыПечати, ПараметрКоманды");
//ПараметрыОткрытия.ИсточникДанных = ПолучитьСсылкуНаСервере();
ПараметрыОткрытия.ИсточникДанных = Параметры.ДополнительнаяОбработкаСсылка;
ПараметрыОткрытия.ПараметрыИсточника = ПараметрыИсточника;
ПараметрыОткрытия.ПараметрыПечати = ПараметрыПечати;
ПараметрыОткрытия.ПараметрКоманды = Параметры.ОбъектыНазначения;
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия);
//Отказ = Истина;
КонецПроцедуры
ПоказатьПо теме из базы знаний
- Удобная отладка внешней печатной формы
- Отладка внешних печатных форм на тонком клиенте
- Пример отладки внешней печатной формы
- Универсальная печатная форма "Анализ объекта" + шаблон подключаемой обработки для 1С на управляемых формах + отладка внешней печатной формы.
- Отладка внешней печатной формы в управляемом приложении (с редактированием и записью)
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) попробуйте
#Область ОбработчикиСобытийФормы
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если ЭтоОтладка() Тогда
Возврат;
КонецЕсли;
ПараметрыИсточника = Новый Структура;
ПараметрыИсточника.Вставить("ИдентификаторКоманды", Параметры.ИдентификаторКоманды);
ПараметрыИсточника.Вставить("ОбъектыНазначения", Параметры.ОбъектыНазначения);
ПараметрыОткрытия = УправлениеПечатьюСлужебныйКлиент.ПараметрыОткрытияФормыПечати();
ПараметрыОткрытия.Вставить("ИсточникДанных", Параметры.ДополнительнаяОбработкаСсылка);
ПараметрыОткрытия.Вставить("ПараметрыИсточника", ПараметрыИсточника);
ПараметрыОткрытия.Вставить("ПараметрКоманды", Параметры.ОбъектыНазначения);
ПараметрыОткрытия.УникальныйИдентификаторХранилища = ЭтаФорма.УникальныйИдентификатор;
ДлительнаяОперация = УправлениеПечатьюВызовСервера.НачатьФормированиеПечатныхФорм(ПараметрыОткрытия);
ПараметрыОткрытия.ВладелецФормы = ЭтаФорма;
ОповещениеОЗавершении = Новый ОписаниеОповещения("ВыполнитьОткрытиеПечатнойФормыФормированияПечатныхФорм", ЭтотОбъект, ПараметрыОткрытия);
ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, УправлениеПечатьюСлужебныйКлиент.ПараметрыОжидания(ЭтаФорма));
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОткрытиеПечатнойФормыФормированияПечатныхФорм(РезультатФоновойОперации, ПараметрыОткрытия) Экспорт
Если Не РезультатФоновойОперации = Неопределено Тогда
Если РезультатФоновойОперации.Статус = "Ошибка" Тогда
ПоказатьПредупреждение(, РезультатФоновойОперации.КраткоеПредставлениеОшибки);
Иначе
СтруктураРезультата = ПолучитьИзВременногоХранилища(РезультатФоновойОперации.АдресРезультата);
ПараметрыОткрытия.Вставить("ОбъектыПечати", СтруктураРезультата.ОбъектыПечати);
ПараметрыОткрытия.Вставить("ПараметрыВывода", СтруктураРезультата.ПараметрыВывода);
ПараметрыОткрытия.Вставить("КоллекцияПечатныхФорм", СтруктураРезультата.КоллекцияПечатныхФорм);
ВладелецФормы = ПараметрыОткрытия.ВладелецФормы;
ПараметрыОткрытия.Удалить("ВладелецФормы");
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы, Строка(Новый УникальныйИдентификатор));
КонецЕсли;
КонецЕсли;
Закрыть();
КонецПроцедуры
#КонецОбласти
Показать
(2)
попробуйте
подскажите, пожалуйста, а функция ЭтоОтладка() откуда берется? И еще вот такая ошибка вылезает сейчас "{ОбщийМодуль.ДлительныеОперацииКлиент.Модуль(55)}:РасширенныеПараметры.Вставить("ИдентификаторЗадания", ДлительнаяОперация.ИдентификаторЗадания);" , ИдентификаторЗадания откуда берется? В функции ДлительнаяОперация = УправлениеПечатьюВызовСервера.НачатьФормированиеПечатныхФорм(ПараметрыОткрытия); не нашел его получение. Или это нужно вручную вставить что то типа такого ДлительнаяОперация.Вставить("ИдентификаторЗадания", Новый УникальныйИдентификатор);
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот