0. tunesoft 217 04.02.16 08:40 Сейчас в теме

Генерация QR-кода (управляемая форма, обычное и управляемое приложение)

Обработку можно быстро и легко интегрировать в любую конфигурацию с и без БСП (Библиотека Стандартных Подсистем).

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. Rokky78 23 10.02.16 11:59 Сейчас в теме
Есть какие то ключевые отличия от возможности формирования QR кода с помощью подсистемы "Печать" из БСП?

Все, пардон, не увидел "используется компонента из типовой конфигурации".
2. tunesoft 217 10.02.16 12:25 Сейчас в теме
(1) Rokky78,
>Есть какие то ключевые отличия от возможности формирования QR кода с помощью подсистемы "Печать" из БСП?

Основное отличие: легко интегрируется и работает в любой конфигурации без использования БСП.
3. Serginio 793 10.02.16 12:45 Сейчас в теме
Кстати простая библиотека https://github.com/codebude/QRCoder с Лицензия MIT
утюгчеловек; +1 Ответить
4. tunesoft 217 10.02.16 13:07 Сейчас в теме
(3) Serginio, спасибо за информацию.
6. утюгчеловек 23.04.16 15:21 Сейчас в теме
(3) Serginio,

хороший вариант -- использовать эту библиотеку в веб-сервисе. Тогда QR коды можно использовать не только в 1С, и не только в рамках корпоративной сети. Например в мобильном клиенте. Правда получать коды через сервис будет медленнее чем через компоненту.
7. tunesoft 217 23.04.16 19:19 Сейчас в теме
(6) утюгчеловек, да, вариант хороший, только каждое подключение к веб-сервису требует лицензию 1С.
13. утюгчеловек 26.04.16 12:59 Сейчас в теме
(7) (8) Serginio,
Верно, я имел в виду именно не 1С-ный веб-сервис, благо инструментов для их создания хватает, чтобы клиенты 1С могли генерить QR-коды "внутрь 1С".
WCF, MonoWCF, ASP.net, JAX-WS и проч. С их помощью поднять вебсервис QR-кодов можно за считанные часы.

(11) не считаю, что это спам. Я оцениваю как потребитель, и ожидаю в комментариях увидеть плюсы и минусы как обработки так и её альтернатив. А это именно альтернатива использованию обработки из публикации. Причем опенсорсная, которую можно использовать без потери стартмани и проч. Не вижу здесь элемента рекламы. Тем более что автором является не Serginio.
Serginio; +1 Ответить
14. tunesoft 217 26.04.16 14:20 Сейчас в теме
(13) утюгчеловек,
>WCF, MonoWCF, ASP.net, JAX-WS и проч. С их помощью поднять вебсервис QR-кодов можно за считанные часы.

Отлично.
Как вы думаете чем этот набор букв поможет читателям данной публикации ?
Если хотите глубже раскрыть тему, то не будьте голословны и добавьте конкретные способы реализации с помощью ваших предложенных технологий.
15. утюгчеловек 26.04.16 16:27 Сейчас в теме
(14)
Мне кажется, что обзор способов поднятия веб-сервиса с помощью какой-либо популярной технологии тянет на небольшую статью типа "How to..".
Моя цель была обозначить альтернативы и упомянуть "наборы букв" по которым можно быстро найти нужные мануалы в любимом поисковике.

Нужна ли такая статья? Предлагаю поставить плюс или минус =) под постом, если эта тема интересна. Но полагаю, в интернете полно ресурсов, в которых уже всё написано за меня.
8. Serginio 793 23.04.16 20:09 Сейчас в теме
(6) Можно прямо из Использование сборок .NET в 1С 7.x b 8.x. Создание внешних Компонент.
.......
Использование классов .Net в 1С для новичков
(7) Нужна лицензия только на вызов метода. Если лицензий не хватает то вызовы становятся в очередь

Ну и вэб сервис может быть на Asp.Net
утюгчеловек; +1 Ответить
9. tunesoft 217 24.04.16 12:45 Сейчас в теме
(8) Serginio,

>Нужна лицензия только на вызов метода. Если лицензий не хватает то вызовы становятся в очередь

Обычно лицензия 1С освобождается не сразу после окончания сессии, количество лицензий 1С нужно брать с запасом

>Ну и вэб сервис может быть на Asp.Net

Тогда причём тут 1С ? Можно и на PHP сделать :)
10. Serginio 793 24.04.16 15:21 Сейчас в теме
(9) А для вызова веб сервиса скссии нет. Там для каждого вызова инициализируется отдельная сессия с УстановкаПараметровСеанса
http://forum.infostart.ru/forum86/topic120770/

Ну можно 1С использовать так Linq to ODATA

Code First и Linq to EF на примере 1С версии 8.3 часть II
11. tunesoft 217 24.04.16 16:14 Сейчас в теме
(10) Serginio, странный у вас способ так открыто и не в тему рекламировать свои обработки в комментариях к публикации, это плохой тон, ваши ссылки не имеют никакого отношения к текущей публикации, мягко говоря вы здесь спамите.
5. dedicated 25 15.02.16 08:48 Сейчас в теме
Отличная обработка спасибо!
12. Serginio 793 24.04.16 16:49 Сейчас в теме
Я только показал в 3, что есть такая библиотека. Потом как её применять. Это все относится к формированию QR. И те кого это интересует увидят разные реализации. Только и всего.
16. fr13 08.06.17 09:06 Сейчас в теме
Соединение = Новый HTTPСоединение("chart.googleapis.com",,,,,,Новый ЗащищенноеСоединениеOpenSSL);
Запрос = Новый HTTPЗапрос("chart?chs=300x300&cht=qr&chl="https://infostart.ru");
Соединение.Получить(Запрос, ПутьКФайлу);


я делал так, быстро, просто.
🅵🅾️🆇; DrAku1a; tunesoft; Andry.Boris; azhilichev; +5 Ответить
17. tunesoft 217 08.06.17 11:23 Сейчас в теме
(16) Тоже интересный вариант, только требует подключения к интернету, не во всех организациях это бывает.
20. 🅵🅾️🆇 15.03.18 18:04 Сейчас в теме
(16) Также делал.
Кому прям совсем лень напрягаться:

    
&НаКлиенте
Процедура Сформировать(Команда)
    СформироватьНаСервере();
КонецПроцедуры // Сформировать(0

&НаСервере
Процедура СформироватьНаСервере()
    ТабДок.Очистить(); 
    Макет        = РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет");
    
    // СтрокаВнутр 
    Строка        = ЗначениеВСтрокуВнутр(Реквизит);
    Макет.Рисунки.D1.Картинка    = Новый Картинка(ПолучитьКодQR(Строка, Погрешность, ГабШирина, ГабВысота), Истина);
    
    // НавигационнаяСсылка
    Строка        = ПолучитьНавигационнуюСсылку(Реквизит);
    Макет.Рисунки.D2.Картинка    = Новый Картинка(ПолучитьКодQR(Строка, Погрешность, ГабШирина, ГабВысота), Истина);
    
    // Код;Наименование
    Строка        = Формат(Реквизит.Код, "ЧГ=0")+";"+Реквизит.Наименование;
    Макет.Рисунки.D3.Картинка    = Новый Картинка(ПолучитьКодQR(Строка, Погрешность, ГабШирина, ГабВысота), Истина);
    
    ТабДок.Вывести(Макет);
КонецПроцедуры // СформироватьНаСервере()

&НаСервереБезКонтекста
Функция ПолучитьКодQR(Строка, Погрешность, Ширина, Высота)
    Попытка
        Соединение    = Новый HTTPСоединение("chart.googleapis.com", 443,,,, 0, Новый ЗащищенноеСоединениеOpenSSL);
        Запрос        = Новый HTTPЗапрос(СтрШаблон("chart?chs=%1x%2&cht=qr&chld=%3&chl=%4", Ширина, Высота, Погрешность, КодироватьСтроку(Строка, СпособКодированияСтроки.КодировкаURL)));
        Ответ        = Соединение.Получить(Запрос);
        Если Ответ.КодСостояния <> 200 Тогда Возврат Ответ.ПолучитьТелоКакСтроку(); КонецЕсли;
        Возврат Ответ.ПолучитьТелоКакДвоичныеДанные();
    Исключение    
        Сообщение        = Новый СообщениеПользователю;
        Сообщение.Текст    = СтрШаблон("Не удалось получить QR код.
                            | %1", ОписаниеОшибки());
        Сообщение.УстановитьДанные();
        Сообщение.Сообщить();        
        Возврат Неопределено;    
    КонецПопытки;
КонецФункции // ПолучитьКодQR()
Показать


Заполняет картинки макета обработки (D1, D2, D3) QR кодами.

Хинты:
Если у вас структура, но с коротенькими данными, то можно, например, писать JSON строку, правда всеже место жалко.
Если только для внутреннего пользования - AES256.
Числа и даты ввиде строки можно переводить в другие системы счисления для укорачивания.
Не забывайте кодировать URL строку перед GET запросом.

Информация для чтения
18. 7OH 32 13.06.17 22:14 Сейчас в теме
А можете добавить возможность выводить в центр своё изображение ?
Тогда можно и десяточку потратить.
19. tunesoft 217 22.06.17 10:47 Сейчас в теме
(18) Генерация QR-кода выполняется с помощью типовой компоненты 1С, если они добавят такую возможность то с удовольствием добавим :)
21. starik-2005 1944 06.05.19 10:54 Сейчас в теме
Ничего не написано о генерации qr-кода - бессмысленно потратил время на прочтение.
22. tunesoft 217 06.05.19 12:00 Сейчас в теме
(21)Всё верно, описания алгоритмов отсутствуют.
Обработка в публикации является законченным продуктом и выполняет заявленный функционал.
23. starik-2005 1944 06.05.19 13:32 Сейчас в теме
(22) ну тогда следовало бы в заголовке тоже что-нибудь написать про то, что это обработка, код закрыт, гарантий никаких)))
24. tunesoft 217 06.05.19 13:39 Сейчас в теме
(23)Код открыт.

Гарантия от 1С, так как для генерации QR-кода используется их типовая компонента.

Обработка представляет собой удобное API для использования компоненты.

P.S.
"starik-2005" если вам нечего добавить в комментарии по существу лучше воздержитесь и не тратьте своё время и время других посетителей сайта. Вы уже и так много времени потратили на чтение ненужной вам статьи.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Екатеринбург
зарплата от 120 000 руб. до 120 000 руб.
Полный день

Программист 1C
Москва
зарплата от 100 000 руб. до 150 000 руб.
Полный день


Руководитель проектов 1С
Санкт-Петербург
Полный день

Бизнес-архитектор 1С, ведущий консультант
Санкт-Петербург
Полный день