В этом релизе сконцентрировались на реализации долгожданных функций, которые значительно упрощают процесс разработки шаблонов для отчетов. Для вас теперь доступно: добавление страницы отчета ссылкой, асинхронная подготовка отчётов с поддержкой отмены, поворот текста с TextRenderType.HtmlParagraph, поиск текста в редакторах кода, экспорт в картинки для WebReport и многое другое.
В прошлых выпусках появилась возможность добавить в отчет страницу другого отчета. Данную опцию можно найти в меню "Файл->Открыть страницу..". По умолчанию, в отчет добавляется копия страницы.
Теперь можно включить опцию "Добавить как ссылку", при этом в отчет будет добавлена не копия страницы, а ссылка на нее. Это значит, что при изменении страницы в оригинальном отчете, изменения будут отражены во всех отчетах, в которые страница добавлена ссылкой. И наоборот, при изменении страницы в одном из отчетов, в котором есть ссылка на нее, она будет изменена и в оригинальном отчете.
Добавлен метод report.PrepareAsync()
, позволяющий выполнять асинхронную подготовку отчётов в дополнение к существующему синхронному методу report.Prepare()
. Метод также поддерживает CancellationToken
, что даёт возможность отменять процесс подготовки отчёта, улучшая контроль и производительность при работе с большими отчётами в неблокирующем окружении.
В дальнейшем эта функциональность может дорабатываться, добавляя новые методы с асинхронным доступом.
object IfNull(object expression, object defaultValue)
Появилась новая функция, позволяющая избегать исключений System.NullReferenceException
при вычислении выражений. У функции два параметра: первый - выражение, которое надо вычислить, второй - значение по умолчанию. Если выражение можно вычислить, то функция возвращает его результат. Если нет, то возвращается значение по умолчанию.
Добавлена поддержка поворота текста с TextRenderType.HtmlParagraph. Ранее поворот текста был доступен только при других типах рендерера текста. Ниже можно видеть примеры поворота текста.
Кроме этого, теперь такие тексты корректно экспортируются в PDF.
Теперь можно искать текст не только в редакторе кода FastReport .NET, но и в редакторах FastReport WPF и FastReport Mono.
Пример поиска текста в коде FastReport WPF:
И в редакторе кода FastReport Mono:
Добавлена поддержка локализации для интерфейса WebReport в FastReport Blazor WebAssembly. Ранее локализация управлялась через методы, основанные на путях к файлу локализации, что было несовместимо с окружением WASM. Новый метод webReport.SetLocalization(Stream)
позволяет загружать локализацию из Stream, что делает его совместимым с приложениями Blazor WASM.
Добавлен экспорт отчета в изображения. Для его отображения в списке экспортов необходимо добавить следующий код:
WebReport.Toolbar.Exports.ShowImageExport = true;
Для того чтобы настроить экспорт в изображения необходимо включить опцию WebReport.Toolbar.Exports.EnableSettings
. После включения которой можно будет нажать на "шестеренку" и изменить настройки в появившемся модальном окне.
[Engine]
+ добавлено свойство PicturesInParagraph объекту RichObject;
+ добавлен метод для асинхронной подготовки отчета PrepareAsync();
+ добавлено преобразование строк в dbtype совместимые;
+ добавлен масштаб печати;
+ добавлено преобразование десятичной части в слова в функциях ToWords;
+ добавлены идентификаторы языкового стандарта для испанского языка - 22538 (Spanish - Latin America) и 3082 (Spanish - Spain (Modern Sort));
+ для работы с выражениями добавлен новый метод IfNull. Он возвращает результат тестируемого выражения если оно не null, иначе заданное значение по умолчанию;
+ реализовано вычисление горизонтальной позиции картинок внутри RichObject;
+ добавлена возможность отправлять запрос в стиле virtual-host-style;
+ добавлена поддержка поворота текста с TextRenderType = HtmlParagraph;
+ добавлена возможность использовать заголовочные бэнды для свойства "PrintOn" итогов;
* обновлены классы Oracle.ManagedDataAccess.Core в FastReport.Data.OracleODPCore;
* методы GetConnection, OpenConnection и DisposeConnection отмечены как виртуальные;
* добавлена проверка входящего значения на null для свойства Hyperlink.Value;
* в классы QR-кодов добавлены статические методы проверки TryParse;
- исправлены ошибки разрыва текста;
- исправлено изменение видимости страницы после события PageStart;
- исправлено некорректное приведение к типу параметра;
- исправлена проверка скрипта отчета на наличие стоп-слов, если они содержались в имени переменной;
- исправлена видимость нижней границей текстового объекта с включенным GrowToBottom;
- исправлено удвоение границ, когда сгруппированный DataBand имеет опцию GrowToBottom;
- удален рендеринг дочерних тегов ClipPath в SVGPictureObject;
- исправлена ошибка в событии FinishReport;
- удалена недопустимая возможность добавлять SubreportObject в ContainerObject;
- исправлено изменение CommandType запроса, если он был задан в GetAdapter;
[Designer]
+ добавлена возможность открывать страницу как ссылку из другого отчета;
+ добавлены стили шрифта курсива, жирного текста, подчеркивания и зачеркивания в тег span;
+ добавлен поиск в TreeView по символу, вводимому с клавиатуры;
+ добавлена функция поиска в редакторах кода в WPF и Mono;
* добавлена проверка на дублирование загруженных шрифтов;
* значения свойств по умолчанию в конструкторах классов CurrencyFormat, NumberFormat и PercentFormat заменены с фиксированных значений на значения из CultureInfo.CurrentCulture;
- исправлено некорректное положение шрифтов Amiri, Cambria Math, DejaVu Math TeX Gyre в выпадающем списке выбора шрифта;
- исправлена ошибка приводящая к System.NullReferenceException при сохранении границ через Редактор границ;
- исправлено некорректное отображение SVG-изображения в дизайнере;
- исправлено отображение в подсказках переменных, объявленных в одной строке на вкладке Код;
- исправлена длина полей страницы в режиме "ExtraDesignWidth";
- исправлена длина направляющих линий в дизайнере для длинных отчетов;
- исправлена ошибка, при которой выбранный шрифт не отображался в выпадающем списке выбора шрифта;
- исправлено неправильное применение форматов данных;
- исправлена ошибка приводящая к System.NullReferenceException при удалении бэнда с объектом SubReport;
[Preview]
+ добавлены свойства Outline.Expand и Outline.Width в PreviewControl;
- исправлен выход индекса за пределы диапазона при предварительном просмотре пустого SvgObject;
- исправлено закрытие формы PreviewSearchForm после нажатии кнопки "Далее";
[Exports]
+ добавлена возможность объединять все страницы отчета в одну при экспорте в Excel;
+ добавлена опция использования пользовательского формата вместо общего в Excel-экспорте;
+ добавлено форматирование зачеркнутого текста при экспорте в Word;
+ добавлена опция MemoryOptimized для экспорта Word, которая включает использование FileStream вместо MemoryStream;
+ добавлена поддержка поворота текста с TextRenderType = HtmlParagraph при экспорте в PDF;
* скорректировано отображения форматов - формат 'D' и 'MMMM yyyy' отображаются как даты (формат 'MM yyyy' по возможности), числовой формат с отрицательным паттерном '-n' отображается в стандартном числовом формате в Excel-экспорте;
* изменен экспорт границы объекта PictureObject в виде изображения в Word;
* оптимизировано потребление памяти при экспорте в PDF;
* изменена компоновка табличного экспорта на фиксированную;
- исправлена ошибка с отображением HTML-тегов в HTML-экспорте;
- исправлен экспорт отрицательных значений свойств в PDF;
- исправлен цвет границ ячеек в браузере после экспорта в Excel;
- исправлен стиль границы ячейки в Word и PowerPoint экспортах;
- исправлен экспорт изображения в верхнем и нижнем колонтитулах в Word;
- исправлена ошибка с удалением временного файла;
- исправлен расчет line-height при экспорте в HTML;
- исправлен некорректный экспорт границ со стилем двойная линия в PDF-экспорте;
- исправлена ошибка с прозрачностью в HTML-экспорте;
- исправлена проблема, при которой тег <p> неправильно отображался при экспорте в HTML;
- исправлено значение параметра "UseHeaderAndFooter" по умолчанию в Word-экспорте;
- исправлено некорректное расположение изображений при табличном экспорте в Word;
- исправлена высота строки объектов, устанавливаемых после TableObject при экспорте в Excel;
- исправлено исключение NullReferenceException при экспорте шрифта в PDF с альтернативным поиском замены;
[WebReport]
+ добавлена возможность отображать имя отчёта вместо параметров во вкладке;
+ добавлен метод SetLocalization, для загрузки локализации WebReport из потока;
+ добавлена возможность экспортировать отчёт в формат изображения в WebReport;
- исправлено наследование "box-sizing" из пользовательских стилей приложения в WebReport;
- исправлено исключение IndexOutOfRange при предварительном просмотре WebReport;
- исправлена ошибка, из-за которой при включенном свойстве WebReport.Debug не отображалась информация об ошибке в отчете;
- исправлена ошибка, при которой могло возникать исключение NullReferenceException при нажатии на закладку в WebReport;
- исправлен сброс AdditionalFilter в WebReport;
- исправлена печать WebReport со страницами в альбомной ориентации;
[Online Designer]
+ добавлен метод обновления таблицы;
- исправлен предварительный просмотр пустого SVG-объекта в Online Designer;
[.NET Core]
+ добавлены методы для хранимых процедур MS SQL в FastReport Core;
[Common]
+ добавлен метод установки выражения параметра через код;
+ добавлена временная метка при подписывании установщиков;
[Extras]
+ добавлена возможность подключения к хранимым процедурам в базах данных Oracle;
* обновлена версия FirebirdClient до 10.0.0;
* обновлены уязвимые пакеты Npgsql (Postgres) и System.Data.SqlClient;
* изменен текст сообщения об ошибке при нажатии на кнопку "Дополнительно" в подключении к Линтер;
- исправлена ошибка с отсутствием меню в дизайнере форм у объекта Report;
- исправлена ошибка с типом "character varying" в Postgres;
[Demos]
- исправлен демо-отчет Barcode.frx.