Вывод на печатную форму 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. Мы работаем в Москве и области.
СПРОСИТЕ в комментариях!
Roman:
Доброй ночи.
чет я туплю — не понял в какое место
«Функция ПечатьДокумента(СуммыВРублях = Ложь)» нужно вставить этот кусок ?
можно для тупых уточнить )
Кирилл:
В то месте, где планируете выводить штрих-код)))
В 1С печатных форм более 1000 штук, для каждой написать не реально 🙂
Нина:
Почему печать штрих кода на рабочей станции выдает ошибку?
Не удалось сформировать внешнюю печатную форму!
Поле объекта не обнаружено (ТипКода)
Кирилл:
Проверьте что картинка на форме имеет нужный тип.
Роман:
ПолучитьЗначениеТипаШтрихкодаДляЭУ откуда эта функция?
Александр:
Данная функция находится в обработки.ПечатьЭтикеток
Вячеслав:
Доброго времени суток! Все сделал как описано у Вас выше. Не работает))). Текст кода:
ОбластьСтрока = Макет.ПолучитьОбласть(«Строка»);
Штрихкод = «0100001234567890000000020160824000000000»;
ОбластьСтрока.Рисунки.Штрихкод.Объект.ТипКода = 4;
ОбластьСтрока.Рисунки.Штрихкод.Объект.Сообщение = ?(ПустаяСтрока(«»),Штрихкод,»»);
ОбластьСтрока.Рисунки.Штрихкод.Объект.ТекстКода = Штрихкод;
При отладке ОбластьСтрока.Рисунки.Штрихкод.Объект ПУСТОЕ. Естественно ТипКода, Сообщение и ТекстКода он не понимает. Подскажите, где я туплю. Спасибо
Кирилл:
Вячеслав, здравствуйте!
У меня единственная мысль — что то с рисунком который вставляется в макет. Похоже что у него не установлен тип «штрихкод».
Кузнецов Денис:
Поле объекта недоступно для чтения (Объект)
ОбластьМакета.Рисунки.D1.Объект.Текст=СсылкаНаОбъект.Номер;
Владимир:
ОбластьМакета.Рисунки.D1.Объект
У ВСЕХ НЕОПРЕДЕЛЕНО. Странная статья))
Антон Волков:
В статье упущена инициализация компонента штрихкода, примерно так:
Попытка
КомпонентШК = Новый COMОбъект(«V8.Barcod.1»);
Исключение
Предупреждение(«Компонента «»1С:Печать штрихкодов»» не установлена на данном компьютере!»);
КонецПопытки;
Goras:
Тоже долго не получалось но потом прорвало. Все ок, просто читать внимательней надо было условия
В статье упущена инициализация компонента штрихкода, примерно так:
Попытка
КомпонентШК = Новый COMОбъект(«V8.Barcod.1»);
Исключение
Предупреждение htp://rucaptcha.com
(«Компонента «»1С:Печать штрихкодов»» не установлена на данном компьютере!»);
КонецПопытки;
MerwMebel:
{Документ.РеализацияТоваровУслуг(238,2)}: Переменная не определена (Область)
<>Область.Рисунки.Штрихкод.Объект.ТипКода = ТипКода; (Проверка: Толстый клиент (обычное приложение))
{Документ.РеализацияТоваровУслуг(239,2)}: Переменная не определена (Область)
<>Область.Рисунки.Штрихкод.Объект.Сообщение = ?(ПустаяСтрока(«»),Штрихкод,»»); (Проверка: Толстый клиент (обычное приложение))
{Документ.РеализацияТоваровУслуг(240,2)}: Переменная не определена (Область)
<>Область.Рисунки.Штрихкод.Объект.ТекстКода = Штрихкод; (Проверка: Толстый клиент (обычное приложение))
{Документ.РеализацияТоваровУслуг(234,12)}: Процедура или функция с указанным именем не определена (ПолучитьЗначениеТипаШтрихкодаДляЭУ)
ТипКода = <>ПолучитьЗначениеТипаШтрихкодаДляЭУ(ПланыВидовХарактеристик.ТипыШтрихкодов.Code39); (Проверка: Толстый клиент (обычное приложение))
Пенсіонер:
Да статья «урезанная».
Аноним:
Функция ПолучитьЗначениеТипаШтрихкодаДляЭУ(ТипКода)
Перем Значение;
Если ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN8 Тогда
Значение = 0;
ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13 Тогда
Значение = 1;
ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN128 Тогда
Значение = 2;
ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.Code39 Тогда
Значение = 3;
ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.Code128 Тогда
Значение = 4;
Иначе
Значение = -1;
КонецЕсли;
Возврат Значение;
КонецФункции // ПолучитьЗначениеТипаШтрихкодаДляЭУ()