1с розница товары с одинаковым штрихкодом. «1С:Розница»: осваиваем штрихкоды. Как добавить новый штрихкод номенклатуре документа

Порою в рамках штрихкодирования документов или этикеток на печатную форму 1С 8.2 (8.3) необходимо вывести произвольный штрих-код.

Как это сделать, рассмотрим ниже.

Для вывода штрих-кода обязательно (кроме конфигураций на базе БСП 2 и выше) необходима установка компонента . Найти его можно на диске ИТС или на пользовательском портале 1С.

Вставка штрих-кода на печатную форму 1С

Первый шаг — необходимо создать новый объект — рисунок. Для этого в макете необходимо нажать Таблица — Рисунки — Вставить объект… Система предложит выбрать тип объекта:

Получите 267 видеоуроков по 1С бесплатно:

Нужно выбрать Элемент управления 1С.V8.Печать штрих-кодов . Допустим, назовём рисунок-объект «Штрихкод». Для программного вывода на печатную форму можно воспользоваться следующим кодом:

ТипКода = ПолучитьЗначениеТипаШтрихкодаДляЭУ(ПланыВидовХарактеристик. ТипыШтрихкодов. Code39) ; Если ТипКода = - 1 Тогда ОбщегоНазначения. СообщитьОбОшибке("Для штрихкода формата " "" + ПланыВидовХарактеристик. ТипыШтрихкодов. EAN13 + "" " не существует соответствующего типа в ЭУ " "1С:Печать штрихкодов" ". | Позиция будет пропущена" ) ; КонецЕсли ; Область. Рисунки. Штрихкод. Объект. ТипКода = ТипКода; Область. Рисунки. Штрихкод. Объект. Сообщение = ? (ПустаяСтрока("" ) , Штрихкод, "" ) ; Область. Рисунки. Штрихкод. Объект. ТекстКода = Штрихкод;

Штрихкодирование повышает эффективность розничного магазина за счет:

  • Исключения ошибок операторов
  • Уменьшения возможности для махинаций сотрудников
  • Ускорения обслуживания клиентов.

В статье рассмотрим, как настроить штрихкодирование в 1С:Розница редакции 2.

В частности разберем:

Применимость

Статья написана для редакции 1С:Розница 2.1 . Если вы используете эту редакцию, отлично – прочтите статью и внедряйте рассмотренный функционал.

Если же вы планируете начать внедрение 1С:Розница, то скорее всего будет использоваться более свежая редакция. Интерфейсы и её функционал могут отличаться.

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

Что такое штрихкод, преимущества использования

Прежде всего, для более глубокого понимания, обратимся к базовой теории штрихкодирования товаров.

Что же такое штрихкод?

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

Комбинация таких прямоугольников представляет какие-то данные в машинном коде. Штрихкод чем-то напоминает заводской номер.

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

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

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

Так, ввод артикула товара из 12 цифр нажатием кнопок на клавиатуре может занять у оператора минимум шесть секунд. В то время как считывание штрихкода компьютером занимает лишь доли секунды.

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

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

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

Типы и стандарты штрихкодов

Существует довольно большое количество различных стандартов штрихкодов. Каждый из них имеет свои ограничения и преимущества. Разные стандарты штрихкодов используются обычно для разных целей.

Изначально существовали только линейные штрихкоды. Это тип одномерных штрихкодов, которые можно считать в одном направлении одной линией.

Рассмотрим примеры линейных кодов, с которыми и будем в дальнейшем работать.

Первая группа линейных штрихкодов – это EAN8 и EAN13 (European Article Number). Это европейские стандарты цифрового штрихкода, которые предназначены для кодирования идентификатора товара и производителя.

Штрихкоды данных типов могут хранить только цифровые значения. EAN8 хранит восьмизначное число, EAN13 – тринадцатизначное число. Примеры данных штрихкодов представлены на рисунке 1. В основном мы будем работать с типом штрихкодов EAN13 .

Рис.1 Примеры штрихкодов (EAN8 и EAN13)

На основании штрихкода EAN13 часто строится другой тип штрихкода ITF 14 . Данный тип штрихкода используется для оптовой транспортной упаковки товара. Основное его отличие и преимущество по сравнению с EAN13 заключается в том, что данный тип штрихкода распечатывается в гораздо большем размере.

Соответственно, он может быть размещен на какой-то поверхности, требования к которой значительно меньше, чем в случае с EAN13 . Например, даже при печати на картонной коробке он будет успешно считан автоматическим оборудованием.

Так как данный тип построен на EAN13 , он тоже хранит только цифровое значение (четырнадцатизначное число). Пример данного штрихкода представлен на рисунке 2.

Рис. 2 Пример штрихкода ITF-14

Следующая группа штрихкодов, которая используется довольно часто – это Code 39/128 и EAN128 . Отличие этих типов, прежде всего в том, что с помощью них можно закодировать не только цифры, но и буквы и даже специальные символы (скобки, знаки подчеркивания и т.д.). Соответственно, и информацию в них можно закодировать более полную.

Но есть и определенные минусы – это большая ширина штрихкода по сравнению с предыдущими типами (см. рис. 3).

Тип штрихкода EAN128 вообще позволяет закодировать в себе неограниченное количество информации, но при этом ширина штрихкода будет соответственно расти.

Рис. 3 Пример штрихкода EAN128

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

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

Данные штрихкоды становятся все более популярными. Наиболее распространенным представителем двумерных штрихкодов является QR код.

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

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

В системе 1С:Розница поддерживается работа только с линейными штрихкодами. Более подробно остановимся на описании использования кодов EAN13 и Code39 .

И сначала приведем их основные отличия.

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

Тип Code39 позволяет кодировать не только цифры, но и буквы и специальные символы, ширина штрихкода зависит от объема кодируемой информации.

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

Код Code39 может считываться только в исходном положении, т.е. если его перевернуть, то он уже не считается.

С учетом перечисленных отличий, в основном используется код EAN13 : и для маркировки штучного и весового товара, и для маркировки других объектов системы штрихкодами.

Код Code39 применяется в качестве дополнительного, когда необходимо закодировать буквы и символы (например, для кодирования серий электронных товаров).

Оправданность перемаркировки товаров собственными штрихкодами

Говоря о целесообразности использования собственных штрихкодов следует отметить, что некоторые компании абсолютно все штрихкоды производителей переклеивают собственными внутренними штрихкодами.

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

Безусловно сейчас основная часть розничного ассортимента товаров поступает уже промаркированной каким-то штрихкодом производителя и это как раз штрихкоды EAN13 .

Но здесь возможно несколько ситуаций.

Может получиться так, что разный товар от разных производителей будет иметь один и тот же штрихкод. В данной ситуации нет ничего критичного, и система 1С:Розница даже поддерживает данный вариант использования.

В конфигурации Розница 2 можно настроить возможность учета не уникальных штрихкодов.

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

Это несколько замедляет обработку товаров, а также повышает вероятность операторской ошибки.

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

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

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

Использование штрихкодов в системах 1С

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

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

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

Рассмотрим шаблон внутреннего штрихкода типа EAN13 .

2M LL XXXXXXXX K

Данный тип позволяет закодировать цифровой код, состоящий из 13 цифр. Значащими являются первые 12 из них.

Тринадцатая цифра (K ) является контрольным символом, который рассчитывается автоматически по определенному алгоритму типа EAN13 .

Первой цифрой всегда является цифра 2 – это общепринятое правило формирования внутреннего штрихкода компании.

Вторая цифра (M ) представляет собой префикс штрихкода штучного товара. Именно по нему система 1С:Розница будет понимать, что данный товар является штучным. С этим признаком будут связаны определенные алгоритмы в конфигурации Розница 2.

Третья и четвертая цифры штрихкода (LL ) – двухзначное число, которое является префиксом штрихкода узла распределенной информационной базы.

Оставшиеся цифры с пятой по двенадцатую (XXXXXXXX ) представляют собой номер товара по порядку.

Настройки штрихкодирования

Сначала следует настроить штрихкодирование в системе 1С:Розница .

Все настройки расположены в разделе Администрирование.

В данном случае нас интересуют Настройки номенклатуры , которые появятся после выбора соответствующей команды (см. рис. 4)

Рис.4 Вызов настроек номенклатуры

В настройках номенклатуры присутствует целая группа настроек, которая связана со штрихкодированием товаров (см. рис. 5).

Рис.5 Группа настроек Штрихкодирование

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

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

Первый префикс позволяет системе 1С:Розница понять, что данный штрихкод является именно штрихкодом штучного товара.

Если используется распределенная информационная база (РИБ) и существует несколько узлов для разных магазинов, то данное значение префикса будет передаваться при обмене. Это значение будет единым для всех магазинов.

Второй префикс (префикс штрихкода узла РИБ) наоборот не участвует в обмене и имеет разные значения для разных узлов РИБ.

Дело в том, что обмен между разными узлами происходит сеансами, не в режиме реального времени.

Соответственно, если бы данного префикса штрихкода узла РИБ не существовало, то могла бы возникнуть ситуация, когда в разных узлах пользователи создали бы товары с одинаковым штрихкодом – даже если не уникальные штрихкоды были бы запрещены.

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

Данный префикс состоит из двух цифр и, соответственно, может принимать значения от 00 до 99. Для единственного магазина значение префикса можно не определять.

Ввод информации о штрихкодах

Информация о штрихкодах товара вводится из карточки номенклатуры. Команда для открытия списка номенклатуры находится в разделе (см. рис. 6).

Рис. 6 Открытие списка номенклатуры

Рис.7 Форма списка номенклатуры

В форме списка номенклатуры двойным кликом мыши можно выбрать любую позицию номенклатуры и открыть ее карточку (см. рис. 8).

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

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

Рис. 8 Карточка позиции номенклатуры

Рис. 9 Создание штрихкодов

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

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

После ввода требуемых данных следует нажать на кнопку Записать и закрыть .

Для создания нового (внутреннего) штрихкода на форме создания существует кнопка Новый штрихкод (см. рис. 9), по нажатию на которую программа Розница 2 сама создает новый штрихкод типа EAN13 в соответствии с ранее рассмотренным шаблоном.

Если для номенклатуры ведется учет по характеристикам, то при создании штрихкода необходимо указать характеристику (см. рис. 10). В этом случае поле характеристика является обязательным для заполнения.

Рис.10 Создание штрихкода в случае учета по характеристикам

В старых системах (Розница ред. 1 , Управление торговлей 10.3 ) была возможность установки штрихкода на номенклатуру, без обязательного указания характеристики.

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

В новом поколении систем данное поведение было изменено. Теперь штрихкод строго идентифицирует сочетание Номенклатура + Характеристика .

Если требуется просмотреть список всех штрихкодов, которые введены в систему 1С:Розница , то можно в разделе Нормативно-справочная информация в группе Смотри также (слева внизу) воспользоваться командой Штрихкоды .

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

Рис. 11 Форма списка всех штрихкодов.

Где и как в системе можно работать со штрихкодами?

Рассмотрим, где в конфигурации Розница 2 используются введенные нами штрихкоды. Во-первых, это все документы в которых есть табличная часть Товары . В них штрихкод будет использоваться для подбора товаров.

Кроме этого, штрихкод может быть считан и обработан в рабочем месте кассира.

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

На рисунке 12 представлен документ “Реализация товаров” . Обратите внимание, в командной панели табличной части Товары присутствует специальная кнопка Ввести штрихкод , по нажатию на которую открывается специальное диалоговое окно, в котором можно вручную ввести требуемый штрихкод.

Рис. 12 Заполнение табличной части документа по штрихкоду

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

После ввода штрихкода какого-либо из товаров и нажатия клавиши Enter система 1С:Розница находит данную номенклатуру и добавляет ее в чек (см. рис. 13).

Рис. 13 Рабочее место кассира

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

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

В списке номенклатуры через меню все действия доступна команда Поиск по штрихкоду (см. рис.14).

Также следует иметь ввиду, что существует стандартная горячая клавиша для ввода штрихкода F7 . Она же работает и во всех документах.

Рис. 14 Поиск по штрихкоду в списке номенклатуры

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

В списке номенклатуры, при считывании несуществующего в системе значения штрихкода, программа Розница 2 предложит создать новую позицию с данным штрихкодом.

Если с предложением системы согласиться, то откроется для заполнения карточка позиции номенклатуры.

Штрихкодирование в 1С:Управлении торговлей 11

