Как сканировать штрихкод длиной 20 символов
По теме из базы знаний
- Помощник ЕГАИС-для розницы и Хамелеон ЕГАИС-для опта, производителей и импортеров (Обмен: ЕГАИС-УТМ-1С)
- UTM Proxy для УТМ ЕГАИС (или как не пропустить дубль алкогольной марки и недостачу на кассе + Контроль МРЦ)
- ТСД OPTICON SMART: как увеличить размерность штрихкода
- “Заставим сканер пищать!” или Получаем обратную связь из 1С при сканировании штрихкодов
- Статья о системе маркировки
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Попробую, только, в 1С не позволяется назначить числовому реквизиту длину более 19 символов (матюкается-неверное значение), я изменю тип реквизита на "строка" длиной 20 символов везде где он отображается (Номенклатура, РН...).Принципиально ли что реквизит изначально числового типа, могу навредить?
Нужно что-то изменить в мозгах.
В Типовой ТиС (а сабж висит под этим разделом) реквизит ШтрихКод в спр.Единицы изначально имеет тип "строка". Больше в типовой конфиге никаких реквизитов, имеющих отношение к ШК (тем более в числовом представлении - как, кстати, отобразить ШК вида 000025 в числовом представлени) - нет.
отсюда ответ: найти того дятла, который так покурочил типовую и пытать его с особым пристрастием путем засовывания дикообраза в ЗПС.
..
> я изменю тип реквизита на "строка" длиной 20 символов везде где он отображается (Номенклатура, РН...).Принципиально ли что реквизит изначально числового типа, могу навредить?
..хз, что там у вас "унутре в лпч (неонка, значит)" делается...
если вас интересует только отображение ШК на экране - то преобразование числа в строку произойдет безсполезненно...
В Типовой ТиС (а сабж висит под этим разделом) реквизит ШтрихКод в спр.Единицы изначально имеет тип "строка". Больше в типовой конфиге никаких реквизитов, имеющих отношение к ШК (тем более в числовом представлении - как, кстати, отобразить ШК вида 000025 в числовом представлени) - нет.
отсюда ответ: найти того дятла, который так покурочил типовую и пытать его с особым пристрастием путем засовывания дикообраза в ЗПС.
..
> я изменю тип реквизита на "строка" длиной 20 символов везде где он отображается (Номенклатура, РН...).Принципиально ли что реквизит изначально числового типа, могу навредить?
..хз, что там у вас "унутре в лпч (неонка, значит)" делается...
если вас интересует только отображение ШК на экране - то преобразование числа в строку произойдет безсполезненно...
Та с мозгами все ок, но факт, что в этой конфе у реквизита ШК в спр.Единицы тип стоит "число" и длина символа 13. Я с ТиС не был знаком, уверен что разобрался бы и сам, но нет времени вникать, это обратились люди со стороны, поэтому и задаю "ламерские вопросы", на то форум и нужен чтоб время экономить. А найти дятла не представляется возможным)). Переделал как Вы посоветовали, как только доберусь к заказчику-проверю.
За советы спасибо.
За советы спасибо.
Мдя... Дело приняло такой оборот, после изменений на "Строка". Сканер считывает ШК и 1С выдает: товар с кодом |86970.... не найден. Добавляется перед кодом какой то символ. Скорее всего, предыдущий программист не нашел в чем дело и поменял тип реквизита у ШК на "число", с "числом" работает, в базе нет кодов 000##... Может, кто сталкивался с подобным, подскажите почему при считывании добавляется лишний символ?
1. смотри код внимательно.
2. ...ШК и 1С выдает: товар с кодом |86970.... не найден - так что все-таки в базе проверяется ШК товара или код товара?
3. поэтому смотри внимательно код.
ШК, возвращаемый сканером не зависит от кода программы 1С.
если у тебя сканер возвращал бы что-то типа "|86970.... " - то тогда ни одно поле ШК у тебя не заполнялось бы... потому что |86970.... при конвертации в число превратится в 0.
..
Открой форму элемента номенклатуры - на экране д.б. поля для ввода ШК.
обнули ручками такое поле и поставь в него курсор
Отсканируй ШК - этот ШК должен появится в поле.
Напиши сюда ШК с бирки товара и ШК который получился в поле.
если кривыми ручонками не лазили - тогда будет понятно все.. иначе ищи криворукого... ;-)
2. ...ШК и 1С выдает: товар с кодом |86970.... не найден - так что все-таки в базе проверяется ШК товара или код товара?
3. поэтому смотри внимательно код.
ШК, возвращаемый сканером не зависит от кода программы 1С.
если у тебя сканер возвращал бы что-то типа "|86970.... " - то тогда ни одно поле ШК у тебя не заполнялось бы... потому что |86970.... при конвертации в число превратится в 0.
..
Открой форму элемента номенклатуры - на экране д.б. поля для ввода ШК.
обнули ручками такое поле и поставь в него курсор
Отсканируй ШК - этот ШК должен появится в поле.
Напиши сюда ШК с бирки товара и ШК который получился в поле.
если кривыми ручонками не лазили - тогда будет понятно все.. иначе ищи криворукого... ;-)
Мдя... Посмотрел... Смысл тут вот в чем: сканер однозначно надо программировать. Если это что-то близкое у Метролоджику, то надо установить настройки по умолчанию, а потом разрешить дополнительно те штрихкоды, которые предполагается использовать. В торговле придется увеличить размер поля до 20-и символов. Также реквизиты единиц на форме справочника Номенклатуры. И там, если где идет обрезание до 13 символов (ищи глоб. поиском что-то вроде ",13" ) - тоже надо исправлять. С атоловским драйвером без подготовки лучше не возиться. Ничего сложного там нет, но хватает обычного 1С-ского. А атоловский может сходу и не пойти в "Торговле"
Кстати, речь не идет о продажи книг? Настраивал под "Книгомир" как-то сканер, который руководство в главном офисе вообще покупать запретило, как несовместимый с их программой. Они все на чиперах работают, а у нас менеджер по моему совету купила нормальный. Дык ее наказали. Она мне звонит, грит, выручай. В программу лезть нельзя. Пришлось колдовать с настроечными кодами. Помню, даж звонил в офис Метролоджика. Настроили. Приятно, что только у нас на одной кассе в "Книгомире" работает модель сканера, который ихние крутые программеры забраковали.
Che Burashka писал:
>Напиши сюда ШК с бирки товара и ШК который получился в поле.
Если установить курсор в поле ШК в элементе Номенклатура (тип ШК "строка" 20 символов), то вставляется правильный код.
Если открывать Номенклатуру в форме списка или для подбора то в первый раз (после запуска 1С) считывается правильный код, а все последующие появляется: товар с ШК |86086... не найден, я уж думал при импорте из Эксель просто добавить этот символ ко всем ШК и стало бы работать, только это какой то жирный вертикальный слэш, который появляется к примеру если в модуле слово копировать и не переключить раскладку клавы на нужный язык, то при вставке в окно поиска отобразится ряд таких слэшей. Сам этот символ при вставке рвет строку с кодом, в Эксель его тоже не вставить. Вот так выглядит ОбработкаВнешнего События() в модуле Номенклатура форма списка:
Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные)
// Процедура разбирает штрих-код, считанный сканером
// и заполняет строки накладной
Перем Упаковка,ТекКоличество;
Если РаботаСоСканеромШтрихКода<>2 Тогда
Возврат;
КонецЕсли;
ТекКоличество=0;
Упаковка=0;
Если Событие="BarCodeValue" Тогда
СканерШтрихКода.ПосылкаДанных = 1;
Если Форма.ТолькоПросмотр() = 1 Тогда
// форма открыта только для просмотра
Возврат;
КонецЕсли;
// Определение типа штрих-кода
Если ШтрихКодИмеетПрефикс=1 Тогда
Если Найти("MPJS",Лев(Данные,1))<>0 Тогда
// Штрих-код определяет товар
Данные=Сред(Данные,2,СтрДлина(Данные)-1);
Иначе
Сообщить("Формат считанного штрих-кода не предназначен для товаров");
КонецЕсли;
КонецЕсли;
Тов=СоздатьОбъект("Справочник.Номенклатура");
СпрШК=СоздатьОбъект("Справочник.СправШК");
Если СпрШК.НайтиПоРеквизиту("ШтрихКод",Данные,1)=0 Тогда
Сообщить("Товар со штрих кодом "+Данные+" не найден");
Возврат;
КонецЕсли;
АктивизироватьОбъект(СпрШК.Владелец);
КонецЕсли;
КонецПроцедуры
Сканер Метролоджик, драйвер АТОЛ никак не повлиял на эту проблему, префиксы и суфиксы для этого сканера не установлены-пустые строки. Торговать будут одеждой, как выяснилось большинство кодов будут 13 значные, лишь один поставщик дает товар с 20значными кодами.
...Много я нагородил, но мнения разные, одни говорят что сканер, другие что проблема в 1С
>Напиши сюда ШК с бирки товара и ШК который получился в поле.
Если установить курсор в поле ШК в элементе Номенклатура (тип ШК "строка" 20 символов), то вставляется правильный код.
Если открывать Номенклатуру в форме списка или для подбора то в первый раз (после запуска 1С) считывается правильный код, а все последующие появляется: товар с ШК |86086... не найден, я уж думал при импорте из Эксель просто добавить этот символ ко всем ШК и стало бы работать, только это какой то жирный вертикальный слэш, который появляется к примеру если в модуле слово копировать и не переключить раскладку клавы на нужный язык, то при вставке в окно поиска отобразится ряд таких слэшей. Сам этот символ при вставке рвет строку с кодом, в Эксель его тоже не вставить. Вот так выглядит ОбработкаВнешнего События() в модуле Номенклатура форма списка:
Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные)
// Процедура разбирает штрих-код, считанный сканером
// и заполняет строки накладной
Перем Упаковка,ТекКоличество;
Если РаботаСоСканеромШтрихКода<>2 Тогда
Возврат;
КонецЕсли;
ТекКоличество=0;
Упаковка=0;
Если Событие="BarCodeValue" Тогда
СканерШтрихКода.ПосылкаДанных = 1;
Если Форма.ТолькоПросмотр() = 1 Тогда
// форма открыта только для просмотра
Возврат;
КонецЕсли;
// Определение типа штрих-кода
Если ШтрихКодИмеетПрефикс=1 Тогда
Если Найти("MPJS",Лев(Данные,1))<>0 Тогда
// Штрих-код определяет товар
Данные=Сред(Данные,2,СтрДлина(Данные)-1);
Иначе
Сообщить("Формат считанного штрих-кода не предназначен для товаров");
КонецЕсли;
КонецЕсли;
Тов=СоздатьОбъект("Справочник.Номенклатура");
СпрШК=СоздатьОбъект("Справочник.СправШК");
Если СпрШК.НайтиПоРеквизиту("ШтрихКод",Данные,1)=0 Тогда
Сообщить("Товар со штрих кодом "+Данные+" не найден");
Возврат;
КонецЕсли;
АктивизироватьОбъект(СпрШК.Владелец);
КонецЕсли;
КонецПроцедуры
Сканер Метролоджик, драйвер АТОЛ никак не повлиял на эту проблему, префиксы и суфиксы для этого сканера не установлены-пустые строки. Торговать будут одеждой, как выяснилось большинство кодов будут 13 значные, лишь один поставщик дает товар с 20значными кодами.
...Много я нагородил, но мнения разные, одни говорят что сканер, другие что проблема в 1С
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот