1C:Бухгалтерия
Платформа 1С v8.3
Внешний отчет (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 и выше
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
В запросе через вложенный сделаала, вставила там где на параметры выборки табличной части ссылается, но без указания параметра номенклатуры, потому что если указать, то будет ругаться что не установлен параметр, а если без него, то ругается что невозможно преобразовать в число, что можно исправить?
Попробуйте не спеша, разделяя предложения, объяснить, что сделали и что не так.
(2) в основной зааапрос добавила вложенный, чтобы отсылаться к штрихкоду, ввела переменную, на макете параметр, сначала указала в условии номенклатуру во вложенном запросе, но начал ругаться что не установлен параметр номенклатуры, убрала без условия оставила, теперь пишет что не может преобразовать выражение штрихкод в запросе в число, уже при формировании печатной формы
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот