Конфигурации 1cv8
Платформа 1С v8.3
8.3.14
Внешний отчет (ert,erf)
Внешняя обработка (ert,epf)
Печатная форма (mxl)
Здравствуйте, такой вопрос
Делаю внешнюю печатную форму накладной32, нужно добавить вместо колонки нумерации строк, колонку штрихкода товара в табличную часть, кусочек кода
1 - типовая
2 - макет уже измененный
В запросе через вложенный сделаала, вставила там где на параметры выборки табличной части ссылается, но без указания параметра номенклатуры, потому что если указать, то будет ругаться что не установлен параметр, а если без него, то ругается что невозможно преобразовать в число, что можно исправить?
Делаю внешнюю печатную форму накладной32, нужно добавить вместо колонки нумерации строк, колонку штрихкода товара в табличную часть, кусочек кода
Запрос.Текст =
"ВЫБРАТЬ
| РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
| МИНИМУМ(РеализацияТоваровУслугТовары.НомерСтроки) КАК НомерСтроки,
| РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
| ВЫБОР
| КОГДА НЕ РеализацияТоваровУслугТовары.Номенклатура.НаименованиеПолное ПОДОБНО """"
| ТОГДА ВЫРАЗИТЬ(РеализацияТоваровУслугТовары.Номенклатура.НаименованиеПолное КАК СТРОКА(1000))
| ИНАЧЕ РеализацияТоваровУслугТовары.Номенклатура.Наименование
| КОНЕЦ КАК ТоварПредставление,
| РеализацияТоваровУслугТовары.ЕдиницаИзмерения.Наименование КАК ЕдиницаИзмеренияНаименование,
| РеализацияТоваровУслугТовары.Номенклатура.Код КАК ТоварКод,
| СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество,
| РеализацияТоваровУслугТовары.Цена КАК Цена,
| СУММА(РеализацияТоваровУслугТовары.Сумма) КАК Сумма,
| СУММА(РеализацияТоваровУслугТовары.СуммаНДС) КАК СуммаНДС,
| СУММА(РеализацияТоваровУслугТовары.СуммаАкциза) КАК СуммаАкциза,
| ВложенныйЗапрос.Штрихкод КАК Штрихкод
|ИЗ
| Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| ШтрихкодыНоменклатуры.Штрихкод КАК Штрихкод,
| ШтрихкодыНоменклатуры.Номенклатура КАК Номенклатура
| ИЗ
| РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры) КАК ВложенныйЗапрос
| ПО (ВложенныйЗапрос.Номенклатура = РеализацияТоваровУслугТовары.Номенклатура)
|ГДЕ
| РеализацияТоваровУслугТовары.Ссылка В(&МассивОбъектов)
|
|СГРУППИРОВАТЬ ПО
| РеализацияТоваровУслугТовары.Номенклатура,
| РеализацияТоваровУслугТовары.ЕдиницаИзмерения.Наименование,
| РеализацияТоваровУслугТовары.Номенклатура.Код,
| РеализацияТоваровУслугТовары.Цена,
| РеализацияТоваровУслугТовары.Ссылка,
| ВЫБОР
| КОГДА НЕ РеализацияТоваровУслугТовары.Номенклатура.НаименованиеПолное ПОДОБНО """"
| ТОГДА ВЫРАЗИТЬ(РеализацияТоваровУслугТовары.Номенклатура.НаименованиеПолное КАК СТРОКА(1000))
| ИНАЧЕ РеализацияТоваровУслугТовары.Номенклатура.Наименование
| КОНЕЦ,
| ВложенныйЗапрос.Штрихкод
|
|УПОРЯДОЧИТЬ ПО
| НомерСтроки
|ИТОГИ
| СУММА(Сумма),
| СУММА(СуммаНДС),
| СУММА(СуммаАкциза)
|ПО
| Ссылка";
ВыборкаСтрокТоварыИтоги = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.КлючПараметровПечати = "РеализацияТоваровУслуг_З2";
Пока ДанныеДокументов.Следующий() Цикл
Макет = ПолучитьМакет("ПФ_MXL_З2");
Если ТабДокумент.ВысотаТаблицы > 0 Тогда
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
НомерСтрокиНачало = ТабДокумент.ВысотаТаблицы + 1;
ОбластьМакетаШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьМакетаИтогоПрописью = Макет.ПолучитьОбласть("ИтогоПрописью");
ОбластьМакетаПодвал = Макет.ПолучитьОбласть("Подвал");
СтруктурнаяЕдиницаОрганизация = ОбщегоНазначенияБК.ПолучитьСтруктурнуюЕдиницу(ДанныеДокументов.Организация, ДанныеДокументов.СтруктурноеПодразделение);
СведенияОбОрганизации = ОбщегоНазначенияБКВызовСервера.СведенияОЮрФизЛице(СтруктурнаяЕдиницаОрганизация, ДанныеДокументов.Дата);
ОбластьМакетаШапка.Параметры.Заполнить(ДанныеДокументов);
ОбластьМакетаШапка.Параметры.ПредставлениеОрганизации = ОбщегоНазначенияБКВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "ПолноеНаименование,");
ОбластьМакетаШапка.Параметры.ПредставлениеОтправителя = ОбщегоНазначенияБКВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "ПолноеНаименование,");
ОбластьМакетаШапка.Параметры.ОрганизацияРНН_БИН = ОбщегоНазначенияБКВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "БИН_ИИН,", Ложь, ДанныеДокументов.Дата, "ru");
ОбластьМакетаШапка.Параметры.НомерДокумента = ПрефиксацияОбъектовКлиентСервер.ПолучитьНомерНаПечать(ДанныеДокументов.Номер, ДанныеДокументов.Ссылка);
ОтветственныйДляПечати = "";
ДолжностьОтветственного = "";
Если ТипЗнч(ДанныеДокументов.Ответственный) = Тип("СправочникСсылка.ФизическиеЛица") Тогда
ДанныеОтветственного = ПроцедурыУправленияПерсоналомВызовСервера.ДанныеФизЛица(ДанныеДокументов.Организация, ДанныеДокументов.Ответственный, ДанныеДокументов.Дата);
ОтветственныйДляПечати = ДанныеОтветственного.Представление;
ДолжностьОтветственного = ДанныеОтветственного.Должность;
Иначе
ОтветственныйДляПечати = ДанныеДокументов.Ответственный;
КонецЕсли;
ОбластьМакетаШапка.Параметры.ОтветственныйЗаПоставку = ОтветственныйДляПечати;
ПредставлениеПолучателя = ОбщегоНазначенияБКВызовСервера.ОписаниеОрганизации(ОбщегоНазначенияБКВызовСервера.СведенияОЮрФизЛице(ДанныеДокументов.Контрагент, ДанныеДокументов.Дата), "ПолноеНаименование,");
ОбластьМакетаШапка.Параметры.ПредставлениеПолучателя = ПредставлениеПолучателя;
ТабДокумент.Вывести(ОбластьМакетаШапка);
УчитыватьНДС_ = ДанныеДокументов.УчитыватьНДС;
УчитыватьАкциз_ = ДанныеДокументов.УчитыватьАкциз;
СуммаВключаетНДС_ = ДанныеДокументов.СуммаВключаетНДС;
СуммаВключаетАкциз_ = ДанныеДокументов.СуммаВключаетАкциз;
ПрибавлятьНДС = УчитыватьНДС_ И (НЕ СуммаВключаетНДС_);
ПрибавлятьАкциз = УчитыватьАкциз_ И (НЕ СуммаВключаетАкциз_);
// Выводим заголовок таблицы
Если УчитыватьАкциз_ Тогда
ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицыАкциз");
Иначе
ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицы");
КонецЕсли;
ЗаголовокТаблицы.Параметры.Валюта = ДанныеДокументов.ВалютаДокумента;
ТабДокумент.Вывести(ЗаголовокТаблицы);
ИтогоКоличество = 0;
// Выводим многострочную часть документа
Если УчитыватьАкциз_ Тогда
ОбластьСтрокаТаблицы = Макет.ПолучитьОбласть("СтрокаТаблицыАкциз");
Иначе
ОбластьСтрокаТаблицы = Макет.ПолучитьОбласть("СтрокаТаблицы");
КонецЕсли;
//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
ВыборкаСтрокТоварыИтоги.Сбросить();
Если ВыборкаСтрокТоварыИтоги.НайтиСледующий(ДанныеДокументов.Ссылка) Тогда
ВыборкаСтрокТовары = ВыборкаСтрокТоварыИтоги.Выбрать();
Иначе
ВыборкаСтрокТовары = Неопределено;
КонецЕсли;
Если ВыборкаСтрокТовары <> Неопределено Тогда
Пока ВыборкаСтрокТовары.Следующий() Цикл
Количество = ВыборкаСтрокТовары.Количество;
Если Не ОбщегоНазначения.ПроверитьВыводТабличногоДокумента(ТабДокумент, ОбластьСтрокаТаблицы) Тогда
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
ТабДокумент.Вывести(ЗаголовокТаблицы);
КонецЕсли;
ОбластьСтрокаТаблицы.Параметры.Заполнить(ВыборкаСтрокТовары);
ОбластьСтрокаТаблицы.Параметры.Штрихкод = ВыборкаСтрокТовары.Штрихкод;
ОбластьСтрокаТаблицы.Параметры.ТоварНаименование = СокрЛП(ВыборкаСтрокТовары.ТоварПредставление);
Показать1 - типовая
2 - макет уже измененный
В запросе через вложенный сделаала, вставила там где на параметры выборки табличной части ссылается, но без указания параметра номенклатуры, потому что если указать, то будет ругаться что не установлен параметр, а если без него, то ругается что невозможно преобразовать в число, что можно исправить?
Прикрепленные файлы:
По теме из базы знаний
- Внешняя печатная форма ТОРГ-12 со штрих-кодом для УТ 10.3
- Штрихкодирование печатных форм
- Внешняя печатная форма ТОРГ-12 со штрихкодом (картинкой и числом)
- Внешняя печатная форма УПД со штрихкодом (картинкой и числом)
- Внешние печатные формы УПД, ТОРГ-12 и Счет на оплату со штрихкодом номенклатуры для УПП 1.3.120 и выше
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот