Вывод QR-кода типовыми средствами.

21.10.19

Интеграция - Сканер штрих-кода

Вывод QR-кода типовыми средствами. На данный момент очень часто нужно вывести в печатную форму QR-код. Показываю как на примере типового кода из УТ11 это сделать. Можно использовать в любых конфигурациях с обычными формами.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
КомпонентаПечатиQRКода.epf
.epf 425,73Kb ver:1
170
170 Скачать (1 SM) Купить за 1 850 руб.

На данный момент очень часто нужно вывести в печатную форму QR-код.
Показываю как на примере типового кода из УТ11 это сделать.

 

Шаг 1
Для этого нужно скопировать из УТ11 ОбщийМакет.КомпонентаПечатиQRКода.

Я брал из УТ 11.4

Если по каким то причинам не можете скопировать макет из УТ, то данный макет прилагаю ниже в обработке "КомпонентаПечатиQRКода.epf".

Так же в обработке ""КомпонентаПечатиQRКода.epf" есть кнопка "Пример печати".

Шаг 2

Скопировать себе в модуль 5 процедур:

/////////////////////////////////////////////////////////////////////////////
// Вывод QR-кода

    
    Функция КомпонентаФормированияQRКода()
        
        ТекстОшибки = НСтр("ru = 'Не удалось подключить внешнюю компоненту для генерации QR-кода. Подробности в журнале регистрации.'");
        
        QRCodeGenerator = ПодключитьКомпонентуИзМакета("QRCodeExtension", "ОбщийМакет.КомпонентаПечатиQRКода");
        Если QRCodeGenerator = Неопределено Тогда
            #Если Клиент Тогда
                Сообщить(ТекстОшибки);
            #КонецЕсли
        КонецЕсли;
        
        Возврат QRCodeGenerator;
        
    КонецФункции
    
    Функция ПодключитьКомпонентуИзМакета(Идентификатор, ПолноеИмяМакета) Экспорт
        
        ПодключаемыйМодуль = Неопределено;
        
        Местоположение = ПолноеИмяМакета;
        СимволическоеИмя = Идентификатор + "SymbolicName";
        
        Если ПодключитьВнешнююКомпоненту(Местоположение, СимволическоеИмя) Тогда
            
            Попытка
                ПодключаемыйМодуль = Новый("AddIn." + СимволическоеИмя + "." + Идентификатор);
                Если ПодключаемыйМодуль = Неопределено Тогда
                    ВызватьИсключение НСтр("ru = 'Оператор Новый вернул Неопределено'");
                КонецЕсли;
            Исключение
                ПодключаемыйМодуль = Неопределено;
                ТекстОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
            КонецПопытки;
            
            Если ПодключаемыйМодуль = Неопределено Тогда
                
                ТекстОшибки = НСтр("ru = 'Не удалось создать объект внешней компоненты ""%1"", подключенной на сервере
                |из макета ""%2"",
                |по причине:
                |%3'");
                
                ЗаписьЖурналаРегистрации(
                НСтр("ru = 'Подключение внешней компоненты на сервере'",
                КодОсновногоЯзыка()),
                УровеньЖурналаРегистрации.Ошибка,,,
                ТекстОшибки);
                
            КонецЕсли;
            
        Иначе
            
            ТекстОшибки = НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"" на сервере
            |из макета ""%2""
            |по причине:
            |Метод ПодключитьВнешнююКомпоненту вернул Ложь.'");
            
            ЗаписьЖурналаРегистрации(
            НСтр("ru = 'Подключение внешней компоненты на сервере'",
            КодОсновногоЯзыка()),
            УровеньЖурналаРегистрации.Ошибка,,,
            ТекстОшибки);
            
        КонецЕсли;
        
        Возврат ПодключаемыйМодуль;
        
    КонецФункции
    
    Функция КодОсновногоЯзыка() Экспорт
        
        Возврат Метаданные.ОсновнойЯзык.КодЯзыка;
        
    КонецФункции
    
    // Возвращает двоичные данные для формирования QR-кода.
    //
    // Параметры:
    //  QRСтрока         - Строка - данные, которые необходимо разместить в QR-коде.
    //
    //  УровеньКоррекции - Число - уровень погрешности изображения, при котором данный QR-код все еще возможно 100 %
    //                             распознать.
    //                     Параметр должен иметь тип целого и принимать одно из 4 допустимых значений:
    //                     0 (7 % погрешности), 1 (15 % погрешности), 2(25 % погрешности), 3(35 % погрешности).
    //
    //  Размер           - Число - определяет длину стороны выходного изображения в пикселях.
    //                     Если минимально возможный размер изображения больше этого параметра - код сформирован не будет.
    //
    // Возвращаемое значение:
    //  ДвоичныеДанные  - буфер, содержащий байты PNG-изображения QR-кода.
    //
    // Пример:
    //  
    //  // Выводим на печать QR-код, содержащий в себе информацию зашифрованную по УФЭБС.
    //
    //  QRСтрока = УправлениеПечатью.ФорматнаяСтрокаУФЭБС(РеквизитыПлатежа);
    //  ТекстОшибки = "";
    //  ДанныеQRКода = УправлениеПечатью.ДанныеQRКода(QRСтрока, 0, 190, ТекстОшибки);
    //  Если Не ПустаяСтрока(ТекстОшибки)
    //      ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки);
    //  КонецЕсли;
    //
    //  КартинкаQRКода = Новый Картинка(ДанныеQRКода);
    //  ОбластьМакета.Рисунки.QRКод.Картинка = КартинкаQRКода;
    //
    Функция ДанныеQRКода(QRСтрока, УровеньКоррекции, Размер) Экспорт
        
        //УстановитьОтключениеБезопасногоРежима(Истина);
        ГенераторQRКода = КомпонентаФормированияQRКода();
        Если ГенераторQRКода = Неопределено Тогда
            Возврат Неопределено;
        КонецЕсли;
        
        Попытка
            ДвоичныеДанныеКартинки = ГенераторQRКода.GenerateQRCode(QRСтрока, УровеньКоррекции, Размер);
        Исключение
            ЗаписьЖурналаРегистрации(НСтр("ru = 'Формирование QR-кода'", КодОсновногоЯзыка()),
            УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
        КонецПопытки;
        
        Возврат ДвоичныеДанныеКартинки;
        
    КонецФункции
    
    Процедура ВывестиQRКод(ДанныеПечати, ОбластьМакета)
        
        QRСтрока = ДанныеПечати;
        
        Если Не ПустаяСтрока(QRСтрока) Тогда
            
            ДанныеQRКода = ДанныеQRКода(QRСтрока, 0, 190);
            
            Если ТипЗнч(ДанныеQRКода) = Тип("ДвоичныеДанные") Тогда
                КартинкаQRКода = Новый Картинка(ДанныеQRКода);
                ОбластьМакета.Рисунки["QRКод"].Картинка = КартинкаQRКода;
            Иначе
                ТекстСообщения = "Не удалось сформировать QR-код для документа";
                #Если Клиент Тогда
                    Сообщить(ТекстСообщения);
                #КонецЕсли
            КонецЕсли;
            
        КонецЕсли;
        
    КонецПроцедуры
    

// Вывод QR-кода
/////////////////////////////////////////////////////////////////////////////

 

Шаг 3

В макет, в котором вам нужен QR-код вставляете пустую картинку и называете ее QRКод (название может быть любым, но в примере кода используется это название).

 

Шаг 4

Печатаете QR-код

Процедура КнопкаПечатьНажатие(Кнопка)
    
    ТабДок = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("ВыводQR");
    


    ОблQRКод = Макет.ПолучитьОбласть("ОбластьQRКод");
    
    ТекстСсылки = "dobromir.kz"; //Ваша ссылка, можно передавать все что хотите
    ВывестиQRКод(ТекстСсылки ,ОблQRКод);
    ТабДок.Вывести(ОблQRКод);
    
    ТабДок.Показать();
    
КонецПроцедуры

Пример области макета:

Пример результата работы:

Итог

Обработка "КомпонентаПечатиQRКода.epf" идет в качестве примера, так же в ней есть макет "КомпонентаПечатиQRКода".

Все что написано, можно реализовать самостоятельно, описания выше достаточно.

 

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

Тестировалась на:

Конфигурации для Казахстана

Зарплата и Управление Персоналом для Казахстана, редакция 2.0, разработка для Казахстана: «1С-Рейтинг» (2.0.17.7)

"Управление торговлей для Казахстана", редакция 2.2,  локализация для Казахстана: "1С-Рейтинг",  "1С-Сапа" (2.2.17.4)

Бухгалтерия для Казахстана, редакция 2.0, разработка для Казахстана: «1С-Рейтинг» (2.0.29.3)

Управление торговым предприятием для Казахстана, редакция 2.0, разработка для Казахстана: «1С-Рейтинг» (2.0.18.1)

Для РФ

"Управление торговлей", редакция 10.3 (10.3.48.2) 

Управление производственным предприятием, редакция 1.3 (1.3.113.4)

 

QR-код QR QRКод

См. также

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

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

3000 руб.

03.12.2018    59290    192    103    

172

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    97220    586    189    

321

Сканер штрих-кода Пользователь Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Розница 3.0 Управленческий учет Платные (руб)

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

2400 руб.

29.07.2020    36518    170    159    

142

Логистика, склад и ТМЦ Сканер штрих-кода Терминал сбора данных Мобильная разработка Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

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

3450 руб.

28.04.2023    9469    15    0    

9

Сканер штрих-кода Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Теперь практически все торговые документы в конфигурации 1С Бухгалтерия 3.0 (ПРОФ / КОРП) и в конфигурации 1С Бухгалтерия сельскохозяйственного предприятия 3.0 поддерживают подбор товара по штрих-коду. Можно пользоваться сканером штрихкода или подбирать штрих-код вручную. В основных печатных формах документов выводится колонка Штрихкод. Для менеджеров по продажам будет удобным дополнительный отчет Прайс-лист с остатками и штрих-кодом.

3600 руб.

28.07.2020    29233    79    31    

58

Сканер штрих-кода Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Стандартные конфигурации ERP, КА, УТ 11 позволяют работать с штрихкодированием серий. Есть только одно суровое ограничение – на упаковке должна быть этикетка для номенклатуры и отдельно для серии. Во многих случаях это критически неудобно.

12000 руб.

19.04.2021    22811    64    44    

57

Универсальные функции Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

21.05.2024    20123    dimanich70    81    

144
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. rusmm93 30 21.10.19 14:39 Сейчас в теме
Какое максимальное количество символов можно зашифровать в QR-коде таким образом?
3. Емельянов Алексей 165 21.10.19 14:54 Сейчас в теме
(1) Не нашел такой информации, мне для работы сейчас хватает 100-200 символов, судя по QR-коду еще много войдет.
46. pvl_mksv 20 22.07.20 11:42 Сейчас в теме
(3)712 символов - штрих код не распознался
18. Xershi 1555 11.01.20 15:40 Сейчас в теме
(1) в полнофункциональной версии есть описание. Ответ в (14).
21. viplelik 34 26.01.20 14:43 Сейчас в теме
(1) Хочу заметить, при применении данного кода, компонента печати будет браться из Общего модуля текущий конфигурации, а не из внешней обработки.
QRCodeGenerator = ПодключитьКомпонентуИзМакета("QRCodeExtension", "ОбщийМакет.КомпонентаПечатиQRКода");

Выкладываю QR генератор без БСП. (код выдернут из 1С. Розница 2.3.2.28)
Прикрепленные файлы:
ГенераторQRбезБСП.epf
Luniona; user1833188; itmind; SotNick; vic_ol; ybatiaev; N1LL; God_loki; Михаська; Garik8866; It-developer; Pavel_Vladivostok; Goggy; dr2c; +14 Ответить
51. Светлый ум 415 12.07.21 10:50 Сейчас в теме
(21) Прикрепите в статью - версию для управляемого приложения, раз она в комментариях и так лежит
22. viplelik 34 26.01.20 14:51 Сейчас в теме
2. Senator_I 198 21.10.19 14:44 Сейчас в теме
А компонента эта в платформу вшита? Не так как с штрихкодами?
4. Емельянов Алексей 165 21.10.19 14:54 Сейчас в теме
(2) Да вшита в УТ11, можете оттуда взять.
user761278; Senator_I; +2 Ответить
5. Емельянов Алексей 165 21.10.19 14:57 Сейчас в теме
(2) Мне тем этот метод и понравился. Что нужно всего 5 процедур и компонента, все в платформе, никуда обращаться не нужно.
А то нужно было в фискальный чек QR-код вывести, что только не предлагают и dll и java-скрипты и онлайн сервисы.
Хорошо люди подсказали взять из типовой, я вот оттуда все и собрал в свою конфигурацию.
Senator_I; +1 Ответить
58. пользователь 31.12.22 12:23
Сообщение было скрыто модератором.
...
6. dandykry 11 22.10.19 07:38 Сейчас в теме
	
ДанныеQRКода = УправлениеПечатью.ДанныеQRКода(Штрихкод, 2, 100);
		
Если ТипЗнч(ДанныеQRКода) = Тип("ДвоичныеДанные") Тогда
	КартинкаQRКода = Новый Картинка(ДанныеQRКода);
	ОбластьМакета.Рисунки.КартинкаШтрихкода.Картинка= КартинкаQRКода;
КонецЕсли;
7. dandykry 11 22.10.19 07:41 Сейчас в теме
Эталон = Обработки.ПечатьЭтикетокИЦенников.ПолучитьМакет("Эталон");
КоличествоМиллиметровВПикселе = Эталон.Рисунки.Квадрат100Пикселей.Высота / 100;
	
ПараметрыШтрихкода = Новый Структура;
ПараметрыШтрихкода.Вставить("Ширина",          Окр(ОбластьМакета.Рисунки.КартинкаШтрихкода.Ширина / КоличествоМиллиметровВПикселе));
ПараметрыШтрихкода.Вставить("Высота",          Окр(ОбластьМакета.Рисунки.КартинкаШтрихкода.Высота / КоличествоМиллиметровВПикселе));
ПараметрыШтрихкода.Вставить("Штрихкод",        Штрихкод);
ПараметрыШтрихкода.Вставить("ТипКода",         16); // QR
ПараметрыШтрихкода.Вставить("ОтображатьТекст", Ложь);
ПараметрыШтрихкода.Вставить("РазмерШрифта",    6);
	
ОбластьМакета.Рисунки.КартинкаШтрихкода.Картинка = МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода(ПараметрыШтрихкода);
	
Показать
8. Емельянов Алексей 165 22.10.19 11:21 Сейчас в теме
(7) Это доя какой конфигурации код?
9. dandykry 11 22.10.19 12:32 Сейчас в теме
(8) ДанныеQRКода из БСП
МенеджерОборудованияВызовСервера - скорее всего из БПО. Вообще скопировал из ЕРП, но думаю в большинстве конфигураций с БСП + БПО или по отдельности хотя бы 1 из них. (Типовых не знаю таких, только старые)

UP:
http://prntscr.com/pmmxbe
https://its.1c.ru/db/bsp311doc#content:1358:hdoc

http://prntscr.com/pmmxwd
https://its.1c.ru/db/metod8dev#content:5963:hdoc
10. dandykry 11 22.10.19 12:59 Сейчас в теме
(8) Если грубенько, то вы просто скопировали типовой код. Это наверное полезно для старых и самописных конфигураций. Для свежих типовых столько кода копировать бессмысленно.
Когда я пытался в прошлый раз выложить на инфостарт разработку с использованием материалов типовых конфигураций и материалов с ИТС, меня послали. (сказали нельзя выкладывать консоль запросов с диска ИТС, хоть она у вас и дописана)
Вас почему-то нет) А у вас и код, и компонента. Я не против, но удивляет политика ресурса.
11. Емельянов Алексей 165 22.10.19 14:57 Сейчас в теме
(10) Понятно, что те у кого новые УТ11 или ЕРП им не нужно.
Но полно людей которые работают на УТ10 и других старых конфигурациях, там этого нет.

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

А тут я обработку приложил как пример, в описание указал как реализовать самостоятельно. Подобных тем тут я не нашел.
lost-s0u1; +1 Ответить
12. dandykry 11 22.10.19 15:22 Сейчас в теме
(11) Я не осуждаю. Хороший полноценный код. Я просто привел примеры, как это сделать в БСП в 2х вариантах. 1 из них у вас в разобранном виде в публикации.
По поводу правила - я удивлен, что некоторые публикации заворачивают по причине того, что нарушаются правила, а некоторые нет. Лично мне без разницы. Логика модерации непонятна.

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


2.2.5. Запрещается размещать материалы с диска ИТС фирмы “1С”.
23. angeliccare 97 28.01.20 20:16 Сейчас в теме
(10) Компонента не работает на 8.2.
SagaKrasava; Емельянов Алексей; +2 Ответить
24. Емельянов Алексей 165 29.01.20 04:47 Сейчас в теме
(23) Спасибо. Поправлю описание.
25. dandykry 11 29.01.20 09:11 Сейчас в теме
(23) Я тут причем?)) Автор статьи использовал компоненты из типовых конфигураций.
Обращайтесь в 1с или к автору и описывайте ситуацию.

И возможно она работает в 8.2, просто вы что-то не так делаете. Просто написать "не работает" и не указать даже приблизительного текста ошибки, не говоря уже о коде, всякий может.
50. user1147041 16.02.21 11:30 Сейчас в теме
(23) Я взял обработку ГенераторQRбезБСП.epf из (21) и "КомпонентаПечатиQRКода" действительно не работает. Выгрузил из конфы "Бухгалтерия предприятия, редакция 3.0 (3.0.83.25)" - КомпонентаПечатиQRКода
Загрузил в конфу "Бухгалтерия предприятия, редакция 1.6 (1.6.8.3)" (1С:Предприятие 8.2 (8.2.19.130))
Весь код разместил на форме... Работает.
13. AlxNel 3 22.10.19 21:29 Сейчас в теме
Спасибо!
Емельянов Алексей; +1 Ответить
14. Xershi 1555 10.01.20 10:05 Сейчас в теме
Уже давно есть более универсальное решение QR-код 2 в 1 (обычная и управляемая форма)
akmurepus; +1 3 Ответить
15. Емельянов Алексей 165 10.01.20 14:11 Сейчас в теме
(14) У меня решение бесплатное и используется в БСП, а у вас требует 1 стартмани.
В чём плюс я не увидел?
Но спасибо за пример рекламы, у вас в коментах тоже отпишусь ))
16. Xershi 1555 10.01.20 18:05 Сейчас в теме
(15) ваша обработка точно также требует 1 стартмани!
Плюс вы даже публикацию не прочитали, что вообще нонсенс!
Поэтому напишу для вас повторно, компоненту при наличии типовой конфигурации можно взять бесплатно.
А вот использовать БСП совершенно не нужно!
Чем вы к сожалению похвастаться не можете, а в решении из (14) такой проблемы нет!
17. Емельянов Алексей 165 11.01.20 08:44 Сейчас в теме
(16) Еще раз повторю. У меня бесплатная обработка.
Я написал что используется в БСП, то есть я взял готовые процедуры и макет из БСП, а сама БСП не требуется для работы.
Далее за 1 стартмани можно скачать готовую обработку.
Но я выложил по шагам как её сделать за 5 минут самостоятельно, выложив 5 этих процедур.
Создать обработку, вставить туда 5 процедур и макет из БСП и вот вам бесплатная обработка готова.
Использовать можно в любой конфигурации.
user719210; SotNick; vellxl; Terabaytus; mark_oilbass; +5 1 Ответить
19. user754217 16.01.20 12:11 Сейчас в теме
Спасибо! Очень помогло. Использовал в управляемых формах с минимальными доработками.
Емельянов Алексей; +1 Ответить
20. viplelik 34 26.01.20 02:05 Сейчас в теме
Написал обработку из 2 процедур. Требуется БСП. На Розница 2.3.2.28 работает.
Файл во вложении.
Прикрепленные файлы:
ГенераторQR.epf
denis83; alo2012; Zenum; py3uk; +4 Ответить
26. Nysha1210 28.02.20 16:48 Сейчас в теме
У меня 1С 8.3.15, самописная конфа. Всё сделала, как здесь описано. Не работает:

Не удалось подключить внешнюю компоненту для генерации QR-кода. Подробности в журнале регистрации.
Не удалось сформировать QR-код для документа

Что-то видимо недопоняла. Поможете? Спасибо.
27. Емельянов Алексей 165 02.03.20 09:24 Сейчас в теме
(26) Добрый день.
Скопируйте себе макет "КомпонентаПечатиQRКода" из обработки в общие макеты, думаю из-за этого не работает.
28. Емельянов Алексей 165 03.03.20 12:11 Сейчас в теме
(26) Здравствуйте. Получилось?
29. Nysha1210 03.03.20 17:46 Сейчас в теме
(28){Обработка.КомпонентаПечатиQRКода1.Форма.Форма.Форма(152)}: Поле об`єкту недоступне для запису (Картинка)
ОбластьМакета.Рисунки["QRКод"].Картинка = КартинкаQRКода;
30. Емельянов Алексей 165 04.03.20 06:12 Сейчас в теме
(29) Что-то видимо изменили в моей обработке.
Скачал её сейчас, в строке 152 нет кода.
Попробуйте запустить оригинал обработки.
31. Nysha1210 04.03.20 18:49 Сейчас в теме
(30) Ничего не меняла. Взяла так как у вас. У меня в Картинку макета не передаются данные сформированного Двоичного кода. Уже всё просмотрела. На картине защиты и запрета нет. Данные формируются, но вот в картинку не передаются и всё тут((((
33. Емельянов Алексей 165 05.03.20 07:14 Сейчас в теме
(31) Скачал обработку которую прикрепили.
Вы зачем-то вместо обычной картинки вставили элемент ActivX.
Удалите и вставьте обычное изображение в макет и будет работать.
Прикрепленные файлы:
34. Nysha1210 05.03.20 10:12 Сейчас в теме
(33) Спасибо. Всё щас сделаю.
35. Nysha1210 05.03.20 10:22 Сейчас в теме
(34) Уря - всё получилось. Спасибо!!!
36. Емельянов Алексей 165 05.03.20 12:04 Сейчас в теме
32. Nysha1210 04.03.20 18:52 Сейчас в теме
37. SanchoD 316 23.03.20 11:46 Сейчас в теме
В тонком клиенте работает нормально, а в web-клиенте не отображает QR-код, показывает вместо него крест.
В чем может быть проблема?
(БП 3.0.76.67)
Прикрепленные файлы:
38. tistt 15.04.20 12:52 Сейчас в теме
Спасибище Вам огромное!!!!! Пробовала другие обработки , кучу времени потратила зря...А с вашей обработкой получилось!!!! Ура! Спасибо 100 раз!!
janibeg; Емельянов Алексей; +2 Ответить
39. Емельянов Алексей 165 15.04.20 17:49 Сейчас в теме
40. zav-777 27 09.06.20 16:35 Сейчас в теме
Спасибо. Сильно помогло.
Осталось, чтобы сбер одобрил)))
Емельянов Алексей; +1 Ответить
41. amazonka 25 15.06.20 20:23 Сейчас в теме
у меня тоже взлетело.... большое человеческое спасибо..... особенно когда счас делаеш для обычных форм.... ничего не найти... а тут.... супер!!!
Емельянов Алексей; +1 Ответить
42. LineykaSBK 6 21.06.20 05:49 Сейчас в теме
Вопрос околотемный.
Есть ли готовые решения по считыванию QR кода в 1С, с целью занесения в базу 1С?.
Логически, это был бы очень и очень востребованный инструмент.
Подрубаем сканер штрих кода к компу, или же через вэб сервисы мобильный с установленными QR сканером, настраиваем подключение к базе, и вперед например счета или чеки шлепать и создавать первичку путем считывания штрихкода, а там уже на основании них делать остальные - вытекающие из логики документы.
На данный момент времени я видел в сети решения только для сканера, простого компьютерного сканера, но не для штрих кодов.
43. SanchoD 316 22.06.20 09:39 Сейчас в теме
(42) Так кто мешает сейчас отсканированный QR-код - фактически строку, пропарсить и создать документ/элемент справочника?
Другое дело, что эта строка может быть составлена как угодно и в каждом отдельном случае надо настраивать соответствия между инфой в коде и метаданными базы.
44. LineykaSBK 6 22.06.20 13:21 Сейчас в теме
Я задал уточняющий вопрос "не про кто мешает" а "про кто нибудь уже разрабатывал такой механизм для 1С"
Если такого механизма нет, то и вопросов больше не имеется.
45. user785225 26 02.07.20 18:38 Сейчас в теме
47. 21stas 99 08.09.20 15:01 Сейчас в теме
Много лет использовал эту компоненту.
И недавно QR-код стал генерироваться так, что вместо русских букв считываются вопросики.
Что может быть причиной?
48. AnryMc 848 10.01.21 19:02 Сейчас в теме
(47)
что вместо русских букв считываются вопросики

Есть предположение (вовсе не утверждение) если windows 10 то возможно влияет: "язык по умолчанию"

Попробуйте запустить при раскладке "русская" и "английская" - есть разница?

З.ы. Я кстати тоже писал свой QR генератор, но снабдил его шаблонами: Визитка, Контакт, Wi-Fi подключение... что бы не искать каждый раз https://infostart.ru/public/1352267/
49. 21stas 99 11.01.21 19:08 Сейчас в теме
Мы разобрались - оказывается, приложение на некоторых телефонах неправильно считывало русские буквы из QR-кода.
53. madonov 259 21.10.21 08:25 Сейчас в теме
54. madonov 259 22.10.21 02:16 Сейчас в теме
(53) Сам спросил - сам отвечу.

ST00011 - Кодировка Win 1251
ST00012 - Кодировка UTF-8

Поменял 1 на 2 и проблема ушла.
52. fixin 4273 13.07.21 19:52 Сейчас в теме
Спасибо, использовал это как заготовку для вывода в счет покупателя в Альфа-авто QR-кода для оплаты этого счета.
Правда, пришлось еще повозиться, чтобы сформировать строку для оплаты. Но с точки зрения части, отвечающей за формирование QR-кода, использовал этот код.
Емельянов Алексей; +1 Ответить
55. user1270445 28.10.21 15:08 Сейчас в теме
(21) Спасибо. Прямо по статье запустил, но компоненту в макет обработки добавил. ПодключитьКомпонентуИзМакета("QRCodeExtension", "ВнешняяОбработка.ГенераторQRКода.Макет.КомпонентаПечатиQRКода");
Емельянов Алексей; +1 Ответить
56. mrsmrv 127 11.01.22 20:22 Сейчас в теме
Не подскажете с чем связано то, что код формируемый внешней компонентой из типовой конфигурации генерируется иногда разный. Точнее чаще он отличается от "канонического". Я понимаю там происходит выбор наиболее подходящей маски. Но всё же. Странный там алгоритм. Пример на видео. Тот что справа формируется внешней компонентой. Тот что слева обработкой на 1С без внешних компонент.
И отличается он на один пиксель. Что очень странно.
Прикрепленные файлы:
VID_20220111_234944.avi
57. unknown181538 158 24.09.22 11:00 Сейчас в теме
А можно как-то уменьшить белые поля вокруг QR? Изменение параметра будто не влияет никак.
59. пользователь 31.12.22 12:24
Сообщение было скрыто модератором.
...
60. user809597 11.12.23 10:01 Сейчас в теме
Я просто дополню проблемой с которой столкнулась:
В ДанныеQRКода(QRСтрока, УровеньКоррекции, Размер), параметр Размер должен быть больше 29, иначе не формирует и падает с пустой инфо об ошибке.
Актуально, если кто-то формирует размер кода от длины кодируемой строки.
Оставьте свое сообщение