Перестала работать УправлениеПечатьюБП.ДополнитьДокументПодписьюИПечатью()
Уже сыпятся все печатные формы с подписью и печатью, начиная с релиза БП 3.0.148. Осторожно обновляйтесь, ребята.
Внимание! Порядок вывода факсимиле в печатные формы
Изменен порядок вывода факсимиле в печатные формы. Начиная с 01.01.2025 не будет поддерживаться совместимость для внешних форм, которые используют процедуру УправлениеПечатьюБП.ДополнитьДокументПодписьюИПечатью (). Если в конфигурации есть доработанные печатные формы или внешние печатные формы, которые используют эту процедуру, то эти печатные формы необходимо переделать. Требуется удалить вызов этой процедуры.
Оригинал:
Изменен порядок вывода факсимиле в печатные формы. Начиная с 01.01.2025 не будет поддерживаться совместимость для внешних форм, которые используют процедуру УправлениеПечатьюБП.ДополнитьДокументПодписьюИПечатью (). Если в конфигурации есть доработанные печатные формы или внешние печатные формы, которые используют эту процедуру, то эти печатные формы необходимо переделать. Требуется удалить вызов этой процедуры.
Оригинал:
Найденные решения
Для БП 3.0 добавил следующее
ПодписиИПечатиОбластей = УправлениеПечатью.ПодписиИПечатиОбластей(ОбъектыПечати);
ДанныеПечатиРисунковТабличногоДокумента = УправлениеПечатью.ПодписиИПечатиТабличногоДокумента(ОбъектыПечати, ТабДок, );
Для Каждого ПодписиИПечатиОбласти Из ПодписиИПечатиОбластей Цикл
ИмяОбласти = ПодписиИПечатиОбласти.Ключ;
Если ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти] = Неопределено Тогда
ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти] = Новый Соответствие();
КонецЕсли;
Для Каждого Элемент Из ПодписиИПечатиОбласти.Значение Цикл
ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти][Элемент.Ключ] = Элемент.Значение;
КонецЦикла;
КонецЦикла;
УправлениеПечатью.ДобавитьПодписьИПечать(ТабДок, ДанныеПечатиРисунковТабличногоДокумента);
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Есть же патч EF_70078508
А вообще вот что 1С пишут:
Я в ответ на это предложил добавить не пустую, а с выводом сообщения о том, что процедура будет удалена, обещали подумать
А вообще вот что 1С пишут:
Выпустили патч EF_70078508, в котором добавлена пустая процедура ДополнитьДокументПодписьюИПечатью().
Также в релизе 3.0.149 вернем пустую процедуру ДополнитьДокументПодписьюИПечатью().
Процедуру планируем убрать 01.12.2024, до этого времени рекомендуем отказаться от ее использования
Также в релизе 3.0.149 вернем пустую процедуру ДополнитьДокументПодписьюИПечатью().
Процедуру планируем убрать 01.12.2024, до этого времени рекомендуем отказаться от ее использования
Я в ответ на это предложил добавить не пустую, а с выводом сообщения о том, что процедура будет удалена, обещали подумать
(6)
А ведь как раньше хорошо было! Сидишь, ничего не делаешь, зарплату получаешь. А тут раз, и что-то делать надо. 1С изменения вносят, за которым следить необходимо. Клиенты оборзели, сроки какие-то выставляют...
УправлениеПечатьюБП.ДобавитьФаксимилеВФоне
Ты уже во всех темах со своим нытьем отметился или ещё нет?
А ведь как раньше хорошо было! Сидишь, ничего не делаешь, зарплату получаешь. А тут раз, и что-то делать надо. 1С изменения вносят, за которым следить необходимо. Клиенты оборзели, сроки какие-то выставляют...
Мне было достаточно просто убрать строчку УправлениеПечатьюБП.ДополнитьДокументПодписьюИПечатью() из своей внешней печатной формы. При этом факсимиле и печать продолжают выводится, их вывод в табличный документ просто перенесли.
(8)
Правда?
Ну если просто выводить на экран через общую форму "ПечатьДокументов", то да (и то не всегда)
А если у людей была обработка по массовой рассылке, печати, сохранении печатных форм?
Эти люди сейчас который раз уже достали желто-красную куклу вуду и колят в неё иголками.
При этом факсимиле и печать продолжают выводится, их вывод в табличный документ просто перенесли
Правда?
Ну если просто выводить на экран через общую форму "ПечатьДокументов", то да (и то не всегда)
А если у людей была обработка по массовой рассылке, печати, сохранении печатных форм?
Эти люди сейчас который раз уже достали желто-красную куклу вуду и колят в неё иголками.
Ну черт возьми, был какой-никакой API, который работал. Все просто -- вот макет, вот ссылка на документ, поставьте пожалуйста подписи и печати.
Нет, давайте его похерим, а вместо него дадим другой, который работает не скажу как.
И во всех макетах давайте переименуем картинки, чтобы люди заново рыли, как теперь подписи называются.
А сделаем мы это не скажем зачем, нам же захотелось.
Сидите и разбирайтесь сами, нешто вы не специалисты?
Нет, давайте его похерим, а вместо него дадим другой, который работает не скажу как.
И во всех макетах давайте переименуем картинки, чтобы люди заново рыли, как теперь подписи называются.
А сделаем мы это не скажем зачем, нам же захотелось.
Сидите и разбирайтесь сами, нешто вы не специалисты?
Решил. Накостылил, точнее говоря
Первую процедуру надо вызывать, ОбъектыПечати -- список значений
Первую процедуру надо вызывать, ОбъектыПечати -- список значений
Процедура ДобавитьПодписьИПечать(ТабДокумент, ОбъектыПечати) Экспорт
ПараметрыВывода = Новый Структура;
ПараметрыВывода.Вставить("ДоступнаПечатьПоКомплектно", Ложь);
ПараметрыВывода.Вставить("ЗаголовокФормы", "");
ПараметрыВывода.Вставить("ИмяФайлаПоВходящимНомерам", Истина);
ПараметрыВывода.Вставить("КодЯзыка", "ru");
ПараметрыВывода.Вставить("ПараметрыОтправки", Новый Структура("Получатель, Текст, Тема", Неопределено, "", ""));
ПодписиИПечати = ПодписиИПечатиТабличногоДокумента(ТабДокумент);
ПодписиИПечатиОбластей = УправлениеПечатью.ПодписиИПечатиОбластей(ОбъектыПечати);
ОбработанныеТабличныеДокументы = Новый Соответствие;
РисункиТабличногоДокумента = ПодписиИПечати;
Для Каждого СохраненныйРисунок Из РисункиТабличногоДокумента Цикл
НовыйРисунок = ТабДокумент.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
ЗаполнитьЗначенияСвойств(НовыйРисунок, СохраненныйРисунок);
НовыйРисунок.Линия = Новый Линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии);
КонецЦикла;
ДанныеПечатиРисунковТабличногоДокумента = УправлениеПечатью.ПодписиИПечатиТабличногоДокумента(ОбъектыПечати, ТабДокумент, "ru");
Для Каждого ПодписиИПечатиОбласти Из ПодписиИПечатиОбластей Цикл
ИмяОбласти = ПодписиИПечатиОбласти.Ключ;
Если ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти] = Неопределено Тогда
ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти] = Новый Соответствие();
КонецЕсли;
Для Каждого Элемент Из ПодписиИПечатиОбласти.Значение Цикл
ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти][Элемент.Ключ] = Элемент.Значение;
КонецЦикла;
КонецЦикла;
УправлениеПечатью.ДобавитьПодписьИПечать(ТабДокумент, ДанныеПечатиРисунковТабличногоДокумента);
КонецПроцедуры
Функция ПодписиИПечатиТабличногоДокумента(ТабличныйДокумент) Экспорт
РисункиТабличногоДокумента = Новый Массив;
Для Каждого Рисунок Из ТабличныйДокумент.Рисунки Цикл
Если УправлениеПечатью.ЭтоПодписьИлиПечать(Рисунок) Тогда
ОписаниеРисунка = Новый Структура("Лево,Верх,Ширина,Высота,Картинка,Владелец,ЦветФона,Имя,Линия,
|РазмерКартинки,ВертикальноеПоложение,ГоризонтальноеПоложение");
ЗаполнитьЗначенияСвойств(ОписаниеРисунка, Рисунок);
РисункиТабличногоДокумента.Добавить(ОписаниеРисунка);
КонецЕсли;
КонецЦикла;
Возврат РисункиТабличногоДокумента;
КонецФункции
Показать
(14)
добавил вашу процедуру прямо после удаляемой, (от нее в конфигурации осталась только название и вывод сообщения об удалении метода) а внутри нее обращение к вашей, как раз все данные туда переданы:
..
..
а
в модуле и так есть, ее нет нужды добавлять
все работает.
Функция ПодписиИПечатиТабличн
добавил вашу процедуру прямо после удаляемой, (от нее в конфигурации осталась только название и вывод сообщения об удалении метода) а внутри нее обращение к вашей, как раз все данные туда переданы:
Процедура ДополнитьДокументПодписьюИПечатью(ОбластьМакета, СведенияОДокументе, ОбъектыПечати, ПараметрыПечати) Экспорт..
ДобавитьПодписьИПечать(ОбластьМакета, ОбъектыПечати);..
а
Функция ПодписиИПечатиТабличногоДокумента(ТабличныйДокумент) Экспорт в модуле и так есть, ее нет нужды добавлять
все работает.
Ну это я насобирал в типовой форме ПечатьДокументов
Они из общих модулей взяли и туда все засунули, чтобы никто не мог снаружи вызвать.
А у нас в начале месяца биллинг, рассылка, все дела. Все были просто счастливы. Вариантов два: захардкодить подпись и печать прямо в макеты, потом разбираться, или в авральном режиме костылить обертку.
Вот накостылил.
Они из общих модулей взяли и туда все засунули, чтобы никто не мог снаружи вызвать.
А у нас в начале месяца биллинг, рассылка, все дела. Все были просто счастливы. Вариантов два: захардкодить подпись и печать прямо в макеты, потом разбираться, или в авральном режиме костылить обертку.
Вот накостылил.
(18)короче.... ето что-то с чем то.... получился костыль путем перетаскивания и вызова процедуры
Процедура УправлениеКартинкойФаксимиле(РабочаяПечатнаяФорма, МассивИменПоказателей, Добавить = Истина)
МассивИменОбластей = Новый Массив;
Для Каждого ОбластьМакета ИЗ РабочаяПечатнаяФорма.Области Цикл
Если СтрНайти(ОбластьМакета.Имя, "РасшифровкаФаксимилеМакета") <> 0 Тогда
МассивИменОбластей.Добавить(ОбластьМакета.Имя);
КонецЕсли;
КонецЦикла;
ЦветФонаБелый = Новый Цвет(255,255,255);
ЦветФонаАвто = Новый Цвет();
Для Каждого ИмяОбластиМакета ИЗ МассивИменОбластей Цикл
ОбластьМакета = РабочаяПечатнаяФорма.Области[ИмяОбластиМакета];
Если НЕ ЭтоАдресВременногоХранилища(ОбластьМакета.Расшифровка) Тогда
Продолжить;
КонецЕсли;
ДанныеФаксимиле = ПолучитьИзВременногоХранилища(ОбластьМакета.Расшифровка);
Если ТипЗнч(ДанныеФаксимиле) <> Тип("Структура") Тогда
Продолжить;
КонецЕсли;
Для Каждого ЗначениеПоказателя ИЗ МассивИменПоказателей Цикл
Если НЕ ДанныеФаксимиле.Свойство(ЗначениеПоказателя) Тогда
Продолжить;
КонецЕсли;
СтруктураЗначений = ДанныеФаксимиле[ЗначениеПоказателя];
ИмяОбластиФаксимиле = ЗначениеПоказателя + "_" + СтруктураЗначений.ОбластьВладелец;
АдресКартинки = СтруктураЗначений.ДанныеКартинки;
Если Добавить И ЗначениеЗаполнено(АдресКартинки) Тогда
ОбластьКартинки = РабочаяПечатнаяФорма.Области[СтруктураЗначений.ОбластьВладелец];
РисунокТабличногоДокумента = РабочаяПечатнаяФорма.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
РисунокТабличногоДокумента.Имя = ИмяОбластиФаксимиле;
РисунокТабличногоДокумента.Линия = Новый Линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии);
РисунокТабличногоДокумента.РазмерКартинки = РазмерКартинки.Пропорционально;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Картинка = ПолучитьИзВременногоХранилища(АдресКартинки);
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Расположить(ОбластьКартинки);
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Верх = СтруктураЗначений.Верх;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Лево = СтруктураЗначений.Лево;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Высота = СтруктураЗначений.Высота;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Ширина = СтруктураЗначений.Ширина;
Если СтрНайти(РисунокТабличногоДокумента.Имя, "ФаксимильнаяПечать") > 0 Тогда
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].ЦветФона = ЦветФонаБелый;
Иначе
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].ЦветФона = ЦветФонаАвто;
КонецЕсли;
Иначе
Если РабочаяПечатнаяФорма.Области.Найти(ИмяОбластиФаксимиле) <> Неопределено Тогда
РабочаяПечатнаяФорма.Рисунки.Удалить(ИмяОбластиФаксимиле);
КонецЕсли;
КонецЕсли;
КонецЦикла
КонецЦикла;
КонецПроцедуры Показать
(19) Гхм, а в чем ее смысл? у меня в областях макета нет имен РасшифровкаФаксимилеМакета, соответственно и все остальное не отрабатывает
Процедура УправлениеКартинкойФаксимиле(РабочаяПечатнаяФорма, МассивИменПоказателей, Добавить = Истина)
МассивИменОбластей = Новый Массив;
Для Каждого ОбластьМакета ИЗ РабочаяПечатнаяФорма.Области Цикл
Если СтрНайти(ОбластьМакета.Имя, "РасшифровкаФаксимилеМакета") <> 0 Тогда
МассивИменОбластей.Добавить(ОбластьМакета.Имя);
КонецЕсли;
КонецЦикла;
ЦветФонаБелый = Новый Цвет(255,255,255);
ЦветФонаАвто = Новый Цвет();
Для Каждого ИмяОбластиМакета ИЗ МассивИменОбластей Цикл
ОбластьМакета = РабочаяПечатнаяФорма.Области[ИмяОбластиМакета];
Если НЕ ЭтоАдресВременногоХранилища(ОбластьМакета.Расшифровка) Тогда
Продолжить;
КонецЕсли;
ДанныеФаксимиле = ПолучитьИзВременногоХранилища(ОбластьМакета.Расшифровка);
Если ТипЗнч(ДанныеФаксимиле) <> Тип("Структура") Тогда
Продолжить;
КонецЕсли;
Для Каждого ЗначениеПоказателя ИЗ МассивИменПоказателей Цикл
Если НЕ ДанныеФаксимиле.Свойство(ЗначениеПоказателя) Тогда
Продолжить;
КонецЕсли;
СтруктураЗначений = ДанныеФаксимиле[ЗначениеПоказателя];
ИмяОбластиФаксимиле = ЗначениеПоказателя + "_" + СтруктураЗначений.ОбластьВладелец;
АдресКартинки = СтруктураЗначений.ДанныеКартинки;
Если Добавить И ЗначениеЗаполнено(АдресКартинки) Тогда
ОбластьКартинки = РабочаяПечатнаяФорма.Области[СтруктураЗначений.ОбластьВладелец];
РисунокТабличногоДокумента = РабочаяПечатнаяФорма.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
РисунокТабличногоДокумента.Имя = ИмяОбластиФаксимиле;
РисунокТабличногоДокумента.Линия = Новый Линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии);
РисунокТабличногоДокумента.РазмерКартинки = РазмерКартинки.Пропорционально;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Картинка = ПолучитьИзВременногоХранилища(АдресКартинки);
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Расположить(ОбластьКартинки);
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Верх = СтруктураЗначений.Верх;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Лево = СтруктураЗначений.Лево;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Высота = СтруктураЗначений.Высота;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Ширина = СтруктураЗначений.Ширина;
Если СтрНайти(РисунокТабличногоДокумента.Имя, "ФаксимильнаяПечать") > 0 Тогда
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].ЦветФона = ЦветФонаБелый;
Иначе
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].ЦветФона = ЦветФонаАвто;
КонецЕсли;
Иначе
Если РабочаяПечатнаяФорма.Области.Найти(ИмяОбластиФаксимиле) <> Неопределено Тогда
РабочаяПечатнаяФорма.Рисунки.Удалить(ИмяОбластиФаксимиле);
КонецЕсли;
КонецЕсли;
КонецЦикла
КонецЦикла;
КонецПроцедуры
ПоказатьМассивИменОбластей = Новый Массив;
Для Каждого ОбластьМакета ИЗ РабочаяПечатнаяФорма.Области Цикл
Если СтрНайти(ОбластьМакета.Имя, "РасшифровкаФаксимилеМакета") <> 0 Тогда
МассивИменОбластей.Добавить(ОбластьМакета.Имя);
КонецЕсли;
КонецЦикла;
ЦветФонаБелый = Новый Цвет(255,255,255);
ЦветФонаАвто = Новый Цвет();
Для Каждого ИмяОбластиМакета ИЗ МассивИменОбластей Цикл
ОбластьМакета = РабочаяПечатнаяФорма.Области[ИмяОбластиМакета];
Если НЕ ЭтоАдресВременногоХранилища(ОбластьМакета.Расшифровка) Тогда
Продолжить;
КонецЕсли;
ДанныеФаксимиле = ПолучитьИзВременногоХранилища(ОбластьМакета.Расшифровка);
Если ТипЗнч(ДанныеФаксимиле) <> Тип("Структура") Тогда
Продолжить;
КонецЕсли;
Для Каждого ЗначениеПоказателя ИЗ МассивИменПоказателей Цикл
Если НЕ ДанныеФаксимиле.Свойство(ЗначениеПоказателя) Тогда
Продолжить;
КонецЕсли;
СтруктураЗначений = ДанныеФаксимиле[ЗначениеПоказателя];
ИмяОбластиФаксимиле = ЗначениеПоказателя + "_" + СтруктураЗначений.ОбластьВладелец;
АдресКартинки = СтруктураЗначений.ДанныеКартинки;
Если Добавить И ЗначениеЗаполнено(АдресКартинки) Тогда
ОбластьКартинки = РабочаяПечатнаяФорма.Области[СтруктураЗначений.ОбластьВладелец];
РисунокТабличногоДокумента = РабочаяПечатнаяФорма.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
РисунокТабличногоДокумента.Имя = ИмяОбластиФаксимиле;
РисунокТабличногоДокумента.Линия = Новый Линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии);
РисунокТабличногоДокумента.РазмерКартинки = РазмерКартинки.Пропорционально;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Картинка = ПолучитьИзВременногоХранилища(АдресКартинки);
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Расположить(ОбластьКартинки);
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Верх = СтруктураЗначений.Верх;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Лево = СтруктураЗначений.Лево;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Высота = СтруктураЗначений.Высота;
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].Ширина = СтруктураЗначений.Ширина;
Если СтрНайти(РисунокТабличногоДокумента.Имя, "ФаксимильнаяПечать") > 0 Тогда
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].ЦветФона = ЦветФонаБелый;
Иначе
РабочаяПечатнаяФорма.Рисунки[РисунокТабличногоДокумента.Имя].ЦветФона = ЦветФонаАвто;
КонецЕсли;
Иначе
Если РабочаяПечатнаяФорма.Области.Найти(ИмяОбластиФаксимиле) <> Неопределено Тогда
РабочаяПечатнаяФорма.Рисунки.Удалить(ИмяОбластиФаксимиле);
КонецЕсли;
КонецЕсли;
КонецЦикла
КонецЦикла;
КонецПроцедуры
Для БП 3.0 добавил следующее
ПодписиИПечатиОбластей = УправлениеПечатью.ПодписиИПечатиОбластей(ОбъектыПечати);
ДанныеПечатиРисунковТабличногоДокумента = УправлениеПечатью.ПодписиИПечатиТабличногоДокумента(ОбъектыПечати, ТабДок, );
Для Каждого ПодписиИПечатиОбласти Из ПодписиИПечатиОбластей Цикл
ИмяОбласти = ПодписиИПечатиОбласти.Ключ;
Если ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти] = Неопределено Тогда
ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти] = Новый Соответствие();
КонецЕсли;
Для Каждого Элемент Из ПодписиИПечатиОбласти.Значение Цикл
ДанныеПечатиРисунковТабличногоДокумента[ИмяОбласти][Элемент.Ключ] = Элемент.Значение;
КонецЦикла;
КонецЦикла;
УправлениеПечатью.ДобавитьПодписьИПечать(ТабДок, ДанныеПечатиРисунковТабличногоДокумента);
Показать
Не получается чето универсально.
Есть свой документ, внешняя печатная форма к нему, печать через общую форму.
Добавил в макет ФаксимилеПечать и ФаксимилеРуководитель - кнопка "Подпись и печать" появилась на форме, но подпись и печать не появляется.
Если добавлю так
и при формировании таб документа переименовать картинки
то печать и подпись появляются, кнопка "Подпись и печать" отрабатывает нормально.
Но не появляются при сохранении в файл pdf - ругается при выполнении Результат = УправлениеПечатью.НапечататьВФайл(Команда, МассивОбъектов, НастройкиСохранения) - Результат Неопределено.
Проблема в ОбщийМодуль.УправлениеПечатью.ПечатныеФормыПоОбъектам(ПечатнаяФорма, ОбъектыПечати) - в ПечатнаяФорма нет области с именем ОбъектыПечати.Представление ("Документ_1").
Можно конечно в макете добавить область такую, но как лучше при формировании таб документа сформировать область, включающую в себя все области макета?
Есть свой документ, внешняя печатная форма к нему, печать через общую форму.
Добавил в макет ФаксимилеПечать и ФаксимилеРуководитель - кнопка "Подпись и печать" появилась на форме, но подпись и печать не появляется.
Если добавлю так
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
Сч = 0;
Для Каждого ЭлМ Из МассивОбъектов Цикл
Сч = Сч + 1;
ОбъектыПечати.Добавить(ЭлМ, "Документ_"+Сч);
КонецЦикла;
Показатьи при формировании таб документа переименовать картинки
Для Каждого Рисунок Из ТабДокумент.Рисунки Цикл
Если СтрНайти(Рисунок.Имя, "Факсимиле") <> 0 Тогда
Рисунок.Имя = Рисунок.Имя + "_Документ_"+Сч;
КонецЕсли;
КонецЦикла;
то печать и подпись появляются, кнопка "Подпись и печать" отрабатывает нормально.
Но не появляются при сохранении в файл pdf - ругается при выполнении Результат = УправлениеПечатью.НапечататьВФайл(Команда, МассивОбъектов, НастройкиСохранения) - Результат Неопределено.
Проблема в ОбщийМодуль.УправлениеПечатью.ПечатныеФормыПоОбъектам(ПечатнаяФорма, ОбъектыПечати) - в ПечатнаяФорма нет области с именем ОбъектыПечати.Представление ("Документ_1").
Можно конечно в макете добавить область такую, но как лучше при формировании таб документа сформировать область, включающую в себя все области макета?
добавил в выводе табличного документа (финального) в цикле как в
все заработало.
Код из предыдущего сообщения не нужен.
Пока ВыборкаПоДокументам.Следующий() Цикл
НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
// ... вывод печатной формы в табличный документ ...
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ВыборкаПоДокументам.Ссылка);
КонецЦикла;
все заработало.
Код из предыдущего сообщения не нужен.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот