В этой статье вы познакомитесь с новой подкатегорией транспортов, которая стала доступна с версией 2022.2.7 и называется “почтовые транспорты”. На данный момент в нее входят 2 компонента обеспечивающие доступ к GMail и Outlook.
Почтовые транспорты поддерживают следующий функционал:
- сохранение и загрузка отчета;
- сохранение результата экспорта.
Сохранение подразумевает отправку письма. Загрузка подразумевает использование прикрепленных к письму файлов, при этом письмо может находиться в любой почтовой категории (входящие/отправленные/черновики и так далее).
Подробнее об использовании GMail можно прочитать по следующей ссылке.
Важно! Для работы протокола https необходимы следующие библиотеки Open SSL: libssl-3.dll и libcrypto-3.dll их можно найти в директории с главным демо приложением. Библиотеки необходимо скопировать в папку с приложением или системную директорию.
- Добавление транспорта в приложение и настройка
- Подключение к Outlook
- Будущее почтовых транспортов
В FastReport есть компоненты, называемые “транспортами”. Они нужны для обеспечения доступа к:
- облачным хранилищам (Dropbox, OneDrive, Box.com, Google.Drive, Yandex.Disk);
- FTP-серверам;
- Email (только отправка сообщений);
- почтовым сервисам (Gmail, Outlook).
Облачные хранилища и FTP-сервера поддерживают следующий функционал:
- сохранение и загрузка отчета;
- сохранение результата экспорта;
- использование файлов (например, картинок) при построении отчета.
1. Перейдите в палитру компонентов в среде разработки Embarcadero Rad Studio и раскройте вкладку “FastReport VCL Internet transports”.
2. Выберите нужный компонент и добавьте его на форму приложения. Можно использовать контекстное меню на компоненте. Это установит подключение прямо из среды разработки. Нажимаем на подменю “Edit connection”.
По умолчанию транспорты реагируют только на ответ авторизации от браузера используя порт 9898. Если этот порт уже занят или планируется использовать данный порт в дальнейшем, FastReport VCL позволяет изменить порт через настройку свойства ListenerPort.
Далее будем предполагать использование порта 9898 по умолчанию. Теперь рассмотрим этапы подключения для почтовых транспортов.
Важно! Пользователю не нужно выполнять все нижеперечисленные действия каждый раз, для авторизации. Данная настройка выполняется только один раз администратором облачных сервисов. После выполнения всех действий полученные авторизационные данные могут быть использованы другими пользователями.
Когда пользователь хочет открыть (или сохранить) отчет (или результат экспорта) используя транспорт, то он увидит стандартный диалог авторизации (если он не авторизовался ранее).
Для перехода на страницу настроек подключения нажмите на знак вопроса справа вверху окна авторизации. После этого будет открыт браузер по умолчанию со страницей управления приложениями Azure. Если пользователь не авторизован в Azure, то откроется страница с авторизацией, на которой нужно будет войти в аккаунт Azure.
Если данный аккаунт ранее не создавал приложения Azure, то в качестве первого шага необходимо создать новое приложение.
Прежде всего, нужно создать новое приложение. Нажмите кнопку “Register an application”.
На данном этапе необходимо ввести имя приложения, выбрать типы поддерживаемых учетных записей и заполнить Redirect URI.
Для простоты настройки в свойстве “Типы поддерживаемых аккаунтов” выберем третий пункт “Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)”. Подробнее об этом вы сможете прочитать, нажав на “Help me choose...”.
Если вы хотите использовать стандартный порт, то в поле Redirect URI введите “http://localhost:9898”.
Нажмите кнопку “Register”. Наше приложение будет успешно создано.
Скопируйте значение поля “Client ID” в диалог авторизации FastReport VCL. Откройте раздел “Certificates & secrets”.
Нажмите “New client secret”.
Введите описание и выберите срок действия кода. Нажмите “Add”.
Скопируйте значение “Value” в диалог авторизации FastReport VCL.
Нажмите “Ok”. Откроется новое окно в браузере с предложением войти в ваш аккаунт.
После авторизации нажмите “Yes”.
На этом настройка подключения успешно окончена. Теперь вы знаете, как подключаться к Outlook в FastReport VCL.
Функционально облачные транспорты поддерживают все ранее указанные возможности. Графическое оформление почтовых транспортов во время загрузки будет доработано в последующих релизах. Пока что используется графический интерфейс пользователя (GUI) как облачных хранилищах. Сейчас категории и сообщения реализованы в виде папок, а вложения в виде файлов.
В дальнейшем планируется улучшить графическую составляющую, сделав её более удобной для пользователей. В функциональных улучшениях загрузки будет реализован поиск по сообщениям.
GUI окна отправки сообщений также подвергнется незначительным изменениям.
Отдельно отметим временную особенность отправки результата экспорта. Если экспорт генерирует несколько файлов, то каждый файл отправляется собственным письмом. То есть если вы захотите отправить результат экспорта в постраничный PNG, то каждая картинка будет отправлена отдельным письмом.
Почти все экспорты в FastReport VCL генерируют только 1 выходной файл (PDF, DOCX, RTF и прочие), большинство пользователей эту особенность не заметят.
Эта неточность будет исправлена с последующими релизами. По всем вопросам пишите нам в Поддержку.