В 1С:Управлении торговлей штрихкодирование находит и другое применение. Штрихкоды выводятся практически во все типовые печатные формы, и используются для быстрого поиска конкретных документов. Расширен перечень объектов, для которых предусмотрена печать этикеток со штрихкодом: для доставки, складских ячеек, упаковочных листов и пр.

Игорь Сапрыгин,
г. Кемерово

В последние годы широкое распространение получили технологии автоматической идентификации с помощью компьютерной техники. Данные технологии направлены на повышение производительности и снижение затрат труда.

Штриховой код – информационный знак, предназначенный для автоматизированной идентификации и учета информации о товаре, закодированной в виде цифр и штрихов.

Функции штрихкода:*

  • Идентификация товаров с помощью специальных устройств;
  • Автоматизация учета и контроля товаров;
  • Оперативное управление движением товара;
  • Повышение скорости обслуживания покупателей;
  • Информационное обеспечение покупателей.

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

Компонент 1С Печать штрихкодов

Часто пользователь сталкивается с ситуацией, когда на печатную форму 1С 8.3, документ или этикетку, необходимо вывести штрихкод. В программах 1С 8.3 используется система штрихкодов номенклатуры, которая позволяет производить быстрый подбор товаров и множество других действий. Для его вывода в печатную форму предназначен объект «1С:Печать штрихкодов». Данный элемент управления предназначен для формирования штрихкодов следующих форматов:

EAN8, EAN13, EAN13 AddOn 2, EAN13 AddOn 5, ITF14, RSS14, EAN128, Code39, Code39 Full ASCII, Code93, Code128, Code16k, Industrial 2 of 5, Interleaved 2 of 5, CodaBar, PDF417.

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

Если данный элемент не установлен, при попытке сделать печать компьютер будет выдавать ошибку с текстом: «Компонента печать штрихкодов 1С не установлена на данном компьютере». Соответственно, необходимо произвести его установку.

Также при печати могут возникнуть и другие ошибки, например, «Ошибка внешней компоненты» – 1CBarCode: некорректное значение свойства «Шрифт». Ее исправление также «лечится» установкой компоненты «1С:Печать штрихкодов» – «1CBarCode.exe» последней версии.

Рис.1 Сообщение об ошибке

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



Рис.2 Окно скачивания компоненты для печати штрихкода

Данный драйвер используется в конфигурациях, не содержащих «1С:Библиотека подключаемого оборудования».


Рис.3 Окно скачивания компоненты для печати штрихкода

После скачивания файла произведем установку.



Рис.4 Первое окно установки компоненты для печати штрихкода



Рис.5 Второе окно



Рис.6 Третье окно установки

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

Печать ценников с штрихкодом

Рассмотрим печать штрихкода на примере «1С:Розница». Обратимся к пункту «Цены номенклатуры» и рассмотрим вывод на печать ценников товаров, на которые уже назначена цена.



Рис.7 Пункт меню «Цены номенклатуры»

Из документа «Установка цены номенклатуры» в кнопке «Печать» доступны печать ценников и этикеток.



Рис.8 Выпадающее меню программы «Печать ценников» и «Этикеток»

В обработке уже будут выбраны товары, поэтому нам нужно будет задать «Шаблон ценника». Если его нет, то его легко создать.



Рис.9 Создать шаблон этикетки



Рис.10 Ценник со штрихкодом

Нажав кнопку «Редактировать макет», переходим в редактор шаблонов и выбираем «Загрузить шаблон по умолчанию».



Рис.11 Создание (редактирование) шаблона ценника со штрихкодом

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

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

Рис.12 Печать ценника со штрихкодом

Мы вывели на печать штрихкод товара.



Рис.13 Печать документа «Ценник со штрихкодом»

Вставка штрихкода в макет печатной формы 1С

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


Рис.14 Окно конфигуратора. Вставка объекта

В появившемся окне переключить указатель в положение «Элемент управления» и мы увидим, что появился тип объекта «1С.V8. Печать штрих-кодов».


Рис.15 Окно конфигуратора. Вставка объекта «Элемент управления» - Объект печать штрихкода

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

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

Создавая штрих коды своих товаров в программе 1С: Розница 8 , пользователь может привязать их к какой-то конкретной характеристике товаров и из единице измерения. Например, черные туфли 43 размера или синие туфли 45 размера.

Теперь перейдем непосредственно к внесению в программу новых штрих кодов товаров. Сделать это можно на карточке товара, зайдя на закладку «Штрихкоды».

Ввод штрих кода может осуществляться двумя способами:

  • с помощью сканера,
  • с помощью кнопки «Новый штрихкод».

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

Ввод штрихкода с помощью сканера

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

Ввод штрихкода кнопкой «Новый штрихкод»

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

Преимущества использования штрихкодов

Товары, на которые в системе учета заведены штрихкоды, можно автоматически идентифицировать с помощью сканера, если:

  • открыта форма списка номенклатуры;
  • открыт документ (расходная, приходная накладная и т. п.);
  • товар проходит регистрацию в кассе.

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

Пример печати штрихкодов в табличном документе 1С:Предприятия 8.2 предназначен для самостоятельной модификации и для последующего применения в режиме управляемого приложения. Ниже приведены примеры для EAN-13, GS1-128, QR-кода и других распространенныхформатов штрихкодов.

Пример рассчитан на работу с ПО StrokeScribe версии 4.0.4 или старше.

Подготовка макета для вывода штрихкода

1. Создайте новый отчет в конструкторе 1С:Предприятия 8.2 и дайте ему имя ОтчетШтрихкод (это имя будет использовано в модуле ниже).

2. Для отчета ОтчетШтрихкод создайте макет табличного документа под именем МакетШтрихкод .

3. В макете создайте область произвольного размера с именем ОбластьШтрихкод .

4. Поместите в область картинку (меню Таблица->Рисунки->Картинка) с размерами будущего штрихкода. В свойствах картинки укажите имя - РисунокШтрихкод .

В результате всех действий должен получиться макет отчета, похожий на показанный на рисунке:

Модуль отчета


Добавьте приведенный ниже код в модуль отчета. Самостоятельно смодифицируйте пользовательский интерфейс отчета для вызова обработчика команды. Данная реализация модуля создает единичный QR-код и легко модифицируется под создание нескольких штрихкодов разных форматов внутри одной области.

&НаСервере Функция ДокНаСервере() ТабДок = Новый ТабличныйДокумент; Макет = Отчеты.ОтчетШтрихкод.ПолучитьМакет("МакетШтрихкод"); Область = Макет.ПолучитьОбласть("ОбластьШтрихкод"); //Обратите внимание на совпадение имен отчета, макета и области в модуле и в дизайне barcode = ПолучитьCOMОбъект("","STROKESCRIBE.StrokeScribeClass.1"); //Вы не забыли установить StrokeScribe? ИмяФайла=ПолучитьИмяВременногоФайла("wmf"); //Временный файл во временном каталоге с расширением.wmf barcode.Alphabet>=25;//QR CODE barcode.Text="123ABCD";//Данные для штрихкода код=barcode.SavePicture(ИмяФайла, 7, //7=WMF 100, //Ширина картинки штрихкода 100); //Высота штрихкода Если код<>0 Тогда //Проверка результата генерации штрихкода Сообщить(строка(код) + " - " + barcode.ErrorDescription); Возврат Ложь; КонецЕсли; //Убедитесь в совпадении имени объекта рисунка здесь и в дизайне рис=Область.Рисунки.РисунокШтрихкод; рис.РазмерКартинки=РазмерКартинки.Пропорционально; рис.Линия = Новый Линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии); //Вокруг штрихкода не должно быть рамки рис.Картинка = Новый Картинка(ИмяФайла); //Указывается то же имя файла, что и в SavePicture ТабДок.Вывести(Область); УдалитьФайлы(ИмяФайла);//Стереть временный файл с картинкой Возврат ТабДок; КонецФункции &НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) ТабДок1=ДокНаСервере(); Если ТабДок1<>Ложь Тогда ТабДок1.Показать(); КонецЕсли; КонецПроцедуры



Результат работы данного модуля - таблица с внедренной картинкой QR Code. Для выбора формата штрихкода, укажите другую константу в свойстве Alphabet. Для наиболее распространенных форматов штрихкодов ниже приведены специализированные примеры.

Замечания по модулю отчета:

Для успешного выполнения вызова ПолучитьCOMОбъект() не забудьте установить ПО StrokeScribe. При работе в режиме клиент-сервер, ПО StrokeScribe должно быть установлено на сервере. На клиентских ПК установка StrokeScribe не требуется.

Вызов ПолучитьИмяВременногоФайла() требуется для получения произвольного имени промежуточного файла, в котором будет сохранено изображение штрихкода перед передачей его в табличный документ. Файл должен существовать до вызова ТабДок.Вывести(Область) . После этого временный файл может быть удален. Если планируется создание нескольких штрихкодов в одной области, то для каждого штрихкода должен быть создан свой временный файл. Так как SavePicture сохраняет штрихкод в формате WMF, то создаваемому файлу присваивается соответствующее расширение.

При желании, может быть использовано и фиксированное имя файла, например: ИмяФайла="c:\temp\barcode.wmf" . Разумеется, что папка "c:\temp" должна существовать и быть доступной для создания файлов.

Присваивание barcode.Alphabet= задает формат штрихкода. Константы типов штрихкодов доступны в документации. Примеры создания наиболее распространенных штрихкодов приведены ниже.

Данные, присваиваемые barcode.Text , зависят от формата штрихкода. Например, EAN-13 не может отображать буквы и имеет фиксированную длину, а CODE 128 не работает с кириллицей. Если StrokeScribe не может обработать строку, то в свойство Error будет записано ненулевое значение. В модуле используется упрощенная проверка ошибок - результат всех операций вместе помещается в переменную код : код=barcode.SavePicture() .

Вызов SavePicture() сохраняет изображение штрихкода во временном файле. Указание 7 во втором параметре вызова SavePicture() создаст векторное масштабируемое изображение в формате WMF. В коммерческой версии StrokeScribe доступны также форматы JPG, PNG, GIF, BMP24 и EMF. Создание растровых изображений штрихкода не рекомендуется из-за большого объема данных и плохой приспособленности к масштабированию, но может применяться в случае, если тонкий клиент не поддерживает WMF.

В конструкции Если код<>0 проверяется результат сохранения картинки штрихкода в файле. Код будет ненулевым и в том случае, если указан несуществующий тип штрихкода или в свойство Text посланы данные, не отображаемые штрихкодом выбранного типа. Текстовое пояснение к коду ошибки доступно в свойстве ErrorDescription . Результат каждой операции с объектом штрихкода можно дополнительно контролировать проверкой значения свойства Error.

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

Примеры создания штрихкодов в отчете 1С 8.2

Ниже даны примеры создания некоторых распространенных форматов штрихкодов. Так как некоторые из форматов имеют дополнительные настройки, рекомендуем обратиться к страницам, ориентированным на определенный формат штрихкода (см. меню сайта слева) и к документации по свойствам StrokeScribe.

Пожалуйста, обратите внимание - версия 1С:Предприятия 8.2.12.96, на которой производилось тестирование, некорректно центрирует изображения WMF, сдвигая их вправо. Поэтому не рекомендуется уменьшать чистые зоны штрихкодов (свойства HBorderSize и QuietZone2D) во избежание потери части линий штрихкода.

EAN-13


Для вывода EAN-13, установите свойство Alphabet=3 . В свойство Text запишите цифровой 12-значный код товара (или 13-значный, если известна контрольная сумма). Вычисление и проверка контрольной суммы выполняется автоматически. При передаче 13-значного кода с неверной контрольной суммой, соответствующий код ошибки будет выставлен в свойстве Error.



Barcode.Alphabet=3; //EAN13 barcode.Text="123456789012"; код=barcode.SavePicture(ИмяФайла, 7, 100, 60);

CODE 128


Штрихкод CODE 128 формируется при установке свойства Alphabet=5 . В свойство Text можно записать любые символы ASCII, в том числе и управляющие коды. Обратите внимание - CODE 128 не поддерживает кириллицу. При записи недопустимых символов в свойство Text, в свойстве Error будет выставлен соответствующий код ошибки.


Смодифицируйте исходный текст модуля, как показано ниже:


Barcode.Alphabet=5; //CODE128 barcode.Text="123ABC" + Символ(9) + "def"; код=barcode.SavePicture(ИмяФайла, 7, 100, 60);



Символ(9) - функция языка 1C - кодирует символ табуляции (ASCII TAB). Все нечитаемые символы отображаются, как * в подписи под штрихкодом. CODE 128 позволяет задать произвольный текст подписи, который будет выведен под штрихкодом вместо стандартного отображения закодированных данных:

Barcode.Alphabet=5; barcode.Text="123ABC" + Символ(9) + "def"; barcode.TextBelow="моя подпись";

ITF-14


Формат штрихкода ITF-14 задается установкой свойства Alphabet=7 . В свойство Text запишите цифровой 13-значный цифровой код (или 14-значный, если известна контрольная сумма). Вычисление и проверка контрольной суммы выполняется автоматически. При передаче 14-значного кода с неверной контрольной суммой, соответствующий код ошибки будет выставлен в свойстве Error.

Смодифицируйте исходный текст модуля, как показано ниже:


Barcode.Alphabet=7; //ITF14 barcode.Text="1234567890123"; barcode.ITF14BearerBox=1; код=barcode.SavePicture(ИмяФайла, 7, 100, 30);


Свойство ITF14BearerBox выводит ITF-14 с прямоугольной рамкой, обычно присутствующей на штампах для гофрированной тары. Для вывода штрихкода только с горизонтальными защитными линиями, укажите ITF14BearerBox = 0 .

GS1-128 (ранее EAN-128)

Data Matrix


Формат штрихкода Data Matrix задается установкой свойства Alphabet=8 . Data Matrix позволяет кодировать любые данные, включая двоичные. Передача кириллицы в кодовой странице CP1251 не разрешается стандартом, но фактически используется в штрихкодах Почты России и некоторых банков. Создание Data Matrix, содержащих ECI=22 допустимо, если достоверно известно, что сканирующее оборудование и считывающее ПО поддерживают ECI. Для распознавания Data Matrix с кириллицей на мобильных телефонах, требуется кодирование в UTF-8.

Смодифицируйте исходный текст модуля, как показано ниже:

Barcode.Alphabet=8; //DATAMATRIX barcode.Text="123abcDEF"; код=barcode.SavePicture(ИмяФайла, 7, 100, 100);

Aztec


Штрихкод Aztec задается установкой свойства Alphabet=33 . Aztec позволяет кодировать любые данные, включая двоичные. Кириллица в кодовой странице CP1251, по установившейся практике, передается в режиме кодирования двоичных данных. Стандарт требует указания идентификатора ECI=22 перед использованием кириллицы, но тем не менее, не все современное оборудование и ПО поддерживают ECI. Распознавание Aztec не поддерживается почти всеми мобильными телефонами, за исключением специализированных моделей для складского применения.

Для печати кода Aztec, смодифицируйте исходный текст модуля, как показано ниже:


Barcode.Alphabet=33; //AZTEC barcode.Text="123ABcd"; код=barcode.SavePicture(ИмяФайла, 7, 100, 100);

QR Code


QR Code генерируется при установке свойства Alphabet=25 . Данный формат позволяет кодировать текстовые и двоичные данные. Кодирование кириллицы для распознавания на мобильных телефонах должно осуществляться в кодировке UTF-8. Применение идентификаторов ECI должно осуществляться только при уверенности, что считывающее оборудование и ПО поддерживают индикацию ECI. Для изменения уровня коррекции ошибок используйте свойство QrECL.

Приведенный здесь пример предназначен для создания QR-кода для мобильных приложений. Большинство складских и офисных применений в России (при распознавании специализированными сканерами) требуют прямой передачи текста в кодовой странице CP1251. Для этого установите UTF8=0

1С: Бухгалтерия 8

"Программа 1С Бухгалтерия 8 создана для автоматизации бухгалтерского и налогового учета, включая подготовку обязательной регламентированной отчетности, на коммерческих предприятиях: оптовую и розничную торговлю, комиссионную торговлю, оказание услуг, производство и тому подобное.


1С: Предприниматель 8

Программа "1С:Предприниматель 8" - создана для ведения бухгалтерского учета и составления отчетности индивидуальными предпринимателями ИП, ЧП, ПБОЮЛ. Программа позволяет вести Книгу учета доходов и расходов и хозяйственных операций индивидуальных предпринимателей, являющихся плательщиками налога на доходы физических лиц (НДФЛ).


1С: Предприятие 8 Лицензии.

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