|
Строка Штрих код в макете Расходная накладная , arsenfn
| ☑ | ||
---|---|---|---|---|
0
aka_ufo
10.01.20
✎
09:30
|
Добрый день люди добрые!
Такая проблема - Бухгалтерия для Казахстана редакция 2.0 Создал реквизит Штрихкод (тип данных строка по умолчанию) в справочнике Номенклатура и вывел в типовом макете Накладная его как параметр,но на печать он не выходит. Подскажите пожалуйста как вывести его на печать в макет? Конфигурация типовая не измененная. |
|||
1
evgeniy_n
10.01.20
✎
10:03
|
Наверное, надо делать внешнюю печатную форму с изменённым запросом.
|
|||
2
aka_ufo
10.01.20
✎
10:43
|
(1) В типовом запросе никак не прописать чтобы захватывал штрихкод из текстовой строки?
|
|||
3
shadow_sw
10.01.20
✎
11:20
|
(2) пропиши, что мешает?
|
|||
4
JeHer
10.01.20
✎
11:21
|
(0) (3) 1С:Barcode
|
|||
5
Масянька
10.01.20
✎
11:27
|
В макете - картинка, в модуле при выводе строки:
// штрихкод СтруктураШтрихкод = ПодключаемоеОборудованиеРТВызовСервера.ПолучитьШтрихкод(СтрокаТовары.Номенклатура); Если (ТипЗнч(СтруктураШтрихкод) = Тип("Структура")) Тогда ШтрихКод = СтруктураШтрихкод.Штрихкод; ТипШтрихКода = СтруктураШтрихкод.ТипШтрихкода; ПараметрыШтрихкода = Новый Структура; ПараметрыШтрихкода.Вставить("Ширина", 23); ПараметрыШтрихкода.Вставить("Высота", 22); ПараметрыШтрихкода.Вставить("Штрихкод", ШтрихКод); ПараметрыШтрихкода.Вставить("ТипКода", 99); ПараметрыШтрихкода.Вставить("ОтображатьТекст", Ложь); Штрихкод = ОбластьСтрока.Рисунки.Получить(0); Штрихкод.Картинка = МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода(ПараметрыШтрихкода); Штрихкод.РазмерКартинки = РазмерКартинки.Пропорционально; Штрихкод.ГраницаСверху = Ложь; Штрихкод.ГраницаСлева = Ложь; Штрихкод.ГраницаСнизу = Ложь; Штрихкод.ГраницаСправа = Ложь; КонецЕсли; // конец штрихкода Это для розницы. Что у вас вместо ПодключаемоеОборудованиеРТВызовСервера.ПолучитьШтрихкод и МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода - ищи. |
|||
6
Масянька
10.01.20
✎
11:29
|
+ (5) Для бухии: отдельный запрос к РС.
|
|||
7
aka_ufo
10.01.20
✎
11:50
|
В Справочник Номенклатура я добавил реквизит Штрихкод (Тип данных Строка) и вывел его на форму карточки товара.
Добавил ячейку на макет Накладная и его параметр Штрихкод При выводе на печать заголовок отображается а ячейка строки нет. Вот исходный код печати макета,не знаю куда вписать запрос уже кучу вариантов перепробовал. Функция ПечатьНакладной() ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить(); Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда ВыводитьКоды = Истина; Колонка = "Артикул"; ТекстКодАртикул = "Артикул"; ИначеЕсли ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда ВыводитьКоды = Истина; Колонка = "Код"; ТекстКодАртикул = "Код"; Иначе ВыводитьКоды = Ложь; Колонка = ""; ТекстКодАртикул = "Код"; КонецЕсли; Если ВыводитьКоды Тогда ОбластьШапки = "ШапкаТаблицыСКодом"; ОбластьСтроки = "СтрокаСКодом"; Иначе ОбластьШапки = "ШапкаТаблицы"; ОбластьСтроки = "Строка"; КонецЕсли; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.УстановитьПараметр("Дата", Дата); Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | РеализацияТоваровУслуг.Номер, | РеализацияТоваровУслуг.Дата, | РеализацияТоваровУслуг.ДоговорКонтрагента КАК Основание, | РеализацияТоваровУслуг.Контрагент КАК Получатель, | РеализацияТоваровУслуг.Организация, | РеализацияТоваровУслуг.СтруктурноеПодразделение, | РеализацияТоваровУслуг.Организация КАК Поставщик, | РеализацияТоваровУслуг.Склад КАК Склад, | РеализацияТоваровУслуг.СуммаДокумента, | РеализацияТоваровУслуг.ВалютаДокумента, | РеализацияТоваровУслуг.УчитыватьНДС, | РеализацияТоваровУслуг.СуммаВключаетНДС, | РеализацияТоваровУслуг.УчитыватьАкциз, | РеализацияТоваровУслуг.СуммаВключаетАкциз, | РеализацияТоваровУслуг.Грузополучатель, | РеализацияТоваровУслуг.УдалитьДоверенность, | ОтветственныеЛицаСклад.ФизическоеЛицо КАК ОтпустилМОЛ, | РеализацияТоваровУслуг.ДоверенностьЛицо, | РеализацияТоваровУслуг.ДоверенностьВыдана, | РеализацияТоваровУслуг.ДоверенностьДата, | РеализацияТоваровУслуг.ДоверенностьНомер |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ОтветственныеЛица.СрезПоследних(&Дата, ) КАК ОтветственныеЛицаСклад | ПО РеализацияТоваровУслуг.Склад = ОтветственныеЛицаСклад.СтруктурнаяЕдиница |ГДЕ | РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | Номенклатура, | ВЫРАЗИТЬ(Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар, | Номенклатура.Код КАК Код, | Количество, | ЕдиницаИзмерения КАК ЕдиницаИзмерения, | Номенклатура."+ ТекстКодАртикул + " КАК КодАртикул, | Цена, | Сумма, | СуммаНДС, | СуммаАкциза, | НомерСтроки, | 1 КАК ID |ИЗ | (ВЫБРАТЬ | Номенклатура КАК Номенклатура, | ЕдиницаИзмерения КАК ЕдиницаИзмерения, | Цена КАК Цена, | СтавкаНДС КАК СтавкаНДС, | СУММА(Количество) КАК Количество, | СУММА(Сумма) КАК Сумма, | СУММА(СуммаНДС) КАК СуммаНДС, | СУММА(СуммаАкциза) КАК СуммаАкциза, | МИНИМУМ(НомерСтроки) КАК НомерСтроки | ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг | ГДЕ | РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент | СГРУППИРОВАТЬ ПО | Номенклатура, | ЕдиницаИзмерения, | Цена, | СтавкаНДС | ) КАК ВложенныйЗапросПоТоварам | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслуг.Содержание, | РеализацияТоваровУслуг.Содержание, | Номенклатура.Код КАК Код, | Количество, | Номенклатура.БазоваяЕдиницаИзмерения, | Номенклатура."+ ТекстКодАртикул + " КАК КодАртикул, | Цена, | Сумма, | СуммаНДС, | 0, | НомерСтроки, | 2 | |ИЗ | Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг | |ГДЕ | РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО | ID, | НомерСтроки"; ЗапросТовары = Запрос.Выполнить().Выгрузить(); СтруктурнаяЕдиницаОрганизация = ОбщегоНазначения.ПолучитьСтруктурнуюЕдиницу(Шапка.Организация, Шапка.СтруктурноеПодразделение); ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_Накладная"; Макет = ПолучитьМакет("Накладная"); // Выводим шапку накладной ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ОбластьМакета.Параметры.ТекстЗаголовка = РаботаСДиалогами.СформироватьЗаголовокДокумента(ЭтотОбъект, "Расходная накладная", глСписокПрефиксовУзлов); ТабДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("Поставщик"); ПредставлениеПоставщика = ОбщегоНазначения.ОписаниеОрганизации(ОбщегоНазначения.СведенияОЮрФизЛице(СтруктурнаяЕдиницаОрганизация, Шапка.Дата), "ПолноеНаименование,"); ОбластьМакета.Параметры.ПредставлениеПоставщика = СокрЛП(ПредставлениеПоставщика); ТабДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("Покупатель"); ПредставлениеПолучателя = ОбщегоНазначения.ОписаниеОрганизации(ОбщегоНазначения.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата), "ПолноеНаименование,"); ОбластьМакета.Параметры.ПредставлениеПолучателя = СокрЛП(ПредставлениеПолучателя); ТабДокумент.Вывести(ОбластьМакета); Если (Шапка.Получатель <> Шапка.Грузополучатель) И ЗначениеЗаполнено(Шапка.Грузополучатель) Тогда ОбластьМакета = Макет.ПолучитьОбласть("Грузополучатель"); ПредставлениеГрузополучателя = ОбщегоНазначения.ОписаниеОрганизации(ОбщегоНазначения.СведенияОЮрФизЛице(Шапка.Грузополучатель, Шапка.Дата), "ПолноеНаименование,"); ОбластьМакета.Параметры.ПредставлениеГрузополучателя = СокрЛП(ПредставлениеГрузополучателя); ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; //данные по доверенности ОбластьМакета = Макет.ПолучитьОбласть("Доверенность"); ДанныеДоверенности = Новый Структура("ДоверенностьНомер,ДоверенностьДата,УдалитьДоверенность,ДоверенностьЛицо,ДоверенностьВыдана"); ЗаполнитьЗначенияСвойств(ДанныеДоверенности,Шапка); ОбщегоНазначения.ЗаполнитьДанныеДоверенностиВПечатнойФорме(ДанныеДоверенности,ОбластьМакета,,,,,Истина); Если ЗначениеЗаполнено(ОбластьМакета.Параметры.Доверенность) Тогда ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; Если ЗначениеЗаполнено(Шапка.Основание) Тогда ОбластьМакета = Макет.ПолучитьОбласть("Основание"); ОбластьМакета.Параметры.Заполнить(Шапка); ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; Если Товары.Количество() <> 0 Тогда ОбластьМакета = Макет.ПолучитьОбласть("Склад"); ОбластьМакета.Параметры.Склад = Шапка.Склад; ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; ЕстьСкидки = Ложь; ОбластьШапка = Макет.ПолучитьОбласть(ОбластьШапки); Если ВыводитьКоды Тогда ОбластьШапка.Параметры.Колонка = Колонка; КонецЕсли; ТабДокумент.Вывести(ОбластьШапка); ОбластьСтрока = Макет.ПолучитьОбласть(ОбластьСтроки); Сумма = 0; СуммаНДС = 0; Для каждого ВыборкаСтрокТовары из ЗапросТовары Цикл Если НЕ ЗначениеЗаполнено(ВыборкаСтрокТовары.Номенклатура) Тогда Сообщить("В одной из строк не заполнено значение номенклатуры - строка при печати пропущена.", СтатусСообщения.Важное); Продолжить; КонецЕсли; ОбластьСтрока.Параметры.Заполнить(ВыборкаСтрокТовары); ОбластьСтрока.Параметры.НомерСтроки = ЗапросТовары.Индекс(ВыборкаСтрокТовары) + 1; ОбластьСтрока.Параметры.Товар = СокрЛП(ВыборкаСтрокТовары.Товар); Если ВыводитьКоды Тогда ОбластьСтрока.Параметры.КодАртикул = ВыборкаСтрокТовары.КодАртикул; КонецЕсли; ТабДокумент.Вывести(ОбластьСтрока); Сумма = Сумма + ВыборкаСтрокТовары.Сумма + ?((Шапка.УчитыватьАкциз И НЕ Шапка.СуммаВключаетАкциз), ВыборкаСтрокТовары.СуммаАкциза, 0); СуммаНДС = СуммаНДС + ВыборкаСтрокТовары.СуммаНДС; КонецЦикла; // Вывести Итого ОбластьИтого = Макет.ПолучитьОбласть("Итого"); ОбластьИтого.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Сумма); ТабДокумент.Вывести(ОбластьИтого); // Вывести ИтогоНДС Если Шапка.УчитыватьНДС Тогда ОбластьИтогоНДС = Макет.ПолучитьОбласть("ИтогоНДС"); ОбластьИтогоНДС.Параметры.НДС = ?(Шапка.СуммаВключаетНДС, "В том числе НДС:", "Сумма НДС:"); ОбластьИтогоНДС.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(ЗапросТовары.Итог("СуммаНДС")); ТабДокумент.Вывести(ОбластьИтогоНДС); Если НЕ Шапка.СуммаВключаетНДС ТОгда ОбластьИтогоСНДС = Макет.ПолучитьОбласть("ИтогоСНДС"); ОбластьИтогоСНДС.Параметры.ВсегоСНДС = Сумма+СуммаНДС; ТабДокумент.Вывести(ОбластьИтогоСНДС); КонецЕсли; КонецЕсли; // Вывести Сумму прописью ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью"); СуммаКПрописи = Сумма + ?(Шапка.СуммаВключаетНДС, 0, СуммаНДС); ОбластьМакета.Параметры.ИтоговаяСтрока = "Всего наименований " + ЗапросТовары.Количество() + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи, Шапка.ВалютаДокумента); ОбластьМакета.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(СуммаКПрописи, Шапка.ВалютаДокумента); ТабДокумент.Вывести(ОбластьМакета); // Вывести подписи ОбластьМакета = Макет.ПолучитьОбласть("Подписи"); ОбластьМакета.Параметры.ОтпустилМОЛПредставление = ОбщегоНазначения.ФамилияИнициалыФизЛица(Шапка.ОтпустилМОЛ); ТабДокумент.Вывести(ОбластьМакета); Возврат ТабДокумент; КонецФункции |
|||
8
Дмитрий
10.01.20
✎
11:55
|
(7) В ЗапросТовары вытаскивай свой реквизит
|
|||
9
Дмитрий
10.01.20
✎
11:56
|
(8) по аналогии, как код номенклатуры вытаскивается
|
|||
10
aka_ufo
10.01.20
✎
12:40
|
(8) Подскажите как правильно вписать запрос для кода
|
|||
11
Дмитрий
10.01.20
✎
13:56
|
(10) в тексте запроса после каждой из строк
| Номенклатура.Код КАК Код, добавить строку | Номенклатура.ВашРеквизит КАК ВашеИмяПараметраВМакете, только копию сделайте перед тем, как менять |
|||
12
aka_ufo
10.01.20
✎
15:53
|
(11) Прописал после каждой строки как Вы сказали теперь ошибка
"Определения процедур и функций должны размещаться перед операторами тела модуля" Указывает на функцию Вывести итого |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |