Создание контента для электронного письма в NPrinting
Я довольно долго думал о том, каким будет мой следующий совет по развитию NPrinting. Просматривая различные темы в Qlik-сообществе, я несколько раз сталкивался с вопросом: «Как стилизовать содержимое электронного письма NPrinting?». Кажется, это простой вопрос, и ответ почти на поверхности, поскольку в NPrinting есть готовый редактор содержимого электронного письма в параметрах публикации, НО…. правда ли все так просто?
I – Сценарий
Когда вы создаете письма в электронной почте в редакторе задач публикации NPrinting, у вас появляется несколько доступных вариантов:
1. Формат – у вас есть выбор: использовать HTML или Text.
- Поскольку нас интересует хорошо отформатированный результат, из опций остается HTML.
2. </> Эта кнопка позволяет переключаться между HTML и форматированным текстом. Я поигрался с опцией Rich Text и попытался использовать встроенные стили для создания хорошо отформатированного письма и столкнулся с небольшой проблемой при попытке отформатировать/масштабировать шрифты и изображения. Он никогда не отображался так, как я хотел, и не соответствовал моим встроенным стилям, поэтому я быстро отказался от такого решения.
Итак, это все, что вы действительно можете делать непосредственно во встроенном редакторе постов. Если вам этого достаточно, то вы счастливый человек! Но мне этого мало. Итак, как же я поступил с электронным письмом в NPrinting?
II – Создать шаблон отчета HTML.
Мне нужен был хорошо отформатированный HTML-контент электронного письма. Для этого мне пришлось создать его, а затем встроить в тело письма. NPrinting не позволяет встраивать внешние файлы непосредственно в редактор содержания письма, однако позволяет встраивать отчеты NPrinting в формате HTML. Мое решение как раз и основано на таком подходе. Я создал свое электронное письмо и почти готов его вставить. Последнее, что мне нужно сделать - добавить некоторые бренды (логотипы/изображения).
Выше показано, что у меня есть заполнители, готовые для размещения изображений. Как я могу их разместить? Один из вариантов – использовать изображения из QlikView или Qlik Sense. Этот подход прост и позволяет разместить в шаблоне любое изображение из приложения Qlik. Однако мой подход отличается. Я предпочитаю представлять изображения в виде кодов base64 и помещать их напрямую как код «data: image/png; base64, iVBO… .etc». Это позволяет мне сохранять прозрачность логотипов и изображений, что является большим преимуществом и помогает создавать профессионально выглядящий контент. Код Base64 обычно представляет собой очень длинный хешированный текст. Чтобы избежать проблем с шаблоном, я помещаю его в формулу NPrinting как = ’здесь я помещаю свою ссылку base64’ и формулу ссылки в шаблон.
Обратите внимание, что я добавляю знак “=” для оценки строки base64 как текста.
Если вы хотите создать более динамический контент, например изображения, зависящие от выбора (например, логотипы отделов), вы можете создать отдельные переменные для каждого журнала/изображения, а затем использовать другую переменную для условной ссылки на переменную с правильным изображением base64.
III –Вставить отчет в тело письма
После добавления изображений в HTML-шаблон содержимого электронного письма, я с радостью встраиваю их в само сообщение. Для этого мне нужно добавить свой отчет для публикации задачи в формате вывода HTML, снять флажок «Прикрепить к электронной почте». Затем перейти в раздел «Электронное сообщение», где нужно щелкнуть тег «Отчеты» -> «Встроить отчеты» -> и выбрать отчет Html в качестве содержимого вашего электронного письма. Вы также захотите выбрать только выбранные вложения, поэтому в тексте сообщения электронной почты переключите раскрывающееся меню «Вложения» на «Выбранных вложениях» и выберите, какие из них необходимо физически прикрепить.
На этом я завершаю свои размышления на тему форматирования электронных писем.
Преимущества:
- Создав такой шаблон, вы можете доставлять стандартизированный контент своим получателям.
- Возможность повторного использования: меньше доработок, когда вы создаете новый отчет и вам нужно новое сообщение в электронной почте.
Возможные улучшения (темы для другого поста)
- Примеры кодов base64 в переменных, динамически создающих изображение на основе выбранных фильтров.
- Динамическое содержимое письма (другой подход с одним приложением, поддерживающим несколько отчетов и задач NPrinting)
Ограничения:
- Будет довольно сложно (или, в некоторых случаях, невозможно) включить в содержимое электронной почты динамические имена пользователей.
- Для каждого приложения/отчета NPrinting вам необходимо создать специальный шаблон или потратить время на разработку приложения Qlik, поддерживающего все ваши отчеты и динамически изменяющегося текста на основе фильтров, применяемых во время выполнения задачи NPrinting.
Ресурсы:
- Вот короткое видео, показывающее, как использовать кодировку base64: Ссылка
- Эта тема также тесно связана с этим сообщением в сообществе.