|
Штрихкод складской ячейки в КА 2.4 | ☑ | ||
---|---|---|---|---|
0
user997283
15.06.18
✎
15:39
|
Доброго дня.
За правильный и полезный ответ готовы предложить финансовое вознаграждение. Внедряем в фирме конфигурацию 1С:Комплексная автоматизация 2, стоит последний релиз 2.4.3.170, база типовая. Используем адресный склад и ордерную схему. Столкнулись со следующей проблемой. У нас есть складская ячейка. (см. вложение «Складская ячейка») Мы распечатали ее штрихкод встроенной типовой обработкой «Печать этикеток», которая открывается непосредственно с формы ячейки по кнопке «печать». (см вложение «Штрихкод ячейки»). В процессе работы в обработке "Рабочее место работника склада" система просит отсканировать штрихкод ячейки. И она ожидает увидеть номер Л02-03-Я1-1. (См.вложение «Сканирование ШК ячейки») Если с клавиатуры ввести строку «Л02-03-Я1-1», программа ее принимает, находит ячейку и предлагает перейти к следующему шагу (сканировать товар), то есть все ок. А распечатанный штрихкод содержит нечто совсем иное, а именно строку "9507420177192455137943445267655225560". Судя по коду программы, при распечатке в штрихкод кодируется ссылка на объект ячейки, а вовсе не код элемента справочника. В форме обработки ПечатьЭтикетокИЦенников: &НаСервереБезКонтекста Функция ЧисловойКодПоСсылке(Ячейка) Возврат ШтрихкодированиеПечатныхФорм.ЧисловойКодПоСсылке(Ячейка); КонецФункции В общем модуле ШтрихкодированиеПечатныхФорм: Функция ЧисловойКодПоСсылке(Ссылка) Экспорт ШестнадчатиричноеЧисло = СтрЗаменить(Строка(Ссылка.УникальныйИдентификатор()),"-",""); Возврат ПреобразоватьИзШестнадцатиричнойСистемыСчисленияВДесятичноеЧисло(ШестнадчатиричноеЧисло); КонецФункции При сканировании этого штрихкода (как и при вводе с клавиатуры любого заведомо неверного набора символов) обработка пишет "ошибка", см вложение ("считан неверный штрихкод"). Штрихкоды ячеек уже распечатаны и расклеены на складе, переделывать обработку печати (чтобы в штрихкод писала код, а не ссылку) и переклеивать этикетки желания ни у кого нет. Нужно переписать обработку "Рабочее место работника склада", чтобы она считываемый штрихкод (длинный набор цифр) научилась связывать с ячейкой. Этот набор цифр надо где-то хранить, то есть, видимо, придется создать новый реквизит в спр. "Складские ячейки". Если кто сталкивался с подобной проблемой, можете ли указать что именно и в каком месте (в какой функции/строке кода) нужно изменить в этой обработке? Картинки кликабельны [url=http://pixs.ru/showimage/Skladskaya_5498884_30387190.png][img]http://i6.pixs.ru/thumbs/1/9/0/Skladskaya_5498884_30387190.jpg[/img][/url] [url=http://pixs.ru/showimage/SHtrihkody_8846794_30387193.jpg][img]http://i6.pixs.ru/thumbs/1/9/3/SHtrihkody_8846794_30387193.jpg[/img][/url] [url=http://pixs.ru/showimage/Skanirovan_7342692_30387195.png][img]http://i6.pixs.ru/thumbs/1/9/5/Skanirovan_7342692_30387195.jpg[/img][/url] [url=http://pixs.ru/showimage/schitannev_3586975_30387197.png][img]http://i6.pixs.ru/thumbs/1/9/7/schitannev_3586975_30387197.jpg[/img][/url] |
|||
1
user997283
15.06.18
✎
15:42
|
Еще раз вложения:
[URL=http://vfl.ru/fotos/2223379c22124615.html][IMG]http://images.vfl.ru/ii/1529066493/2223379c/22124615_m.png[/IMG][/URL] [URL=http://vfl.ru/fotos/3d33485022124616.html][IMG]http://images.vfl.ru/ii/1529066494/3d334850/22124616_m.png[/IMG][/URL] [URL=http://vfl.ru/fotos/e7beba3e22124617.html][IMG]http://images.vfl.ru/ii/1529066494/e7beba3e/22124617_m.png[/IMG][/URL] [URL=http://vfl.ru/fotos/a847e3ce22124618.html][IMG]http://images.vfl.ru/ii/1529066495/a847e3ce/22124618_m.jpg[/IMG][/URL] |
|||
2
user997283
15.06.18
✎
15:42
|
||||
3
Cyberhawk
15.06.18
✎
15:46
|
"указать что именно и в каком месте (в какой функции/строке кода) нужно изменить в этой обработке?" // Смех да и только
|
|||
4
anatoly
15.06.18
✎
15:47
|
(0) "Нужно переписать обработку "Рабочее место работника склада", чтобы она считываемый штрихкод (длинный набор цифр) научилась связывать с ячейкой. Этот набор цифр надо где-то хранить, то есть, видимо, придется создать новый реквизит в спр. "Складские ячейки"."
необязательно. работы на пару часов - неужели своих прогов нет? но совсем непонятно, зачем вы распечатали этикетки ячеек на ВЕСЬ склад, до того как проверили как они сканируются??.. |
|||
5
user997283
15.06.18
✎
16:02
|
работы на пару часов - а можно уточнить, что именно вы предполагаете делать?
"зачем вы распечатали этикетки ячеек на ВЕСЬ склад, до того как проверили как они сканируются?" - то, что они в принципе сканируются, то есть штрихкод распечатан нормально, проверили. Не ожидали того, что программа распечатает не то, что сама потом попросит считать. |
|||
6
Genayo
15.06.18
✎
16:16
|
(0) А вы уверены, что у вас сканер считывает именно то, что напечатано на этикетке? В УТ вообще-то есть функция, которая по этому представлению ссылки ищет элемент.
|
|||
7
user997283
15.06.18
✎
16:38
|
"А вы уверены, что у вас сканер считывает именно то, что напечатано на этикетке?" - да, совершенно точно
"В УТ вообще-то есть функция, которая по этому представлению ссылки ищет элемент." - а не затруднит ли скинуть сюда эту функцию, если вдруг есть под рукой? Все равно остается вопрос где именно в рабочем месте склада надо переписать алгоритм, чтобы он не по коду искал, а искал по гуиду. |
|||
8
Злопчинский
15.06.18
✎
16:49
|
впендюрь в код элемента его гуид.
|
|||
9
user997283
15.06.18
✎
17:06
|
"впендюрь в код элемента его гуид" - первое, что пришло в голову. И сразу всплыли нюансы:
У кода ограничение длины 19 символов, количество цифр в строке-штрихкоде колеблется 37-38 символов. Значит в коде в конце у некоторых будет пробел. Его надо программно добавлять к считываемому шк - где-то в коде обработки в момент считывания шк - вопрос где это самое место? У справочника задано "основное представление в виде кода", из-за этого вов всех документах вместо читаемого адреса ячейки начинает выводиться эта длинная строка цифр. В том числе в самом рабочем месте склада, то есть кладовщик будет видеть "просканируйте ячейку 9456431234576746...". Нужно тогда править это место, чтобы оно выводило "наименование", а не "код" - и опять вопрос - где это место в коде? |
|||
10
lodger
15.06.18
✎
18:21
|
откройте форму которую показали в 1 скрине (2)
и посмотрите получает ли он обработку оповещения и что в ней приходит (9456431234576746 или еще какой отлуп)? |
|||
11
user997283
15.06.18
✎
18:52
|
В обработку оповещения не заходит вообще
|
|||
12
yzimin
15.06.18
✎
20:55
|
Вариант 1.
Самое простое решение без доработок будет сгенерировать где-то в стороннем софте (или он-лайн генераторе ШК) нужные ШК. Вы же всё равно один раз их сгенерировали, сохранили в архив на случай повреждений и забыли. Вариант 2. Возможно такое поведение системы связано в тем, что ШК не умеет генерироваться по русским символам Замените Л02-03-Я1 на Z02-03-1 |
|||
13
yzimin
15.06.18
✎
21:07
|
Вариант 3.
Встроить код в обработку &НаКлиенте Функция СсылкаНаЭлементСпискаПоШтрихкоду(Штрихкод) Менеджеры = Новый Массив(); Менеджеры.Добавить(ПредопределенноеЗначение("Справочник.СкладскиеЯчейки.ПустаяСсылка")); Возврат ШтрихкодированиеПечатныхФормКлиент.ПолучитьСсылкуПоШтрихкодуТабличногоДокумента(Штрихкод, Менеджеры); КонецФункции |
|||
14
user997283
11.07.18
✎
18:11
|
Всем большое спасибо за ответы!
Из ситуации в итоге вышли следующим образом (без переклейки шк на складе). В общем модуле РабочееМестоРаботникаСкладаСервер в процедуре ПриСканированииЯчейки изменили: Для Каждого СтрокаТоваров Из ТоварыДляСканирования Цикл //Если ВРег(СтрокаТоваров.КодЯчейки) = ВРег(ШтрихкодЯчейки) Тогда //это закомментировали Если ВРег(СтрокаТоваров.ШтрихкодЯчейки) = ВРег(ШтрихкодЯчейки) Тогда //а это добавили Ячейка = СтрокаТоваров.Ячейка; Прервать; КонецЕсли; КонецЦикла; А в обработке РабочееМестоРаботникаСклада на всех формах у реквизита формы ШтрихкодПараметраСканирования изменили длину на 45 символов. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |