Имя: Пароль:
1C
1С v8
При считывании сканером штрихкод обрезается
,
0 LivingStar
 
19.03.13
10:12
Почему может обрезаться штрих код при считывании его сканером с товара.
В ручную по F7 вводишь все нормально обрабатывается, когда же считывается сканером штрих кода, в базе номенклатура не находится, так как считывается обрезанный штрих код! Как исправить можно эту ошибку?
1 LivingStar
 
19.03.13
10:22
Добавил свою форму для подбора в неё номенклатуры и просмотра цен, но в неё сканер считывает обрезанный код и ничего не находится

в документе ЧекККМ же такой ошибки нет!!!

в чем может быть дело?
2 LivingStar
 
19.03.13
13:43
up!
3 Torquader
 
20.03.13
01:05
Настройки сканера нужно смотреть - возможно, что стоит timeout, и система считает, что передаётся не один штрих-код, а два.
4 AS_DANCE
 
20.03.13
01:07
посмотри в отладчике сколько символов обрезается и каких.
И посмотри префикс и суффикс в настройках сканера.
5 sanja26
 
20.03.13
01:10
весовой товар?
6 LivingStar
 
20.03.13
06:19
(5) да нет обычный
7 LivingStar
 
20.03.13
06:19
(4) так а почему в документ когда сканируют не обрезается, а в моей форме обрезается???
8 Галахад
 
гуру
20.03.13
06:22
(7) Если в типовой не обрезается, а в твоей обрезается, какой вывод можно сделать?
9 LivingStar
 
20.03.13
06:25
(8) ну что я что то не учел разрабатывая свою форму

хотя смотрю по коду нет особых различий, что бы что то влияло
10 Галахад
 
гуру
20.03.13
06:29
(9) Ну, наверное, надо код анализировать.
Если у самого не получилось, наверное надо выложить тут.
Типовой и свой.
11 LivingStar
 
20.03.13
06:35
(10) конфигурация Розница 1.
документ ЧекККМ, по F7 вызывается окно ввода штрих кода или он считывается сканером штрих кода, в моей форме так же

по F7 все нормально везде работает, но при считывании сканером  в документ нормально попадает все, а в моей форме при считывании сканером (при ручном вводе с клавиатуры по F7 все работает) ничего не находится, так как штрих код обрезается соответственно номенклатуры такой не находится

вот моя процедура:

