Добрый вечер!
Помогите с розницей 2.3!

В РМК при сканировании штрихкода маркированного товара, выходит дополнительное окно сканирования Кода маркировки.
Но если у товара нет штрихкода и подобрать товар через поиск - выходит совсем другое окно где нет возможности отсканировать КМ !

Как вызвать именно то окно сканирования КМ чтоб сразу отсканировать ?
---
открытие формы уточнения марки в первом случае и формы проверки марок во втором случае - имеет свою логику, чтобы ее обойти придется немного доработать конфу.
Чтобы изменения были минимальны и терпимы к последующим обновлениям, предлагаю поступить следующим образом.
Выбор товара в подборе - передается через ОбработкаВыбора(), а сканирование - через ВнешнееСобытие() и затем ОбработатьКодМаркировки(), поэтому мы в ОбработкаВыбора() перехватываем управление и вызываем ОбработатьКодМаркировки() - как будто просканировали штрихкод - передаем туда штрихкод выбранной номенклатуры (генерируем если нужно).

Добавляем форму РМК в расширение, у события ОбработкаВыбора добавляем обработчик "перед":

```1c
    &НаКлиенте
    Процедура Расш39_ОбработкаВыбораПеред(ВыбранноеЗначение, ИсточникВыбора)
    Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда
    Если ВыбранноеЗначение.Свойство("ИмяДействия") Тогда
    Если ВыбранноеЗначение.ИмяДействия = НСтр("ru = 'Подбор номенклатуры'") Тогда
    ДанныеСоСканераСтруктура = Новый Структура("Количество,Штрихкод", 1);
    ДанныеСоСканераСтруктура.Штрихкод = Расш39_ПолучитьШК(ВыбранноеЗначение.Номенклатура);
    ВыбранноеЗначение = Неопределено;
    ОбработатьКодМаркировки(ДанныеСоСканераСтруктура);
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры

    &НаСервереБезКонтекста
    Функция Расш39_ПолучитьШК(Номенклатура)
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ ПЕРВЫЕ 1
    | Штрихкоды.Штрихкод КАК Штрихкод
    |ИЗ
    | РегистрСведений.Штрихкоды КАК Штрихкоды
    |ГДЕ
    | Штрихкоды.ТипШтрихкода = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ТипыШтрихкодов.EAN13)
    | И Штрихкоды.Владелец = &Номенклатура";
    Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() Тогда
    Возврат Выборка.Штрихкод;
    КонецЕсли;

    НовыйШК = ПодключаемоеОборудованиеРТ.СформироватьШтрихкод();
    РегШК = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
    РегШК.Штрихкод = НовыйШК;
    РегШК.Владелец = Номенклатура;
    РегШК.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
    РегШК.Записать();
    Возврат НовыйШК;
    КонецФункции
```

(добавьте ХарактеристикиНоменклатуры если их используете)
---
как вы выводили значок/картинку маркированного товара на рмк?
---
в КМ зашит штрихкод. - сканируйте КМ
---
Сканирую КМ пишет - не правильный штрих код, и та же табличка
---
в настройках РМК есть кнопка " Марки" Попробуйте её добавить, возможно поможет, алкоголь на одном из релизов через эту кнопку сканировали
---
Нет, это не то, выходит то же окно что и на скриншоте 2.
---
не понимаю проблемы, (1), у тебя выскакивает второе окно.... которое везде(опт) используется для сканирования КМ.
вопрос к настройкам сканирования и сканеру.

так же можно сразу сканировать код маркировки - в нём уже содержится простой полосатый ШК.
если же идёт ошибка - можно попробовать обновить 1С, либо, как писал выше - настроить сканирование КМ. (например - отключить проверку алфавита, наличия символов GS и т.д.) - но с каждым таким КМ нужно разбираться отдельно (или производитель\типография косячат, либо сканер настроен некорректно)
---
Я так понял у него товар без EAN кода физически, а только с маркировкой. вот у него и проблема.
(5)
---
Я так понял у него товар без EAN кода физически, а только с маркировкой. вот у него и проблема.

Да, именно так. Есть товары без Gtin кода на упаковке, (Или он не читаем) приходится выбирать номенклатуру через "Подбор\Поиск" и после выбора открывается не форма сканирования а выбора КМ из списка ранее внесенных (Но мы не вносим при поступлении).

(5) так же можно сразу сканировать код маркировки
А вот про это я не знал... намного всё упрощает! Но если у товара не забит обычный Gtin код, то при сканировании DataMatrix он не находит нужную номенклатуру
---
\А вот про это я не знал... намного всё упрощает! Но если у товара не забит обычный Gtin код, то при сканировании DataMatrix он не находит нужную номенклатуру

GTIN (без нуля) записывается в регистрСведений.Штрихкоды
КМ записывается после приёмки в Справочники.ШтрихкодыУпаковокИТоваров

т.е. наличий GTIN, как и EAN13 - ничего не даёт (если сами КМ были приняты через 1С)
---
КМ вообще не заносится в базу. В базе указываем что товар маркированный и при пробитии (В РМК) выходит доп. окно сканирования км, где после сканирования отправляется данные через кассу онлайн
---
Извлеките GTIN из КМ например просканировав его в блокноте и добавьте GTIN в карточку номенклатуры.
---
Ну это самый крайний вариант...

Может есть способ вызывать то окно сканирования КМ, которое вызывается при сканировании EAN ?
---
Стандартными средствами - нет
---
у меня проблема решилась после того как указал особенность учета в карточке товара.
---
Особенность учета указана - маркированный продукт, тянется с Вида номенклатуры, там всё настроено правильно
---
А ШК все-таки указал в карточке?
---
Да, после ручного добавления ШК в номенклатуру - отсканировал код КМ и он отобразился в РМК, но вопрос был в другом
---
вопрос именно в том чтоб появилось окно сканирования КМ при нажатии какой то кнопки или в том чтоб продавать комфортно?
---
Вопрос в том что при добавлении товара в РМК через скан. EAN - выходит окно сканирования (Отсканировал КМ и продал), но добавлении того же товара через подбор - выходит другое окно... Где нужно выбрать ранее внесенные КМ при поступлении, но мы не вносим КМ в базу, и выбирать нечего получается... И в том окне не отсканировать КМ
---
Попробуйте в Администрирование - Настройка номенклатуры - Штрихкодирование поковыряться.
При нормальных настройках товар должен подбираться по марке при первом сканировании (если у вас не РИБ).
---
Товар подбирается если задан EAN штрихкод в программе, если его нет номенклатуру не находит и вываливается ошибка.
---
GTIN то указываете?
---
Да, если есть, а если его нет на упаковке ?
Сканировать КМ , искать штрихкод и вносить в базу это не выход
---
Как GTIN может не быть на упаковке? Там же есть марка, в марке есть GTIN.
---
Не знаю как, но есть немало товаров где не указан GTIN, например на сырах, на расфасованных товарах и тд, с одной этикеткой- дата выпуска и КМ
---
Ну так сами говорите что КМ есть, в ней и GTIN. Сохранять КМ при делении товара на всех частях ваша проблема.
---
Товар так поступает, я ничего не сохраняю. По мио этого есть товары без Gtin.
(21) Сканировать КМ , искать штрихкод и вносить в базу это не выход
---
Вообще GTIN и КМ вы должны внести в базу в момент поступления товара.
У вас чисто организационная проблема, устранить её средствами 1с невозможно.
---
А зачем вносить GTIN в базу к примеру? Интересно. Спокойно без этого можно обычной рознице работать.
---
GTIN это штрихкод чтоль?
---
то есть не выход? у всех выход а у вас нет?
на весовом товаре штрихкода единицы веса нет есть Шк упаковки зачастую шк внутренний - производителя Ща будет на башках сыров ШК если обязанность есть.
---
То есть вы предлагаете каждый код маркировки заносить в программу при поступлении ?) Зачем? когда можно сканировать при продаже и отправлять через кассу...

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

При расфасовки ШК утилизируется вместе с упаковкой, а возможности самим наносить на товары у нас нет.

Обязанность есть, а шк нет ) по крайне мере не у всех.
---
Ладно, если в типовой это не настраивается, подправлю в расширении, спасибо всем!
---
весовой товар списывается один раз весь также как и разливное бухло, разница во времени. Не помню точно но бутылка списывается в момент открытия, а сыр разрешили в течении какого то времени после "вскрытия", но после списания возврат невозможен.
Я так понимаю вы дербаните розничную упаковку.
А по поводу "потому что небольшой магазин, с одной кассой, и чисто физически кассир не будет успевать сканировать весь товар" - нас таких много и Проблемы индейцев шерифа не волнуют
---
Ну это понятно )
Приходится подстраивается и упрощать работу пользователей

Сыр - это условный пример ...
Имелось ввиду что есть товары без Gtin

И вопрос был немного в другом )
---
Как вы не поймете, товар требующий маркировки и находящийся на точке без КМ является контрафактом, а это срок и штрафы, оно вам надо?
---
я так понял что проблема в том, что при ручном подборе в РМК не появляется окно сканирования КМ. Но это не точно:)
Завтра посмотрю у себя.
---
Именно!) вот что я имел ввиду
---
Ну так конечно, фишка в том, что они заводят обычный товар без марки, а в момент продажи хотят что бы он стал маркируемым, это не так работает.
---
Заводим обычный товар с маркировкой. При добавлении товара через скан EAN - выходит окно сканирования, при добавлении этого же товара через подбор - это окно сканирования не выходит.
Что не понятно ? Ищу конкретный ответ на "Проблему/Задачу".
---
И не выйдет, марка вводится отдельно, щелкать нужно по пиктограмме в строке и вводить марку.
---
ща смотрел у себя. При ручном подборе запрашивает марку.
Обновить может быть?
---
Как на 1 скриншоте?
Какая версия стоит ?
---
на втором, также как и у тебя
---
Вроде свежее обновление (2 мес.), обновлю проверю, если не получится, придется выводить расширение...
---
2.3.10.39
---
Выходит второе окно, сканируется марка и кнопочкой завершить.
---
В рознице всегда было так, что если подобрали маркируемую продукцию, через подбор, то открывается форма проверки и подбора маркируемой продукции. Где вы берете сканер и скинируете код маркировки и он подбирается. И Все.
Обычно я всегда делал так на кассе сканируем код маркировки и потом подбираем нашу продукцию из базы. И ни каких проблем нет
Разные формы появляются? 1С так определила алгоритмы при сканировании. К примеру если сканироовать КМ ввода остатков, то тоам совсем другие окна (таких на скрине нет)
---
открытие формы уточнения марки в первом случае и формы проверки марок во втором случае - имеет свою логику, чтобы ее обойти придется немного доработать конфу.
Чтобы изменения были минимальны и терпимы к последующим обновлениям, предлагаю поступить следующим образом.
Выбор товара в подборе - передается через ОбработкаВыбора(), а сканирование - через ВнешнееСобытие() и затем ОбработатьКодМаркировки(), поэтому мы в ОбработкаВыбора() перехватываем управление и вызываем ОбработатьКодМаркировки() - как будто просканировали штрихкод - передаем туда штрихкод выбранной номенклатуры (генерируем если нужно).

Добавляем форму РМК в расширение, у события ОбработкаВыбора добавляем обработчик "перед":

```1c
    &НаКлиенте
    Процедура Расш39_ОбработкаВыбораПеред(ВыбранноеЗначение, ИсточникВыбора)
    Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда
    Если ВыбранноеЗначение.Свойство("ИмяДействия") Тогда
    Если ВыбранноеЗначение.ИмяДействия = НСтр("ru = 'Подбор номенклатуры'") Тогда
    ДанныеСоСканераСтруктура = Новый Структура("Количество,Штрихкод", 1);
    ДанныеСоСканераСтруктура.Штрихкод = Расш39_ПолучитьШК(ВыбранноеЗначение.Номенклатура);
    ВыбранноеЗначение = Неопределено;
    ОбработатьКодМаркировки(ДанныеСоСканераСтруктура);
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры

    &НаСервереБезКонтекста
    Функция Расш39_ПолучитьШК(Номенклатура)
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ ПЕРВЫЕ 1
    | Штрихкоды.Штрихкод КАК Штрихкод
    |ИЗ
    | РегистрСведений.Штрихкоды КАК Штрихкоды
    |ГДЕ
    | Штрихкоды.ТипШтрихкода = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ТипыШтрихкодов.EAN13)
    | И Штрихкоды.Владелец = &Номенклатура";
    Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() Тогда
    Возврат Выборка.Штрихкод;
    КонецЕсли;

    НовыйШК = ПодключаемоеОборудованиеРТ.СформироватьШтрихкод();
    РегШК = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
    РегШК.Штрихкод = НовыйШК;
    РегШК.Владелец = Номенклатура;
    РегШК.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
    РегШК.Записать();
    Возврат НовыйШК;
    КонецФункции
```

(добавьте ХарактеристикиНоменклатуры если их используете)