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.*;
* изменено поведение сообщения о повторяющихся именах в запросе;
- исправлена работа автоматического создания параметров в запросе.
2 сентября 2024

Изменения в лицензионном соглашении и условиях использования FastCube .NET

С 30 сентября вступает в силу обновленное лицензионное соглашение FastCube .NET
21 августа 2024

«РЕД СОФТ» и «Быстрые отчеты» подтвердили совместимость своих продуктов

Компании получили сертификаты о совместимости FastReport .NET Mono, FastReport .NET Avalonia и FastReport VCL с операционной системой РЕД ОС 8.
6 августа 2024

Угощаем скидкой на генераторы отчетов в честь дня рождения

В этом году наша компания отмечает знаменательное событие — нам исполнилось 26 лет! В честь праздника мы решили порадовать Вас скидками на наши решения.