Процедура Кнопка1Нажатие(Элемент)
   // ВВОД ШТРИХ КОДА
   Штрихкод = РаботаСТорговымОборудованием.ВвестиШтрихкод();
   Если Не ПустаяСтрока(Штрихкод) Тогда
       РаботаСТорговымОборудованием.ОбработатьВведенныйШтрихкод(Штрихкод, ЭтаФорма, Истина);
   КонецЕсли;
   
   // ПОИСК НОМЕНКЛАТУРЫ ПО ШТРИХ КОДУ
   ТаблицаНоменклатуры                                               = Новый ТаблицаЗначений;
   ТаблицаНоменклатуры.Колонки.Добавить("Номенклатура",                Новый ОписаниеТипов("СправочникСсылка.Номенклатура"));
   ТаблицаНоменклатуры.Колонки.Добавить("ХарактеристикаНоменклатуры",  Новый ОписаниеТипов("СправочникСсылка.ХарактеристикиНоменклатуры"));
   ТаблицаНоменклатуры.Колонки.Добавить("ЕдиницаИзмерения",            Новый ОписаниеТипов("СправочникСсылка.ЕдиницыИзмерения"));
   КЧ                                                                = Новый КвалификаторыЧисла(12,2);
   Массив                                                            = Новый Массив;
   Массив.Добавить(Тип("Число"));
   ТаблицаНоменклатуры.Колонки.Добавить("Цена",                        Новый ОписаниеТипов(Массив, , ,КЧ));
   Запрос = Новый Запрос(
       "ВЫБРАТЬ
       |    РегШК.Владелец                   КАК Владелец,
       |    РегШК.ЕдиницаИзмерения           КАК ЕдиницаИзмерения,
       |    РегШК.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры
       |ИЗ
       |    РегистрСведений.Штрихкоды        КАК РегШК
       |ГДЕ
       |    РегШК.Штрихкод = &Штрихкод");
   Запрос.УстановитьПараметр("Штрихкод", Штрихкод);
   РезультатЗапроса = Запрос.Выполнить();
   Если Не РезультатЗапроса.Пустой() Тогда
       ВыборкаЗапроса = РезультатЗапроса.Выбрать();
       Пока ВыборкаЗапроса.Следующий() Цикл
           НоваяСтрока                             = ТаблицаНоменклатуры.Добавить();
           НоваяСтрока.Номенклатура                = ВыборкаЗапроса.Владелец;
           НоваяСтрока.ХарактеристикаНоменклатуры  = ВыборкаЗапроса.ХарактеристикаНоменклатуры;
           НоваяСтрока.ЕдиницаИзмерения            = ВыборкаЗапроса.ЕдиницаИзмерения;
       КонецЦикла;
   Иначе
       //Сообщить("Номенклатура по введенному штрих коду не найдена!",СтатусСообщения.Информация);
       Предупреждение("Номенклатура по введенному штрих коду «" + Штрихкод + "» не найдена!",,"ВНИМАНИЕ!");
       Возврат;
   КонецЕсли;
   // ПОЛУЧЕКНИЕ ЦЕНЫ НАЙДЕННОЙ ПО ШТРИХ КОДУ НОМЕНКЛАТУРЫ
   Если ЗначениеЗаполнено(Док.КассаККМ) Тогда
       пМагазин = Док.КассаККМ.Магазин;
   Иначе
       пМагазин = ПараметрыСеанса.ТекущийМагазин;
   КонецЕсли;
   Номенклатура               = ТаблицаНоменклатуры[0].Номенклатура;
   ХарактеристикаНоменклатуры = ТаблицаНоменклатуры[0].ХарактеристикаНоменклатуры;
   ЕдиницаИзмерения           = ТаблицаНоменклатуры[0].ЕдиницаИзмерения;
   Цена                       = Ценообразование.ПолучитьЦенуНоменклатурыВРознице(Док.Дата, пМагазин, Номенклатура, ХарактеристикаНоменклатуры, ЕдиницаИзмерения);
   НоваяСтрока.Цена           = Цена;
   ТаблицаНоменклатуры.Колонки.Удалить(ТаблицаНоменклатуры.Колонки.Индекс(ТаблицаНоменклатуры.Колонки.Найти("ЕдиницаИзмерения")));
   ТаблицаНоменклатуры.Колонки.Удалить(ТаблицаНоменклатуры.Колонки.Индекс(ТаблицаНоменклатуры.Колонки.Найти("ХарактеристикаНоменклатуры")));
   //ТаблицаНоменклатуры.ВыбратьСтроку("Цена номенклатуры по штрихкоду " + СокрЛП(ШтрихКод));
   Для каждого Стр Из ТаблицаНоменклатуры Цикл
       НоваяСтрока              = ТЗ.Добавить();
       НоваяСтрока.Номенклатура = Стр.Номенклатура;
       НоваяСтрока.Цена         = Стр.Цена;
   КонецЦикла;
КонецПроцедуры
12 Галахад
 
гуру
20.03.13
07:20
Тут что-ли обрезается?
Штрихкод = РаботаСТорговымОборудованием.ВвестиШтрихкод();
13 LivingStar
 
20.03.13
07:34
(12) Так от куда знать? По вводу с клавиатуры все работает как нужно. Сканера что бы проверить нету. Выводится сообщение с обрезанным штрих кодом после сканирования, что такого не находится. Естественно потому что нет такого в базе.

Например ввели 111222, в окне отображается 222, то есть считанный сканером штрих код урезан!
14 Галахад
 
гуру
20.03.13
07:36
(13) Головоломка какая-то. Сканера нет. А сканирование есть.
Как сложно все...
15 hhhh
 
20.03.13
07:46
(13) ну проверь может не строки, а числа у тебя там.