27 ноября 2023

Обновление .NET продуктов до версии 2024.1

В этом релизе мы сконцентрировались на реализации долгожданных функций, которые значительно упрощают процесс разработки шаблонов для отчетов. Для вас теперь доступны: пользовательские стили линий, изменение формы объекта "Рисунок", настройка горячих клавиш, поддержка ODBC коннектора и многое другое.

Новые возможности

Улучшение работы с объектом "Таблица"

Работать с дизайнером отчетов стало проще и удобнее. Появились новые возможности для работы с объектом "Таблица".

1. Быстрое добавление столбцов и строк. Если подвести к границе между строками слева от таблицы, либо к границе между столбцами сверху, то появится условное отображение, показывающее, где будет добавлена новая строка или столбец. А также кнопка, по нажатию на которую новая строка или столбец будут добавлены в таблицу.

Быстрое добавление столбцов и строк

Таблица обязательно должна быть активна (выбрана), иначе новые элементы управления не появляются.

2. Изменение высоты строк и ширины колонок. Теперь перетаскивая границу столбца или строки с помощью мышки, можно изменять ширину столбца или высоту строки соответственно.

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

Выпадающее меню "Вставить"

4. Горячие клавиши. Копирование текста ячейки и вставка текста в ячейку с помощью горячих клавиш Ctrl + C и Ctrl + V.

Подробнее о новых возможностях таблиц читайте в статье.

 

Слияние текстовых объектов

Появился механизм слияния текстовых объектов с одинаковым текстом. Для этого у объекта "Текст" добавлено новое свойство MergeMode, которое позволяет настроить режим слияния. Работа нового свойства очень похожа на свойство Duplicates в режиме Merge, но есть важные отличия:

  • Duplicates работает только с одним объектом, лежащим на бэнде "Данные". Например, на бэнде Data1 есть текстовый объект с именем Text1 и свойством Duplicates равным Merge. При построении отчета, на первой итерации Data1, при выводе первой записи в Text1 будет выведен текст "10". На второй итерации Data1 и выводе второй записи, в Text1 будет выведен такой же текст. В итоге два экземпляра Text1 будут соединены и текст "10" будет выведен только один раз.
  • MergeMode, в отличие от Duplicates, может соединять экземпляры разных текстовых объектов. Причем делать это как по вертикали, так и по горизонтали. Например, при построении отчета текст "10" будет выведен в Text1 и расположенный рядом и справа от него Text2. При этом у Text1 свойство MergeMode равно Horizontal. В этом случае текстовые объекты будут соединены, и текст "10" будет выведен один раз.

Подробнее о новом свойстве читайте в статье по этой ссылке.

 

Пользовательские стили линий

Для объектов LineObject, ShapeObject, PolyLineObject и PolygonObject, добавлено новое свойство - DashPattern, которое позволяет создавать свои стили линий. Ранее стиль линий этих объектов настраивался с помощью свойства Border.LineStyle. Доступны были только шесть стилей: Solid, Dash, Dot, DashDot, DashDotDot и Double. С новым свойством можно указать коллекцию значений, которые будут последовательно задавать длину штрихов и пробелов.

Например, при значениях 5, 4, 3, 2 мы задаем паттерн при котором будет отображен штрих длиной 5, пробел длиной 4, штрих длиной 3 и пробел длиной 2. И далее значения будут повторяться по кругу, начиная с 5. Единица измерения здесь - Border.Width.

Если в коллекции DashPattern есть хотя бы одно значение, то будет работать этот новый механизм. А свойство Border.LineStyle будет игнорироваться. Если коллекция DashPattern пуста, то по-прежнему будет работать механизм свойства Border.LineStyle.

Ниже можно увидеть несколько примеров:

Пользовательские стили линий

Инструкция по настройке линий доступна по следующей ссылке.

 

Изменение формы объекта "Рисунок"

Появилась возможность изменять форму объекта "Рисунок". Теперь у PictureObject есть новое свойство Shape, которое позволяет задать следующие формы: прямоугольник (значение по умолчанию), прямоугольник со скругленными углами, эллипс, треугольник и ромб.

 

Изменение формы объекта "Рисунок"

Подробнее можно узнать в статье.

 

Настройка комбинаций горячих клавиш

Появилась возможность настроить комбинации горячих клавиш по своему усмотрению. Можно настроить команды таких действий как "Открыть файл", "Сохранить файл", "Подготовить отчет" и многое другое. Для этого на вкладке "Интерфейс" в настройках дизайнера добавлена новая кнопка.

Настройка комбинаций горячих клавиш

Нажатие которой, вызывает окно настройки комбинаций клавиш.

Настройка комбинаций горячих клавиш

Здесь представлена таблица с действиями и назначенными им сочетаниям клавиш. Изменить комбинацию можно двойным кликом по нужной строке. В таблице также можно перемещаться с помощью клавиш "Вверх" и "Вниз", и вносить изменения нажатием клавиши "Enter". Также, можно вернуть все сочетания к значениям по умолчанию.

Больше информации о настройке клавиш вы можете найти в этой статье.

 

Поддержка .NET 8

Добавлена поддержка .NET 8 для FastReport .NET, FastReport.Core, FastReport.Core.Skia и FastReport.WPF. Эта платформа повышает производительность приложений и добавляет множество новых возможностей для ваших проектов.

 

Отказ от поддержки .NET Standard 2.0 в FastReport.Web

Для охвата всё большего количества технологий, которые постоянно добавляются в мир .NET, мы решили отказаться от устаревшего слоя совместимости .NET Standard 2.0 в нашей библиотеке для Web-интеграции FastReport.Web (WebReport Core/Skia). Теперь для этого продукта минимально поддерживаемая версия TargetFramework будет .NET Core 3.1 и выше (в том числе .NET 5, 6, 7 и 8). FastReport.Core и FastReport.Core.Skia всё также без изменений будет поддерживать .NET Standard 2.0.

 

Добавлена поддержка ODBC коннектора для FastReport.Core

Наши пользователи долгое время просили нас добавить возможность подключения к базам данных через ODBC протокол для наших кроссплатформенных продуктов. Такая возможность присутствовала только в FastReport .NET и FastReport WPF ранее. С этим обновлением она доступна также в FastReport.Core и FastReport.Core.Skia. Для использования добавьте плагин FastReport.Data.Odbc в свой проект и зарегистрируйте его с помощью этого кода:

FastReport.Utils.RegisteredObjects.AddConnection(typeof(OdbcDataConnection));

 

Изменения в WebReport

Email Экспорт в WebReport

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

services.AddFastReport(options => options.EmailExportOptions = new FastReport.Web.EmailExportOptions
 {
 Address = "SomeAddress@example.com",
 EnableSSL = true,
 Host = "Host",
 MessageTemplate = "Message template here",
 Name = "John",
 Password = "password",
 Port = 25,
 Username = "Username"
 });

После этого активируйте опцию WebReport.Toolbar.Exports.ShowEmailExport, и пользователи смогут отправлять отчёты по электронной почте:

Email Экспорт в WebReport

При нажатии кнопки "Отправить по почте" пользователю будет предложено настроить сообщение через удобное модальное окно:

Email Экспорт в WebReport

 

Печать в Blazor WebAssembly

Теперь WebReport позволяет печатать отчеты в Blazor WebAssembly. Эта функция по умолчанию включена, но если вам необходимо её отключить, просто используйте следующий код:

webReport.Toolbar.ShowPrint = false;

Теперь ваши отчеты могут быть напечатаны прямо из Blazor WebAssembly:

Печать в Blazor WebAssembly

 

Полный список изменений

---

[Engine]
+ добавлено слияние текстовых объектов;
+ добавлена возможность изменять форму PictureObject;
+ добавлена возможность создавать пользовательские стили линий;
* теперь работа со шрифтами производится без блокировок;
- исправлен текст выходящий за границы TextObject при TextRenderer = HTMLParagraph;
- исправлено создание шрифтов из PrivateFontCollection;
- исправлен некорректный цвет текста в RichObject;
- исправлен разрыв RichObject с изображением;
- исправлена ошибка из-за которой пропадал фокус с объекта DateTimePicker, если у него было указано свойство DetailedControl;
- исправлена ошибка в штрихкодах (отображение на HiDPI, экспорт в PDF);
- исправлен обратный отступ в HTMLTextRenderer;
- исправлены некорректные разрывы RichObject;
 
[Designer]
+ добавлена возможность убирать маркер у SberQR;
+ в настройки дизайнера добавлено свойство "Показывать окно прогресса";
+ добавлена возможность настраивать комбинации горячих клавиш;
* обновлены проверки для ссылок, теперь корректно обрабатываются ссылки с пробелами;
- исправлено появление лишних линий при масштабировании RoundRectangle небольшого размера;
- исправлено кодирование косой черты в Barcode 93 Extended;
- исправлено удаление связи при слиянии словарей;
- исправлена ошибка с выбором форматирования даты или времени на венгерской локализации;
 
[Preview]
- исправлен некорректный размер границы страницы при бесконечной высоте или ширине страницы;
 
[Exports]
+ реализовано сохранение каждой картинки в отдельный поток;
+ добавлены недостающие ссылки на обработчики событий в экспортах в Excel 2007, Word 2007 и RTF;
+ добавлено новое свойство для масштабирования штрих-кодов при экспорте в ZPL;
+ добавлен выбор группы, по которой отчет будет разделен на листы в Excel 2007;
+ добавлена возможность отключать группировку листов при экспорте в Excel 2007;
+ добавлено использование режима переноса для текстурной заливки при экспорте в SVG;
* при экспорте в облачные хранилища окно автоматически закрывается после получения кода авторизации;
- исправление приватных коллекций шрифтов;
- исправлена ошибка разбора таблицы GSUB;
- исправлен некорректный экспорт стилей границ объектов DashDot, DashDotDot и Double в PDF;
- исправлена ошибка, из-за которой числа в Gauge при HTML экспорте отображались размыто;
- исправлено вычисление заголовка ContentMD5 в S3 экспорте;
- исправлено некорректное позиционирование текста при экспорте в ZPL;
- исправлен некорректный экспорт GaugeObject в PowerPoint 2007;
- исправлен некорректный экспорт RadialGauge c заливкой в послойный экспорт в Word 2007;
- исправлен некорректный экспорт RadialGauge c заливкой в не послойный HTML;
- исправлено отображение в режиме переноса "Clamp" для текстурной заливки при экспорте в SVG;
- исправлено изменение размера текста при использовании HTML тегов в Excel 2007 экспорте;
- исправлено некорректное поведение HTML тегов с табуляцией при экспорте в Excel 2007;
- исправлена проблема снижения качества водяного знака при экспорте в PDF;
- исправлена ошибка с некорректными отступами при табличном экспорте в Word 2007;
- исправлено позиционирование изображения в CheckBox при экспорте в Word 2007;
 
[WebReport]
- убрана поддержка .NET Standard 2.0 в FastReport.Web;
- исправлен баг из-за которого появлялась ошибка при экспорте в приложении Blazor;
- исправлено игнорирование Margin при печати с PrintHtml в WebReport;
 
[.NET Core]
- исправлена ошибка, из-за которой при экспорте в PDF неверно рассчитывалась ширина текста;
 
[Demos]
- исправлена ошибка отображения навигационного меню после сворачивания Demo New;
 
[Extras]
+ добавлено преобразование Variant в типы CLR в MySqlDataConnection;
+ добавлен плагин FastReport.Data.Odbc;
+ добавлена поддержка FastReport.WPF для плагинов-коннекторов FastReport.Data.*;
* изменено поведение сообщения о повторяющихся именах в запросе;
- исправлена работа автоматического создания параметров в запросе.
28 октября 2024

Обновление Delphi и Lazarus продуктов до версии 2025.1

С версий 2025.1 было добавлено новое приложение для демонстрации возможностей FastReport VCL, расширена компонентная база, улучшены дизайнер отчетов и фильтры экспорта.
15 октября 2024

Обновление .NET продуктов до версии 2025.1

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

Новая версия FastReport Business Graphics .NET 2025.1

Представляем вам релиз FastReport Business Graphics .NET 2025.1, который включает важные исправления и улучшения.