Добрый вечер!
Помогите с розницей 2.3!
В РМК при сканировании штрихкода маркированного товара, выходит дополнительное окно сканирования Кода маркировки.
Но если у товара нет штрихкода и подобрать товар через поиск - выходит совсем другое окно где нет возможности отсканировать КМ !
Как вызвать именно то окно сканирования КМ чтоб сразу отсканировать ?
Помогите с розницей 2.3!
В РМК при сканировании штрихкода маркированного товара, выходит дополнительное окно сканирования Кода маркировки.
Но если у товара нет штрихкода и подобрать товар через поиск - выходит совсем другое окно где нет возможности отсканировать КМ !
Как вызвать именно то окно сканирования КМ чтоб сразу отсканировать ?
Прикрепленные файлы:
По теме из базы знаний
- Маркировка лекарств - как передать код маркировки при продаже через ККТ Штрих-М
- Динамическая генерация кодов маркировки в отчете СКД с помощью БСП. УТ 11.4
- Продажа одного и того же кода маркировки (DataMatrix) несколько раз или исправление некоторых ошибок при продаже DM
- Инвентаризация кодов маркировки системы "Честный знак", запрос, сравнение с остатками 1С, списание, ОСУ
- Лист с кодами маркировки, Лист ценников с маркировкой для Альфа-Авто 6.1
Найденные решения
(1) открытие формы уточнения марки в первом случае и формы проверки марок во втором случае - имеет свою логику, чтобы ее обойти придется немного доработать конфу.
Чтобы изменения были минимальны и терпимы к последующим обновлениям, предлагаю поступить следующим образом.
Выбор товара в подборе - передается через ОбработкаВыбора(), а сканирование - через ВнешнееСобытие() и затем ОбработатьКодМаркировки(), поэтому мы в ОбработкаВыбора() перехватываем управление и вызываем ОбработатьКодМаркировки() - как будто просканировали штрихкод - передаем туда штрихкод выбранной номенклатуры (генерируем если нужно).
Добавляем форму РМК в расширение, у события ОбработкаВыбора добавляем обработчик "перед":
(добавьте ХарактеристикиНоменклатуры если их используете)
Чтобы изменения были минимальны и терпимы к последующим обновлениям, предлагаю поступить следующим образом.
Выбор товара в подборе - передается через ОбработкаВыбора(), а сканирование - через ВнешнееСобытие() и затем ОбработатьКодМаркировки(), поэтому мы в ОбработкаВыбора() перехватываем управление и вызываем ОбработатьКодМаркировки() - как будто просканировали штрихкод - передаем туда штрихкод выбранной номенклатуры (генерируем если нужно).
Добавляем форму РМК в расширение, у события ОбработкаВыбора добавляем обработчик "перед":
&НаКлиенте
Процедура Расш39_ОбработкаВыбораПеред(ВыбранноеЗначение, ИсточникВыбора)
Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда
Если ВыбранноеЗначение.Свойство("ИмяДействия") Тогда
Если ВыбранноеЗначение.ИмяДействия = НСтр("ru = 'Подбор номенклатуры'") Тогда
ДанныеСоСканераСтруктура = Новый Структура("Количество,Штрихкод", 1);
ДанныеСоСканераСтруктура.Штрихкод = Расш39_ПолучитьШК(ВыбранноеЗначение.Номенклатура);
ВыбранноеЗначение = Неопределено;
ОбработатьКодМаркировки(ДанныеСоСканераСтруктура);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Функция Расш39_ПолучитьШК(Номенклатура)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| Штрихкоды.Штрихкод КАК Штрихкод
|ИЗ
| РегистрСведений.Штрихкоды КАК Штрихкоды
|ГДЕ
| Штрихкоды.ТипШтрихкода = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ТипыШтрихкодов.EAN13)
| И Штрихкоды.Владелец = &Номенклатура";
Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Возврат Выборка.Штрихкод;
КонецЕсли;
НовыйШК = ПодключаемоеОборудованиеРТ.СформироватьШтрихкод();
РегШК = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
РегШК.Штрихкод = НовыйШК;
РегШК.Владелец = Номенклатура;
РегШК.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
РегШК.Записать();
Возврат НовыйШК;
КонецФункции
Показать(добавьте ХарактеристикиНоменклатуры если их используете)
Прикрепленные файлы:
Расширение39.cfe
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
не понимаю проблемы, (1), у тебя выскакивает второе окно.... которое везде(опт) используется для сканирования КМ.
вопрос к настройкам сканирования и сканеру.
так же можно сразу сканировать код маркировки - в нём уже содержится простой полосатый ШК.
если же идёт ошибка - можно попробовать обновить 1С, либо, как писал выше - настроить сканирование КМ. (например - отключить проверку алфавита, наличия символов GS и т.д.) - но с каждым таким КМ нужно разбираться отдельно (или производитель\типография косячат, либо сканер настроен некорректно)
вопрос к настройкам сканирования и сканеру.
так же можно сразу сканировать код маркировки - в нём уже содержится простой полосатый ШК.
если же идёт ошибка - можно попробовать обновить 1С, либо, как писал выше - настроить сканирование КМ. (например - отключить проверку алфавита, наличия символов GS и т.д.) - но с каждым таким КМ нужно разбираться отдельно (или производитель\типография косячат, либо сканер настроен некорректно)
(6)
Да, именно так. Есть товары без Gtin кода на упаковке, (Или он не читаем) приходится выбирать номенклатуру через "Подбор\Поиск" и после выбора открывается не форма сканирования а выбора КМ из списка ранее внесенных (Но мы не вносим при поступлении).
(5)
А вот про это я не знал... намного всё упрощает! Но если у товара не забит обычный Gtin код, то при сканировании DataMatrix он не находит нужную номенклатуру
Я так понял у него товар без EAN кода физически, а только с маркировкой. вот у него и проблема.
Да, именно так. Есть товары без Gtin кода на упаковке, (Или он не читаем) приходится выбирать номенклатуру через "Подбор\Поиск" и после выбора открывается не форма сканирования а выбора КМ из списка ранее внесенных (Но мы не вносим при поступлении).
(5)
так же можно сразу сканировать код маркировки
А вот про это я не знал... намного всё упрощает! Но если у товара не забит обычный Gtin код, то при сканировании DataMatrix он не находит нужную номенклатуру
(8)
GTIN (без нуля) записывается в регистрСведений.Штрихкоды
КМ записывается после приёмки в Справочники.ШтрихкодыУпаковокИТоваров
т.е. наличий GTIN, как и EAN13 - ничего не даёт (если сами КМ были приняты через 1С)
\А вот про это я не знал... намного всё упрощает! Но если у товара не забит обычный Gtin код, то при сканировании DataMatrix он не находит нужную номенклатуру
GTIN (без нуля) записывается в регистрСведений.Штрихкоды
КМ записывается после приёмки в Справочники.ШтрихкодыУпаковокИТоваров
т.е. наличий GTIN, как и EAN13 - ничего не даёт (если сами КМ были приняты через 1С)
(16) Вопрос в том что при добавлении товара в РМК через скан. EAN - выходит окно сканирования (Отсканировал КМ и продал), но добавлении того же товара через подбор - выходит другое окно... Где нужно выбрать ранее внесенные КМ при поступлении, но мы не вносим КМ в базу, и выбирать нечего получается... И в том окне не отсканировать КМ
(28) То есть вы предлагаете каждый код маркировки заносить в программу при поступлении ?) Зачем? когда можно сканировать при продаже и отправлять через кассу...
Не выход потому что небольшой магазин, с одной кассой, и чисто физически кассир не будет успевать сканировать весь товар.
При расфасовки ШК утилизируется вместе с упаковкой, а возможности самим наносить на товары у нас нет.
Обязанность есть, а шк нет ) по крайне мере не у всех.
Не выход потому что небольшой магазин, с одной кассой, и чисто физически кассир не будет успевать сканировать весь товар.
При расфасовки ШК утилизируется вместе с упаковкой, а возможности самим наносить на товары у нас нет.
Обязанность есть, а шк нет ) по крайне мере не у всех.
Прикрепленные файлы:
(29)весовой товар списывается один раз весь также как и разливное бухло, разница во времени. Не помню точно но бутылка списывается в момент открытия, а сыр разрешили в течении какого то времени после "вскрытия", но после списания возврат невозможен.
Я так понимаю вы дербаните розничную упаковку.
А по поводу "потому что небольшой магазин, с одной кассой, и чисто физически кассир не будет успевать сканировать весь товар" - нас таких много и Проблемы индейцев шерифа не волнуют
Я так понимаю вы дербаните розничную упаковку.
А по поводу "потому что небольшой магазин, с одной кассой, и чисто физически кассир не будет успевать сканировать весь товар" - нас таких много и Проблемы индейцев шерифа не волнуют
В рознице всегда было так, что если подобрали маркируемую продукцию, через подбор, то открывается форма проверки и подбора маркируемой продукции. Где вы берете сканер и скинируете код маркировки и он подбирается. И Все.
Обычно я всегда делал так на кассе сканируем код маркировки и потом подбираем нашу продукцию из базы. И ни каких проблем нет
Разные формы появляются? 1С так определила алгоритмы при сканировании. К примеру если сканироовать КМ ввода остатков, то тоам совсем другие окна (таких на скрине нет)
Обычно я всегда делал так на кассе сканируем код маркировки и потом подбираем нашу продукцию из базы. И ни каких проблем нет
Разные формы появляются? 1С так определила алгоритмы при сканировании. К примеру если сканироовать КМ ввода остатков, то тоам совсем другие окна (таких на скрине нет)
(1) открытие формы уточнения марки в первом случае и формы проверки марок во втором случае - имеет свою логику, чтобы ее обойти придется немного доработать конфу.
Чтобы изменения были минимальны и терпимы к последующим обновлениям, предлагаю поступить следующим образом.
Выбор товара в подборе - передается через ОбработкаВыбора(), а сканирование - через ВнешнееСобытие() и затем ОбработатьКодМаркировки(), поэтому мы в ОбработкаВыбора() перехватываем управление и вызываем ОбработатьКодМаркировки() - как будто просканировали штрихкод - передаем туда штрихкод выбранной номенклатуры (генерируем если нужно).
Добавляем форму РМК в расширение, у события ОбработкаВыбора добавляем обработчик "перед":
(добавьте ХарактеристикиНоменклатуры если их используете)
Чтобы изменения были минимальны и терпимы к последующим обновлениям, предлагаю поступить следующим образом.
Выбор товара в подборе - передается через ОбработкаВыбора(), а сканирование - через ВнешнееСобытие() и затем ОбработатьКодМаркировки(), поэтому мы в ОбработкаВыбора() перехватываем управление и вызываем ОбработатьКодМаркировки() - как будто просканировали штрихкод - передаем туда штрихкод выбранной номенклатуры (генерируем если нужно).
Добавляем форму РМК в расширение, у события ОбработкаВыбора добавляем обработчик "перед":
&НаКлиенте
Процедура Расш39_ОбработкаВыбораПеред(ВыбранноеЗначение, ИсточникВыбора)
Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда
Если ВыбранноеЗначение.Свойство("ИмяДействия") Тогда
Если ВыбранноеЗначение.ИмяДействия = НСтр("ru = 'Подбор номенклатуры'") Тогда
ДанныеСоСканераСтруктура = Новый Структура("Количество,Штрихкод", 1);
ДанныеСоСканераСтруктура.Штрихкод = Расш39_ПолучитьШК(ВыбранноеЗначение.Номенклатура);
ВыбранноеЗначение = Неопределено;
ОбработатьКодМаркировки(ДанныеСоСканераСтруктура);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Функция Расш39_ПолучитьШК(Номенклатура)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| Штрихкоды.Штрихкод КАК Штрихкод
|ИЗ
| РегистрСведений.Штрихкоды КАК Штрихкоды
|ГДЕ
| Штрихкоды.ТипШтрихкода = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ТипыШтрихкодов.EAN13)
| И Штрихкоды.Владелец = &Номенклатура";
Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Возврат Выборка.Штрихкод;
КонецЕсли;
НовыйШК = ПодключаемоеОборудованиеРТ.СформироватьШтрихкод();
РегШК = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
РегШК.Штрихкод = НовыйШК;
РегШК.Владелец = Номенклатура;
РегШК.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
РегШК.Записать();
Возврат НовыйШК;
КонецФункции
Показать(добавьте ХарактеристикиНоменклатуры если их используете)
Прикрепленные файлы:
Расширение39.cfe
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот