Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
17 апр 2024, 01:41

Префикс f7 для сканера штрих кода

Автор albert1987, 24 авг 2016, 00:11

0 Пользователей и 1 гость просматривают эту тему.

albert1987

Здравствуйте!

Приобрел китайский сканер штрих-кода Alanda ct007s. Установил стандартный сканер драйвера от 1с. Как оказалось он не поддерживает установку префиксов. Для корректной работы теперь необходимо набирать F7 перед считыванием штрих кода.
Можно как нибудь на уровне 1с включить принудительное добавление префикса? других вариантов пока не вижу

Voblhned

albert1987,
Вариант 1. все сканеры програмируются, можно запрограммировать его на нажатие ф7
Вариант 2. Атоловские(что не очень хорошо, увесистые тормознутые)
Как я вижу у вас ТиС 10.3, и usb с эмуляцией в com порт по технологии com. Что само по себе грусть. Так что самый простой вариант будет программировать сканер по штрих кодам из руководства.
Поскольку дрова native api только в 8.3 версиях есть где есть порт Клавиатура для USB сканеров.

Просто жаль что вы такой хороший сканер используете таким образом, настраивали его на 1C:Розница 2.1, бомба! Без дописок и эмуляций, вставил и поехал.

Может махнемся, я вам устаревший для вашей версии ТиС, а вы мне этот =)

albert1987

Вставил комментарии жирным

Вариант 1. все сканеры програмируются, можно запрограммировать его на нажатие ф7 Данный сканер не поддерживает программирование префикса, продавец подтвердил
Вариант 2. Атоловские(что не очень хорошо, увесистые тормознутые)Данный момент не проверял
Как я вижу у вас ТиС 10.3, и usb с эмуляцией в com порт по технологии com. Что само по себе грусть. Так что самый простой вариант будет программировать сканер по штрих кодам из руководства.
Поскольку дрова native api только в 8.3 версиях есть где есть порт Клавиатура для USB сканеров.

Просто жаль что вы такой хороший сканер используете таким образом, настраивали его на 1C:Розница 2.1, бомба! Без дописок и эмуляций, вставил и поехал. К сожалению что есть с тем и пляшем, изначально мне установили Управление торговлей



Может махнемся, я вам устаревший для вашей версии ТиС, а вы мне этот =)


Добавлено: 24 авг 2016, 21:48


Все таки наверное можно переделать обработку в 1с чтобы она вставляла принудительно F7. Или я ошибаюсь?

Voblhned

albert1987, да можно, но сами понимаете, что вмешательство в код, снимает с поддержки и если возможен другой вариант, то лучше идти по нему.

albert1987

Не подскажите какую обработку мне смотреть?

Voblhned

albert1987, Короче выгружаете обработку 1CScanOPOSScan_v2.epf, открываете ее в конфигураторе ищите код:

Префикс     = ?(времПрефикс   = Неопределено, "", времПрефикс);

Потом вбиваете его принудительно что то типо #150, загружаете обработку в 1С обновляете список обработок и проверяете. Хотя я очень не уверен в этом! Как в 1с Скрине

Хотя там есть код:

ИначеЕсли МинорнаяВерсияИзДрайвера > 11 Тогда
ЭлементыФормы.Порт.СписокВыбора.Добавить(0, НСтр("ru='Клавиатура'"));
ЭлементыФормы.Порт.Значение = Порт;
НовыйИнтерфейс = Истина;
КонецЕсли;


Процедура ПрефиксОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Если НовыйИнтерфейс И Порт=0 Тогда
СтандартнаяОбработка = Ложь;
Если ВыбранноеЗначение <> Неопределено Тогда
Элемент.СписокВыбора.Добавить(Префикс + ВыбранноеЗначение);
Префикс = Префикс + ВыбранноеЗначение;
КонецЕсли;
Иначе
СтандартнаяОбработка = Истина;
КонецЕсли;
КонецПроцедуры


То есть если сканер в порт "Клавиатура" вам становится доступен Префикс. Как во 2м скрине

