Ultimate VCL

Набор инструментов для создания инфраструктуры отчетов для бизнес-приложений в Delphi и для кроссплатформенной разработки

v. 2025.2.0
Аэрофлот и FastReport VCL и МоиОтчеты Десктоп

Кейс: Как «Аэрофлот» генерирует 500 файлов отчетов из баз данных за минуту

Авиация — это не только романтика, но и миллионы строк регулярных отчетов в Excel. Рассказываем как уже 20 лет «Аэрофлот» решает задачи создания корпоративных отчетов с помощью продуктов FastReport.

Какие отчеты можно сделать из Ultimate VCL?

Какие отчеты можно сделать?

Практически любые: счет-фактура, финансовый отчет, каталог продуктов с поддержкой цветовых профилей, меню ресторана, детализация продаж, анкеты с электронными формами, билет на самолет, счета за коммунальные услуги и многое другое. Если у вас есть данные, которые необходимо сделать визуально понятными, то FastReport подойдет вам идеально.

Бесплатные шаблоны унифицированных форм вы можете скачать в формате шаблонов или PDF из нашего каталога МоиОтчеты Магазин.

Особенности и преимущества Ultimate VCL

Транспорты
Сохраняйте построенные отчёты в облачные хранилища Google Drive, Next Cloud, Box, Dropbox всего за пару кликов для удобной доставки документов вашим клиентам.
Быстрый доступ к отчету и структуре данных
Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями.
Клиент-серверные компоненты
Стройте отчеты прямо в WEB с использованием стандартных компонентов FastReport VCL без необходимости прямого подключения клиента к серверу базы данных.
Гибкая и открытая архитектура
Если функционала FastReport недостаточно, вы можете улучшить его, создав и подключив собственные объекты (фильтры экспорта, базы данных) к своим отчетам.
Исходный код
Этот набор компонентов включает в себя исходные коды FastReport. Максимальное удобство для компаний, желающих адаптировать код под свои нужды.
Полезные дополнения
В Ultimate входит система для многомерного анализа FastCube для VCL и FMX и плагин FastConverter .FP3 для экспорта отчетов во все возможные форматы документов.
Дизайнер шаблонов в вашем приложении

Дизайнер шаблонов в вашем приложении

Современный редактор предлагает множество инструментов для создания шаблонов отчётов. Гибкая архитектура позволяет создавать редакторы для существующих и новых объектов. Дизайнер шаблонов может быть встроен в ваше приложение. Мы поддерживаем локализацию более чем для 30 языков.

Ultimate VCL — это бэнд-ориентированный генератор отчётов с богатым набором бэндов для создания различных типов отчётов. Можно собрать общие элементы (заголовок, подвал, реквизиты предприятия, логотипы) в базовый отчёт и наследовать их для других отчётов. Поддерживается функция вложенных отчётов.

Обработка данных

Обработка данных

Ultimate VCL поддерживает сортировку и фильтрацию данных, master-detail отношения. Всё настраивается несколькими щелчками мыши. Возможно подключение к FireDAC, ADO, BDE, DBX, IBX и FIBPlus для доступа к большинству баз данных, включая Oracle.

Отчёт может содержать данные из таблиц, запросов, подключений к БД. Ultimate VCL имеет скриптовой движок, поддерживающий PascalScript, C++ Script, BasicScript и JScript. Отчёты могут включать диалоговые формы для запроса параметров перед построением. Диалоговые элементы управления позволяют подключать данные и фильтровать их без написания кода.

Клиент-серверные компоненты

Стройте отчеты прямо в WEB по технологии клиент-сервер с использованием стандартных компонентов FastReport VCL без необходимости прямого подключения клиента к серверу базы данных. Вы сможете управлять несколькими клиентскими запросами одновременно в отдельных потоках, тем самым минимизируя время отклика сервера.

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

Печать отчетов

Дополнительные настройки печати

Для вас доступно: разрезание больших страниц отчета на малые, печать нескольких малых страниц на одной большой, печать на заданном формате с масштабированием.

Вам нужно распечатать отчет, содержащий страницы формата А3, на обычном принтере с поддержкой А4? Теперь это не проблема!

Предпросмотр и интерактивность

Предпросмотр и интерактивность

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

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

Экспорты в удобные форматы

Экспорты в удобные форматы

Фильтры экспорта готового отчета во множество форматов: PDF, RTF, XLSX, XML, DOCX, TXT, CSV, Excel OLE, PowerPoint, HTML, MHT, XPS, JPEG, BMP, PNG, Open Document Format (ODT, ODS, ODP), XAML, Scalable Vector Graphics (SVG), ZPL и так далее.

Ultimate VCL позволяет быстро преобразовывать отчеты с редактируемыми полями (такими как текстовые поля, символьные расчески, флажки, радиогруппы и графические поля) в документы PDF без подключения дополнительных библиотек. Сохраняйте свои отчеты в популярных форматах: PDF 1.4-1.7, PDF/A-1a, PDF/A-1b, PDF/A-2a, PDF/A-2b, PDF/A-3a, PDF/A-3b, которые являются безопасными, доступными и надежными.

Кроссплатформенная разработка

С помощью входящих в Ultimate VCL компонентов FastReport FMX и FastCube FMX возможна разработка кроссплатформенных приложений с формированием отчетов для Windows, macOS и Linux. Это позволяет разработчикам создавать документы, которые будут работать на разных операционных системах без необходимости дополнительной настройки или перекомпиляции.

Благодаря среде FireMonkey, совместимой с Embarcadero RAD Studio, поддерживается создание проектов под различные разрешения экрана и размеры устройств, обеспечивая адаптивность приложений на всех устройствах.

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

Формулы FastScript

Формулы FastScript

В Ultimate VCL для выполнения нестандартных вычислений применяется пакет FastScript. С помощью скриптов можно выполнять расчёт показателей и фильтров. Вы можете установить обработку данных после либо одновременно со стандартными показателями.

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

Транспорты

Транспорты

Ultimate VCL позволяет экспортировать готовые отчёты и результаты экспорта в различные облачные хранилища, такие как FTP, Dropbox, OneDrive, Google Drive, Box.com и другие. Это упрощает процесс сохранения отчётов и делает их доступными для пользователей в любое время и в любом месте.

Облачные сервисы предоставляют возможность автоматического резервного копирования файлов, что снижает риск потери данных в случае сбоя оборудования или других непредвиденных ситуаций. Хранение файлов в облаке освобождает место на локальных накопителях устройств, что может быть полезно для пользователей с ограниченным пространством на жёстком диске или SSD.

FastQueryBuilder

FastQueryBuilder

Создавайте запросы к базам данных без знания SQL! Вы можете использовать FastQueryBuilder в своих приложениях, написанных в среде Embarcadero Delphi, C++Builder, RAD Studio (VCL а также FMX - FireMonkey) и Lazarus, для создания простого SQL генератора. При этом визуальные модели запроса сохраняются для дальнейшего использования и корректировки.

FastQueryBuilder позволяет работать с локальными и клиент-серверными базами данных используя BDE, ADO, IBX, FIBPlus. Полностью визуальная настройка параметров запросов может быть встроена в любое окно вашего приложения.

OLAP компоненты

OLAP компоненты

Ultimate VCL содержит в себе компоненты кросс-таблицы для VCL и FMX - интерактивного инструмента представления и аналитической обработки данных. В верхней и в левой части таблицы располагаются многоуровневые заголовки, заполненные значениями измерений. Центральная часть таблицы отображает значения показателей.

Кросс-таблица состоит из множества областей: заголовок кросс-таблицы, область полей-фильтров, заголовки измерений по-вертикали и по-горизонтали, вертикальный и горизонтальный заголовок кросс-таблицы, область данных, список полей, список Top-N фильтров, область вычислений агрегатов для выделенных ячеек и регулятор масштаба.

Варианты поставок

Особенности
от 129 890 ₽
от 89 890 ₽
от 49 890 ₽
от 49 890 ₽
от 49 890 ₽
от 39 890 ₽
Ядро FastReport
Компоненты VCL
Компоненты FMX
Компоненты Lazarus
Возможности OLAP
Агрегатные OLAP функции
Поддержка баз данных
Возможности отчётов
Объекты отчета
Штрих-коды
Диаграммы
Печать
Экспорт в различные форматы
Исходные коды
Конвертеры из других шаблонов
Транспорты (Transports)

Связанные статьи

24 апреля 2025

Как открыть и конвертировать файл FP3 с помощью МоиОтчеты Конвертер

FP3 – это формат готового отчета, созданных с помощью генераторов отчетов FastReport, встроенного в различные бизнес-приложения. Файл такого формата может быть сгенерирован разными программами, например CRM или ERP. Чтобы легко его сконвертировать в любой удобный формат, используйте МоиОтчеты Конвертер.  Он позволяет получить из .fp3 файл форматов PDF версий 1.4, 1.5, 1.6 и 1.7, PDF / A (1, 2, 3), RTF, XLSX, XML, DOCX, TXT, CSV, PPTX, HTML, JPEG, BMP, PNG, TIFF, EMF, SVG, Open Document Format (ODT, ODS, ODP) и так далее. Возможна как конвертация одного файла, так и массовая.      Как конвертировать файл из .fp3 в PDF Шаг 1: Установка МоиОтчеты Конвертер. Вам необходимо загрузить и установить МоиОтчеты Конвертер по этой ссылке. После установки запустите программу.   Шаг 2: Открытие файла FP3. Перейдите в меню «Файл» → «Открыть», затем выберите файл формата FP3 и нажмите «Открыть».   Шаг 3: Конвертация FP3 в другой формат. После загрузки файла нажмите «Файл» → «Сохранить как». Вам станет доступно большое многообразие поддерживаемых форматов для экспорта документа. В поле «Целевой формат» выберите нужный формат (PDF, DOCX, XLSX, HTML, PNG и др.) из предложенного списка.    Шаг 4: Итоговое расположение файла и имя. Укажите папку и имя файла для сохранения в поле «Целевой файл» и нажмите «Сохранить». После завершения конвертации файл будет доступен в указанной директории в новом формате.   По всем возникающим вопросам пишите в нашу поддержку support@fastreport.ru.
Читать
21 апреля 2025

Работа с компонентом TfrShellTreeView в FastReport VCL

Не все знают, что внутри FastReport содержатся не только компоненты отчетов, но и многое другое. В частности, имеются несколько компонентов, которые можно применять в своих приложениях также, как и остальные компоненты Delphi. Библиотека таких компонентов постоянно пополняется. В данной статье мы рассмотрим один из таких компонентов, а именно – TfrShellTreeView.  Этот компонент предназначен для отображения элементов файловой системы и частично является аналогом таких компонентов, как TDirectoryListBox, TDirectoryOutline в Delphi и TShellTreeView в Lazarus. Если вы хотите посмотреть его внешний вид не запуская IDE, то это то «дерево», которое вы видите слева в окне проводника.   Компонент отлично работает в операционных системах Windows и Linux для Delphi и Lazarus. Среда разработки FMX не поддерживается.  TfrShellTreeView использует многие возможности операционной системы. Например, в Windows можно заходить в zip архивы как в папки, и даже манипулировать их содержимым: извлекать и добавлять файлы. Под Linux часть функциональности компонента может быть недоступна, в зависимости от установленной версии Linux. Важное примечание: отображение дерева и выбор элементов в нём будут доступны под любой ОС. Основное свойство TfrShellTreeView, которое управляет взаимодействием с операционной системой, является OptionsShell.   ContextMenu – указывает нужно ли показывать системное контекстное меню для выбранного файла. ShowFolder – это свойство отвечает за отображение папок. ShowHidden – данное свойство обозначает будут или нет видны скрытые файлы. ShowNonFolders – это свойство отвечает за отображение обычных файлов (не папок). TrackShellChanges – данное свойство отвечает за реагирование на изменения в файловой системе. Если в компоненте будет открыта какая-то папка, то при её изменении (например, копировании в неё файла) в компоненте также автоматически будет добавлен узел, ссылающийся на этот файл. TfrShellTreeView поддерживает набор горячих клавиш, характерных для стандартного файлового диалога или проводника в Windows (Ctrl+С, Ctrl+V, Delete и т.д.) со стандартными диалогами. Также компонент TfrShellTreeView поддерживает Drag&Drop элементов файловой системы как внутри себя, так и из других (но не всех) файловых менеджеров. Для разрешения операций  Drag&Drop используется свойство OptionsBehavior.AllowDragDrop. Перетаскивание осуществляется с использованием функций операционной системы. Остальные свойства аналогичны как в компонентах TTreeView и TfrTreeView. Однако стоит отметить, что они сгруппированы в группы по типу использования: OptionsBehavior, OptionsSelection, OptionsShell, OptionsView. Это позволит вам быстрее находить нужные свойства. Как упоминалось выше, компонент предназначен для отображения файловой системы компьютера. По умолчанию компонент настроен на отображение корневой папки вашей системы: «Рабочий стол» в Windows или “/” в Linux. Однако возможности компонента этим не исчерпываются.  Поместим компонент TfrShellTreeView на форму и откроем его редактор:   Редактор TfrShellTreeView внешне похож на редакторы компонентов TTreeView и TfrTreeView, но в нём имеются 2 новые кнопки:  New shell Root Item. New shell Root SubItem. Как мы видим на скрине редактора в компоненте могут быть: Обычные узлы, содержащие только текст, например «New simple item 1». Узлы с местоположением в файловой системе, такие как «Этот компьютер», «Lazarus», «data». Такие узлы далее мы будем называть шелл-узлами.  Обычные и дочерние узлы создаются и редактируются также, как и в обычных TreeViews.  Узлы, которые имеют ссылку на элемент файловой структуры, создаются с помощью кнопок «New shell Root Item». Таким образом будет создан шелл-узел того же уровня, что и текущий. Если нажать на «New shell Root SubItem», то будет создан дочерний шелл-узел по отношению к текущему узлу.  Обратите внимание, что у шелл-узла нельзя создавать дочерние узлы, а у обычного узла – можно.  Редактирование шелл-узлов сводится к указанию для какой папки привязан данный узел. Привязку к папке можно задать с помощью констант типа TfrRootNodes. Этими константами задаются такие места, как рабочий стол, автозагрузка и так далее. Если же задать константу rfCustomPath, то появляется возможность добавить путь к папке файловой системы в дереве каталогов ниже. Также этот путь можно задать с помощью окна редактирования, расположенного ниже дерева каталогов. Например, на скрине ниже задается путь к папке Lazarus, расположенной на диске C:\.   Как и у обычного TreeView, обычным узлам компонента можно задавать иконки. Шелл-нодам иконки задавать нельзя, там используются иконки, заданные в операционной системе. Для узлов фактически используется индекс иконки, который добавляется в свойстве ImageIndex. Остальные индексы иконок не используются. Также из-за особенностей использования компонента не реализованы некоторые другие свойства. Например, отсутствует возможность множественного выбора элементов. Самое часто используемое свойство – это конечно же TfrShellTreeView.SelectedPath. Если выбран шелл-узел, то это свойство содержит путь к папке, на которую указывает данный узел. Иначе это свойство равно пустой строке.  Помимо этого, работа с компонентом доступна и программными способами. Добавить обычный (не шелл) узел можно такими же способами, что и обычный TTreeView.  frShellTreeView1.Items.Add(nil,Edit1.Text); //добавляем корневой узел с текстом из Edit1 Добавление узла к текущему выделенному узлу: procedure TForm1.Button5Click(Sender: TObject); var N:TfrShellTreeViewNode; begin N:=(frShellTreeView1.Selected) as TfrShellTreeViewNode; if N=nil then Exit; frShellTreeView1.Items.AddChild(N,Edit1.Text); end; Удалить узел также просто. Например, так удаляется текущий выделенный узел: procedure TForm1.Button2Click(Sender: TObject); var N:TfrShellTreeViewNode; begin N:=(frShellTreeView1.Selected) as TfrShellTreeViewNode; if N=nil then exit; frShellTreeView1.Items.Delete(N); end; Впрочем, для удаления узла можно просто вызывать его метод Free. К сожалению, в настоящее время компонент не поддерживает генерацию событий, происходящих в моменты изменения связанных с ним папок файловой системы. Остальная функциональность компонента во многом совпадает со стандартным TreeView.  В заключение можно сказать, что FastReport — это не только инструмент для создания отчётов, но и источник дополнительных компонентов, которые можно использовать в приложениях на Delphi. TfrShellTreeView — предоставляет удобный способ отображения элементов файловой системы и может быть полезен в различных проектах. Библиотека компонентов FastReport постоянно пополняется, что делает этот инструмент ещё более привлекательным для разработчиков.
Читать
21 апреля 2025

Как работают RFID-метки в FastReport VCL

RFID-метка — это современная технология идентификации товаров, которая приходит на смену штрих-кодам. Главное отличие RFID-меток в том, что они используют радиосигналы. Это позволяет быстро сканировать большие партии товаров, что значительно экономит время. Кроме того, RFID-метки активно применяются для идентификации сотрудников в компаниях. В этой статье мы рассмотрим принцип работы RFID-меток с новым объектом TfrxDeviceCommand в FastReport VCL.     Особенности структуры RFID В структуре RFID-метки выделяются четыре блока данных: Зарезервированный блок, содержащий два пароля: пароль доступа и пароль уничтожения. Первый пароль позволяет управлять доступом к определённым блокам или частям памяти метки. Второй пароль используется для постоянного отключения метки или её повторного использования (если такая функция поддерживается). Каждый из паролей имеет длину не более 32 бит. Блок с электронным кодом продукта. Блок с идентификатором метки. Блок с пользовательскими данными. Все банки кроме первого могут иметь различный объем или они могут быть заблокированы поставщиками, все это описывается в характеристиках метки. Стандарты форматирования данных этих банков описаны в этом документе. Для локального использования можно использовать любое форматирование данных удобное пользователю для работы с ними.  Для реализации меток в FastReport VCL был создан объект TfrxDeviceCommand. В котором RFID-метка является одним из возможных пресетов. На данный момент это единственный пресет, но в будущем мы планируем расширять эту категорию. В версии 2025.1.8 данный объект при экспорте обрабатывается только ZPL-экспортом (остальные экспорты его пока пропускают). Мы планируем расширять его обработку и на другие экспорты при запросах.     Особенности объекта TfrxDeviceCommand Не является визуальным, то есть не отображается в превью (только в дизайнере). Не имеет высоты и ширины. Позиция внутри контейнера (Page или Band) используется исключительно в дизайнере для большей наглядности. Иначе говоря, позиция не влияет на очередь обработки при экспорте. Это можно представить так, что при экспорте TfrxDeviceCommand имеет свою отдельную очередь. Отдельная очередь при единственном пресете является избыточным решением. Однако всё же стоит рассмотреть параметры объекта TfrxDeviceCommand, оказывающие влияние на указанную очередь.   Для настройки времени обработки в объекте есть поле ProcessingTime, которое может принимать 2 значения: ptBeforeView отвечает обрабатывать перед всем содержимым контейнера); ptAfterView (после содержимого контейнера). И если у контейнера есть несколько TfrxDeviceCommand с одинаковым ProcessingTime, то потребуется использовать поле Order (от 0 до MaxInt). Допустим в контейнере лежит 3 объекта TfrxDeviceCommand с такими параметрами: ProcessingTime = ptAfterView , Order = 1; ProcessingTime = ptBeforeView, Order = 0; ProcessingTime = ptAfterView , Order = 0; При экспорте контейнера порядок обработки будет следующий: второй объект (ProcessingTime = ptBeforeView, Order = 0); содержимое контейнера; третий объект (ProcessingTime = ptAfterView , Order = 0); первый объект (ProcessingTime = ptAfterView , Order = 1); Также в этом объекте есть следующие поля:  DeviceType - используется для выбора пресета, сейчас там только одно значение dtRFIDLabel и изменить его пока невозможно. DeviceProperties - содержит поля, список которых меняются в зависимости от выбранного DeviceType. Именно там хранится содержимое текущего пресета (RFID-метки).     Как настроить содержимое объекта Настроить содержимое можно не только в инспекторе объектов, но и в редакторе.   Перевод другие языки помимо английского отсутствует во избежание путаницы с узкоспециализированными терминами. Редактор разделен на вкладки, в каждой из которых находятся свойства для определенного банка памяти и одна вкладка с прочими опциями метки. Некоторые поля дублируются чтобы поддерживать заполнение выражениями (например из базы данных). В зарезервированный блок данных пароли вносятся исключительно в формате шестнадцатеричного числа, состоящего из восьми символов. Кроме того, без заданного пароля доступа с ненулевым значением управление режимами доступа будет невозможно. В остальных блоках данных можно выбрать формат записи: либо шестнадцатеричное число, либо строку в кодировке ASCII. Подробнее о поддержке RFID в ZPL можно почитать в официальной документации. Этот объект для FastReport VCL — первый в своём роде. Но в будущем будут реализованы новые пресеты для этого объекта.
Читать