![]() |
|
Ошибка при печати штрихкодов | ☑ | ||
---|---|---|---|---|
0
sergqwert
04.09.18
✎
21:47
|
При печати штрихкодов из карточки номенклатуры возникает ошибка: По выбранным условиям отбора не найдено ни одного товара со штрихкодом. В чем причина?
Процедура ПечатьЭтикетокBersek(Товар = Неопределено) Экспорт ТЗТоваров = Неопределено; ОбработкаПечати = Обработки.ПечатьЭтикетокBerSerk.Создать(); ОбработкаПечати.ЗаполнитьТовары(Товар,ТЗТоваров); ОбработкаПечати.ПечатьBerserk(ТЗТоваров); КонецПроцедуры // ПечатьЭтикеток() Процедура ЗаполнитьТовары(ТоварыНоменклатуры, Товары) Экспорт //++ ВнешнийЭлементНоменклатуры = Неопределено; ФорматЭтикетки = 1; ШиринаЭтикетки = 52; ВысотаЭтикетки = 71; ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13; ПечататьЦену = Ложь; ТипЦены = Справочники.ТипыЦенНоменклатуры.ПустаяСсылка(); Единица = Неопределено; Качество = Неопределено; Валюта = Неопределено; ВВалютахЦен = Истина; Характеристика = Неопределено; Характеристики = Ложь; ХарактеристикиЗаполненные = Ложь; ТолькоВнутренние = Ложь; Серии = Ложь; СерииЗаполненные = Ложь; //-- Если ПечататьЦену И Не ЗначениеЗаполнено(ТипЦены) Тогда Если ВнешнийЭлементНоменклатуры <> Истина Тогда Сообщить ("Не указан тип цен!"); КонецЕсли; Возврат; КонецЕсли; ЗапросШтрихкоды = Новый Запрос; ЗапросШтрихкоды.УстановитьПараметр("ТипШтрихкода", ТипШтрихкода); ЗапросШтрихкоды.УстановитьПараметр("Владелец", ТоварыНоменклатуры); ЗапросШтрихкоды.УстановитьПараметр("ХарактеристикаНоменклатуры", Характеристика); ЗапросШтрихкоды.УстановитьПараметр("ЕдиницаПоКлассификатору", Единица); ЗапросШтрихкоды.УстановитьПараметр("ПустаяСерия", Справочники.СерииНоменклатуры.ПустаяСсылка()); ЗапросШтрихкоды.УстановитьПараметр("Качество", Качество); ЗапросШтрихкоды.УстановитьПараметр("ТипШтрихкода", ТипШтрихкода); ЗапросШтрихкоды.УстановитьПараметр("ТипыШтрихкода", Новый Массив); //++ ЭлементыФормы.ТипШтрихкода.СписокВыбора ЗапросШтрихкоды.УстановитьПараметр("ЭтоГруппа", Истина); ЗапросШтрихкоды.УстановитьПараметр("Дата", ТекущаяДата()); ЗапросШтрихкоды.УстановитьПараметр("Валюта", Валюта); Если НЕ ВВалютахЦен Тогда Если НЕ ЗначениеЗаполнено(Валюта)Тогда Предупреждение("Не указана валюта для заполнения цен!"); Возврат; КонецЕсли; КурсВалюты = РегистрыСведений.КурсыВалют.ПолучитьПоследнее(ТекущаяДата(), Новый Структура("Валюта", Валюта)); Если КурсВалюты.Курс = 0 тогда Предупреждение("Курс валюты отчета """ + Валюта.Наименование+""" на дату " + строка(ТекущаяДата())+" не определен или нулевой. Формирование этикеток невозможно."); Возврат; КонецЕсли; Если КурсВалюты.Кратность = 0 тогда Предупреждение("Кратность курса валюты отчета """ + Валюта.Наименование+""" на дату " + строка(ТекущаяДата())+" не определена или нулевая. Формирование этикеток невозможно."); Возврат; КонецЕсли; ЗапросШтрихкоды.УстановитьПараметр("КурсВалюты", КурсВалюты.Курс); КонецЕсли; Если ТипЦены.Рассчитывается Тогда ТипЦенБазовый = ТипЦены.БазовыйТипЦен; ПорядокОкругления = ТипЦены.ПорядокОкругления; ОкруглятьВБольшуюСторону = ТипЦены.ОкруглятьВБольшуюСторону; ПроцентСкидкиНаценки = ТипЦены.ПроцентСкидкиНаценки; ЗапросШтрихкоды.УстановитьПараметр("ТипЦены", ТипЦенБазовый); ЗапросШтрихкоды.УстановитьПараметр("ТипЦенРасчетный", ТипЦены); Иначе ЗапросШтрихкоды.УстановитьПараметр("ТипЦены", ТипЦены); КонецЕсли; Текст = "ВЫБРАТЬ | Штрихкоды.ТипШтрихкода, | Штрихкоды.Штрихкод, | Штрихкоды.ПредставлениеШтрихкода, | Штрихкоды.Владелец КАК Номенклатура, | Штрихкоды.ЕдиницаИзмерения, | Штрихкоды.ХарактеристикаНоменклатуры КАК Характеристика, | Штрихкоды.СерияНоменклатуры КАК Серия, | Штрихкоды.Качество, | ПОДСТРОКА(Штрихкоды.Владелец.Код, 4, 6) КАК SKU, | Штрихкоды.ХарактеристикаНоменклатуры КАК SIZE, | ВЫБОР | КОГДА Цены.Цена ЕСТЬ NULL | ИЛИ Цены.Цена = 0 | ТОГДА 0 | ИНАЧЕ Цены.Цена | КОНЕЦ КАК Цена, | Цены.ЕдиницаИзмерения КАК ЦеныЕдиница, | Цены.Валюта КАК Валюта, | Цены.ТипЦен КАК ТипЦен, | 1 КАК Количество |ИЗ | РегистрСведений.Штрихкоды КАК Штрихкоды | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | Рег.Номенклатура.Ссылка КАК Номенклатура, | Рег.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | Рег.ТипЦен.Ссылка КАК ТипЦен, | Рег.Цена КАК Цена, | Рег.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | Рег.Валюта КАК Валюта | ИЗ | РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ТипЦен = &ТипЦены) КАК Рег) КАК Цены | ПО Штрихкоды.Владелец = Цены.Номенклатура | И Штрихкоды.ХарактеристикаНоменклатуры = Цены.ХарактеристикаНоменклатуры |ГДЕ | Штрихкоды.Владелец.ЭтоГруппа <> &ЭтоГруппа | И Штрихкоды.ТипШтрихкода = &ТипШтрихкода | И Штрихкоды.Владелец = &Владелец | И Штрихкоды.ХарактеристикаНоменклатуры = &ХарактеристикаНоменклатуры | |УПОРЯДОЧИТЬ ПО | Штрихкоды.Владелец |АВТОУПОРЯДОЧИВАНИЕ"; ЗапросШтрихкоды.Текст = Текст; Товары = ЗапросШтрихкоды.Выполнить().Выгрузить(); Если ЗначениеЗаполнено(ТипЦены) Тогда Если ТипЦены.Рассчитывается Тогда ВалютаРасчетная = ТипЦены.ВалютаЦены; КонецЕсли; КонецЕсли; Курс = Неопределено; Кратность = Неопределено; Для Каждого СтрокаТовара ИЗ Товары Цикл Если ЗначениеЗаполнено(ТипЦены) Тогда Если ЗначениеЗаполнено(СтрокаТовара.Цена) Тогда Если ТипЦены.Рассчитывается Тогда ВалютаТекущая = СтрокаТовара.Валюта; ПолученнаяЦена = Ценообразование.ПересчитатьЦенуПриИзмененииВалюты(СтрокаТовара.Цена, ВалютаТекущая, ВалютаРасчетная, Курс, Кратность, ТекущаяДата()); ПроцентСкидкиНаценки = ? (НЕ ЗначениеЗаполнено(СтрокаТовара.ПроцентСкидкиНаценки), ПроцентСкидкиНаценки, СтрокаТовара.ПроцентСкидкиНаценки); ПолученнаяЦена = ПолученнаяЦена * (1 + ПроцентСкидкиНаценки / 100); Иначе ПолученнаяЦена = СтрокаТовара.Цена; КонецЕсли; ПолученнаяЦена = Ценообразование.ОкруглитьЦену(ПолученнаяЦена, ТипЦены.ПорядокОкругления, ТипЦены.ОкруглятьВБольшуюСторону); СтрокаТовара.Цена = ПолученнаяЦена; Если ТипЦены.Рассчитывается Тогда СтрокаТовара.Валюта = ВалютаРасчетная; КонецЕсли; Если НЕ ВВалютахЦен И Валюта <> СтрокаТовара.Валюта Тогда ПолученнаяЦена = Ценообразование.ПересчитатьЦенуПриИзмененииВалюты(СтрокаТовара.Цена, СтрокаТовара.Валюта, Валюта, 0, 1, ТекущаяДата()); СтрокаТовара.Цена = ПолученнаяЦена; СтрокаТовара.Валюта = Валюта; КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; //++ //Товары.ЗаполнитьЗначения(КоличествоКопий, "Количество"); //-- Если Товары.Количество() = 0 тогда Предупреждение("По выбранным условиям отбора не найдено ни одного товара со штрихкодом."); КонецЕсли; КонецПроцедуры |
|||
1
Михаил Козлов
04.09.18
✎
21:57
|
Причина в том, что по выбранным условиям отбора не найдено ни одного товара со штрихкодом.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |