Потребовалось передать настройки инициализации с 1С 8.1 на мобильное устройство — решил воспользоваться QR-кодом для этого. Поискал готовое решение — не нашел подходящего. Сделал — решил поделиться.
Используется библиотека javascript QRCode.js: http://davidshimjs.github.io/qrcodejs/
Для 8.1 обработка использует шаблон в макете, из которого создается страничка. В javascript создана функция, которая вызывается из 1С при изменнии строки, которую требуется закодировать. Там все просто. Выкладываю в виде обработки.
Сложности начались в мобильном приложении. Там макеты могут быть только двух типов: или ДвоичныеДанные, или ТабличныйДокумент — нам уж совсем не подходит. Пришлось шаблон страницы размещать в коде 1С. Также нам недоступен в мобильном приложении реквизит Документ расширения поля формы для поля HTML документа. Поэтому пришлось отказаться от вызовов javascript и переформировывать страницу при изменении строки, которую требуется закодировать. Выкладываю в виде конфигурации.
Спасибо за внимание.
P.S. кстати, можно обойтись без jQuery — для этого нужно её вызовы заменить на нативные в QRCode.js — это сократит код страницы на 100 Кб =))
лучше бы написали 1. отдельно генерацию кода на чистом макете (печформе), отдельно 2.преобразование его в картинку
(1) CheBurator,
я поделился подходом — ссылка на библиотеку JS в сообщении, можно сделать все что угодно, всем с форматом не угодишь =), а мобильное приложение сделано в форме конфигурации для удобства тестирования. опубликовал конфигурацию, залил на мобильное устройство и проверил.
Смысл генерации QR-кода у меня был в отображении его на экране для передачи строки информации — поэтому не макеты и не печформы.
Нашел ошибку при генерации длинной строки на русском языке. Ошибка была в qrcode.min.js, потом на гитхабе увидел различие между полной версией qrcode.js и qrcode.min.js.
Рекомендую использовать полную версию библиотеки qrcode.js в шаблоне и смотреть Issues и Pull requests при возникновении ошибок у вас с библиотекой в дальнейшем.
Тут уважаемый minimajack уж выкладывал такую штуку, правда очень скромно. Работает отлично
http://forum.infostart.ru/forum24/topic63560/message1301558/#message1301558
(4) Alien_job,
жаль, что не нашёл, а изобретал велосипед =(, спасибо за ссылку!
(3) да вы что…? оказывается для генерации QR без ВК надо использовать что-то вместо ВК…
😉
(6) CheBurator,
Ничего удивительного. Генерить QR-код из пустоты умеют только волшебники.
И даже им нужна по крайней мере мана.
Как раз то, что было давно нужно. Спасибо!
(7) утюгчеловек, так я глянул много кода вшито, портировать его на 1С наверно долго будет, а использовать готовую компоненту проще всего) Кстати на скприпте аж в 2009 это написали.
(7) на клюшках тыщу лет назад умели генерить EAN без шрифтов, ВК и прочих внешних инструментов — чисто на возможностях мокселя.
Принципиальную проблему сгенерить QR например на том же самом мокселе — не вижу…
(10) CheBurator, так вопрос же не в подмене, а в портировании кода! Портируйте код все вам похлопаем в ладоши, друдоемко его разобрать. Но если бы деньги платили был бы живее интерес!
нафига код портировать если это так трудоемко? м.б. имеет смысл разобраться что к чему и написать код? хотя, конечно, нафига…