Ребят, может и глупый вопрос, но не работает.
Смотрите, есть база УАС, в ней есть ВПФ задание на печать, в ней нужно добавить один параметр, контрагент.
Создал реквизит ссылканаобъект, со ссылкой цна длокумент реализация товаров и услуг откуда должен он подтягиваться, пишу код
Но данная строка не работает, в чем может быть проблема?
Смотрите, есть база УАС, в ней есть ВПФ задание на печать, в ней нужно добавить один параметр, контрагент.
Создал реквизит ссылканаобъект, со ссылкой цна длокумент реализация товаров и услуг откуда должен он подтягиваться, пишу код
Областьшапка.параметры.покупатель = ссылканаобъект.контрагент.наименование;
Но данная строка не работает, в чем может быть проблема?
По теме из базы знаний
- Отправка печатных форм "Счет на оплату покупателю", "ТОРГ-12", "АКТ", "Расходная накладная"
- УТ 10.3. Отправка печатных форм документов на почту в .pdf без дополнительных обработок и программ
- Пакетная отправка печатных форм документов по e-mail для Бухгалтерии 3.0 (дополнительная обработка)
- Рассылка (отправка) печатных форм на почту для Конфигурации Бухгалтерия для Казахстана 3.0
- Отправка печатных форм документов в WhatsApp
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
Ну так
1. "Создал реквизит ссылканаобъект". Обычно в Функции Формирования ПечатнойФормы указаны параметры, один из которых СсылкаНаОбъект, создавать ничего не нужно.
2. В печатную форму не обязательно выводить НАИМЕНОВАНИЕ.
и вот теперь ВАЖНО
Откройте форму элемента справочника Контрагента и проверьте есть ли там такой реквизит как наименование, и точно ли он в конфе так называется?
А лучше откройте форму элемента Документа для которого создаете ПФ, и посмотрите как называется реквизит в котором выводится КОнтрагент, и в коде выводите просто СсылкаНаОбъект.РеквизитИзФормыДокумента
Ну так
1. "Создал реквизит ссылканаобъект". Обычно в Функции Формирования ПечатнойФормы указаны параметры, один из которых СсылкаНаОбъект, создавать ничего не нужно.
2. В печатную форму не обязательно выводить НАИМЕНОВАНИЕ.
и вот теперь ВАЖНО
Откройте форму элемента справочника Контрагента и проверьте есть ли там такой реквизит как наименование, и точно ли он в конфе так называется?
А лучше откройте форму элемента Документа для которого создаете ПФ, и посмотрите как называется реквизит в котором выводится КОнтрагент, и в коде выводите просто СсылкаНаОбъект.РеквизитИзФормыДокумента
(10)судя по ответам, все должно работать.
Что бы нам не гадать, прикрепите в следующий ответ, функцию формирования ПФ, можно не полностью.
хотя бы объявление функции, далее блок кода которым вы получаете область макета, заполняете параметры и выводите область
Речь про Областьшапка
Что бы нам не гадать, прикрепите в следующий ответ, функцию формирования ПФ, можно не полностью.
хотя бы объявление функции, далее блок кода которым вы получаете область макета, заполняете параметры и выводите область
Речь про Областьшапка
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьОснование = Макет.ПолучитьОбласть("Основание");
ОбластьЗаданиеНаПеревозку = Макет.ПолучитьОбласть("ЗаданиеНаПеревозку");
СтруктураПараметров = Новый Структура;
//СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Контрагент);
//СтруктураПараметров.Вставить("Покупатель", ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе));
//ОбластьШапка.Параметры.Покупатель = СведенияОПокупателе;
// Области макета для склада со справочным использованием ячеек, с использованием упаковок, с кодами.
ОбластьШапкаТаблицыОснова = Макет.ПолучитьОбласть("ШапкаТаблицыОснова");
ОбластьРабочийУчастокОснова = Макет.ПолучитьОбласть("РабочийУчастокОснова");
ОбластьСтрокаТаблицыОснова = Макет.ПолучитьОбласть("СтрокаТаблицыОснова");
ОбластьПодвалТаблицыОснова = Макет.ПолучитьОбласть("ПодвалТаблицыОснова");
ОбластьШапкаТаблицыОснова.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада со справочным использованием ячеек, без использования упаковок, с кодами.
ОбластьШапкаТаблицыБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковок");
ОбластьРабочийУчастокБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковок");
ОбластьСтрокаТаблицыБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковок");
ОбластьПодвалТаблицыБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковок");
ОбластьШапкаТаблицыБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада без справочного использования ячеек, с использованием упаковок, с кодами.
ОбластьШапкаТаблицыБезЯчеек = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеек");
ОбластьРабочийУчастокБезЯчеек = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеек");
ОбластьСтрокаТаблицыБезЯчеек = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеек");
ОбластьПодвалТаблицыБезЯчеек = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеек");
ОбластьШапкаТаблицыБезЯчеек.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада без справочного использования ячеек, без использования упаковок, с кодами.
ОбластьШапкаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковок");
ОбластьРабочийУчастокБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковок");
ОбластьСтрокаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковок");
ОбластьПодвалТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковок");
ОбластьШапкаТаблицыБезЯчеекБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада со справочным использованием ячеек, с использованием упаковок, без кодов.
ОбластьШапкаТаблицыБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезКодов");
ОбластьРабочийУчастокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезКодов");
ОбластьСтрокаТаблицыБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезКодов");
ОбластьПодвалТаблицыБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезКодов");
// Области макета для склада со справочным использованием ячеек, без использования упаковок, без кодов.
ОбластьШапкаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковокБезКодов");
ОбластьРабочийУчастокБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковокБезКодов");
ОбластьСтрокаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковокБезКодов");
ОбластьПодвалТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковокБезКодов");
// Области макета для склада без справочного использования ячеек, с использованием упаковок, без кодов.
ОбластьШапкаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезКодов");
ОбластьРабочийУчастокБезЯчеекБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезКодов");
ОбластьСтрокаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезКодов");
ОбластьПодвалТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезКодов");
// Области макета для склада без справочного использования ячеек, без использования упаковок, без кодов.
ОбластьШапкаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковокБезКодов");
ОбластьРабочийУчастокБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковокБезКодов");
ОбластьСтрокаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковокБезКодов");
ОбластьПодвалТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковокБезКодов");
Показать
(13)
Читается сложно, воспользуйтесь кнопкой "</>", она оформит код в читаемый.
И еще нет строки в которой вы объявили Функцию формирования печатной формы.
Не увидел что бы хоть одна из областей выводилась
Увидел что вы передаете в переменную ОбластьШапка, но не вижу заполнение параметров, очень странная не информативная выдержка из кода...
Читается сложно, воспользуйтесь кнопкой "</>", она оформит код в читаемый.
И еще нет строки в которой вы объявили Функцию формирования печатной формы.
Не увидел что бы хоть одна из областей выводилась
Увидел что вы передаете в переменную ОбластьШапка, но не вижу заполнение параметров, очень странная не информативная выдержка из кода...
(14)
УстановитьПривилегированныйРежим(Истина);
ТабличныйДокумент = Новый ТабличныйДокумент;
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_"; //+ ПараметрыПечати.ИмяФормы;
НомерТипаДокумента = 0;
Если ТипЗнч(МассивОбъектов) = Тип("Соответствие") Тогда
СтруктураТипов = МассивОбъектов;
Иначе
СтруктураТипов = ОбщегоНазначенияУТ.СоответствиеМассивовПоТипамОбъектов(МассивОбъектов);
КонецЕсли;
Для Каждого СтруктураОбъектов Из СтруктураТипов Цикл
НомерТипаДокумента = НомерТипаДокумента + 1;
Если НомерТипаДокумента > 1 Тогда
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
КолонкаКодов = ФормированиеПечатныхФорм.ИмяДополнительнойКолонки();
ВыводитьКоды = ЗначениеЗаполнено(КолонкаКодов);
ВыводитьУпаковки = ПолучитьФункциональнуюОпцию("ИспользоватьУпаковкиНоменклатуры")
И Не(ПараметрыПечати.Свойство("БезДопКолонки"));
ВыводитьПоУчету = ВыводитьУпаковки;
ЗаданиеНаДобор = ПараметрыПечати = "ЗаданиеНаДобор";
//.ИмяФормы
//Макет = УправлениеПечатью.МакетПечатнойФормы("Обработка.ПечатьЗаданияНаОтборРазмещениеТоваров.ПФ_MXL_ЗаданиеНаОтборРазмещениеТовара");
Макет = ПолучитьМакет("ПФ_MXL_ЗаданиеНаОтборРазмещениеТовара");
ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьОснование = Макет.ПолучитьОбласть("Основание");
ОбластьЗаданиеНаПеревозку = Макет.ПолучитьОбласть("ЗаданиеНаПеревозку");
//СведенияОПокупателе = Документы.РеализацияТоваровУслуг.Выбрать("Контрагент");
//ОбластьШапка.Параметры.Покупатель = СведенияОПокупателе;
// Области макета для склада со справочным использованием ячеек, с использованием упаковок, с кодами.
ОбластьШапкаТаблицыОснова = Макет.ПолучитьОбласть("ШапкаТаблицыОснова");
ОбластьРабочийУчастокОснова = Макет.ПолучитьОбласть("РабочийУчастокОснова");
ОбластьСтрокаТаблицыОснова = Макет.ПолучитьОбласть("СтрокаТаблицыОснова");
ОбластьПодвалТаблицыОснова = Макет.ПолучитьОбласть("ПодвалТаблицыОснова");
ОбластьШапкаТаблицыОснова.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада со справочным использованием ячеек, без использования упаковок, с кодами.
ОбластьШапкаТаблицыБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковок");
ОбластьРабочийУчастокБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковок");
ОбластьСтрокаТаблицыБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковок");
ОбластьПодвалТаблицыБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковок");
ОбластьШапкаТаблицыБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада без справочного использования ячеек, с использованием упаковок, с кодами.
ОбластьШапкаТаблицыБезЯчеек = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеек");
ОбластьРабочийУчастокБезЯчеек = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеек");
ОбластьСтрокаТаблицыБезЯчеек = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеек");
ОбластьПодвалТаблицыБезЯчеек = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеек");
ОбластьШапкаТаблицыБезЯчеек.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада без справочного использования ячеек, без использования упаковок, с кодами.
ОбластьШапкаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковок");
ОбластьРабочийУчастокБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковок");
ОбластьСтрокаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковок");
ОбластьПодвалТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковок");
ОбластьШапкаТаблицыБезЯчеекБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;
// Области макета для склада со справочным использованием ячеек, с использованием упаковок, без кодов.
ОбластьШапкаТаблицыБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезКодов");
ОбластьРабочийУчастокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезКодов");
ОбластьСтрокаТаблицыБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезКодов");
ОбластьПодвалТаблицыБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезКодов");
// Области макета для склада со справочным использованием ячеек, без использования упаковок, без кодов.
ОбластьШапкаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковокБезКодов");
ОбластьРабочийУчастокБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковокБезКодов");
ОбластьСтрокаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковокБезКодов");
ОбластьПодвалТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковокБезКодов");
// Области макета для склада без справочного использования ячеек, с использованием упаковок, без кодов.
ОбластьШапкаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезКодов");
ОбластьРабочийУчастокБезЯчеекБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезКодов");
ОбластьСтрокаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезКодов");
ОбластьПодвалТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезКодов");
// Области макета для склада без справочного использования ячеек, без использования упаковок, без кодов.
ОбластьШапкаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковокБезКодов");
ОбластьРабочийУчастокБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковокБезКодов");
ОбластьСтрокаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковокБезКодов");
ОбластьПодвалТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковокБезКодов");
//ОбластьШапка.Параметры.Покупатель = СсылкаНаОбъект.Номер;
ОбластьИсполнитель = Макет.ПолучитьОбласть("Исполнитель");
ЭтоЗаданиеНаРазмещение = Неопределено;
ПервыйДокумент = Истина;
Если ПараметрыПечати = "ЗаданиеНаПересчет" Тогда
//.ИмяФормы
ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
НазваниеФормы = НСтр("ru = 'Задание на пересчет товаров'");
ИначеЕсли ПараметрыПечати = "ЗаданиеНаРазмещение" Тогда
//.ИмяФормы
Если СтруктураОбъектов.Ключ = "Документ.РасходныйОрдерНаТовары"
ИЛИ СтруктураОбъектов.Ключ = "Документ.ПорчаТоваров"
ИЛИ СтруктураОбъектов.Ключ = "Документ.ПересортицаТоваров"
ИЛИ СтруктураОбъектов.Ключ = "Документ.СписаниеНедостачТоваров"
ИЛИ СтруктураОбъектов.Ключ = "Документ.ИнвентаризационнаяОпись" Тогда
Для Каждого РасходныйОрдер Из СтруктураОбъектов.Значение Цикл
ТекстСообщения = НСтр("ru = 'Печать задания на размещение для документа ""%Документ%"" не предусмотрена.'");
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Документ%", РасходныйОрдер);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
КонецЦикла;
Продолжить;
КонецЕсли;
ЭтоЗаданиеНаРазмещение = Истина;
НазваниеФормы = НСтр("ru = 'Задание на размещение товаров'");
ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
ИначеЕсли ПараметрыПечати = "ЗаданиеНаОтбор" Тогда
//.ИмяФормы
ЭтоЗаданиеНаРазмещение = Ложь;
НазваниеФормы = НСтр("ru = 'Задание на отбор товаров'");
ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
КонецЕсли;
Если ЗаданиеНаДобор Тогда
ЭтоЗаданиеНаРазмещение = Ложь;
НазваниеФормы = НСтр("ru = 'Задание на добор товаров'");
ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
ДанныеДляПечати =
Обработки.ПроверкаКоличестваТоваровВДокументе.ПолучитьДанныеДляПечатнойФормыЗаданиеНаДоборТоваров(ПараметрыПечати,
ПараметрыПечати.Ордер);
Иначе
МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(СтруктураОбъектов.Ключ);
ДанныеДляПечати = МенеджерОбъекта.ПолучитьДанныеДляПечатнойФормыОтборРазмещениеТоваров(ПараметрыПечати,
СтруктураОбъектов.Значение);
КонецЕсли;
ДанныеПоШапке = ДанныеДляПечати.РезультатПоШапке;
ДанныеПоТабличнойЧасти = ДанныеДляПечати.РезультатПоТабличнойЧасти;
ДанныеПоУпаковкам = ДанныеДляПечати.РезультатПоУпаковкам;
ДанныеПоСериям = ДанныеДляПечати.РезультатПоСериям;
ДанныеПоРаспоряжениям = Неопределено;
ДанныеДляПечати.Свойство("РезультатПоРаспоряжениям", ДанныеПоРаспоряжениям);
ЕстьПолеИспользоватьСерииНоменклатуры = ДанныеПоШапке.Колонки.Найти("ИспользоватьСерииНоменклатуры") <> Неопределено;
ВыборкаПоШапке = ДанныеПоШапке.Выбрать();
ВыборкаПоСсылкам = ДанныеПоТабличнойЧасти.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
ВыборкаПоСериям = ДанныеПоСериям.Выбрать();
Если ПараметрыПечати <> "ЗаданиеНаПересчет" И СтруктураОбъектов.Ключ <> "Документ.ПересчетТоваров" Тогда
//.ИмяФормы
ВыборкаПоУпаковкам = ДанныеПоУпаковкам.Выбрать();
КонецЕсли;
Если СтруктураОбъектов.Ключ = "Документ.РасходныйОрдерНаТовары" Тогда
ВыборкаПоРаспоряжениям = ДанныеПоРаспоряжениям.Выбрать();
КонецЕсли;
ТекущаяСсылка = Неопределено;
Пока ВыборкаПоШапке.Следующий() Цикл
ТекстСообщения = "";
Если Не ЗначениеЗаполнено(ВыборкаПоШапке.СкладПредставление) Тогда
ТекстСообщения = НСтр("ru='Невозможно напечатать %НазваниеФормы% для ""%Документ%"",
|т.к. не заполнено поле ""Склад"".'");
ИначеЕсли ВыборкаПоШапке.НарушенаОрдернаяСхема Тогда
ТекстСообщения = НСтр("ru='Невозможно напечатать %НазваниеФормы% для ""%Документ%"",
|т.к. на складе ""%Склад%"" используется ордерная схема, поэтому печать задания должна вестись из ордера.'");
ИначеЕсли (ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ПриходныйОрдерНаТовары")
ИЛИ ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ОрдерНаПеремещениеТоваров")
ИЛИ ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.РасходныйОрдерНаТовары"))
И ВыборкаПоШапке.ИспользуетсяАдресноеХранение Тогда
ТекстСообщения = НСтр("ru='Невозможно напечатать %НазваниеФормы% для ""%Документ%"",
|т.к. для склада (помещения) с ячейками, используемыми для хранения остатков номенклатуры, эта печатная форма не предусмотрена.
|Печать задания на отбор (размещение) возможна из документа ""Отбор (размещение) товаров"".'");
ИначеЕсли ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ПересчетТоваров")
И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ВыборкаПоШапке.Ссылка, "Статус")
= Перечисления.СтатусыПересчетовТоваров.Подготовлено Тогда
ТекстСообщения = НСтр("ru='Невозможно напечатать ""%НазваниеФормы%"" для ""%Документ%"",
|в статусе ""%СтатусПересчета%"".'");
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%СтатусПересчета%", Перечисления.СтатусыПересчетовТоваров.Подготовлено);
ИначеЕсли ТекущаяСсылка <> ВыборкаПоШапке.Ссылка
И НЕ ВыборкаПоСсылкам.НайтиСледующий(Новый Структура("Ссылка", ВыборкаПоШапке.Ссылка)) Тогда
Если ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ЗаказКлиента") Тогда
ТекстСообщения = НСтр("ru='Невозможно напечатать ""%НазваниеФормы%"" для ""%Документ%"",
|т.к. в табличной части отсутствуют строки номенклатуры с типом ""Товар"" и действием ""Отгрузить"" или ""Отгрузить обособленно"".'");
ИначеЕсли ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ЗаявкаНаВозвратТоваровОтКлиента") Тогда
ТекстСообщения = НСтр("ru='Невозможно напечатать ""%НазваниеФормы%"" для ""%Документ%"",
|т.к. в табличной части отсутствуют строки номенклатуры с типом ""Товар"" и действием ""Отгрузить"".'");
Иначе
ТекстСообщения = НСтр("ru='Невозможно напечатать ""%НазваниеФормы%"" для ""%Документ%"",
|т.к. в табличной части отсутствует отгружаемая номенклатура с типом ""Товар"".'");
КонецЕсли;
ИначеЕсли ТекущаяСсылка <> ВыборкаПоШапке.Ссылка Тогда
ТекущаяСсылка = ВыборкаПоШапке.Ссылка;
КонецЕсли;
Если ЗначениеЗаполнено(ТекстСообщения) Тогда
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Документ%", ВыборкаПоШапке.СсылкаПредставление);
ТекстСообщения = СтрЗаменить(ТекстСообщения,
"%Склад%",
СкладыСервер.ПолучитьПредставлениеСклада(ВыборкаПоШапке.СкладПредставление,
ВыборкаПоШапке.ПомещениеПредставление));
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%НазваниеФормы%",НазваниеФормы);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
Продолжить;
КонецЕсли;
ИспользоватьСерии = Ложь;
Если ЕстьПолеИспользоватьСерииНоменклатуры Тогда
ИспользоватьСерии = ВыборкаПоШапке.ИспользоватьСерииНоменклатуры;
КонецЕсли;
ИспользуетсяСправочноеХранение = ВыборкаПоШапке.ИспользуетсяСправочноеХранение;
ВыборкаПоСкладам = ВыборкаПоСсылкам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаПоСкладам.НайтиСледующий(Новый Структура("Склад",ВыборкаПоШапке.Склад)) Цикл
ВыборкаРабочиеУчастки = ВыборкаПоСкладам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Если Не ПервыйДокумент Тогда
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
Если ДанныеПоШапке.Колонки.Найти("ВыводитьПоУчету") <> Неопределено И ПараметрыПечати = "ЗаданиеНаПересчет" Тогда
//.ИмяФормы
ВыводитьПоУчету = ВыборкаПоШапке.ВыводитьПоУчету;
КонецЕсли;
Если ВыводитьКоды И ИспользуетсяСправочноеХранение И (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыОснова;
ОбластьРабочийУчасток = ОбластьРабочийУчастокОснова;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыОснова;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыОснова;
ИначеЕсли ВыводитьКоды И ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезУпаковок;
ОбластьРабочийУчасток = ОбластьРабочийУчастокБезУпаковок;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезУпаковок;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезУпаковок;
ИначеЕсли ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеек;
ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеек;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеек;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеек;
ИначеЕсли ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеекБезУпаковок;
ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеекБезУпаковок;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеекБезУпаковок;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеекБезУпаковок;
ИначеЕсли НЕ ВыводитьКоды И ИспользуетсяСправочноеХранение И (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезКодов;
ОбластьРабочийУчасток = ОбластьРабочийУчастокБезКодов;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезКодов;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезКодов;
ИначеЕсли НЕ ВыводитьКоды И ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезУпаковокБезКодов;
ОбластьРабочийУчасток = ОбластьРабочийУчастокБезУпаковокБезКодов;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезУпаковокБезКодов;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезУпаковокБезКодов;
ИначеЕсли НЕ ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеекБезКодов;
ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеекБезКодов;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеекБезКодов;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеекБезКодов;
ИначеЕсли НЕ ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеекБезУпаковокБезКодов;
ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеекБезУпаковокБезКодов;
ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеекБезУпаковокБезКодов;
ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеекБезУпаковокБезКодов;
КонецЕсли;
ПервыйДокумент = Ложь;
НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
ПредставлениеСклада = СкладыСервер.ПолучитьПредставлениеСклада(ВыборкаПоШапке.СкладПредставление,
ВыборкаПоШапке.ПомещениеПредставление);
РеквизитыДокумента = Новый Структура("Номер, Дата, Префикс, Представление");
ЗаполнитьЗначенияСвойств(РеквизитыДокумента, ВыборкаПоШапке);
РеквизитыДокумента.Представление = ВыборкаПоШапке.СсылкаПредставление;
ПредставлениеРаспоряжения = ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(РеквизитыДокумента,, Истина);
ОбластьЗаголовок.Параметры.ТекстЗаголовка = НазваниеФормы;
ШтрихкодированиеПечатныхФорм.ВывестиШтрихкодВТабличныйДокумент(ТабличныйДокумент, Макет, ОбластьЗаголовок, ВыборкаПоШапке.Ссылка);
ТабличныйДокумент.Вывести(ОбластьЗаголовок);
ОбластьШапка.Параметры.ПредставлениеСклада = ПредставлениеСклада;
ОбластьШапка.Параметры.ПредставлениеРаспоряжения = ПредставлениеРаспоряжения;
ТабличныйДокумент.Вывести(ОбластьШапка);
Если ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.РасходныйОрдерНаТовары") Тогда
Счетчик = 0;
ПредставлениеОснований = "";
ПервоеРаспоряжение = Истина;
РеквизитыДокумента = Новый Структура("Дата, Номер, Префикс, Представление");
Пока ВыборкаПоРаспоряжениям.НайтиСледующий(Новый Структура("Ссылка", ВыборкаПоШапке.Ссылка)) Цикл
РеквизитыДокумента.Дата = ВыборкаПоРаспоряжениям.ОснованиеДата;
РеквизитыДокумента.Номер = ВыборкаПоРаспоряжениям.ОснованиеНомер;
РеквизитыДокумента.Префикс = "";
РеквизитыДокумента.Представление = ВыборкаПоРаспоряжениям.ОснованиеПредставление;
ПредставлениеОснования = ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(РеквизитыДокумента);
Если Не ПервоеРаспоряжение Тогда
ПредставлениеОснований = ПредставлениеОснований + ", ";
КонецЕсли;
ПервоеРаспоряжение = Ложь;
ПредставлениеОснований = ПредставлениеОснований + ПредставлениеОснования;
Счетчик = Счетчик + 1;
КонецЦикла;
ЗаголовокОснования = "";
Если Счетчик > 1 Тогда
ЗаголовокОснования = НСтр("ru = 'Основания:'");
Иначе
ЗаголовокОснования = НСтр("ru = 'Основание:'");
КонецЕсли;
ОбластьОснование.Параметры.ПредставлениеОснований = ПредставлениеОснований;
ОбластьОснование.Параметры.Основания = ЗаголовокОснования;
ТабличныйДокумент.Вывести(ОбластьОснование);
Если ВыборкаПоШапке.ОтгрузкаПоЗаданиюНаПеревозку Тогда
РеквизитыДокумента.Дата = ВыборкаПоШапке.ЗаданиеНаПеревозкуДата;
РеквизитыДокумента.Номер = ВыборкаПоШапке.ЗаданиеНаПеревозкуНомер;
РеквизитыДокумента.Префикс = "";
РеквизитыДокумента.Представление = ВыборкаПоШапке.ЗаданиеНаПеревозкуПредставление;
ОбластьЗаданиеНаПеревозку.Параметры.ЗаданиеНаПеревозкуПредставление =
ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(РеквизитыДокумента);
ОбластьЗаданиеНаПеревозку.Параметры.ПорядокДоставки = ВыборкаПоШапке.ПорядокДоставки;
ТабличныйДокумент.Вывести(ОбластьЗаданиеНаПеревозку);
КонецЕсли;
КонецЕсли;
Если ПараметрыПечати = "ЗаданиеНаПересчет" Тогда
//.ИмяФормы
ОбластьИсполнитель.Параметры.ИсполнительПредставление = ФизическиеЛицаУТ.ФамилияИнициалыФизЛица(ВыборкаПоШапке.ИсполнительПредставление, РеквизитыДокумента.Дата);
ТабличныйДокумент.Вывести(ОбластьИсполнитель);
КонецЕсли;
ВыводитьУчастки = Ложь;
ВыводитьУчастки = (ВыборкаПоШапке.ИспользованиеРабочихУчастков = Перечисления.ИспользованиеСкладскихРабочихУчастков.Использовать);
ТабличныйДокумент.Вывести(ОбластьШапкаТаблицы);
НомерСтроки = 1;
Пока ВыборкаРабочиеУчастки.Следующий() Цикл
Если ВыводитьУчастки И ЗначениеЗаполнено(ВыборкаРабочиеУчастки.РабочийУчасток) Тогда
ОбластьРабочийУчасток.Параметры.Заполнить(ВыборкаРабочиеУчастки);
ТабличныйДокумент.Вывести(ОбластьРабочийУчасток);
КонецЕсли;
ВыборкаНомерСтроки = ВыборкаРабочиеУчастки.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаНомерСтроки.Следующий() Цикл
ВыборкаПоТовару = ВыборкаНомерСтроки.Выбрать();
Пока ВыборкаПоТовару.Следующий() Цикл
Если ВыборкаПоТовару.НастройкаИспользованияСерий = Перечисления.НастройкиИспользованияСерийНоменклатуры.ЭкземплярТовара Тогда
ОбластьСтрокаТаблицы.Параметры.Заполнить(ВыборкаПоТовару);
ОбластьСтрокаТаблицы.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Если ВыводитьКоды Тогда
ОбластьСтрокаТаблицы.Параметры.Артикул = ВыборкаПоТовару[КолонкаКодов];
КонецЕсли;
СтруктураПоиска = Новый Структура("Ссылка, Склад, РабочийУчасток, Номенклатура, Характеристика");
ЗаполнитьЗначенияСвойств(СтруктураПоиска, ВыборкаПоТовару);
СтрокаСерий = "";
Пока ВыборкаПоСериям.НайтиСледующий(СтруктураПоиска) Цикл
СтрокаСерий = СтрокаСерий + ВыборкаПоСериям.ПредставлениеСерии + ", ";
КонецЦикла;
Если СтрДлина(СтрокаСерий) <> 0 Тогда
СтрокаСерий = Лев(СтрокаСерий, СтрДлина(СтрокаСерий) - 2);
КонецЕсли;
ОбластьСтрокаТаблицы.Параметры.Товар = НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
ВыборкаПоТовару.ПредставлениеНоменклатуры,
ВыборкаПоТовару.ПредставлениеХарактеристики,
, // Упаковка
СтрокаСерий) ;
Если ИспользуетсяСправочноеХранение Тогда
ВыборкаПоТовару.Сбросить();
ДопЯчейки = "";
Пока ВыборкаПоТовару.Следующий() Цикл
ДопЯчейки = ДопЯчейки + ВыборкаПоТовару.ЯчейкаПредставление + Символы.ПС;
КонецЦикла;
ОбластьСтрокаТаблицы.Параметры.ДополнительныеЯчейки = ДопЯчейки;
КонецЕсли;
ТабличныйДокумент.Вывести(ОбластьСтрокаТаблицы);
Иначе
ТекНоменклатура = Неопределено;
ТекХарактеристика = Неопределено;
ТекСерия = Неопределено;
Количество = Неопределено;
Если ВыборкаПоТовару.Номенклатура <> ТекНоменклатура
И ВыборкаПоТовару.Характеристика <> ТекХарактеристика
И ВыборкаПоТовару.Серия <> ТекСерия Тогда
Количество = ВыборкаПоТовару.Количество;
КонецЕсли;
ОбластьСтрокаТаблицы.Параметры.Заполнить(ВыборкаПоТовару);
ОбластьСтрокаТаблицы.Параметры.НомерСтроки = НомерСтроки;
НомерСтроки = НомерСтроки + 1;
Если ВыводитьКоды Тогда
ОбластьСтрокаТаблицы.Параметры.Артикул = ВыборкаПоТовару[КолонкаКодов];
КонецЕсли;
ОбластьСтрокаТаблицы.Параметры.Товар = НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
?(ЗначениеЗаполнено(ВыборкаПоТовару.Номенклатура),
ВыборкаПоТовару.ПредставлениеНоменклатуры,
НСтр("ru = '<пустая ячейка>'")),
ВыборкаПоТовару.ПредставлениеХарактеристики,
, // Упаковка
ВыборкаПоТовару.ПредставлениеСерии) + ", " + ВыборкаПоТовару.Номенклатура.Производитель.Наименование + ", " + ВыборкаПоТовару.Номенклатура.УАС_СтранаПроизводителя.Наименование;
СтрокаКоличестваУпаковок = "";
СтрокаИменованийУпаковок = "";
ПредставлениеЕдининицыИзмеренияУпаковки = ВыборкаПоТовару.ПредставлениеБазовойЕдиницыИзмерения;
Если ИспользуетсяСправочноеХранение Тогда
ДопЯчейки = ВыборкаПоТовару.ЯчейкаПредставление + Символы.ПС;
СтуктураПоискаТовара = Новый Структура;
СтуктураПоискаТовара.Вставить("Номенклатура", ВыборкаПоТовару.Номенклатура);
СтуктураПоискаТовара.Вставить("Характеристика", ВыборкаПоТовару.Характеристика);
СтуктураПоискаТовара.Вставить("Серия", ВыборкаПоТовару.Серия);
Пока ВыборкаПоТовару.НайтиСледующий(СтуктураПоискаТовара) Цикл
ДопЯчейки = ДопЯчейки + ВыборкаПоТовару.ЯчейкаПредставление + Символы.ПС;
КонецЦикла;
ОбластьСтрокаТаблицы.Параметры.ДополнительныеЯчейки = ДопЯчейки;
КонецЕсли;
Если (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
Если ПараметрыПечати <> "ЗаданиеНаПересчет" И СтруктураОбъектов.Ключ <> "Документ.ПересчетТоваров" Тогда
//.ИмяФормы
СтруктураПоиска = Новый Структура("Ссылка,Склад,РабочийУчасток,НомерСтроки");
ЗаполнитьЗначенияСвойств(СтруктураПоиска, ВыборкаПоТовару);
ВыборкаПоУпаковкам.Сбросить();
Пока ВыборкаПоУпаковкам.НайтиСледующий(СтруктураПоиска) Цикл
Если Количество <> Неопределено Тогда
КоличествоВДокумент = Цел(Количество / ВыборкаПоУпаковкам.КоличествоВУпаковке);
Если КоличествоВДокумент > 0 Тогда
СтрокаКоличестваУпаковок = СтрокаКоличестваУпаковок + КоличествоВДокумент + Символы.ПС;
СтрокаИменованийУпаковок = СтрокаИменованийУпаковок
+ ВыборкаПоУпаковкам.ПредставлениеЕдининицыИзмеренияУпаковки
+ Символы.ПС;
Если Количество = КоличествоВДокумент * ВыборкаПоУпаковкам.КоличествоВУпаковке Тогда
Количество = Неопределено;
Иначе
Количество = Количество - КоличествоВДокумент * ВыборкаПоУпаковкам.КоличествоВУпаковке;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если Количество <> Неопределено Тогда
СтрокаКоличестваУпаковок = СтрокаКоличестваУпаковок + Количество;
СтрокаИменованийУпаковок = СтрокаИменованийУпаковок + ПредставлениеЕдининицыИзмеренияУпаковки;
КонецЕсли;
ОбластьСтрокаТаблицы.Параметры.КоличествоУпаковок = СтрокаКоличестваУпаковок;
ОбластьСтрокаТаблицы.Параметры.ПредставлениеЕдининицыИзмеренияУпаковки = СтрокаИменованийУпаковок;
КонецЕсли;
КонецЕсли;
ТабличныйДокумент.Вывести(ОбластьСтрокаТаблицы);
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецЦикла;
ТабличныйДокумент.Вывести(ОбластьПодвалТаблицы);
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(
ТабличныйДокумент,
НомерСтрокиНачало,
ОбъектыПечати,
ВыборкаПоШапке.Ссылка);
КонецЦикла;
КонецЦикла;
ТекстСообщения = "";
Если ВыборкаПоШапке.Количество() = 0 И СтруктураОбъектов.Ключ = "Документ.ВводОстатков" Тогда
Если ПолучитьФункциональнуюОпцию("ИспользоватьМногооборотнуюТару") Тогда
ТекстСообщения = НСтр("ru='Для данного типа операции документа ""Ввод остатков""
|печать ""%НазваниеФормы%"" не требуется.
|Печать возможна только для операций типа ""Собственные товары"", ""Полученные на комиссию товары""
|и ""Принятая от поставщиков возвратная тара""'");
Иначе
ТекстСообщения = НСтр("ru='Для данного типа операции документа ""Ввод остатков""
|печать ""%НазваниеФормы%"" не требуется.
|Печать возможна только для операций типа ""Собственные товары"" и ""Полученные на комиссию товары""'");
КонецЕсли;
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%НазваниеФормы%",НазваниеФормы);
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Документ%", ВыборкаПоШапке.СсылкаПредставление);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
КонецЕсли;
КонецЦикла;
ТабличныйДокумент.АвтоМасштаб = Истина;
Возврат ТабличныйДокумент;
КонецФункции
Показать
(15)
вот тут попробуйте дописать:
ОбластьШапка.Параметры.ПредставлениеСклада = ПредставлениеСклада;
ОбластьШапка.Параметры.ПредставлениеРаспоряжения = ПредставлениеРаспоряжения;
ТабличныйДокумент.Вывести(ОбластьШапка);
ОбластьШапка.Параметры.ПредставлениеРаспоряжения = ПредставлениеРаспоряжения;
ТабличныйДокумент.Вывести(ОбластьШапка);
вот тут попробуйте дописать:
ОбластьШапка.Параметры.Покупатель= ВыборкаПоШапке.Контрагент;
(16)
Поле объекта не обнаружено (Контрагент)
{ВнешняяОбработка.ЗаданиеНаПечать.МодульОбъекта(409)}: ОбластьШапка.Параметры.Покупатель = ВыборкаПоШапке.Контрагент;
{ВнешняяОбработка.ЗаданиеНаПечать.МодульОбъекта(70)}: УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
Поле объекта не обнаружено (Контрагент)
{ВнешняяОбработка.ЗаданиеНаПечать.МодульОбъекта(409)}: ОбластьШапка.Параметры.Покупатель = ВыборкаПоШапке.Контрагент;
{ВнешняяОбработка.ЗаданиеНаПечать.МодульОбъекта(70)}: УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
А зачем закоментирована эта строка
//СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Контрагент);
Вот тут уже контрагент в списке параметров ДанныеПечати, там же скорее всего и ссылка на документ.
//СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Контрагент);
Вот тут уже контрагент в списке параметров ДанныеПечати, там же скорее всего и ссылка на документ.
(19)там не понятно что истина, а что ТС написал сам и закомментировал....
в следующем комментарии, где код оформлен, нет этой строки, о которой вы пишите, но есть:
поэтому не понятно.... видимо это уже то что Автор написал сам, но не сработало
в следующем комментарии, где код оформлен, нет этой строки, о которой вы пишите, но есть:
//СведенияОПокупателе = Документы.РеализацияТоваровУслуг.Выбрать("Контрагент");
//ОбластьШапка.Параметры.Покупатель = СведенияОПокупателе;
поэтому не понятно.... видимо это уже то что Автор написал сам, но не сработало
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот