[РЕШЕНО] Как настроить работу сканера штрихкодов в типовой "1С:Розница" 2.2.7.29?

Тема в разделе "Торговое оборудование в 1С", создана пользователем nsk1C, 1 мар 2018.

  1. TopicStarter Overlay
    nsk1C
    Offline

    nsk1C Профессионал в 1С

    Регистрация:
    25 май 2016
    Сообщения:
    2.159
    Симпатии:
    195
    Баллы:
    104
    Связанные темы (обновления на 2.2.7.36+)
    [РЕШЕНО] Розница 2.2.7.37 (от 06.02.2018 ) - непонятки по обновлению или свертке
    /threads/roznica-2-2-7-37-ot-06-02-2018-neponjatki-po-obnovleniju-ili-svertke.62594/
    =============
    1C:Розница 2.2.7.29, пиленная не мной

    В общем модуле ПодключаемоеОборудованиеРТВызовСервера в Функция ДанныеПоискаПоШтрихкоду() закомментирован запрос
    // Весовые товары и штучные на весах
    кода типовой конфигурации



    Работаю удаленно по принципу, если не работает, то откатываю на резервную копию до изменений.

    Если восстанавливаю код типовой конфигурации, т.е. убираю комментирование //,
    звонят - "не работает сканер ШК".

    Что и как надо настроить в 1С или сканере ШК, чтобы востановить работу под кодом типовой конфигурации?

    Весового товара, весов, характеристик - нет


    Код:
    // Обработка полученного штрихкода.
    // Штрихкод - Строка
    // Форма - Форма, в которой определен обработчик действия "ПолученыШтрихкоды"
    // СтруктураДействий, ключи: ПроверкаВесовыхТоваров,
    //  ПроверкаТоваров,
    //  ПроверкаСерийныхНомеров,
    //  ПроверкаКарт [РегистрацияНовойКарты, Пользователь].
    //
    Функция ДанныеПоискаПоШтрихкоду(Штрихкод, Форма) Экспорт
    
       Если Форма.ПараметрыСобытийПО = Неопределено Тогда
         СтруктураДействий = Новый Структура;
       Иначе
         СтруктураДействий = Форма.ПараметрыСобытийПО;
       КонецЕсли;
    
       ТипШтрихкода = ОпределитьТипШтрихкода(Штрихкод);
       НеизвестныеДанныеПО = Истина;
    
       Запрос = Новый Запрос;
       ТекстЗапроса = "";
    
       //// Весовые товары и штучные на весах.
       //Если ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13 Тогда
       //
       //   ПрефиксВнутреннегоШтрихкодаВесовогоТовара = ЗначениеНастроекПовтИсп.ПолучитьЗначениеКонстанты("ПрефиксВнутреннегоШтрихкодаВесовогоТовара");
       //   ПрефиксВнутреннегоШтрихкодаШтучногоФасованногоТовара = ЗначениеНастроекПовтИсп.ПолучитьЗначениеКонстанты("ПрефиксВнутреннегоШтрихкодаШтучногоФасованногоТовара");
       //   ДлинаКодаВесовогоТовара = СтрДлина(Формат(ЗначениеНастроекПовтИсп.ПолучитьЗначениеКонстанты("ВерхняяГраницаДиапазонаSKUВесовогоТовара"), "ЧГ = 0"));
       //
       //   ПрефиксКода = Лев(Штрихкод, 2);
       //   ПрефиксВесовой = "2" + ПрефиксВнутреннегоШтрихкодаВесовогоТовара;
       //   ПрефиксШтучный = "2" + ПрефиксВнутреннегоШтрихкодаШтучногоФасованногоТовара;
       //   ЭтоВесовой = ПрефиксКода = ПрефиксВесовой;
       //   ЭтоШтучный = ПрефиксКода = ПрефиксШтучный;
       //
       //   Если ДлинаКодаВесовогоТовара < 5 Тогда
       //     ДлинаКодаВесовогоТовара = 5;
       //   КонецЕсли;
       //
       //   Если ЭтоВесовой ИЛИ ЭтоШтучный Тогда
       //  
       //     КодТовара  = Число(Сред(Штрихкод, 3,  ДлинаКодаВесовогоТовара));
       //     КоличествоТовара = Число(Сред(Штрихкод, 3 + ДлинаКодаВесовогоТовара, 10 - ДлинаКодаВесовогоТовара));
       //     Если ЭтоВесовой Тогда // В количестве указан вес.
       //       КоличествоТовара = КоличествоТовара / 1000;
       //     КонецЕсли;
       //  
       //     ТекстЗапроса = "
       //     |ВЫБРАТЬ
       //     |   0 КАК НомерСтроки,
       //     |   КодыТоваровSKU.Номенклатура КАК Владелец,
       //     |   КодыТоваровSKU.Характеристика КАК Характеристика,
       //     |   КодыТоваровSKU.Упаковка КАК Упаковка,
       //     |   &ТипШтрихкода КАК ТипШтрихкода,
       //     |   &КоличествоТовара КАК Количество
       //     |ИЗ
       //     |   РегистрСведений.КодыТоваровSKU КАК КодыТоваровSKU
       //     |ГДЕ
       //     |   КодыТоваровSKU.SKU = &Код";
       //  
       //     Запрос.УстановитьПараметр("Код", КодТовара);
       //     Запрос.УстановитьПараметр("КоличествоТовара", КоличествоТовара);
       //     Запрос.УстановитьПараметр("ТипШтрихкода", ТипШтрихкода);
       //  
       //   КонецЕсли;
       //
       //КонецЕсли;
    
       Если ПустаяСтрока(ТекстЗапроса) Тогда
         ТекстЗапроса = "ВЫБРАТЬ
         |   0 КАК НомерСтроки,
         |   Штрихкоды.Владелец КАК Владелец,
         |   Штрихкоды.Характеристика КАК Характеристика,
         |   Штрихкоды.Упаковка КАК Упаковка,
         |   Штрихкоды.ТипШтрихкода КАК ТипШтрихкода,
         |   1 КАК Количество
         |ИЗ
         |   РегистрСведений.Штрихкоды КАК Штрихкоды
         |ГДЕ
         |   Штрихкоды.Штрихкод = &Штрихкод";
      
       КонецЕсли;
    
       Запрос.Текст = ТекстЗапроса;
       Запрос.УстановитьПараметр("Штрихкод", Штрихкод);
       РезультатЗапроса = Запрос.Выполнить();
       Выборка = РезультатЗапроса.Выбрать();
    
       НайденоОбъектов = Выборка.Количество();
       СтруктураПараметров = СтруктураДанныхПоиска();
    
       ДополнитьСтруктуруРезультатамиПоиска(СтруктураПараметров, Выборка, Штрихкод, "", НеизвестныеДанныеПО);
    
       Если НайденоОбъектов = 0
         И СтруктураДействий.Свойство("ПоискАкцизнойМарки") Тогда
         НайтиПоАкцизнойМарке(Форма, СтруктураПараметров, Штрихкод, НеизвестныеДанныеПО, НайденоОбъектов);
       КонецЕсли;
    
       Если НайденоОбъектов = 0 Тогда
         ДополнитьСтруктуруДляРегистрацииНовогоОбъекта(
           СтруктураПараметров,
           Штрихкод,
           СтруктураДействий,
           НеизвестныеДанныеПО,
           ТипШтрихкода,
           Истина);
      
       КонецЕсли;
    
       СтруктураПараметров.НеизвестныеДанныеПО = НеизвестныеДанныеПО;
       СтруктураПараметров.ДанныеПО = Штрихкод;
       СтруктураПараметров.ТипДанныхПО = "Штрихкод";
    
       Возврат СтруктураПараметров;
    
    КонецФункции
    Последнее редактирование: 2 мар 2018
  2. kisol
    Offline

    kisol Профессионал в 1С

    Регистрация:
    25 июл 2012
    Сообщения:
    606
    Симпатии:
    81
    Баллы:
    54
    Как я понял тут допилено для работы с егаисом, т.е можно сканировать напрямую акцизную марку и он будет искать по алкокоду этот товар.

    Вот это закоментить


    Раскоментить Весовые товары и штучные на весах (если не работает, снова закоментить и пробовать)
  3. TopicStarter Overlay
    nsk1C
    Offline

    nsk1C Профессионал в 1С

    Регистрация:
    25 май 2016
    Сообщения:
    2.159
    Симпатии:
    195
    Баллы:
    104
    Всем спасибо за соучастие.
    Вобщем, как оказалось, все проблемы решились обновлением на 8.3.10.2667,
    а не на 1С 8.3.11.2867
    Хотел написать про переход с 8.3.11 на 8.3.10,
    но в действительности всё не так, как на самом деле - работать ещё продолжают на 8.3.11, а переход будет после ближайшего закрытия кассовой смены

    Ушёл покупать анестезию, чтобы отрывать руки тем, кто устанавил 8.3.11 без всякой надобности
    Последнее редактирование: 2 мар 2018
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.628
    Симпатии:
    542
    Баллы:
    204
    Мышьяк лучше купи... Для разрабов... Какого фига ломается функционал конфы из-за платформы....
  5. TopicStarter Overlay
    nsk1C
    Offline

    nsk1C Профессионал в 1С

    Регистрация:
    25 май 2016
    Сообщения:
    2.159
    Симпатии:
    195
    Баллы:
    104
    Таких примеров - когда что-то не работает на одной версии платформы, но работает на другой - множество.

    Ну, а по 8.3.11.2867 по жалобам в инете о том, что то не работает то и это, что работает для той же базы на 8.3.10 - рекордсмен.
    Поиск рулит

    А к чему такой хамский комментарий от специаллиста по 1С 7.7,
    т.е. лаже не работающего с продуктами 1С 8.х?
    Цель и смысл - какие?
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.628
    Симпатии:
    542
    Баллы:
    204
    Хамство???? В каком месте.
    С формулировками поаккуратнее...