Я не особо лезу в код, по этому не могу вам советовать, потому что сам не пробовал. Работаю только с портом "Клавиатура" и нет таких проблем.

albert1987

Спасибо!

Поиграю с кодом. Тоже не хотелось бы таким образом поступать. Но у меня, к сожалению, нет порт="Клавиатура". Может быть из-за версии драйвера?

Voblhned

albert1987, порт клавиатура доступен только для новой версии драйвера, посмотри порт клавиатура появляется не в вверху списка как у Розницы, а внизу в УТ 10, у меня идет после порта №30 :befhbt:

albert1987

У меня последний порт 32, порта клавиатура нет. Версия драйвера 8.1.7.9. Какая на данный момент свежая версия драйвера?
Добавлено: 27 авг 2016, 23:59


В обработке у меня прописано следующее
   Префикс     = ?(времПрефикс   = Неопределено,     "#150", времПрефикс);   

Я так понимаю F7 уже прописан принудительно.

Присылаю скрин настроек порта клавиатура нет (приложил скрин)
Также интересно почему строка версия драйвера выделена красным

   Если ОбработкаОбъект.СоздатьОбъектДрайвера(Объект, мМодель, времПараметры) = мНетОшибки Тогда
      ЭлементыФормы.Драйвер.ЦветТекстаПоля = ЦветаСтиля.ЦветТекстаФормы;
      Драйвер = "Установлен";
      НовыйИнтерфейс = Ложь;
      Если мВерсияИзДрайвера <> Неопределено Тогда
         Если Лев(мВерсияИзДрайвера,4) = "8.0." Тогда
            МинорнаяВерсияИзДрайвера = Сред(мВерсияИзДрайвера, 5);
            МинорнаяВерсияИзДрайвера = Число(Лев(МинорнаяВерсияИзДрайвера, Найти(МинорнаяВерсияИзДрайвера, ".")-1));
            Если МинорнаяВерсияИзДрайвера < 5 Тогда
               ЭлементыФормы.ТестУстройства.Видимость = Ложь;
               ЭлементыФормы.ПараметрыЖурналирования.Видимость = Ложь;
            ИначеЕсли МинорнаяВерсияИзДрайвера < 7 Тогда
               ЭлементыФормы.ПараметрыЖурналирования.Видимость = Ложь;
            ИначеЕсли МинорнаяВерсияИзДрайвера > 11 Тогда
               ЭлементыФормы.Порт.СписокВыбора.Добавить(0, НСтр("ru='Клавиатура'"));
               ЭлементыФормы.Порт.Значение = Порт;
               НовыйИнтерфейс = Истина;
            КонецЕсли;
            
            Если ВерсииСовместимы(СовместимыеВерсии) Тогда
               ЭлементыФормы.Версия.ЦветТекстаПоля = ЦветаСтиля.ЦветТекстаФормы;
            Иначе
               ЭлементыФормы.Версия.ЦветТекстаПоля = ЦветаСтиля.ЦветОтрицательногоЧисла;
            КонецЕсли;   
         Иначе
            ЭлементыФормы.Версия.ЦветТекстаПоля = ЦветаСтиля.ЦветОтрицательногоЧисла;   
         КонецЕсли;   
         Версия = мВерсияИзДрайвера;
      Иначе
         ЭлементыФормы.Драйвер.ЦветТекстаПоля = ЦветаСтиля.ЦветОтрицательногоЧисла;
         ЭлементыФормы.Версия.ЦветТекстаПоля = ЦветаСтиля.ЦветОтрицательногоЧисла;
         Версия  = "Не определена";
      КонецЕсли;      
   Иначе
      ЭлементыФормы.Драйвер.ЦветТекстаПоля = ЦветаСтиля.ЦветОтрицательногоЧисла;
      Драйвер = "Не установлен";
      ЭлементыФормы.Версия.ЦветТекстаПоля = ЦветаСтиля.ЦветОтрицательногоЧисла;
      Версия  = "Не определена";
   КонецЕсли;


Видимо я некорректно установил драйвер

Voblhned

albert1987, скачай не последний драйвер, а совместимый, 8.0.13.5 например

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск