Неправильный номер УПД в почтовых вложениях АА6
При отправке комплекта по почте было обнаружено, что файл УПД называется по номеру и дате заказа-наряда:


Имя файла формируется в модуле ПечатьДокументов:


НастройкаПечатнойФормы.ИмяФайлаПечатнойФормы содержит значение:
<Undefined xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
Поэтому ЗаданныеИменаПечатныхФорм получаются равны Неопределено.
В принципе, можно тестировать не на комплекте а на печатной форме УПД заказа, она тоже выдает аналогичный результат:

Замером производительности находим место в коде, где устанавливается имя печатной формы, в процедуре ПечатьДокументов.ИмяФайлаПечатнойФормы:

И действительно, оно тут неопределено, потому что ИмяФайлаПечатнойФормы не заполняется при формировании УПД.
УПД выводится в процедуре Печать модуля менеджера обработки ПечатьУПД:

Поэтому можно расширить эту процедуру:
&После("Печать") Процедура дор_Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Для Каждого ПФ ИЗ КоллекцияПечатныхФорм Цикл Если ПФ.ИмяВРЕГ = "ПФ_MXL_УПД" Тогда Если МассивОбъектов.Количество() = 1 Тогда Документ = МассивОбъектов[0]; ДанныеДокумента = ОбщегоНазначения.МенеджерОбъектаПоСсылке(Документ).ПолучитьДанныеДляПечатиУПД(Документ); Номер = ДанныеДокумента.Номер; Дата = Формат(ДанныеДокумента.Дата, "ДЛФ=DD"); ПФ.ИмяФайлаПечатнойФормы = ПФ.СинонимМакета + " № " + Номер + " от " + Дата; КонецЕсли; КонецЕсли; КонецЦикла КонецПроцедуры
На одном документе сработало:

На комплекте тоже работает:

В общем, 1С не следует своим же спецификациям печати документам.
Это не всегда легко заметить, но когда замечается, сложно поправить без длительного ковыряния в типовом коде.
Среда: Альфа-Авто:Автосалон+Автосервис+Автозапчасти Корп, редакция 6 (6.1.21.11) . Объем 1 час.




Свежие комментарии