1С 8.3 Штрих-код (barcode), QRCod - Программист 1С Минск. Автоматизация бизнеса.

Перейти к контенту

1С 8.3 Штрих-код (barcode), QRCod

Данные > Примеры кода 1С > 1С 8.3 Штрих-код (barcode)
Штрих-код и QRCod в 1С 8.3 используется для печати ценников, маркировки товаров/материалов для учета и контроля, упрощения инвентаризации основных средств, идентификация прочих ТМЦ с помощью этикеток. В последних релизах различных типовых конфигураций штрих-код формируется с помощью общего макета метаданных КомпонентаПечатиШтрихкодов, а также вспомогательных функций и процедур: ПодключитьВнешнююКомпонентуПечатиШтрихкода, ОпределитьТипШтрихкода, ПолучитьКартинкуШтрихкода и т.п.. Скачать Пример печати QR-кода.epf

Файл установки компоненты доступен по подписке на сайте ИТС. При возникновении ошибки 1CBarCode: "Ошибка внешней компоненты" некорректное значение свойства "Шрифт" - необходимо обновить 1CBarCode.exe до последней версии. Работа с QR-кодом осуществляется с помощью функций в модуле объекта ПолучитьГенераторQRкода() и ПолучитьQRкод(). Типовая печать QR-кода в 1С 8.3 реализована на уровне Библиотеки стандартных подсистем, которая соответствует национальному стандарту штрихкодирования платежных реквизитов и доступен при подписке на ИТС.
Тех.характеристика QR-кода:
Самый маленький (версия №1) размер = 21×21 пиксель (без учёта полей)
...QR-код следующей версии всегда больше предыдущего
на 4 модуля( по горизонтали и по вертикали)...
Самый большой (версия №40) размер = 177×177 пикселей (без учёта полей)
Важно! Для считывания некоторыми ТСД символы должны быть латинские
Подключение внешней компоненты печати штрих-кода в 1С 8.3:
&НаКлиенте
Функция ПодключениеВнешнейКомпонентыПечатиШтрихКода()

   
Подключено = ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодов", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);

    Если
Подключено Тогда // Создание объекта внешней компоненты
       
Компонента_Barcode = Новый("AddIn.КартинкаШтрихкода.Barcode");
    Иначе
        Возврат Неопределено;
    КонецЕсли;

    Если НЕ
Компонента_Barcode.ГрафикаУстановлена Тогда
       
// Картинка не может быть сформирована
       
Возврат Неопределено;
    Иначе
       
// Установка параметров компоненты
       
Если Компонента_Barcode.НайтиШрифт("Tahoma") Тогда
           
Компонента_Barcode.Шрифт = "Tahoma";// Выбран шрифт для формирования картинки
       
Иначе
           
// Обход доступных компоненте шрифтов
           
Для Сч = 0 По Компонента_Barcode.КоличествоШрифтов -1 Цикл
               
ТекущийШрифтШК = Компонента_Barcode.ШрифтПоИндексу(Сч);
                Если
ТекущийШрифтШК <> Неопределено Тогда
                   
Компонента_Barcode.Шрифт = ТекущийШрифтШК; // Выбран шрифт для формирования картинки
                   
Прервать;
                КонецЕсли;
            КонецЦикла;
        КонецЕсли;
       
Компонента_Barcode.РазмерШрифта = 14;

        Возврат
Компонента_Barcode;
    КонецЕсли;

КонецФункции
Определить тип штрих кода в 1С 8.3:
&НаКлиенте
Функция ОпределитьТипШтрихКода(текШтрихКод)

   Тип_ШтрихКода = "";
   Длина_ШтрихКода = СтрДлина(текШтрихКод);
   СуммаШтрихКода = 0;

   Если Длина_ШтрихКода = 0 Тогда
       Возврат Тип_ШтрихКода;
   КонецЕсли;

   Если Длина_ШтрихКода = 14 Тогда // ITF14

       КоэффициентШК = 1;
       Для Сч = 1 По 13 Цикл
           // таблица символов 1С доступна тут: https://koder.by/tablica_simvolov_1s.php
           ВремКодСимвола = КодСимвола(текШтрихКод, Сч);
           Если ВремКодСимвола < 48 Или ВремКодСимвола > 57 Тогда
               Прервать;
           КонецЕсли;
           СуммаШтрихКода = СуммаШтрихКода + КоэффициентШК * (ВремКодСимвола - 48);
           КоэффициентШК = 4 - КоэффициентШК;
       КонецЦикла;
       СуммаШтрихКода = (10 - СуммаШтрихКода % 10) % 10;
       Если КодСимвола(текШтрихКод, 14) = СуммаШтрихКода + 48 Тогда
           Тип_ШтрихКода = "ITF14";
       КонецЕсли;

   ИначеЕсли Длина_ШтрихКода = 13 Тогда // EAN13

       EAN13_Булево = Истина;
       КоэффициентШК = 1;
       Для Сч = 1 По 12 Цикл
           ВремКодСимвола = КодСимвола(текШтрихКод, Сч);
           Если ВремКодСимвола < 48 Или ВремКодСимвола > 57 Тогда
               EAN13_Булево = Ложь;
               Прервать;
           КонецЕсли;
           СуммаШтрихКода = СуммаШтрихКода + КоэффициентШК * (ВремКодСимвола - 48);
           КоэффициентШК = 4 - КоэффициентШК;
       КонецЦикла;
       СуммаШтрихКода = (10 - СуммаШтрихКода % 10) % 10;
       ПроверочныйСимвол = Символ(СуммаШтрихКода + 48);
       Если EAN13_Булево И ПроверочныйСимвол = Прав(текШтрихКод, 1) Тогда
           Тип_ШтрихКода = "EAN13";
       КонецЕсли;

   ИначеЕсли Длина_ШтрихКода = 8 Тогда // EAN8

       EAN8_Булево = Истина;
       КоэффициентШК = 3;
       Для Сч = 1 По 7 Цикл
           ВремКодСимвола = КодСимвола(текШтрихКод, Сч);
           Если ВремКодСимвола < 48 Или ВремКодСимвола > 57 Тогда
               EAN8_Булево = Ложь;
               Прервать;
           КонецЕсли;
           СуммаШтрихКода = СуммаШтрихКода + КоэффициентШК * (ВремКодСимвола - 48);
           КоэффициентШК = 4 - КоэффициентШК;
       КонецЦикла;
       СуммаШтрихКода = (10 - СуммаШтрихКода % 10) % 10;
       Если EAN8_Булево И (КодСимвола(текШтрихКод, 8) = СуммаШтрихКода + 48) Тогда
           Тип_ШтрихКода = "EAN8";
       КонецЕсли;

   КонецЕсли;

   Если Тип_ШтрихКода= "" Тогда // CODE39

       CODE39_Булево = Истина;
       Для Сч = 1 По Длина_ШтрихКода Цикл
           ВремКодСимвола = КодСимвола(текШтрихКод, Сч);
           Если (ВремКодСимвола <> 32)
               И (ВремКодСимвола < 36 Или ВремКодСимвола > 37)
               И (ВремКодСимвола <> 43)
               И (ВремКодСимвола < 45 Или ВремКодСимвола > 57)
               И (ВремКодСимвола < 65 Или ВремКодСимвола > 90) Тогда
               CODE39_Булево = Ложь;
               Прервать;
           КонецЕсли;
       КонецЦикла;

       Если CODE39_Булево Тогда
           Тип_ШтрихКода = "CODE39";
       КонецЕсли

   КонецЕсли;

   Если Тип_ШтрихКода= "" Тогда // CODE128
       // CODE128 символы ASCII от 0 до 127
       // (цифры от 0 до 9, буквы от A до Z и от a до z) и специальные символы
       CODE128_Булево = Истина;
       Для Сч = 1 По Длина_ШтрихКода Цикл
           ВремКодСимвола = КодСимвола(текШтрихКод, Сч);
           Если (ВремКодСимвола > 127) Тогда
               CODE128_Булево = Ложь;
               Прервать;
           КонецЕсли;
       КонецЦикла;

       Если CODE128_Булево Тогда
           Тип_ШтрихКода = "CODE128";
       КонецЕсли

   КонецЕсли;

   Если Тип_ШтрихКода = "CODE128" Тогда // EAN128
       // В коде EAN128 регламентирован словарь CODE128
       // но регламентированы группы кодов
       Если КодСимвола(текШтрихКод, 1) = 40 Тогда
           Тип_ШтрихКода = "EAN128";
       КонецЕсли;
   КонецЕсли;

   Возврат Тип_ШтрихКода;

КонецФункции
Справочно: Тип кода параметра штрих кода в 1С 8.3:
0    <EAN8>
1     <EAN13>
2     <EAN128>
3     <CODE39>
4     <CODE128>
5     <CODE16K>
6     <PDF417>
7     <Industrial2of5>
8     <Interleaved2of5>
9     <Code39FullASCII>
10    <CODE93>
11    <ITF14>
12    <RSS14>
13    <CodaBar>
14    <EAN13 AddOn 2>
15    <EAN13 AddOn 5>
16    <QR>
17    <GS1 databar extended stacked>
18    <DataMatrix ASCII>
19    <DataMatrix Base256>
20    <DataMatrix Text>
21    <DataMatrix C40>
22    <DataMatrix X12>
23    <DataMatrix Edifact>
Получить картинку штрих-кода в 1С 8.3:
&НаКлиенте
Функция ПолучитьКартинкуШтрихкода(ПараметрыШК)

   
КомпонентаШК = ПодключениеВнешнейКомпонентыПечатиШтрихкода();

    Если
КомпонентаШК = Неопределено Тогда
        ВызватьИсключение
НСтр("ru = 'Ошибка подключения внешней компоненты печати штрихкода.'");
    КонецЕсли;
   
// Размер формируемой картинки
   
КомпонентаШК.Ширина = Окр(ПараметрыШК.Ширина);
   
КомпонентаШК.Высота = Окр(ПараметрыШК.Высота);
   
КомпонентаШК.АвтоТип = Ложь;

    Если
ПараметрыШК.ТипКода = 99 Тогда
       
ТипШК = ОпределитьТипШтрихкода(ПараметрыШК.Штрихкод);
        Если
ТипШК = "EAN8" Тогда
           
КомпонентаШК.ТипКода = 0;
        ИначеЕсли
ТипШК = "EAN13" Тогда
           
КомпонентаШК.ТипКода = 1;
           
// Если код содержит контрольный символ, обязательно указываем.
           
КомпонентаШК.СодержитКС = СтрДлина(ПараметрыШК.Штрихкод) = 13;
        ИначеЕсли
ТипШК = "EAN128" Тогда
           
КомпонентаШК.ТипКода = 2;
        ИначеЕсли
ТипШК = "CODE39" Тогда
           
КомпонентаШК.ТипКода = 3;
        ИначеЕсли
ТипШК = "CODE128" Тогда
           
КомпонентаШК.ТипКода = 4;
        ИначеЕсли
ТипШК = "ITF14" Тогда
           
КомпонентаШК.ТипКода = 11;
        ИначеЕсли
ТипШК = "QR" Тогда
           
КомпонентаШК.ТипКода = 16;
        ИначеЕсли
ТипШК = "EAN13Addon2" Тогда
           
КомпонентаШК.ТипКода = 14;
        ИначеЕсли
ТипШК = "EAN13Addon5" Тогда
           
КомпонентаШК.ТипКода = 15;
        ИначеЕсли
ТипШК = "QR" Тогда
           
КомпонентаШК.ТипКода = 16;
        ИначеЕсли
ТипШК = "GS1DatabarExtendedStacked" Тогда
           
КомпонентаШК.ТипКода = 17;
        ИначеЕсли
ТипШК = "DataMatrixASCII" Тогда
           
КомпонентаШК.ТипКода = 18;
        ИначеЕсли
ТипШК = "DataMatrixBase256" Тогда
           
КомпонентаШК.ТипКода = 19;
        ИначеЕсли
ТипШК = "DataMatrixText" Тогда
           
КомпонентаШК.ТипКода = 20;
        ИначеЕсли
ТипШК = "DataMatrixC40" Тогда
           
КомпонентаШК.ТипКода = 21;
        ИначеЕсли
ТипШК = "DataMatrixX12" Тогда
           
КомпонентаШК.ТипКода = 22;
        ИначеЕсли
ТипШК = "DataMatrixEdifact" Тогда
           
КомпонентаШК.ТипКода = 23;
        Иначе
           
КомпонентаШК.АвтоТип = Истина;
        КонецЕсли;
    Иначе
       
КомпонентаШК.ТипКода = ПараметрыШК.ТипКода;
       
КомпонентаШК.АвтоТип = Ложь;
    КонецЕсли;

    Если
ПараметрыШК.Свойство("ПрозрачныйФон") Тогда
       
КомпонентаШК.ПрозрачныйФон = ПараметрыШК.ПрозрачныйФон;
    КонецЕсли;

   
КомпонентаШК.ОтображатьТекст = ПараметрыШК.ОтображатьТекст;

   
// Картинка штрихкода
   
КомпонентаШК.ЗначениеКода = ПараметрыШК.Штрихкод;
   
// Угол поворота штрихкода
   
КомпонентаШК.УголПоворота = ?(ПараметрыШК.Свойство("УголПоворота"), ПараметрыШК.УголПоворота, 0);
   
// Уровень коррекции QR кода (L=0, M=1, Q=2, H=3)
   
КомпонентаШК.УровеньКоррекцииQR = ?(ПараметрыШК.Свойство("УровеньКоррекцииQR"), ПараметрыШК.УровеньКоррекцииQR, 1);

   
// Если установленная нами ширина меньше минимально допустимой для этого штрихкода
   
Если КомпонентаШК.Ширина < КомпонентаШК.МинимальнаяШиринаКода Тогда
       
КомпонентаШК.Ширина = КомпонентаШК.МинимальнаяШиринаКода;
    КонецЕсли;

   
// Если установленная нами высота меньше минимально допустимой для этого штрихкода
   
Если КомпонентаШК.Высота < КомпонентаШК.МинимальнаяВысотаКода Тогда
       
КомпонентаШК.Высота = КомпонентаШК.МинимальнаяВысотаКода;
    КонецЕсли;

    Если
ПараметрыШК.Свойство("РазмерШрифта") И (ПараметрыШК.РазмерШрифта > 0)
        И (
ПараметрыШК.ОтображатьТекст) И (КомпонентаШК.РазмерШрифта <> ПараметрыШК.РазмерШрифта) Тогда
       
КомпонентаШК.РазмерШрифта = ПараметрыШК.РазмерШрифта;
    КонецЕсли;

   
// Формирование картинки
   
ДвоичныеДанныеКартинки = КомпонентаШК.ПолучитьШтрихкод();

    Если
ДвоичныеДанныеКартинки <> Неопределено Тогда
       
// Формируем из двоичных данных.
       
Возврат Новый Картинка(ДвоичныеДанныеКартинки);
    КонецЕсли;

    Возврат Неопределено;

КонецФункции
Получение штрих-кода (элемент управления) в 1С 8.3:
&НаКлиенте
Функция ПолучениеШтрихкода_ЭлУпр(Ширина_bc, Высота_bc)

   
Пар_bc = Новый Структура;
   
Пар_bc.Вставить("Ширина" , Ширина_bc); //80
   
Пар_bc.Вставить("Высота" , Высота_bc); //20
   
Пар_bc.Вставить("ТипКода" , Тип_bc); // Code128
   
Пар_bc.Вставить("ОтображатьТекст" , Истина);
   
Пар_bc.Вставить("РазмерШрифта", РазмерШрифта_bc);
   
Пар_bc.Вставить("УголПоворота" , Число(Угол_bc));
   
Пар_bc.Вставить("Штрихкод" , BarCode);
   
Пар_bc.Вставить("ПрозрачныйФон" , Истина);
   
Пар_bc.Вставить("УровеньКоррекцииQR", УКQR_bc);
   
Пар_bc.Вставить("Масштабировать" , Масшт_bc);
   
Пар_bc.Вставить("СохранятьПропорции" , СохрПроп_bc);
   
Пар_bc.Вставить("ВертикальноеВыравнивание", Верт_bc);
   
Пар_bc.Вставить("GS1DatabarКоличествоСтрок", КолСтрк_bc);

    Возврат
ПолучитьКартинкуШтрихкода(Пар_bc);

КонецФункции
Генератор QRCODа в 1С 8.3:
Функция ПолучитьГенераторQRкода() //в модуле объекта

   
МакетПечатиQR=ПолучитьМакет("КомпонентаПечатиQRКода");
   
АдресКомпонентыQR=ПоместитьВоВременноеХранилище(МакетПечатиQR);

   
ГенераторQR=Неопределено;
    Попытка
        Если
ПодключитьВнешнююКомпоненту(АдресКомпонентыQR,"QR") тогда
           
ГенераторQR=новый("AddIn.QR.QRCodeExtension");
        иначе
           
сообщить("Не удалось подключить компоненту генерации QR кода");
        конецЕсли;
    Исключение
       
сообщить(ОписаниеОшибки());
    КонецПопытки;

    Возврат
ГенераторQR;

КонецФункции

Функция
ПолучитьQRкод(Строка_QR, УровеньКоррекции_QR, Размер_QR) экспорт

   
// 1) Строка_QR - данные в виде строки, которые необходимо разместить в QR-коде
    // 2) УровеньКоррекции_QR - (число) уровень погрешности изображения при котором данный QR-код все еще возможно 100% распознать
    // допустимые значения погрешности: 0(7%), 1(15%), 2(25%), 3(35%).
    // 3) Размер_QR - (число) определяет длину стороны выходного изображения в пикселях. Если минимально возможный размер
    // изображения больше этого параметра - код сформирован не будет.

   
УстановитьОтключениеБезопасногоРежима(Истина);
   
ГенераторQRКода = ПолучитьГенераторQRкода();
    Если
ГенераторQRКода = Неопределено Тогда
        Возврат Неопределено;
    КонецЕсли;

    Попытка
       
ДвоичныеДанныеКартинки = ГенераторQRКода.GenerateQRCode(Строка_QR, УровеньКоррекции_QR, Размер_QR);
    Исключение
       
сообщить(ОписаниеОшибки());
    КонецПопытки;

    Возврат
ДвоичныеДанныеКартинки; // Возвращает двоичные данные (байты PNG-изображения) для формирования QR кода

    //  Строка_QR = УправлениеПечатью.ФорматнаяСтрокиДокумента(РеквизитыТребования);
    //  ДанныеQRКода = ПолучитьQRкод(Строка_QR, 1, 80);
    //  Если ДанныеQRКода=неопределено тогда
    //      Возврат;
    //  Иначе
    //      КартинкаQRКода = Новый Картинка(ДанныеQRКода);
    //      ОбластьМакета.Рисунки.QRКод.Картинка = КартинкаQRКода;
    //  КонецЕсли;

КонецФункции
Создание QRCODа (для текста или ссылки) в 1С 8.3:
&НаСервере
Процедура СозданиеQRCOD_Текст_или_Ссылка()

    Если НЕ
ПустаяСтрока(Объект.QRCOD_Текст_или_Ссылка) Тогда

       
ОбъектВЗначении = РеквизитФормыВЗначение("Объект");
       
QRCOD_Данные = ОбъектВЗначении.QRCOD_Данные(Объект.QRCOD_Текст_или_Ссылка, 1, 300);
        Если НЕ
ТипЗнч(QRCOD_Данные) = Тип("ДвоичныеДанные") Тогда
           
ОбъектВЗначении.СообщитьПользователю("QRCOD_Данные");
            Возврат;
        КонецЕсли;

       
// Сохранение двоичных данных из реквизита во временное хранилище
        // (адрес из хранилища вставляем в строковой реквизит формы "QRCOD_Картинка"
       
Объект.QRCOD_Картинка = ПоместитьВоВременноеХранилище(Новый Картинка(QRCOD_Данные),УникальныйИдентификатор);

    КонецЕсли;

КонецПроцедуры
Создание QRCODа (для визитной карточки) в 1С 8.3:
&НаСервере
Процедура СозданиеQRCOD_Визитная_карточка()

   
QRCOD_Визитная_карточка "BEGIN:VCARD" + Символы.ПС + "VERSION:3.0" + Символы.ПС +
   
"FN:" + СокрЛП(Объект.Имя) + " " + СокрЛП(Объект.Фамилия) + Символы.ПС +
   
"N:" + СокрЛП(Объект.Фамилия) + ";" + СокрЛП(Объект.Имя) + Символы.ПС +
   
"TITLE:" + СокрЛП(Объект.Должность) + Символы.ПС +
   
"ORG:" + СокрЛП(Объект.Организация) + Символы.ПС +
   
"ADR;TYPE=intl, postal, parcel, work:;;" + СокрЛП(Объект.Адрес) + ";" + СокрЛП(Объект.Город) +
   
";;;" + СокрЛП(Объект.Страна) + Символы.ПС +
   
"TEL;TYPE=home:" + СокрЛП(Объект.НомерТелефона) + Символы.ПС +
   
"TEL;TYPE=work:" + СокрЛП(Объект.НомерТелефонаРабочий) + Символы.ПС +
   
"TEL;TYPE=cell:" + СокрЛП(Объект.НомерТелефонаМобильный) + Символы.ПС +
   
"TEL;TYPE=fax:" + СокрЛП(Объект.НомерФакса) + Символы.ПС +
   
"EMAIL;TYPE=INTERNET:" + СокрЛП(Объект.АдресПочты) + Символы.ПС +
   
"URL:" + СокрЛП(Объект.АдресСайта) + Символы.ПС +
   
"BDAY:" + Формат(Объект.ДеньРождения,"ДФ=""гггг-ММ-дд""") + Символы.ПС + "END:VCARD";

   
ОбъектВЗначении = РеквизитФормыВЗначение("Объект");
   
QRCOD_Данные = ОбъектВЗначении.QRCOD_Данные(QRCOD_Визитная_карточка, 1, 300);
    Если НЕ
ТипЗнч(QRCOD_Данные) = Тип("ДвоичныеДанные") Тогда
       
ОбъектВЗначении.СообщитьПользователю("QRCOD_Данные");
        Возврат;
    КонецЕсли;

   
// Сохранение двоичных данных из реквизита во временное хранилище
    // (адрес из хранилища вставляем в строковой реквизит формы "QRCOD_Картинка"
   
Объект.QRCOD_Картинка = ПоместитьВоВременноеХранилище(Новый Картинка(QRCOD_Данные),УникальныйИдентификатор);

КонецПроцедуры
Создание QRCODа (для контактных данных) в 1С 8.3:
&НаСервере
Процедура СозданиеQRCOD_Контактные_данные()

    Если
Объект.QRCOD_Контактные_данные = "Телефон" Тогда
       
Строка_QRCOD_Контакт = "tel:" + СокрЛП(Объект.QRCOD_НомерТелефона);
    ИначеЕсли
Объект.QRCOD_Контактные_данные = "SMS" Тогда
       
Строка_QRCOD_Контакт = "smsto:" + СокрЛП(Объект.QRCOD_НомерТелефона) + ":" + СокрЛП(Объект.QRCOD_ТекстQRКода);
    ИначеЕсли
Объект.QRCOD_Контактные_данные = "MMS" Тогда
       
Строка_QRCOD_Контакт = "mmsto:" + СокрЛП(Объект.QRCOD_НомерТелефона) + ":" + СокрЛП(Объект.QRCOD_ТекстQRКода);
    ИначеЕсли
Объект.QRCOD_Контактные_данные = "E-mail" Тогда
       
Строка_QRCOD_Контакт = "mailto:" + СокрЛП(Объект.QRCOD_АдресПочты);
    ИначеЕсли
Объект.QRCOD_Контактные_данные = "E-mail с текстом" Тогда
       
Строка_QRCOD_Контакт "MATMSG:" + Символы.ПС + "TO: " + СокрЛП(Объект.QRCOD_АдресПочты) + ";" + Символы.ПС +
       
"SUB:" + Объект.QRCOD_ТемаПисьма + ";" + Символы.ПС + "BODY:" + Объект.QRCOD_ТекстQRКода + ";" + Символы.ПС + ";";
    ИначеЕсли
Объект.QRCOD_Контактные_данные = "Географическая информация" Тогда
       
Строка_QRCOD_Контакт = "geo:" + СтрЗаменить(Объект.QRCOD_ТекстQRКода," ","");
    КонецЕсли;

    Если НЕ
ПустаяСтрока(Объект.QRCOD_Контактные_данные) Тогда

       
ОбъектВЗначении = РеквизитФормыВЗначение("Объект");
       
QRCOD_Данные = ОбъектВЗначении.QRCOD_Данные(Строка_QRCOD_Контакт, 1, 300);
        Если НЕ
ТипЗнч(QRCOD_Данные) = Тип("ДвоичныеДанные") Тогда
           
ОбъектВЗначении.СообщитьПользователю("QRCOD_Данные");
            Возврат;
        КонецЕсли;

       
// Сохранение двоичных данных из реквизита во временное хранилище
        // (адрес из хранилища вставляем в строковой реквизит формы "QRCOD_Картинка"
       
Объект.QRCOD_Картинка = ПоместитьВоВременноеХранилище(Новый Картинка(QRCOD_Данные),УникальныйИдентификатор);

    КонецЕсли;

КонецПроцедуры
📰 Актуальные новости с тегом #Штрих-код (barcode), QRCod:
  • В версии 8.3.26 добавлена возможность аутентификации по QR-коду. Это удобно при использовании системы вне рабочего места и поможет безопасности организаций, которые требуют беспарольную аутентификацию корпоративных приложений. Для использования аутентификации по QR-коду соответствующая опция должна быть включена администратором для пользователя. Для работы аутентификации по QR-коду нужно будет также настроить соответствующим образом веб-публикацию инфобазы (подробно описано в документации). Встроенный язык будет расширен для поддержки новой функциональности.
2
комментарии
Татьяна
05 авг 2023
Спасибо большое, очень помогли.
Симка
23 ноя 2020
а сможете сказать как внедрить сканирование на ттн? видела как штрихкода на предприятии сканировала и накладная проводилась в 1С
____________________
Copyright©, «Программист 1С в г.Минске», 23.09.2020
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник
Яндекс.Метрика
Защищенное соединение ssl
visa
mastercard
Maestro
Яндекс деньги
Назад к содержимому