Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут! (в рабочие часы)

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

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

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

Макет печатной формы со штрихкодом

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

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

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

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

Создание объекта-штрихкода

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

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

Область.Рисунки.Штрихкод.Объект.ТипКода = ТипКода;
Область.Рисунки.Штрихкод.Объект.Сообщение = ?(ПустаяСтрока(""),Штрихкод,"");
Область.Рисунки.Штрихкод.Объект.ТекстКода = Штрихкод;

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

В вышеприведенном примере мы вначале получаем тип штрих-кода, потом назначаем рисунку тип штрих-кода и сам штрих-код.

Вот и всё! Установка штрих-кода на печатной форме завершена.

Наш видеоурок по созданию внешних печатных форм и подключению их на примере конфигурации 1С Бухгалтерии:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Остались вопросы?

СПРОСИТЕ в комментариях!

Комментариев: 15 на “Вывод на печатную форму 1С штрих-кода
  1. Доброй ночи.
    чет я туплю — не понял в какое место
    «Функция ПечатьДокумента(СуммыВРублях = Ложь)» нужно вставить этот кусок ?
    можно для тупых уточнить )

    Ответить

    • В то месте, где планируете выводить штрих-код)))

      В 1С печатных форм более 1000 штук, для каждой написать не реально 🙂

      Ответить

  2. Почему печать штрих кода на рабочей станции выдает ошибку?
    Не удалось сформировать внешнюю печатную форму!
    Поле объекта не обнаружено (ТипКода)

    Ответить

    • Проверьте что картинка на форме имеет нужный тип.

      Ответить

  3. ПолучитьЗначениеТипаШтрихкодаДляЭУ откуда эта функция?

    Ответить

    • Данная функция находится в обработки.ПечатьЭтикеток

      Ответить

  4. Доброго времени суток! Все сделал как описано у Вас выше. Не работает))). Текст кода:
    ОбластьСтрока = Макет.ПолучитьОбласть(«Строка»);
    Штрихкод = «0100001234567890000000020160824000000000»;
    ОбластьСтрока.Рисунки.Штрихкод.Объект.ТипКода = 4;
    ОбластьСтрока.Рисунки.Штрихкод.Объект.Сообщение = ?(ПустаяСтрока(«»),Штрихкод,»»);
    ОбластьСтрока.Рисунки.Штрихкод.Объект.ТекстКода = Штрихкод;

    При отладке ОбластьСтрока.Рисунки.Штрихкод.Объект ПУСТОЕ. Естественно ТипКода, Сообщение и ТекстКода он не понимает. Подскажите, где я туплю. Спасибо

    Ответить

    • Вячеслав, здравствуйте!

      У меня единственная мысль — что то с рисунком который вставляется в макет. Похоже что у него не установлен тип «штрихкод».

      Ответить

  5. Поле объекта недоступно для чтения (Объект)
    ОбластьМакета.Рисунки.D1.Объект.Текст=СсылкаНаОбъект.Номер;

    Ответить

  6. ОбластьМакета.Рисунки.D1.Объект
    У ВСЕХ НЕОПРЕДЕЛЕНО. Странная статья))

    Ответить

    • В статье упущена инициализация компонента штрихкода, примерно так:
      Попытка
      КомпонентШК = Новый COMОбъект(«V8.Barcod.1»);
      Исключение
      Предупреждение(«Компонента «»1С:Печать штрихкодов»» не установлена на данном компьютере!»);
      КонецПопытки;

      Ответить

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

        В статье упущена инициализация компонента штрихкода, примерно так:
        Попытка
        КомпонентШК = Новый COMОбъект(«V8.Barcod.1»);
        Исключение
        Предупреждение htp://rucaptcha.com
        («Компонента «»1С:Печать штрихкодов»» не установлена на данном компьютере!»);
        КонецПопытки;

        Ответить

  7. {Документ.РеализацияТоваровУслуг(238,2)}: Переменная не определена (Область)
    <>Область.Рисунки.Штрихкод.Объект.ТипКода = ТипКода; (Проверка: Толстый клиент (обычное приложение))
    {Документ.РеализацияТоваровУслуг(239,2)}: Переменная не определена (Область)
    <>Область.Рисунки.Штрихкод.Объект.Сообщение = ?(ПустаяСтрока(«»),Штрихкод,»»); (Проверка: Толстый клиент (обычное приложение))
    {Документ.РеализацияТоваровУслуг(240,2)}: Переменная не определена (Область)
    <>Область.Рисунки.Штрихкод.Объект.ТекстКода = Штрихкод; (Проверка: Толстый клиент (обычное приложение))
    {Документ.РеализацияТоваровУслуг(234,12)}: Процедура или функция с указанным именем не определена (ПолучитьЗначениеТипаШтрихкодаДляЭУ)
    ТипКода = <>ПолучитьЗначениеТипаШтрихкодаДляЭУ(ПланыВидовХарактеристик.ТипыШтрихкодов.Code39); (Проверка: Толстый клиент (обычное приложение))

    Ответить

  8. Да статья «урезанная».

    Ответить

  9. Функция ПолучитьЗначениеТипаШтрихкодаДляЭУ(ТипКода)
    Перем Значение;

    Если ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN8 Тогда
    Значение = 0;
    ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13 Тогда
    Значение = 1;
    ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN128 Тогда
    Значение = 2;
    ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.Code39 Тогда
    Значение = 3;
    ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.Code128 Тогда
    Значение = 4;
    Иначе
    Значение = -1;
    КонецЕсли;

    Возврат Значение;
    КонецФункции // ПолучитьЗначениеТипаШтрихкодаДляЭУ()

    Ответить

Добавить комментарий:

Ваш адрес email не будет опубликован.