22 апреля 2025
Обновление Delphi и Lazarus продуктов до версии 2025.2
Представляем вашему вниманию долгожданное обновление для всей линейки продуктов Delphi и Lazarus. С версией 2025.2 вам становятся доступными: удобный инструмент для настройки водяных знаков, обновление серверных компонентов, новый механизм диалоговых страниц WEB отчета, новый объект отчета TfrxDeviceCommand для RFID меток, большие изменения в движке отчетов, улучшения экспортов и транспортов, поддержка тем и многое другое.
Обновите свой продукт и откройте новые горизонты возможностей вместе с нами!
Новые возможности FastReport VCL
Удобный инструмент для настройки водяных знаков
Добавлена возможность создавать настраиваемые водяные знаки для страниц отчета (Watermarks). Водяной знак часто используется для защиты или обозначения типа документа. Мы добавили удобный инструмент, который без лишних усилий позволяет настраивать водяные знаки для каждой страницы отчета.
Любая страница отчета может иметь несколько водяных знаков, позволяя настроить их индивидуально для печати, вывода или экспорта. Водяные знаки могут использовать как картинку, так и текст с большим набором настраиваемых параметров (вращение текста, стиль). Водяные знаки можно настраивать как в дизайнере отчетов, так и в предпросмотре.
Обновление серверных компонентов
С релизом 2025.2 все доступные фильтры экспортов из FastReport VCL теперь доступны и в серверных компонентах. Используйте потенциал всех этих форматов в своём WEB-приложении.
Новый механизм диалоговых страниц WEB отчета
Полностью переработанный механизм позволяет использовать контейнерные объекты такие как PageControl и группы, а также расширять функционал доступных контролов диалоговой страницы для WEB-диалогов.
Для диалоговых страниц в этом обновлении мы расширили поддержку новых компонентов. А именно были добавлены контролы диалоговой страницы, которые ранее не были доступны в WEB.
Список новых контролов диалоговой формы:
Date picker – выбор даты
DBComboBox – выпадающий список связанный с источником данных
List Box – список с выбором
CheckListBox – список с выбором (флажками)
MaskEdit (без маски) – поле ввода
Password edit – Поле ввода для пароля
PageControl – создание страниц с вкладками
GroupControl – панель группировки
Panel – панель
Также для своих проектов вы теперь можете применять настраиваемый HTTP заголовок.
Новый объект отчета TfrxDeviceCommand
Данный невизуальный объект переназначен для передачи команд на устройства (экспорты), которые могут обрабатывать эти команды. В текущей версии объект содержит класс настроек для RFID меток.
RFID метки передают невизуальные данные в ZPL экспорт чтобы записать эти данные на чип с использованием специализированного оборудования. Класс RFID меток имеет свой редактор и набор свойств для точной настройки записываемой информации. Подробнее вы можете почитать в нашей статье.
Читать статью
Объект отчета TfrxPDFView теперь позволяет настраивать диапазон выводимых страницы. Задать значения можно через выражения в свойстве TfrxPDFView.PagesRange. Таким образом вам доступна фильтрация выводимых страниц для PDF документа.
Изменения в движке отчетов
Комбинирование техник вывода объектов
Новые изменения в движке отчетов позволяют комбинировать разные техники вывода объектов давая свободу в вариативности создания сложных отчетов. Изменена работа механизма выравнивания по нижней границе (baBottom) растущего бэнда, когда один из объектов бэнда разбивается на несколько частей (страниц). В старой реализации объект со свойством baBottom выводится на первой же части разрыва данных.
Новый механизм работы такого отчета корректирует объекты с baBottom, помещая их на последнюю часть данных (в конец бэнда). Обратим ваше внимание, что такое поведение движка отчетов считается корректным и его следует учитывать при разработке отчетов.
Поддержка растягивания smMaxHeight для статической таблицы (только строки AllowSplit)
Растягивание smMaxHeight в таблице работает иначе, чем в объектах. Нужная высота устанавливается для всей таблицы на бэнде. Затем распределяется по строкам с установленным свойством AllowSplit=True и отключенным AutoSize=False. При этом также учитываются строки со значением MaxHeight. Такой подход позволяет выбирать, какие строки таблицы можно растягивать для заполнения пустого пространства, а какие нет.
Новое поведение разбиения объекта отчета TfrxRichView
Объект RichText позволяет использовать таблицы, картинки и другие объекты, которые невозможно разбить для определенного размера. Такие объекты иногда могли создавать целые неразбиваемые блоки контента, которые выходили за пределы страницы. В текущей версии разбиение TfrxRichView переработано и работает выборочно в зависимости от ситуации.
Поиск наименьшей разбиваемой части. Если в объекте встречается часть, которая не может поместиться на новую страницу, и она неразбиваемая (объект, или строка таблицы больше высоты всего листа). То для такой части теперь находится наименьшая «неразбиваемая» часть и выводится как есть. Разбиение при этом не прекращается. Если есть другие части, то они тоже будут разбиваться и выводиться. Основное отличие от старого механизма, это поиск наименьшего значения для неразбиваемой части и продолжение построения. Ранее весь контент попадал в «неразбиваемую» часть и разделение на этом прекращалась, часть текста при этом могла потеряться.
Поиск наибольшей разбиваемой части. Если встречается часть, которая не может поместиться на новую страницу, но она разбиваемая как та же таблица, то будет выполнен поиск наибольшей разбиваемой части и продолжение вывода.
Дизайнер отчетов
Добавлена поддержка темезации (Runtime Themes)
Дизайнер отчетов и его компоненты были адаптированы к поддержке тем, как системных, так и пользовательских. Теперь дизайнер отчета всегда будет в одном стиле с вашим приложением!
В версии Rad Studio 12.3 была улучшена работа с мониторами, имеющими высокий масштаб отображения. Это изменение направлено на повышение качества визуализации и удобства использования интерфейса в среде разработки при работе на мониторах с высоким разрешением и настройками масштабирования.
В этом обновлении был переработан редактор диалогов в дизайнере отчетов. Теперь это фиксированное рабочие пространство, как и у страницы отчетов. Позицию диалога можно менять через инспектор объектов.
Доработан Code completion в окне редактирования кода отчета. Для вашего удобства было добавлено всплывающее меню для окна watch list.
Помимо этого, мы также переработали окно «Опции дизайнера» для наилучшей поддержки небольших разрешений экрана.
Экспорты и транспорты
В экспортах PDF и SVG реализована поддержка символов определенных пользователем (EUDC). Также улучшено выравнивание RTL текста с лигатурами.
Добавлена поддержка ZUGFeRD 2.3 с используемыми профилями: “MINIMUM”,” BASIC WL”, ”BASIC”, ”EN 16931”, ”EXTENDED”, ”XRECHNUNG”. Пример с включением данных для этого формата вы можете найти в InvoiceDemo, которое идёт в поставке с продуктом.
В новой версии были усовершенствованы механизмы экспорта в форматы XLSX и DOCX. Это позволило повысить качество генерируемых документов и расширить возможности их настройки.
Транспорт e-mail (SMTP) улучшен нативной поддержкой TLS\STARTTLS и поддержкой XOAUTH авторизации. Используйте защищённые каналы для отправки ваших отчетов.
FastReport Lazarus
Кроме фундаментальных изменений, которые вошли в VCL и Lazarus версию, FastReport для Lazarus получил поддержку мониторов высокого разрешения (HiDPI).
FastCube VCL и FMX
В VCL версии FastCube все контролы TTreeView были заменены на TfrTreeView. Все версии получили индикацию фильтрации в списке доступных полей.
FMX версия получила возможность сохранения Custom Filter и Custom Group, а также ряд улучшений и исправлений.
FastQueryBuilder
Добавили поддержку мониторов высокого разрешения (HiDPI).
FastScript
В этом обновлении мы реализовали поддержку Android. Данное нововведение работает только при компиляции со строками, которые индексируются с единицы. Вы можете использовать всю мощь скриптового движка в ваших мобильных Android приложениях.
Добавлена поддержка классов работы с XML и JSON. Подробнее о том, как работать с этими форматами на примере загрузки данных в отчет, вы можете почитать в этой статье.
Читать статью
FastReport VCL Controls
Для контрола TfrShellTreeView появилась возможность создавать пользовательские узлы и ссылки быстрого доступа к другим узлам. Как настроить TfrShellTreeView и добавить пользовательские узлы можно прочитать в нашей статье.
Читать статью
Установщик
Теперь вы можете устанавливать наши продукты с поддержкой Android.
А также была добавлена поддержка установки пакетов на 64-битную версию IDE Embarcadero RAD Studio 12.3.
Полный список изменений версия 2025.2
========================
VCL.Core
[Localization]- исправлена сортировка в LocalizationEditor;
VCL.Controls
[Engine]+ добавлена возможность создавать кастомную структуру рутовых Shell Node и обычных Node;- в smartMemo исправлена поддержка HiDPI;- исправлено поведение, при котором контрол не масштабируется при назначении Parent, когда csFreeNotification установлен в ComponentState;- исправлены некоторые недочёты в отрисовке TfrTreeView и TfrShellTreeView;
[UI]- для tfrTreeView исправлена отрисовка кастомным цветом и в состояние disabled;
Lazarus.Controls
[Engine]+ добавлена возможность создавать кастомную структуру рутовых Shell Node и обычных Node;- в smartMemo исправлена поддержка HiDPI;
[UI]- для tfrTreeView исправлена отрисовка кастомным цветом и в состояние disabled;- реализована поддержка HiDPI для Lazarus;- исправлены некоторые недочёты в отрисовке TfrTreeView и TfrShellTreeView;
VCL.FastCube
[UI]+ в список доступных полей добавлена индикация фильтрации;+ добавлена возможность сохранения Custom Filter и Custom Group;* TreeView заменен на TfrTreeView;- исправлена локализация панели инструментов FastCube;
FMX.FastCube
[UI]+ в список доступных полей добавлена индикация фильтрации;+ добавлено удаление ActivePopup в TfcxSliceGrid.FullUpdate;* TreeView заменен на TfrTreeView;- исправлена локализация панели инструментов FastCube;- исправлена некорректная работа формы TfcxRangesEditor;- исправлена проблема позиционирования и видимости кнопок «OK», «Cancel»;- исправлена ошибка FastCube FMX в редакторе правил выбора;- исправлена работа incremental search в выпадающих списках;
[Engine]+ добавлена возможность сохранения Custom Filter и Custom Group;- исправлена ошибка при клике в области список Top-N фильтров после зануления TfcxSliceGrid.Slice := nil;
Lazarus.FastCube
[UI]+ в список доступных полей добавлена индикация фильтрации;* TreeView заменен на TfrTreeView;- исправлена локализация панели инструментов FastCube;
VCL.FastQueryBuilder
[UI]+ добавлена первая версия HiDPI;
Lazarus.FastQueryBuilder
[UI]+ добавлена первая версия HiDPI;
VCL.FastScript
[Engine]+ добавлена поддержка XML и JSON в FastScript;* улучшение TfsTree путём замены TTreeView на TfrTreeView;- исправлена ошибка в TfsScript.Destroy, которая могла привести к вылету;
FMX.FastScript
[Engine]+ добавлена поддержка Android;- исправлена ошибка в TfsScript.Destroy, которая могла привести к вылету;
Lazarus.FastScript
[Engine]+ добавлена поддержка XML и JSON в FastScript;* улучшение TfsTree путём замены TTreeView на TfrTreeView;- исправлена ошибка в TfsScript.Destroy, которая могла привести к вылету;- исправлен пакет fs_ibx для компиляции под Lazarus;
VCL.FastReport
[Preview]+ исправлено сворачивание при Application.MainFormOnTaskbar = True;
[Engine]+ Добавлена возможность настраивать водяные знаки страницам отчета;* изменен механизм разделения RichView, добавлено определение минимальной неразрывной части;- исправлен HTMLView при Page.EndlessHeight;- исправлена ошибка "Class not found" при использовании свойства UseFileCache с пустыми страницами в отчете;- исправлена функция frxDecompressStream;- исправлена ошибка с неверным значением в макросах CopyName;- исправлен экспорт дат и времен в XLSX;- исправлено разделение компонента RichView с пустой строкой в конце;- исправлено обновление границ SVG;- исправлен порядок загрузки таблицы 'hmtx' TTF шрифтов;- исправлена ошибка, при которой переименованный набор данных не изменял имя пользователя по умолчанию;- исправлена ошибка, из-за которой диалог печати сбрасывал настройки при перемещении диалога печати на дополнительный экран;- исправлен размер подписи для невизуальных компонентов;- для smartMemo исправлена поддержка HiDPI;- исправлено поведение бэнда с дополнительной высотой;- исправлена ошибка доступа к памяти при использовании внешнего DBX-подключения;- исправлена ошибка при печати вложенного отчета с несколькими столбцами на странице;- исправлено отсутствие конца строки в CellData.Text;- исправлена ошибка Memo AutoWidth с макросами, такими как TotalPages;- исправлена ошибка, при которой некоторые события таблицы срабатывали дважды;- исправлен baBottom, когда объект разбивается на несколько страниц, а также добавлена поддержка smMaxHeight для статической таблицы (только строки AllowSplit);- исправлена ошибка с ошибкой округления высоты разрыва бэнда;- исправлена левая координата подотчета при переходе на новую страницу;- исправлены пакеты AnyDAC продукта FastReport так, чтобы они автоматически устанавливались на RAD Studio XE3 и более старых IDE;- исправлена ошибка, когда макросы обновляются в design time;- исправлен режим выбора дуплекса;- исправлено поведение baBottom и smMaxHeight в нижнем колонтитуле страницы;- исправление, которое очищает синглтон ParentForm, когда родительская форма закрывается не из компонента отчета;
[Exports]+ улучшен экспорт rtl текста в pdf;+ добавлен экспорт внешних символов;+ добавлена поддержка ZUGfERD 2.3 в PDF экспорте;- убрано предупреждение компилятора;- исправлен экспорт длинных HTMLView;- исправлено формирование метаданных PDF/A;- исправлен pdf с ZUGFerd;- исправлен неверный переход фокуса ввода по Tab в диалогах экспорта;- исправлен числовой формат в XLS фильтре экспорта;- исправлен размер символов при подстановке в SVG и PDF экспортах;- удален плавающий якорь для таблицы docx, заменен на пустую строку;
[Client-server]+ добавлены новые контролы диалоговой формы: Date picker, DBComboBox, ListBox, CheckListBox, MaskEdit (без маски), Password edit, PageControl, GroupControl, Panel;+ добавлена возможность использования настраиваемого заголовка HTTP в клиент-серверных компонентах;* переработан движок формирования диалогов, поддержка вложенных контролов, возможность расширения своими контролами;* обновлены экспорты для клиент-серверных компонентов;- исправлена ошибка при работе с параметрами и диалогами;
[Designer]+ улучшена отрисовка и функционал элементов дизайнера в темах VCL;+ добавлено всплывающее меню для watch list окон в дизайнере отчетов;* переработано окно «Дизайн -> Опции» для небольших разрешений экрана;* переработан редактор диалогов в дизайнере отчетов;- исправлена ошибка у RichEditor при старых версиях msftedit.dll;- исправлено масштабирование диалогов (TfrxDialogPage);- исправлено TfrxLabel при AutoSize = True;- исправлена работа TfrxDesigner.DefaultFont при HiDPI;- исправлена работа TfrxDialogPage на дополнительном экране;- исправлено поведение редактирования штрихкодов в дизайнере отчетов через инспектор объектов;- исправлена работа Code completion во вложенных процедурах и функциях в скрипте, а также в скрипте при наличии выражений конкатенации строк;- исправлено поведение подсказок в окне кода;- исправлен стиль меню для дизайнера отчетов в RAD 12.2 в design time;
[Other]+ добавлена возможность переопределить форму поиска;* обновлены румынские ресурсы;- исправлена компиляция InvoiceDemo;- исправлен пример CustomScrollsDemo;
[Report object]+ добавлена поддержка одностраничного TIFF в TfrxPictureView;+ добавлен объект для RFID-Меток (TfrxDeviceCommand);+ реализован список отображаемых страниц PDF документа (Range) в TfrxPDFView;- исправлена совместимость с HTML Viewer;- исправлена отрисовка штрихкода при ((Rotation > 0) и (WideBarRatio > 2));- исправлен дефолтный размер шрифта для верхней надписи у штрихкодов при HiDPI;- исправлено поведение компонента HTMLView, когда ширина colgroup переопределяет настройки ширины тега td;- исправлено построение отчётов с RFID;- исправлен неправильный клип в RichView;- исправлена надпись у двумерных баркодов;- исправлена надпись у двумерных баркодов;- исправлен пресет "Swiss QRCode" для штрихкода QRCode;
FMX.FastReport
[Engine]- исправлена ошибка «Class not found» при использовании свойства UseFileCache с пустыми страницами в отчете;- исправлен перенос поворотного текста при экспорте в PDF;- исправлен экспорт дат и времен в XLSX;
[Exports]- убрано предупреждение компилятора;- исправлен WordWrap в PDF экспорте с простой визуализацией текста;
[Designer]- исправлен редактор заголовка группы;
Lazarus.FastReport
[Engine]+ Добавлена возможность настраивать водяные знаки страницам отчета;- исправлен HTMLView при Page.EndlessHeight;- исправлена ошибка «Class not found» при использовании свойства UseFileCache с пустыми страницами в отчете;- исправлена функция frxDecompressStream;- исправлена ошибка с неверным значением в макросах CopyName;- исправлен экспорт дат и времен в XLSX;- исправлен порядок загрузки таблицы 'hmtx' TTF шрифтов;- исправлена ошибка, при которой переименованный набор данных не изменял имя пользователя по умолчанию;- исправлена ошибка, из-за которой диалог печати сбрасывал настройки при перемещении диалога печати на дополнительный экран;- исправлена ошибка при создании TfrxComboEdit под Lazarus;- исправлен размер подписи для невизуальных компонентов;- для smartMemo исправлена поддержка HiDPI;- исправлено поведение бэнда с дополнительной высотой;- исправлена утечка памяти при экспорте PDF в Linux;- исправлена ошибка, когда макросы обновляются в design time;- исправлен режим выбора дуплекса;- исправлено поведение baBottom и smMaxHeight в нижнем колонтитуле страницы;- исправление, которое очищает синглтон ParentForm, когда родительская форма закрывается не из компонента отчета;
[Exports]+ улучшен экспорт RTL текста в PDF;+ добавлен экспорт внешних символов;- убрано предупреждение компилятора;- исправлен экспорт длинных HTMLView;- исправлено формирование метаданных PDF/A;- исправлен PDF с ZUGFerd;- исправлен PDF экспорт при HiDPI;- исправлены диалоги экспортов при HiDPI;- исправлено инвертирование картинок в ZPL экспорте;
[Client-server]+ добавлены новые контролы диалоговой формы: Date picker, DBComboBox, ListBox, CheckListBox, MaskEdit (без маски), Password edit, PageControl, GroupControl, Panel;+ добавлена возможность использования настраиваемого заголовка HTTP в клиент-серверных компонентах;* переработан движок формирования диалогов, поддержка вложенных контролов, возможность расширения своими контролами;* обновлены экспорты для клиент-серверных компонентов;- исправлена ошибка при работе с параметрами и диалогами;
[Designer]- исправлена ошибка у RichEditor при старых версиях msftedit.dll;- исправлено масштабирование диалогов (TfrxDialogPage);- исправлено TfrxLabel при AutoSize = True;- улучшена отрисовка и функционал элементов дизайнера в темах VCL;
[Other]+ добавлена возможность переопределить форму поиска;
[Report object]+ добавлен объект для RFID-Меток (TfrxDeviceCommand);- исправлено поведение компонента HTMLView, когда ширина colgroup переопределяет настройки ширины тэга «td»;- исправлена надпись у двумерных баркодов;- исправлена совместимость с HTML Viewer;- исправлено создание композитных штрихкодов;
[Preview]- исправлено превью при HiDPI.