“Заставим сканер пищать!” или Получаем обратную связь из 1С при сканировании штрихкодов

Публикация № 714025

Учет и отчетность - Учет ТМЦ

Получаем обратную связь из 1С при сканировании штрихкодов.

Лирическое вступление

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

Вы возвращаетесь к стеллажу и берете следующий товар. На этот раз вы внимательно осматриваете его, находите нужный штрихкод, но видите, что этикетка надорвана и сканер ее не сканирует. Вы пробуете восстановить покореженную этикетку (ведь не хочется снова идти к компьютеру, чтобы вводить код вручную), пытаетесь отсканировать ее под разными углами, и наконец с десятой попытки сканер издает счастливый пик.

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

Опытные специалисты скажут, что от последней ошибки легко избавиться, и будут правы – для этого достаточно ограничить типы распознаваемых штрихкодов на сканере. Тем не менее я могу привести и другие примеры ошибок сканирования, включая ситуацию, когда вы отходите на такое расстояние от приемника, что сканер думает что он сети и сканирует штрихкоды, но до 1С они уже не доходят. Поэтому цель этого вступления – объяснить, что сканируя штрихкод на расстоянии, вы никогда не можете быть уверены, что:

– Штрихкод отсканирован правильно
– Штрихкод дошел до 1С
– По штрихкоду успешно найден товар и добавлен в документ.

Это понимают и кладовщики. Поэтому в процессе сканирования участвуют минимум два человека и выглядит это так:

<Пик>
– Есть!
<Пик>
– Есть!
<Пик>
– Не прошло, давай еще раз!
<Пик>
– Есть!

Наблюдая этот процесс со стороны, я понял, что нужно что-то менять.
 

Используем колонки

Первое, что приходит на ум – использовать колонки компьютера и издавать звук каждый раз, когда штрихкод получен и обработан. Для этих целей в 1С есть функция глобального контекста Сигнал(). Все бы хорошо, но проблемы начинают появляться, если на складе шумно, или сканирование происходит на большом расстоянии. 

Вы можете предложить купить колонки побольше да сделать звук погромче, но кладовщики с вами не согласятся. :) Представьте картину: начинается отгрузка товара, и колонки начинают пищать во всю мощь – склад-то большой, надо, чтобы из любого угла было слышно. Скорее всего сотрудникам это быстро надоест, и они вернутся к старой, проверенной схеме.

Попробуем подойти к решению проблемы с другой стороны. У нас в руках есть устройство, которое пищит при каждом сканировании, и его отлично слышно в любой ситуации. Так почему бы для уведомления об успешном сканировании не использовать сам сканер?
 

Используем динамик сканера

Поискав в интернете, я не нашел по теме вообще ничего. На нескольких форумах люди скромно спрашивали, можно ли что-то подобное сделать, но получали стандартные ответы “используйте колонки” или “купите ТСД”. Ни слова про сигнал из самого сканера.

Так сложилось, что у меня была возможность провести тест на разных моделях сканеров. Поэтому кроме экспериментов, я буду делиться впечатлениями о самом устройстве.

 

CipherLab 1560

Неплохой сканер из Тайваня. Несколько дороже своих аналогов, но оправдывает цену большой дальностью сканирования (производитель заявляет до 90 м). Отмечу, что в реальных условиях с учетом преград на пути сигнала (товары, стеллажи) держит связь стабильно на расстоянии как минимум 50 м. К слову, пользуемся им 3 года в тяжелых условиях на складах, где холодно и высокая влажность, нареканий нет. Из недостатков – не умеет сканировать с телефона. В улучшенной модели 1560p это исправили, а также еще увеличили дальность сканирования.

Я решил начать с обращения к производителю. В России есть официальный представитель CipherLab https://scancode.ru/, на сайте есть форум. Задаю вопрос:

Получаю ответ в том же стиле, что и в остальных местах, еще и намекнули на мою безграмотность. :) Придется изучить вопрос самостоятельно. 

Читая многостраничный мануал к сканеру, особый интерес вызвал раздел “Время ответа ACK/NAK”: 

По умолчанию, сканер посылает данные в ПК, без ожидания ответа ACK/NAK, перед отправкой следующей порции данных. Установите требуемое значение задержки в диапазоне 1-99, которое изменяется с шагом в 0.1 сек. Если нет ответа, в пределах указанного периода, - сканер будет пытаться отправить те же данные еще - 3 раза. Если все попытки окончились неудачей без любого уведомления, - данные будут окончательно потеряны.

Очень похоже на то, что нам нужно. После включения режима, штрихкоды начали приходить по 3 раза и сканер начал пищать с ошибкой. Хорошо, значит сканер ждет подтверждения от хоста и в случае его отсутствия сообщает об ошибке, попутно пытаясь отправить штрихкоды еще раз.

Как же отправить на сканер ответ? Для начала разберемся, как в принципе можно отправлять команды на устройство. Большинство сканеров умеет работать как минимум в двух режимах – эмуляции клавиатуры и эмуляции COM порта. Первый режим самый простой и понятный. При подключении сканер определяется как usb клавиатура, и штрихкоды приходят обычным текстом. Можно открыть блокнот и отсканировать штрихкод, вы его сразу увидите.

Второй режим немного сложнее. Сканер подключается как устройство, представляющее собой виртуальный COM порт, и требует установки драйверов. Причем даже после установки отсканировать штрихкод в блокнот не получится. Данные приходят через созданный COM порт, и требуется специальная компонента, которая будет их оттуда считывать (входит в состав всех типовых конфигураций).

Тем не менее COM порт предназначен не только для считывания, но и для записи данных. И всё, что записано в порт, будет отправляться на сканер. Поэтому прежде чем начинать эксперименты, убедитесь, что сканер поддерживает режим эмуляции COM порта и подключен к ПК в этом режиме.

Как отправить данные в COM порт? Очень просто – достаточно записать файл по адресу “\\.\ComX”, где Х – номер порта, и всё содержимое файла будет отправлено в порт. Номер порта можно узнать в диспетчере устройств в разделе “Порты (COM и LPT)”. Например, следующий код отправит команду “Hello!” на сканер:

ЗаписьТекста = Новый ЗаписьТекста("\\.\Com10", КодировкаТекста.ANSI, "");
ЗаписьТекста.ЗаписатьСтроку("Hello!");
ЗаписьТекста.Закрыть();

С отправкой команд разобрались, вернемся к мануалу. Нас особо интересует следующая строчка: “сканер посылает данные в ПК, без ожидания ответа ACK/NAK”. Что такое ACK/NAK? Я полностью просмотрел руководство, но нигде не нашел, что эти команды представляют. Снова написал в Сканкод, причем в этот раз еще и в украинское представительство, но результат предсказуем. :) И там и там меня вежливо послали, ограничиваясь общими фразами, что ничего контролировать не получится, всё завязано на прошивке и тп. Так что выводы о грамотности официальной техподдержки CipherLab делайте сами. UPD: уже после того, как я нашел способ отправлять ответ на сканер (рассказано ниже), мне еще раз написало украинское представительство. Как оказалось, они переслали мой вопрос в Тайвань и получили ответ. Так что не всё так плохо.

В результате гугления и экспериментов я узнал, что ACK и NAK – это Unicode символы, которые используются при взаимодействии с различным оборудованием.  При успешной обработке команды отправляется символ ACK, в противном случае отправляется NAK. То есть это обычные непечатаемые символы, которые которые можно получить при помощи стандартной функции Символ(). у ACK номер символа 6, у NAK – 21. Таким образом, чтобы отправить ответ сканеру что данные получены, достаточно выполнить следующий код:

ЗаписьТекста = Новый ЗаписьТекста("\\.\Com10", КодировкаТекста.ANSI, "");
ЗаписьТекста.ЗаписатьСтроку(Символ(6)); // ACK
ЗаписьТекста.Закрыть();

И это работает! После получения ACK, сканер не отправляет данные повторно и не сообщает об ошибке. Следовательно, если штрихкод найден, мы отправляем на сканер команду ACK; если не найден, не отправляем ничего (так как если отправить NAK, сканер продолжит отправлять данные, пока не получит ACK).

Но есть нюанс. В режиме ACK/NAK можно настраивать время ожидания ответа, но нельзя настроить количество попыток повторной отправки штрихкода – оно фиксировано и всегда равно трем. Допустим, время ожидания составляет 5 секунд. Для файловой базы этого хватит с головой. Но при работе через интернет могут быть задержки. Поэтому возможна ситуация, когда сканер, не дождавшись ответа от 1С, отправит данные еще раз. Конечно можно увеличить время ожидания хоть до 30 секунд (тут уж сама 1С отвалится по таймауту), но если штрихкод не будет найден, пользователю придется ждать целых полторы минуты, пока сканер не сообщит об ошибке.

Нужен какой-то другой способ сообщить сканеру о том, что штрихкод не найден и нет смысла ждать ответа от ПК. Возвращаемся к мануалу. В самом конце, в Приложении к руководству, нашелся интересный раздел с заголовком “Управление с ПК серийными командами”. Используя команды, можно включать/выключать сканер, конфигурировать его, издавать сигнал и даже дистанционно включать/выключать луч сканирования (еще раз передаю привет техподдержке CipherLab). Я не буду перечислять все команды, остановлюсь только на одной – “Продолжение операции”. Если отправить эту команду, сканер издаст длинный сигнал, выйдет из режима ожидания и будет готов к следующему сканированию. К статье приложена обработка, в которой есть примеры команд.

 

Таким образом, для настройки обратной связи со сканером:

  1. Выставляем максимальное время ожидания ответа ACK/NAK
  2. Если штрихкод найден, отправляем АСК
  3. Если штрихкод не найден, отправляем серийную команду “Продолжение операции”

Вот как это работает:

Однако в реальной эксплуатации при попытке отправить данные в порт, вы столкнетесь с ошибкой:

Дело в том, что при чтении данных из порта, он становится недоступным для остальных программ. И если к порту подключается компонента от 1С, то остальные попытки записи в порт блокируются. Так как компонента умеет только читать из порта, но не умеет писать, то придется каждый раз отключать компоненту, писать в порт, а затем подключать обратно.

Решение проблемы – программа Virtual Serial Ports Emulator. С ее помощью можно создать виртуальный порт, который является копией... Кхм, виртуального порта сканера, но у которого отсутствуют ограничения на подключение. То есть мы сможем одновременно писать в порт, пока компонента читает данные из порта. Вот так выглядит настройка для создания нового порта (6-й – порт сканера, 10-й – виртуальный порт):

После запуска эмуляции, в настройках 1С указываем, что сканер подключен к 10му порту, и в него же пишем все команды сканеру. Ставим программу в автозапуск, и всё замечательно работает незаметно для пользователя.

Забегаю вперед, скажу что есть еще один способ писать в занятый COM порт, это модификация компоненты. Подробнее об этом рассказано в разделе “Режим STERM”.


DataLogic QBT2400
 

Неплохой беспроводной сканер от итальянской компании. Это самый красивый, самый качественный сканер среди всех, которые я видел, при этом он стоит адекватных денег.  Для него идеальное место в розничном магазине, где не принципиальна дальность сканирования (максимум 25 метров), но имеет значение внешний вид. Без проблем считывает штрихкоды с телефона.

Обращаю внимание, что не все беспроводные сканеры Datalogic поддерживают управление с ПК. Из одномерных поддерживают только работающие по технологии STAR (а это только QM2131), из двумерных QBT2400 и QM2400, про остальные надо уточнять в руководстве, раздел “Message Formatting”.

К сожалению, мне не хватило времени полноценно протестировать удаленное управление сканером, так как у меня его быстро забрали. :) Тем не менее ничего сложного там нет, всё работает по тому же принципу, что и в CipherLab. Можно управлять не только динамиком, но и подсветкой и зеленой точкой (фирменная технология Datalogic). Также работает ACK/NAK, причем она более гибкая, чем в CipherLab – можно настраивать не только таймаут, но и количество попыток отправки данных, реакцию на полученный NAK.
 

Motorola/Symbol LI4278
 

Отличный сканер от американской компании. Народная модель, эдакий DIR 300 в мире роутеров. :) Не знаю как в других странах, но в Украине я вижу его во всех наших гипермаркетах, таких как Эпицентр и Метро. Предполагаю, что он всем полюбился за дешевизну и выполнение своих функций – у него отличный сенсор (считывает с телефонов), дальность (100 метров), он качественно собран и при этом один из самых дешевых на рынке. Также стабильно работает в сопряжении с телефоном или планшетом – мы сейчас используем его с учетной системой на Android, работает без нареканий. Однозначно лучший вариант по соотношению цена/качество.

Полноценных серийных команд сканер не поддерживает, но есть привычные ACK/NAK, которые тоже гибко настраиваются (в руководстве раздел “Software Handshaking”).
 

Argox AS-8520

Должен же быть плохой сканер в обзоре? :) Это плохой сканер от тайваньской компании Argox (Sato). Мало того, что он страшный внешне, так еще и сам по себе ненадежный – при соединении с телефоном он постоянно отваливался и его приходилось вручную подключать заново. Причем он может отвалиться через минуту, а может через 20 минут, находясь при этом рядом с телефоном. В общем очень не рекомендую.

Но несмотря на недостатки, поддерживает ACK/NAK. Серийные команды не поддерживает.
 

Cino F790WD

Переходим к гвоздю программы. Внешний вид этого сканера как бы намекает, что на него отправлять команды не можно, а нужно!

Первую особенность видно сразу – у него есть экран. Следовательно, мы сможем не только информировать об удачном сканировании, но и выводить название отсканированного товара, цену, сумму – в общем всё, что угодно.

Вторая особенность – сканер работает через Wi-Fi. Это снимает с нас все ограничения по дальности сканирования, и сканер будет работать везде, где есть покрытие. Причем сканер подключается напрямую к компьютеру, который в свою очередь вообще может быть подключен к сети через кабель – главное, чтобы оба устройства находились в одной локальной сети. Отдельно отмечу, что если у вас большое складское помещение, то желательно использовать не обычные роутеры с антенной, а точки доступа. Я советую точки от Ubiquiti. В частности у нас используется Ubiquiti UniFi AC Pro, ее с головой хватает для покрытия всей площади склада.

Для работы со сканером необходима установка фирменной утилиты WaveCentre. При подключении сканера она создает виртуальный COM порт, через который можно получать штрихкоды и отправлять команды на устройство.

Общение со сканером осуществляется при помощи hex команд. Я бы с удовольствием рассказал о том, как формировать hex символы из строки, используя Буфер двоичных данных, или вычислять контрольную сумму, используя Побитовое Исключительное ИЛИ (XOR), но боюсь, что это еще увеличит статью еще раза в два. :) Поэтому я ограничусь прикрепленной к статье обработкой с примерами команд. Код обработки открыт, и вы можете без ограничений использовать его в своих проектах.

Сначала нужно указать номер COM порта, затем можно отправлять команды на сканер. Например, так будет выглядеть отправленное сообщение:

В сообщении можно написать какой угодно текст, в том числе на русском языке. При отправке доступны дополнительные параметры – шрифт текста, выравнивание, а также следует ли завибрировать или просигналить при выводе сообщения. К примеру, таким образом можно при удачном сканировании издавать один короткий сигнал, а при неудачном три длинных.

Но есть нюанс. Пока окно с сообщением открыто, нельзя продолжить сканирование. Да, можно указать при отправке, чтобы окно автоматически закрывалось, скажем, через 3 секунды; но это будет вдвойне неудобно. С одной стороны, сотрудник ограничен всего тремя секундами, чтобы успеть посмотреть название отсканированного товара. С другой, если сканируется много одинаковых товаров, приходится каждый раз ждать по 3 секунды между сканированиями.

Столкнувшись с этой проблемой, я решил написать производителю с вопросом – можно ли сделать так, чтобы сообщение не препятствовало сканированию? Через некоторое время получаю ответ:

Дорогой Вадим! Такова особенность данного сканера. Если вы хотите, чтобы текст отображался постоянно и не мешал сканированию, используйте режим STERM.

Что ж, разберемся.

Режим STERM

Приведу описание с официального сайта:

STERM (Smart TERMinal) – это умный двусторонний режим, который обеспечивает полное взаимодействие между сканером и настольным приложением. Это эффективное решение, которое позволит заменить традиционные технологию работы с ТСД в пользу взаимодействия в реальном времени.

Говоря своими словами – сканер превращается из самостоятельного устройства в продолжение настольной программы. Вы можете выводить на экран произвольный текст любого цвета, картинки, линии, вызывать вибрацию или воспроизводить звуки разной тональности. Более того, можно отлавливать нажатие любых кнопок сканера, обрабатывать их на ПК, и в ответ выводить произвольную информацию на экране. Вплоть до того, чтобы полностью заменить интерфейс 1С экранчиком сканера, например так:

Технология чуть ли не секретная. Описания протокола на сайте нет, отправляют только по запросу. Если не хотите ждать, можете скачать описание отсюда, оно прикреплено к статье. Также для своего удобства я сделал краткое описание всех команд и их свойств, их можно посмотреть в этом гугл документе.

Сам механизм работает так. Перед переходом в режим сканер отправляет настольному приложению так называемый Handshaking Packet и в течение трех секунд ждет ответа. Если ответ получен – сканер переходит в режим STERM. Затем при любом внешнем событии, будь то сканирование штрихкода или нажатие кнопок джойстика, сканер отправляет пакет хосту с информацией о событии и снова ждет ответа. В этот раз время ожидания в принципе не ограничено, но пока хост не отправит ответ, дальнейшие действия будут игнорироваться сканером. Процесс хорошо проиллюстрирован в файле описания протокола:

Хост может отправлять команды в любой момент, не дожидаясь события от сканера. Это особенно удобно, если в 1С обрабатывается какая-то длительная операция. Тогда перед началом операции можно заблокировать сканер, а после окончания сообщить пользователю, что операция завершена и можно продолжить сканирование.

Но есть нюанс. Стандартная компонента от 1С обрабатывает штрихкод только когда он заканчивается на определенный символ (по умолчанию с кодом 13). Но команды от сканера могут заканчиваться как угодно, и компонента их просто игнорирует. Поэтому я прикладываю к статье модифицированную компоненту ScanOPOS.dll, которая:

  • Передает все данные, полученные от сканера, в 1С;
  • Позволяет отправлять данные из 1С в COM порт.

Для отправки данных их следует записывать в именованный канал (пайп) по адресу “\\.\pipe\rs232”. При получении данных от сканера, в силу особенностей реализации, символы с кодом 00h заменяются на 01h (речь идет именно о кодах символов, у привычного нам нуля код 48, и он придет без изменений). Примеры работы с компонентой есть в обработке.

Таким образом, имея модифицированную компоненту, можно добиться выполнения поставленной задачи. При сканировании сканер пищит и выводит информацию о товаре, а если попался неправильный штрихкод, информирует об этом пользователя текстом и пищит трижды – чтобы точно услышал.

В итоге – процесс оптимизирован, склад автоматизирован, кладовщики в счастье. :) 

Вадим Невзоров
ХВОЯ интегра, Одесса

Скачать файлы

Наименование Файл Версия Размер
Обработка с примерами команд для сканера

.epf 223,26Kb
11.12.17
47
.epf 1.1 223,26Kb 47 Скачать
Компонента для работы со сканером штрихкода

.dll 434,88Kb
10.01.18
34
.dll 1.0 434,88Kb 34 Скачать
Описание протокола STERM

.pdf 180,82Kb
10.01.18
22
.pdf 180,82Kb 22 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. A_Max 18 10.01.18 18:22 Сейчас в теме
ScanOPOS меняли бинарник или где-то есть исходники?
13. vadnevzorov 436 11.01.18 11:06 Сейчас в теме
(1) Меняли бинарник. Ассемблер рулит. :)
Evil Beaver; Danil.Potapov; +2 Ответить
2. tailer2 10.01.18 18:54 Сейчас в теме
Супер! Респект и уважуха
SmArtist; Andreyyy; ABudnikov; torbeev; +4 Ответить
3. Арчибальд 2710 10.01.18 19:13 Сейчас в теме
4. vano-ekt 730 10.01.18 23:14 Сейчас в теме
ваш сканер будет пищать как ...
madway; Mahon83; shard; DenisF8; корум; w22u; TreeDogNight; webester; DrAku1a; +9 Ответить
14. vadnevzorov 436 11.01.18 11:07 Сейчас в теме
(4) Если будет продолжение статьи, так и назову))
DenisF8; DrAku1a; +2 Ответить
5. CheBurator 3422 11.01.18 00:57 Сейчас в теме
Отличный материал! (порадовал cino)
Включил в свою подборку публикаций по группе "Адресный учет и логистика склада" https://infostart.ru/community/groups/22/
6. DrAku1a 1314 11.01.18 02:22 Сейчас в теме
Хм... я первое о чём подумал - не колонки, а блютуз-гарнитурка (для ПК надо передатчик, для ноута - блюпуп встроен).
Однако, такая гарнитура имеет сравнительно небольшую дальность и критична к препятствиям.
SmArtist; +1 Ответить
15. vadnevzorov 436 11.01.18 11:15 Сейчас в теме
(6) Кстати интересный вариант. Но как вы правильно заметили, он ограничен дальностью bluetooth соединения (обычно 20-30 метров). А если бы такая гарнитура работала через wifi... Зашел на aliexpress, вбил "wifi headset" - больше тысячи результатов поиска. По-моему интересная тема для следующей статьи.
SmArtist; DrAku1a; +2 Ответить
45. Tiger77 68 12.04.18 17:44 Сейчас в теме
Не могу разобраться с компонентой.

Насколько я понимаю:

1. Программируем сканер в ACK/NAK режим
2. Загружаем компоненту из статьи или макета scanopos.dll
3. В обработке внешнего события, если штрихкод ок - отправляем ACK иначе NAK

но при отправке на "\\.\pipe\rs232" получаем ошибку
{ВнешняяОбработка.ОтправкаСигналаНаСканер.Форма.Форма1.Форма(6)}: Ошибка при вызове конструктора (ЗаписьДанных)
	ЗаписьДанных = Новый ЗаписьДанных("\\.\pipe\rs232", КодировкаТекста.ANSI, , "");
по причине:
Ошибка при работе с файлом: \\.\pipe\rs232
по причине:
Ошибка при выполнении файловой операции  '\\.\pipe\rs232'. 231(0x000000E7): Все копии канала заняты. 


Что можно посмотреть ?
46. vadnevzorov 436 13.04.18 09:41 Сейчас в теме
(45) Такая ошибка возникает, если отправлять ответ слишком часто (чаще, чем раз в 300 мс). Проверьте отладчиком, возможно этот участок кода вызывается несколько раз.
47. Tiger77 68 13.04.18 14:18 Сейчас в теме
(46) Это разовый вызов - для проверки даже сделал чистую обработку.
Пробовал делать задержку между получением штрихкода и ответом - ошибка такая же. :(
48. Tiger77 68 13.04.18 14:19 Сейчас в теме
(46) Можно как-то убедиться что загружается модифицированная компонента ?
49. vadnevzorov 436 14.04.18 11:29 Сейчас в теме
(48) Если загружена не модифицированная компонента, то текст ошибки будет другим:
{ВнешняяОбработка.ОтправкаСигналаНаСканер.Форма.Форма.Форма(424)}: Ошибка при вызове конструктора (ЗаписьДанных)
	ЗаписьДанных = Новый ЗаписьДанных("\\.\pipe\rs232", КодировкаТекста.ANSI, , "");
по причине:
Файл не найден: \\.\pipe\rs232
по причине:
Файл не обнаружен '\\.\pipe\rs232'. 2(0x00000002): Не удается найти указанный файл.


Но вообще странно, что у вас возникает такая ошибка. Вы работаете через COM порт? И компонента успешно открывает, занимает порт, принимает из него штрихкоды и инициирует внешнее событие? Попробуйте отключить антивирусы, вдруг они как-то влияют.
7. webester 32 11.01.18 03:56 Сейчас в теме
Вопрос, что делать если сканер подключен как клавиатура?
8. Артано 669 11.01.18 04:19 Сейчас в теме
(7) В режиме эмуляции клавиатуры, сканер это просто печатная машинка. Может есть какие-то возможности, но к чему такой изврат, когда есть возможность работы с известным с древнейших времен COM-портом
9. webester 32 11.01.18 05:19 Сейчас в теме
(8)Ввод в режиме ввода с клавиатуры мне не кажется извратом. Работает без установки драйверов, нет проблемы с портами(когда по какой то причине произвольно меняется номер порта, такое бывает нечасто, но бывает) Есть возможность использовать сканер не только в 1С.
11. Артано 669 11.01.18 06:23 Сейчас в теме
(9) А я и не говорил, что сам режим это изврат. Извратом назвал попытку работать с прерываниями в попытке наладить двухстороннюю связь при работе в этом режиме
16. vadnevzorov 436 11.01.18 11:21 Сейчас в теме
(9) Роман, полностью с вами согласен. Если не нужно управление сканером, то работа в режиме эмуляции клавиатуры самый простой и надежный вариант.
Для перевода в режим COM порта читайте документацию, в каждом сканере это делается по-разному. Правда некоторые старые сканеры такой режим не поддерживают (например, Datalogic QS6500BT).
64. hvv2002 7 21.05.19 14:51 Сейчас в теме
Добрый день ! Если кому то пригодится, то сканер honeywell 1450g , издает звук простой биип, в любом месте программы в любое время когда нужно . сделал в проекте на C#. нужно сканером прочитать с бумажки в документации Beep on BEL on. а затем в программе писать в порт сканера ( должен быть включен как ком порт - у меня через эмуляцию ком порта и драйвер ) символ ascii(7) , когда нужно издать звук.
10. torbeev 11.01.18 06:23 Сейчас в теме
12. ADirks 182 11.01.18 07:14 Сейчас в теме
Отличная статья! И Cino порадовал, да :) Ну наконец-то сделали то, что давно следовало.

Присоединюсь к вопросу про исходники.
17. vadnevzorov 436 11.01.18 11:23 Сейчас в теме
(12) Спасибо! Про исходники ответил выше.
18. spectre1978 53 11.01.18 12:00 Сейчас в теме
Автор, спасибо, вы провели отличное исследование! Будь моя воля - поставил бы больше плюсов чем один.
27. obmanOZ 22 16.01.18 11:30 Сейчас в теме
(18) Можно поставить минус, а потом два плюса)
корум; vadnevzorov; +2 Ответить
19. herfis 365 11.01.18 12:52 Сейчас в теме
Есть более простое и прямое, но дорогое решение, не упомянутое в статье.
Промышленные сканеры Zebra (бывшие Motorola, бывшие Symbol) с поддержкой протокола SNAPI.
По этому протоколу можно штатно давать обратную связь на сканер в любом виде: блокировать/разрешать сканирование, пиликать разными мелодиями, вибрировать вибратором, мигать светодиодами. Для них есть и беспроводные базы. Т.е. сканируешь в дальнем углу шумного склада, откуда и монитора не видно и колонки не добивают и вся обратная связь у тебя есть.
Из 1С ими можно управлять родными дровами Zebra Scanner SDK с сайта производителя, так как SDK реализован в т.ч. и в виде COM-объектов. Но есть пара хитростей.
20. vadnevzorov 436 11.01.18 23:38 Сейчас в теме
(19) Не знал про такие сканеры. Спасибо за информацию.
21. herfis 365 12.01.18 10:41 Сейчас в теме
(20) Конкретная модель, работающая у нас на складе через 1С - DS3578. Крэдл продается отдельно и тоже стоит денег. При покупке нужно быть внимательным, т.к. есть модификации без поддержки SNAPI (Symbol Native API). Почему-то SNAPI поддерживают только модификации крэдлов и сканеров с поддержкой FIPS (если не ошибаюсь - это какой-то федеральный стандарт шифрования при передачи данных по блютузу или что-то в этом духе, глубоко не вникал).
ЗЫ. Фактически, через SNAPI реализован полный программный доступ к сканеру. Т.е. можно его удаленно перепрограммировать.
22. vadnevzorov 436 12.01.18 10:49 Сейчас в теме
(21) Раз уж вы в теме, можете рассказать, в чем принципиальное отличие промышленных сканеров от обычных? Тот же Cino стоит в районе $500, ваш практически в 2 раза дороже. Почему у вас на фирме выбрали именно эти сканера?
23. herfis 365 12.01.18 11:50 Сейчас в теме
(22) Да без понятия, почему именно их. Это еще до меня произошло. Я ж не топлю за их волшебное сочетание цена/качество. Просто уже внедрили под другой программой, а я на 1С переводил. Про Cino я без понятия, да и вообще не сильно люблю с торговым оборудованием возиться, только по необходимости. Наигрался уже.
А промышленное оборудование отличается от обычного соответствием всяким там промышленным стандартам ударопрочности, влагопылезащищенности и т.п.
Т.е. даются какие-то гарантии надежной работы в не очень человеческих условиях. Ну, как и промышленные компьютеры отличаются от обычных. Характеристики в два раза хуже, цена в три раза выше :)
Но эти сканеры, честно говоря, очень приятно в руке держать. Они большие, но эргономичные, сбалансированные и сделаны на совесть. Хотя с заводским браком тоже сталкивался разок (не работал один из лазерных светодиодов, проецирующих прицельную сетку).
24. herfis 365 12.01.18 12:08 Сейчас в теме
(22) А! Вспомнил, что меня поразило. Вроде как по документации он даже изображения как-то способен сканировать! Вряд ли большие, скорее всего просто расширенный интерфейс сканирования QR-кодов. Раз через SNAPI полная обратная связь, то в теории можно самому чего-то распознавать при сканировании. Но могу соврать, мой английский мог меня и подвести. Так как не нужно было, то глубоко не вдавался.
25. vadnevzorov 436 12.01.18 12:20 Сейчас в теме
(24) Спасибо. Почитал еще на оф. сайте - таки да, они позиционируются как более прочные и надежные. Что их можно кидать с высоты двух метров на бетон вообще без проблем) Также они водонепроницаемые и поддерживают 2D штрихкоды. Ну и то, что вы написали - расширенные возможности по управлению с хоста.
26. pereligins 21 12.01.18 16:46 Сейчас в теме
Очень крутая статья! Спасибо!
28. herfis 365 16.01.18 11:35 Сейчас в теме
Сидят двое студентов на лекции.
Вдруг трое встают и выходят.
Препод грустно думает:
- Ну вот, еще один придет и вообще никого не останется...
aupovy; SmArtist; +2 Ответить
29. Mantis 136 17.01.18 08:31 Сейчас в теме
Спасибо, очень интересно!
Реально это та еще проблема!
30. Mantis 136 17.01.18 08:32 Сейчас в теме
Мвахахахаах кот на видео такой же тормоз как мой)
Живет своей жизнью в своем потоке)))
31. user925397 27.02.18 14:08 Сейчас в теме
Очень хорошая статья! А как загружали в него русские шрифты? И в каком формате?
32. vadnevzorov 436 27.02.18 18:06 Сейчас в теме
(31) Спасибо! Никак не загружал, они там были по умолчанию.
33. user925397 27.02.18 18:27 Сейчас в теме
Спасибо за такой быстрый ответ. А как Вы выводили русский текст в страницах? Просто русские буквы в UTF-16? Команды выбора кодовой страницы (CP) нужно было использовать? Судя по всему у Вас был выбор русского в настройках сканера? Т.к. я смотрю, что системные (Терм. и Онлайн) у Вас тоже на русском. Если не секрет, а у кого покупали сканер. С уважением, Андрей. gravru@mail.ru
34. vadnevzorov 436 27.02.18 22:46 Сейчас в теме
(33) Для вывода русского текста использовал кодовую страницу "OEM Russian", hex код 6203, а сам текст отправляю в кодировке UTF-16LE. Да, русский был изначально в настройках. Покупал у Ютиса, но на все вопросы по программированию сканера отвечали официальные представители Cino в Украине https://reef.ua/
35. user925397 28.02.18 14:30 Сейчас в теме
Спасибо, Вадим. За подробный ответ. У нас, к сожалению, продают эти сканеры без русского и без шрифтов 8(
37. Tiger77 68 12.03.18 01:53 Сейчас в теме
(35) Напишите производителю на Elsa_Lee@cino.com.tw - они вышлют русифицированную прошивку.
39. user925397 12.03.18 11:10 Сейчас в теме
(37) Спасибо за контакт! Обязательно напишу
36. imh9305 17 07.03.18 21:01 Сейчас в теме
а еще можно просто запустить тимвивер или рдп на телефоне и на компе...
40. de0nis 295 12.03.18 15:31 Сейчас в теме
(36) не очень удобно, во первых просто держать в руках два устройства - телефон и сканер - обе руки заняты, особенно если товар, что б отсканировать нужно брать в руки и искать штрих код. Во вторых, постоянно включенный экран сильно сажает батарею и большинство телефонов по умолчанию гасят его и уходят в блокировку, это конечно тоже можно перенастроить, но всё же.
38. Evil Beaver 6753 12.03.18 07:46 Сейчас в теме
Блистательно же! Обязательно пишите еще!!
41. de0nis 295 12.03.18 15:49 Сейчас в теме
Статья отличная!! Спасибо!! Ответ прямо на беспроводном сканере - это очень круто.
Настраивал как-то через колонки, только не через Сигнал() - его не слышно было, даже на не особо шумном складе, а сделал несколько waw-аудио файлов и в зависимости от результата 1С вызывала или файл - "Да!!" или файл "Ошибка". Так можно подобрать громкие звуки, которые нормально слышно. Но тоже не всегда можно применить, на пример, если шумное производство рядом или несколько кладовщиков одновременно что-то делают.
Еще несколько раз делали вариант - на тележке нетбук с проводным сканером :) дешево и сердито :)) за частую получается дешевле чем ТСД и соизмеримо с беспроводными сканерами, но тоже не всегда применимо. А с планшетом если подружить сканер и 1С, так вообще будет в полне удобно. :)
42. Malfarion 200 13.03.18 12:28 Сейчас в теме
Тоже очень понравилась статья, спасибо за нее.
43. СергейК 51 14.03.18 09:42 Сейчас в теме
Супер, Спасибо! Теперь надо подумать, а нужен ли нам ТСД то с такими продвинутыми
вариантами использования сканеров...
44. Malfarion 200 14.03.18 18:24 Сейчас в теме
где купить Cino F790WD по хорошей цене?
50. AlexeyK1 14 13.07.18 18:30 Сейчас в теме
Добрый день.
подскажите какой платформой/конфигурацией открывать обработку
а то ошибку выдает
Прикрепленные файлы:
51. vadnevzorov 436 18.07.18 10:22 Сейчас в теме
(50) Обработку следует открывать платформой не ниже 8.3.11.
AlexeyK1; +1 Ответить
52. alsb78 31.07.18 09:59 Сейчас в теме
Описания протокола на сайте нет, отправляют только по запросу

Описание протокола STERM есть в архиве с SDK: Cino FuzzyScan Software Development Kit_ Wi-Fi ScannerCino FuzzyScan Software Development Kit_ Wi-Fi Scanner
53. user1044014 06.09.18 15:13 Сейчас в теме
Такая же ошибка.
{ВнешняяОбработка.СообщениеНаСканер.Форма.Форма.Форма(268)}: Ошибка при вызове конструктора (ЗаписьДанных)
ЗаписьДанных = Новый ЗаписьДанных("\\.\pipe\rs232", КодировкаТекста.ANSI, , "");
по причине:
Ошибка при работе с файлом: \\.\pipe\rs232
по причине:
Ошибка при выполнении файловой операции '\\.\pipe\rs232'. 231(0x000000E7): Все копии канала заняты.
Подскажите кто нибудь в чем может быть причина.
Сам порт открыт. Отсканированные штрихкоды в программу прилетают. А при попытке отправить сообщение на сканер выскакивает это сообщение.
Сканер Cino/
54. vadnevzorov 436 06.09.18 18:19 Сейчас в теме
(53) Отвечал выше. Такая ошибка возникает, если отправлять ответ слишком часто (чаще, чем раз в 300 мс). Также попробуйте отключить антивирусы, возможно они как-то влияют. У нас встроенный от Microsoft, с ним всё ок.
55. user1044014 07.09.18 11:11 Сейчас в теме
Антивирус отключил. Не помогло. Дело в том что даже при переводе сканера в режим STERM выскакивает такая же ошибка. Т. е. на сканере выбираю пункт STERM нажимаю select, после нажатия со сканера в приложение отправляется запрос на который приложение должно отправить ответ в течении 3 секунд. По крайней мере так было написано в документации. Даже делал отсрочку выполнения команды на 1 и 2 секунды. Все равно та же самая ошибка.
56. vadnevzorov 436 07.09.18 14:44 Сейчас в теме
57. user1044014 07.09.18 16:50 Сейчас в теме
58. user1044014 07.09.18 16:50 Сейчас в теме
59. vadnevzorov 436 08.09.18 08:49 Сейчас в теме
(58) Разработка проводилась и тестировалась под Win 10 x64. Возможно в этом проблема.
68. aupovy 47 16.12.19 18:37 Сейчас в теме
(59) под Windows 2012 R2 компонента заработала в терминале. А как будет себя вести pipe\rs232, у каждого сеанса в терминале это будет свой канал или один общий и больше будет создаваться?
69. vadnevzorov 436 17.12.19 10:18 Сейчас в теме
(68) Не знаю. Компонента тестировалась в тонком клиенте при работе через веб сервер. Буду благодарен, если напишете результаты тестов у вас.
70. aupovy 47 17.12.19 13:48 Сейчас в теме
(69) при работе через RDP и проброс порта штатными средствами возникли проблемы с компонентой, 1С зависает наглухо при 5-10 сканированиях.
Штатная компонента работает медленно, но не зависает.

Решение вопроса получается через проброс порта через TCP/IP. Отправка обратной связи на сканер идет через "пик" при удачном сканировании и "продолжение операции" при неудачном (нет номенклатуры или остатка)
Прикрепленные файлы:
60. user1044014 08.09.18 11:52 Сейчас в теме
Спасибо большое. На win 10 заработало.
61. user1044014 08.09.18 11:53 Сейчас в теме
Не понятно только почему на win 7 не работает а на win 10 работает.
62. k500y@yandex.ru 04.03.19 15:30 Сейчас в теме
Можно ли использовать данную dll для семерки?
63. vadnevzorov 436 05.03.19 09:30 Сейчас в теме
(62) К сожалению нет, она работает только на Win 10.
65. kostik_love 292 10.10.19 12:09 Сейчас в теме
Вот как нужно подходить к решению поставленных задач. Автор- Браво- Супер. Аплодирую стоя!!!
66. chavalah 982 14.10.19 21:48 Сейчас в теме
Отличная работа. Особенно "Привет, Infostart" в примерах порадовало)
67. WellMaster 99 23.10.19 09:50 Сейчас в теме
Сами используем ТСД, но статья очень понравилась, поставил плюс.
Возможно, когда-нибудь в будущем это пригодится.
Оставьте свое сообщение

См. также

GGraphics - внешняя компонента для работы с картинками jpg (jpeg), png, bmp, gif, tif Промо

Разработка внешних компонент v8 1cv8.cf Платные (руб)

Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, кому постоянно требуется работать с различными графическими форматами. Выполнена по технологии NativeAPI. Работает с форматами: jpg (jpeg), png, bmp, gif, tif

2000 руб.

02.09.2010    54354    62    207    

Интеграция "Библиотеки интеграции МДЛП 1.1.2.7" с типовой конфигурацией

Интеграция Конфигурирование 1С v8 Здравоохранение, медицина, стоматология Россия Бесплатно (free)

Инструкция для интеграции “Библиотеки интеграции МДЛП 1.1.2.7” в типовые конфигурации, на примере конфигурации “Управление нашей фирмой, редакция 1.6 (1.6.18.168)”.

02.03.2020    4380    0    RPGrigorev    3    

Универсальные инструменты 1С

Универсальные обработки Прочие инструменты разработчика v8 1cv8.cf Бесплатно (free)

Свободно распространяемый набор универсальных обработок и отчетов в виде расширения для разработки и поддержки, которое работает во ВСЕХ видах клиентских приложений и во всех операционных системах, которые поддерживает платформа 1С:Предприятие, кроме мобильных. Консоль запросов - консоль отчетов - консоль кода - редактор объектов базы данных - удаление помеченных объектов - поиск и удаление дублей - редактор констант - консоль заданий - групповая обработка справочников и документов - динамический список - поиск ссылок на объект - регистрация изменений для обмена данными - структура хранения базы - консоль HTTP запросов-консоль вебсервисов- консоль сравнения данных- информация о лицензиях- загрузка из табличного документа-файловый менеджер-все функции- навигатор по конфигурации-конструктор регулярных выражений-Выгрузка загрузка XML с фильтрами

21.01.2020    21400    295    cprit    94    

Хранение файлов - как уменьшить размер базы данных

Чистка базы Производительность и оптимизация (HighLoad) Практика программирования Разработка v8 Россия Бесплатно (free)

Хранение файлов в базе 1С можно оптимизировать для уменьшения размера хранимых данных.

09.09.2019    7957    0    2tvad    17    

Коннектор: удобный HTTP-клиент для 1С:Предприятие 8 Промо

Практика программирования Внешние источники данных WEB Универсальные функции Инструментарий разработчика Универсальные обработки v8 1cv8.cf Платные (руб)

Коннектор - библиотека для работы с HTTP запросами. Библиотека берет на себя всю рутину работы с HTTP запросами. Буквально в одну строку можно получать данные, отправлять, не заботясь о необходимости конструирования URL, кодирования данных и т.п.

2000 руб.

31.01.2019    45723    327    156    

1С:Ассемблер. Немного летнего веселья!

Практика программирования Разработка v8 1cv8.cf Абонемент ($m)

Все вы, наверное, слышали, что 1С-ники жалуются на свою систему, считая язык 1С недостаточно низкоуровневым, скучным и т.п. Все они с тоской поглядывают в сторону "настоящих" языков программирования. Так вот, господа, они неправы. В системе 1С есть места, где можно размять программерский мозг и получить удовольствие от низкоуровневой техники. Предлагаю вам погрузиться в недра виртуальной машины 1С и понять, как она работает. Там есть свой "ассемблер" и мы попробуем его в действии!

1 стартмани

21.06.2019    26444    77    Evil Beaver    119    

Выполнение внешней обработки в фоновом задании

Практика программирования Разработка v8 1cv8.cf Бесплатно (free)

Подробное описание подхода к созданию длительной операции на основе внешней обработки. Реализация протестирована на 1С 8.3.12.1714 (x64).

11.05.2019    26567    0    Eret1k    23    

Немного о графических файлах. Сжатие. Распознавание текста

Инструментарий разработчика v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

06.05.2019    6720    10    tusv    6    

Регулярные выражения без внешних компонент? Легко! Промо

Практика программирования Обмен через XML v8 Бесплатно (free)

Сложный способ организовать проверку строки с помощью регулярного выражения в 1С. При этом ни одна внешняя компонента не пострадала. Ну и от платформы (Linux, MustDie) - не зависит.

04.03.2016    60335    0    starik-2005    99    

Практика перехода на Linux и Postgres в небольшой компании (10 пользователей)

Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

Почему я решил поставить давнему клиенту Linux + Postgres вместо Windows + MS SQL? Что меня останавливало раньше?

22.04.2019    27853    0    starik-2005    169    

HTML-клиент у конфигурации 1С

WEB v8 Бесплатно (free)

Приветствую. В этой публикации опишу свой опыт создания html-клиента для конфигурации 1С с помощью http-сервисов. HTML-клиент в этом случае - это frontend (html + css+ js), который генерирует и выдает пользователю конфигурация + backend, который тоже реализован в этой же конфигурации.

17.04.2019    16934    0    Smaylukk    119    

Уменьшаем трафик: HTTP запрос со сжатием GZIP средствами 1С. На примере выгрузки файлов на Яндекс-диск

WEB v8 1cv8.cf Абонемент ($m)

Обработка демонстрирует отправку тела HTTP запроса со сжатием gzip (метод deflate) средствами платформы 1С. Демонстрация происходит на примере отправки текста или файла на Яндекс.Диск.

1 стартмани

03.09.2018    5853    29    uno-c    0    

Инструменты бухгалтера: Виджеты рабочего стола Промо

Универсальные обработки Рабочее место v8 v8::БУ БП3.0 Абонемент ($m)

Настраиваемые виджеты на начальной странице, своеобразная панель для быстрого доступа к объектам. Виджеты это элементы интерфейса в виде цветных прямоугольников со ссылками на объекты конфигурации. Использование виджетов позволяет сконцентрировать на начальной странице часто используемые функции, например, варианты отчетов, списки документов, или используя виджет вводить новый документ прямо из начальной страницы.

2 стартмани

28.08.2017    35394    170    Bazil    28    

Чтение сжатого gzip, deflate HTTP ответа сервера. Без ВК. Уменьши время загрузки и сократи трафик в 3 раза

WEB v8 1cv8.cf Абонемент ($m)

В платформе 1С:Предприятие не реализовано штатного механизма декодирования ответа веб серверов, в которых присутствует gzip сжатие. Некоторые использовали WinHttpRequest.5.1 , кто-то писал ВК. Друзья, хватит. Вот вам решение.

1 стартмани

08.06.2018    13654    69    Malfarion    16    

Создание подключаемой обработки табличной части с диалогом запроса параметров заполнения (управляемые формы)

Обработка документов Обработка справочников Практика программирования v8::УФ 1cv8.cf Абонемент ($m)

Пошаговый пример покажет, как сделать обработку табличной части для документа, предварительно открывающую диалоговое окно, где пользователь может указать требуемые характеристики (параметры), по которым произойдет обработка.

1 стартмани

03.05.2018    45014    116    Mirage78    16    

Обработка печатной формы WORD клиент-сервер УФ

Универсальные печатные формы v8::УФ 1cv8.cf Абонемент ($m)

Это моя первая статья на данном портале, но попытаюсь изложить все понятно и подробно. Долгое время у меня заняло создание такой вот внешней обработки. Есть очень много примеров, как сделать подобное на неуправляемых формах (2.0) и очень мало информации касательно управляемых(3.0), по крайней мере я многого найти не смог в доступе. Создание подобное обработки выглядит вполне несложно, если производить все действия на сервере, как это было с 2.0, но в нашем случае необходимо инициализировать открытие документа на клиенте, чему сильно мешает отсутствие возможности передать макет Active Document с сервера на клиент.

2 стартмани

14.03.2018    23819    83    LeoKeyn    41    

Gant 1C 2.* - диаграмма Ганта с таблицей + Планировщик + Отчет (8.1, на управляемой форме/Такси 8.2, 8.3) Промо

Рабочее место Универсальные обработки Управление проектом Финансовый учет и бюджетирование (FRP) Производство готовой продукции (работ, услуг) Учет рабочего времени Финансовый учет и бюджетирование (FRP) Производство готовой продукции (работ, услуг) Учет рабочего времени v8 1cv8.cf УУ Абонемент ($m)

Внешняя обработка, аналог MS Project в 1Се для работы с задачами: параллельный ввод данных по задачам и график Ганта, дополнительный режим в виде календаря (планировщик), связывание задач и пересчет длительности и дат с учетом выходных, видов связей и запаздываний, расчет затрат, сохранение/открытие проектов в файл на диск или файл ИБ, импорт/экспорт документов Microsoft Project.

1 стартмани

02.12.2011    136020    1068    rare-avis    210    

“Заставим сканер пищать!” или Получаем обратную связь из 1С при сканировании штрихкодов

Сканер штрих-кода Учет ТМЦ Учет ТМЦ v8 1cv8.cf Абонемент ($m)

Получаем обратную связь из 1С при сканировании штрихкодов.

1 стартмани

10.01.2018    40820    100    vadnevzorov    70    

1С: Конвертация данных 3. Инструкции и примеры. EnterpriseData (универсальный формат обмена)

Перенос данных из 1C8 в 1C8 Практика программирования Обмен через XML v8 КД Бесплатно (free)

Что такое КД3? Как начать использовать? Полезные дополнения к документации. Что нужно исправить в типовых обработках и конфигурации. Как изменить правила обмена не снимая конфигурацию с поддержки. Как отлаживать правила обмена?

19.11.2017    182290    0    MaxS    285    

Зачем 1С-нику NoSQL и CRDT

WEB Интеграция Бесплатно (free)

В статье речь пойдет о современных инструментах для хранения, транспорта, обработки и обмена данными на примере популярной NoSQL-базы CouchDB.

12.08.2017    22767    0    unpete    27    

Маркировка: 2D Android Штрихкод сканер + драйвер устройства для 1С Промо

Сканер штрих-кода Розничная торговля Розничная торговля v7.7 v8 1cv8.cf 1cv7.md Абонемент ($m)

Драйвер торгового оборудования и приложение для Android, телефон или планшет в качестве стандартного штрихкод сканера для платформы 1С.

3 стартмани

29.11.2016    44090    176    dreamadv    110    

Как я стал одинэсником и переехал из провинции в Москву

О жизни Россия Бесплатно (free)

История покорения Москвы.

29.07.2017    16834    0    DmitryKSL    132    

54 ФЗ своими руками

ККМ Кассовые операции Розничная торговля Кассовые операции Розничная торговля v8 Розница Розничная и сетевая торговля (FMCG) Россия УУ Бесплатно (free)

Практический опыт внедрения изменений в 54ФЗ в розничной сети, работающей на 1С. Если вы не хотите платить каким-либо подрядчикам, которые "всё сделают и настроят за вас", то статься может оказаться крайне полезной.

17.04.2017    57634    0    comol    124    

Формирование штрихкода EAN-13 в SVG с помощью XDTO

Практика программирования v8 1cv8.cf Россия Абонемент ($m)

В версии платформы 8.3.9 было объявлено о поддержке изображений в формате SVG. Данная обработка демонстрирует работу с данным форматом, а именно его формированием (рисованием). Ну а так как самой популярной картинкой в 1С, наверное, является картинка штрихкода EAN - ее я и решил рисовать.

1 стартмани

24.03.2017    11960    53    kot-stas    19    

Удаление организации из 1С. Чистка базы 1С. Удаление "не удаляемых" объектов Промо

Чистка базы v8 1cv8.cf Абонемент ($m)

Удалить все документы, чтобы в базе осталась только одна организация со своими документами? Удалить всю информацию в регистрах, не связанную с указанной фирмой? Удалить "неудаляемую" номенклатуру? Легко! Используйте эту обработку.

10 стартмани

02.10.2015    51122    309    spy-83    84    

План обмена в формате "EnterpriseData" для 1С 7.7

Обмен через XML 1С7.7<->1C7.7 v7.7 1С7:ТиС Абонемент ($m)

Пример организации надёжной синхронизации данных через универсальный формат "EnterpriseData" между конфигурациями на базе 1С 7.7 и произвольными приложениями.

1 стартмани

07.01.2017    21906    24    binex    23    

"Распределение в запросе" или "избавляемся от перебора"

Математика и алгоритмы Универсальные функции v8 1cv8.cf Россия Бесплатно (free)

Хороший перебор - это отсутствие перебора. Рассмотрим пример замены полного перебора запросом.

16.12.2016    32799    0    alexandersh    48    

Разбираемся с механизмом Дополнительные отчеты и обработки в БСП

Практика программирования БСП (Библиотека стандартных подсистем) v8 1cv8.cf Абонемент ($m)

Чуть более комплексное описание, чем на других ресурсах

1 стартмани

30.10.2016    140883    954    json    66    

Монитор журнала регистрации Промо

Журнал регистрации Администрирование данных 1С WEB v8 1cv8.cf Абонемент ($m)

Позволяет в режиме реального времени отслеживать активность пользователей, накапливать и оповещать о возникновении ошибок, которые попадают в журнал регистрации

2 стартмани

29.06.2015    39888    106    andy23    49    

Редактирование табличной части объекта с помощью СКД

Инструментарий разработчика Практика программирования v8::СКД 1cv8.cf Россия Абонемент ($m)

Тема не нова - похожие решения были и на 8.0. К написанию статьи меня подтолкнул коллега, т.к. я это чудом не считаю. Несколько раз я видел тонны сложнейшего, и посему нерабочего кода, целью которого было сделать нечто похожее средствами, которые для этого не предназначены. В статье дан простейший пример, показывающий, как можно применять средства СКД для редактирования сложной структуры данных, например, табличных частей документов. В частности, рассмотрена работа с набором данных типа "Объект" и событием "Обработка расшифровки"

2 стартмани

16.09.2016    24498    96    Hatson    27    

Примеры скриптов на OneScript

OneScript Россия Абонемент ($m)

В своей работе нам часто приходится заниматься рутинными операциями. При небольшом их объеме "ручное" выполнение еще допустимо, но с ростом их числа все мы задумываемся об автоматизации. Вот тут нам на помощь и приходят скрипты. На этом сайте уже выложено немало примеров различных скриптов, вот и я решил внести свою лепту.

1 стартмани

14.07.2016    28605    41    Drak0n    43    

Набор данных Объект в СКД для решения задач сортировки, нумерации и вывода в отчет произвольных наборов данных

Практика программирования v8::СКД 1cv8.cf Бесплатно (free)

Использование набора данных Объект в СКД, может добавить вашему отчету новые интересные возможности. В этой статье я покажу, как я использовал набор данных Объект при решении одной задачи.

04.07.2016    44757    0    lopatin    12    

Опыт оптимизации и контроля производительности в БД с 3000 пользователей Промо

Производительность и оптимизация (HighLoad) Бесплатно (free)

Данная статья написана по материалам доклада, прочитанного на Конференции Инфостарта IE 2014 29-31 октября 2014 года. Меня зовут Сергей, являюсь руководителем отдела оптимизации и производительности систем в компании "Деловые линии". Цель этого доклада – поделиться информацией о нашем опыте работы с большой базой на платформе 1С, с чем пришлось столкнуться, как удалось обеспечить работоспособность. Уверен, что вам будет интересно, так как подобной информацией мало кто делится, да и про само существование таких систем их владельцы стараются не рассказывать, максимум про это «краем глаза» упоминают участвовавшие в проекте вендоры. **update от 04.03.2016 по вопросам из комментариев

05.08.2015    60369    0    Sergey.Noskov    119    

Учет путевых листов

Обработка документов Печатные формы документов Учет рабочего времени Учет ТМЦ Учет рабочего времени Учет ТМЦ v8 v8::УФ 1cv8.cf БУ УУ Абонемент ($m)

Внешняя обработка по учету путевых листов для управляемых форм. Позволяет сохранять во внешнем файле данные об автомобилях, водителях и путевых листах. Позволяет печатать формы №3 и №4-П. Позволяет вести учет задолженностей водителей за бензин и сравнивать расход по норме (по показаниям спидометра) и фактический расход бензина.

3 стартмани

27.06.2016    14128    79    DrugOn    10    

Google Analytics API, Oauth2.0 и 1c8

Практика программирования WEB v8 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

Обращение к Google Analytics API, Протокол Oauth 2.0 и запросы от 1С:8 без авторизации пользователя

02.05.2016    25628    0    Ольга_tmp    18    

УПД для документа "Поступление товаров и услуг" (БП 3.0) за поставщика

Печатные формы документов Оптовая торговля Производство готовой продукции (работ, услуг) Оптовая торговля Производство готовой продукции (работ, услуг) v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Внешняя печатная форма для документа "Поступление товаров и услуг" позволяет печатать "Универсальный передаточный документ (УПД)" за поставщика в ред. постановления Правительства РФ 1137, 625 и 981

1 стартмани

20.12.2015    22004    273    romanco    18    

Автоматический REST-сервис в «1С:Предприятии». OData. Пример работы из Jscript/AJAX Промо

Практика программирования WEB v8 1cv8.cf Абонемент ($m)

Небольшой обзор REST-сервиса в «1С:Предприятии». Рассмотрен механизм работы c REST-сервером 1С:Предприятия из внешнего приложения - веб-страницы с использованием языка JavaScript и технологии AJAX.

1 стартмани

08.10.2014    76667    75    vano-ekt    48    

Автозаполнение адресов в 1С (API Google autocomplete place)

Практика программирования v8 1cv8.cf Бесплатно (free)

В данной статье вы увидите пример, как можно с помощью API Google autocomplete place делать подсказки при заполнении адреса

19.10.2015    12913    0    d.alexandr    26    

Использование встроенных отчетов для создания анализа корректности данных при исчислении НДС с авансов полученных

Бухгалтерский учет v8 БП2.0 Россия БУ НДС Бесплатно (free)

На Инфостарте много выложено внешних отчетов, направленных на контроль правильности исчисления НДС с авансов полученных. Хочу поделиться своим опытом использования встроенного отчета (для Бухгалтерия предприятия.Редакция 3.0) и порядка создания настроек отчета для процедур контроля за исчислением НДС с авансовых платежей покупателей, особенно в случаях применения различных налоговых ставок НДС

1 стартмани

22.07.2015    8782    0    lvk74    3    

Дополнительные отчеты и обработки для конфигураций, основанных на БСП. Часть 1. Заполнение объектов.

Практика программирования БСП (Библиотека стандартных подсистем) v8 1cv8.cf Россия Абонемент ($m)

В статье приводится аргументация за использование во внешних отчетах и обработках только одного варианта использования - ОткрытиеФормы, и приводится пример обработки заполнения объекта, которая подключается к любой конфигурации ко всем объектам. Обработку легко отлаживать и можно использовать в качестве шаблона для создания других обработок заполнения объектов.

1 стартмани

08.01.2015    35071    72    acrk    23    

Создание внешних печатных форм под управляемым приложением с нуля Промо

Печатные формы документов v8 v8::УФ 1cv8.cf Абонемент ($m)

Когда мне пришлось создавать внешние печатные формы под приложения на БСП ("1С: Бухгалтерия предприятия 3.0", "1С: Управление торговлей 11"), я обнаружил, что нет грамотных инструкций. Те, что имелись, использовали так называемые шаблоны: готовые обработки, в которых необходимо выполнять определенные корректировки. Но как создать сам шаблон, конкретных мануалов не было, справочную информацию я нашел на сайте ИТС и, обработав ее, написал статью, где подробно и понятно объясняются все этапы создания внешней печатной формы для управляемого приложения на примере конфигурации "1С: Бухгалтерия предприятия 3.0"

1 стартмани

05.06.2014    263817    391    signum2009    127    

Настройка ТСД chiperLab 8001 для УТ 11

Терминал сбора данных Учет ТМЦ Учет ТМЦ v8 УТ10 УУ Абонемент ($m)

Расширяем функционал ТСД chiperLab 8001 и загружаем сразу 10 документов Сканируйте 10 накладных за один раз!!!

1 стартмани

23.10.2014    24528    21    antonlinux    4    

Работа с принтером чеков Posiflex PP 6000, 7000, 8000

POS терминал Россия Абонемент ($m)

Некоторые варианты для работы с принтером чеков POSIFLEX AURA 6000, 7000, 8000.

1 стартмани

18.08.2014    64702    146    MrFlanker    24    

Подписываем файлы с помощью ЭЦП средствами 1с Промо

Универсальные обработки Защита и шифрование v8 1cv8.cf Абонемент ($m)

Обработка для подписи с помощью сертификата (ЭЦП) произвольных файлов, только средствами платформы 1с. Работает на всех конфигурациях, но только на последних платформах 8.2 и 8.3, где есть менеджер криптографии.

1 стартмани

05.09.2013    60642    255    anig99    25    

1С Бухгалтерия 8. Часть 1: Настройка параметров учета Промо

Управленческий учет (прочее) v8 БП2.0 Россия БУ Бесплатно (free)

Залогом правильного ведения бухгалтерского и налогового учета в программе 1С Бухгалтерия 8 является правильная настройка параметров учета и учетной политики. Разработчики 1С постарались, чтобы эти настройки были простыми и понятными. Тем не менее, есть ряд подводных камней, о которые могут спотыкаться даже опытные пользователи.

05.11.2011    223363    0    vdi1950    124