Виды решений для создания отчетов и документов

FastReport .NET

Наборы компонентов, позволяющие автоматизировать и упростить процесс создания отчетов и документов на C# для различных технологий.

FastReport VCL

Наборы VCL, FMX и Lazarus компонентов с полными исходными кодами для создания отчётов и документов на Delphi/Pascal.

WEB отчетность

Компоненты для кроссплатформенных проектов, чтобы разрабатывать, строить, отображать, печатать, экспортировать отчеты прямо в браузере.

Решения для конечных пользователей

Самостоятельные программные продукты для дизайна, построения, конвертации, и просмотра готовых отчётов на вашем компьютере.

OLAP и Business Graphics

Инструменты представления и аналитической обработки больших данных для получения сводных таблиц с последующей визуализацией на основе Business Graphics.

Сервисные решения

Готовые сервисы и клиент-серверные системы для быстрой визуализации данных и автоматического выполнения задач для обработки информации.

Новости

28 октября 2024

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

Наши продукты постоянно развиваются, непрерывно добавляется новый функционал и улучшается качество программного кода. Это обновление включает в себя улучшения и исправления для всей линейки продуктов Delphi и Lazarus. С версий 2025.1 было добавлено новое приложение для демонстрации возможностей FastReport VCL, расширена компонентная база, улучшены дизайнер отчетов и фильтры экспорта.     Новое приложение для демонстрации возможностей FastReport VCL Мы обновили наше основное демо приложение FastReport VCL, чтобы продукт радовал вас не только своим богатым функционалом, но и внешним видом.     Расширение компонентной базы Delphi и Lazarus Новый визуальный компонент TfrShellTreeView для разработки приложений в Delphi или Lazarus. Это полноценный компонент навигации по файловой системе, который работает в Windows и Linux (Lazarus).  Основные особенности: Нативная отрисовка (иконки и темы из операционной системы); Подписка на изменения файловой системы и автоматическое обновление; Быстрая отрисовка (используется виртуальное дерево); Кастомизация и переопределение позволят вам расширить компонент под свои нужды.     Улучшения в дизайнере отчетов FastReport VCL Дизайнер отчетов FastReport VCL имеет богатый функционал для дизайна ваших отчетов. С версией 2025.1 мы добавили возможность настроить подсветку выражений, которую можно найти в настройках дизайнера. Добавлена возможность поиска во встроенных редакторах, таких как Memo, SQL. Улучшена работа с hiDPI режимами в Embarcadero RAD Studio 12 и исправлены недочеты, влияющие на пользовательский опыт создания шаблонов. Добавлен новый интерактивный редактор для объекта «Таблица». Редактируйте таблицу привычным способом как в Microsoft Word.     Движок отчетов FastReport VCL Новая возможность движка отчетов позволяет создавать цепочки вложенных отчетов с печатью на родителе (Subreport.PrintOnParent). Такой подход позволяет печать аналог древовидных структур и растягивать элементы, которые находятся на бэнде прародителе. Этот подход основывается на высоте структуры, напечатанной во вложенном отчете.     Фильтры экспорта Добавлена возможность редактирования объекта CellularText в интерактивных формах PDF. Теперь вы можете использовать CellularText как элемент интерактивной формы. В табличных фильтрах экспорта добавлена новая возможность выбора качества экспортируемых в виде картинок объектов. Данная настройка позволяет установить масштаб для всех изображений в табличных фильтрах экспортов. Сделаны исправления и улучшения качества в фильтрах экспортов: PDF, DOCX, PPTX, XLSX, SVG.     Предварительный просмотр Добавлена возможность копировать содержимое объекта RichView в предварительном просмотре, включая групповое выделение объектов через Shift + Правая кнопка мыши.     FastReport FMX Добавлен новый экспорт в PPTX для платформ Windows, macOS, Linux.     Delphi и Lazarus Также версия 2025.1 поддерживает среды разработки Embarcadero RAD Studio 12.2 (включая новую платформу Windows 64 Modern для C++ Builder) и Lazarus 3.6.     Версия 2025.1 ---------------   [Designer]+ добавлена настройка подсветки выражений в дизайнере отчетов;+ добавлен базовый поиск в редакторы с Memo;* улучшена работа мышкой в SimpleMemo;- улучшение скролла в редакторе Memo;- исправлена ошибка при открытии дизайнера отчетов;- исправлена потенциальная ошибка AV после удаления элемента StyleSheet в дизайнере отчетов;- исправлена ошибка дублирования имени при перетаскивании из DataTree;- исправлено растягивание тулбара объектов при недостающей высоте в дизайнере;- исправлен вызов редактора текста через инспектор объектов;- исправлена ошибка при включённой опции Auto update fields;- исправлены проблемы при навигации в Report Tree дизайнера;- исправлено SmartMemo (редактор кода) для HiDPI;   [Engine]+ добавлен элемент контрол TfrShellTreeView для управления оболочкой в VCL и Lazarus с поддержкой Linux;+ добавлена вложенная обработка Subreport.PrintOnParent в движке отчетов;+ добавлена поддержка компилятора Win64x во время разработки;+ реализована нативная отрисовка контролов для VCL и Lazarus в Linux;+ добавлен тип WideString в FastScript;- исправлена совместимость с C++ Builder с JVCL;- исправлено обновление параметров DBX при извлечении определений полей;- исправлена ошибка при использовании многоколоночной страницы вместе с параметрами PrintOnPreviousPage и KeepToghether опциями;- исправлена ошибка в автоматически сгенерированном заголовке C++ Builder;- исправлен редактор HTML;- исправлен вывод RTL с тегами в TfrxHTMLView;- обновление полей данных изменено на очистку автоматически определенных полей при изменении DataSet;- исправлена неправильная отрисовка SliceGrid при загрузке схемы на высоком DPI;- исправлено кэширование иконок при масштабировании для HiDPI;- исправлена ошибка, когда изменение свойства DBDataSet.DataSet не очищало определения полей;- исправлены TfrxComboBoxView и TfrxListBoxView;- исправлено определение типа поля ftFixedChar;- устранена утечка памяти при отображении SVG;- исправлена ошибка, когда данные DataLink не очищают предыдущие данные;- исправлена ошибка 'Resource FCXBUTTONS not found' в FMX RS12 Builder при вызове редактора формул;- исправлено состояние флага старого формата XML после очистки;- исправлена инициализация структуры интерактивных параметров;- исправлено предупреждение в frxGetCertificate;   [Exports]+ добавлена возможность редактирования объекта CellularText в интерактивных формах PDF;+ добавлено поле FromName в TfrxMailExport при использовании Indy SMTP;- исправлен экспорт EMF в SVG;- исправлена подстановка шрифтов в экспорте PDF;- исправлена ошибка перевода строки при экспорте в формат .rtf из Lazarus на Linux;- исправлен экспорт катаканы, хираганы и геометрических символов в экспорте PDF;- исправлен выбор строки и нижнее поле строки при экспорте DOCX;- исправлен экспорт EMF в PDF;- исправлены гиперссылки в экспорте RTF;- устранены утечки объектов GDI;- исправлена настраиваемая подпись PDF;- исправлены ошибки выравнивания TfrxMemoView и уменьшен размер изображений с альфа-каналом при экспорте в PDF;- исправлено форматирование дат в XLSX экспорте;- исправлены предупреждения компилятора;- исправлен XLS экспорт для пустых страниц;- исправлен формат даты в XLSX экспорте;- исправлена ошибка «Unexpected variant error» в XLS экспорте;   [Lazarus]- исправлен ODF экспорт при включенном AllowHTMLTags;- исправлен RTF экспорт при включенном AllowHTMLTags;- исправлен TfrxDateEditControl в Linux под Lazarus;- удалена отрисовка лишних ScrollBar в дизайнере;- исправлено сбрасывание выделения в linux Lazarus Rich редакторе;- исправлена бесконечная загрузка при использовании Linux Lazarus Rich;   [Other]+ добавлена функция VarIsNull;- исправлена ошибка при отображении диалога Data HighLighting в FastCube;- исправлены конверторы QuickReport, ReportBuilder и Rave Reports;   [Preview]+ добавлено копирование содержимого RichView в предварительном просмотре;- исправлена ошибка с активными вкладками предварительного просмотра при экспорте всех открытых вкладок предварительного просмотра;- исправлена ошибка с панелью инструментов в режиме HiDPI в версии 10.4, когда некоторые кнопки инструментов были отключены;- исправлена AV при вызове привью в XE2;- исправлено отображение двойных подсказок в окне предварительного просмотра;   [Report object]+ добавлено свойство TfrxFIBDatabase.LibraryName;* добавлена обработка клавиши Tab в редактор TfrxRichView;- исправлена сериализация свойства TfrxPictureView.Stretched;- исправлено расположение штрихкода после смены BarType при Align in [baCenter, baRight];- исправлен Swiss пресет в QR штрих-коде;   [Resources]* обновлены польские ресурсы;* обновлены немецкие ресурсы для FastCube;- исправлены ресурсы FCXBUTTONS для приложений с run-time пакетами;   [FastReport FMX]- Добавлен экспорт в PPTX для платформ Windows, macOS, Linux;- Исправлено отображение диалогов экспорта в macOS;- Диалоги экспорта вынесены из модулей фильтров экспорта (возможность переопределения диалогов экспорта своими).
Читать
15 октября 2024

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

В этом релизе мы сконцентрировались на реализации долгожданных функций, которые значительно упрощают процесс разработки шаблонов для отчетов. Для вас теперь доступно: добавление страницы отчета ссылкой, асинхронная подготовка отчётов с поддержкой отмены, поворот текста с TextRenderType.HtmlParagraph, поиск текста в редакторах кода, экспорт в картинки для WebReport и многое другое.        Новые возможности Добавление страницы отчета ссылкой В прошлых выпусках появилась возможность добавить в отчет страницу другого отчета. Данную опцию можно найти в меню "Файл->Открыть страницу..". По умолчанию, в отчет добавляется копия страницы. Теперь можно включить опцию "Добавить как ссылку", при этом в отчет будет добавлена не копия страницы, а ссылка на нее. Это значит, что при изменении страницы в оригинальном отчете, изменения будут отражены во всех отчетах, в которые страница добавлена ссылкой. И наоборот, при изменении страницы в одном из отчетов, в котором есть ссылка на нее, она будет изменена и в оригинальном отчете.      Асинхронная подготовка отчётов с поддержкой отмены Добавлен метод report.PrepareAsync(), позволяющий выполнять асинхронную подготовку отчётов в дополнение к существующему синхронному методу report.Prepare(). Метод также поддерживает CancellationToken, что даёт возможность отменять процесс подготовки отчёта, улучшая контроль и производительность при работе с большими отчётами в неблокирующем окружении. В дальнейшем эта функциональность может дорабатываться, добавляя новые методы с асинхронным доступом.     Функция IfNull object IfNull(object expression, object defaultValue) Появилась новая функция, позволяющая избегать исключений System.NullReferenceException при вычислении выражений. У функции два параметра: первый - выражение, которое надо вычислить, второй - значение по умолчанию. Если выражение можно вычислить, то функция возвращает его результат. Если нет, то возвращается значение по умолчанию.     Поворот текста с TextRenderType.HtmlParagraph Добавлена поддержка поворота текста с TextRenderType.HtmlParagraph. Ранее поворот текста был доступен только при других типах рендерера текста. Ниже можно видеть примеры поворота текста. Кроме этого, теперь такие тексты корректно экспортируются в PDF.     Поиск текста в редакторах кода FastReport WPF и Mono Теперь можно искать текст не только в редакторе кода FastReport .NET, но и в редакторах FastReport WPF и FastReport Mono. Пример поиска текста в коде FastReport WPF: И в редакторе кода FastReport Mono:     Изменения в WebReport Поддержка локализации в FastReport Blazor WASM Добавлена поддержка локализации для интерфейса WebReport в FastReport Blazor WebAssembly. Ранее локализация управлялась через методы, основанные на путях к файлу локализации, что было несовместимо с окружением WASM. Новый метод webReport.SetLocalization(Stream) позволяет загружать локализацию из Stream, что делает его совместимым с приложениями Blazor WASM.   Image экспорт в WebReport Добавлен экспорт отчета в изображения. Для его отображения в списке экспортов необходимо добавить следующий код: 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. 
Читать

Статьи

30 октября 2024

Использование стилей при создании отчетов в FastReport VCL

Под стилем (Style) в FastReport VCL понимается набор визуальных параметров компонента, а именно: шрифт, заливка, и рамка. Прямо в дизайнере отчетов вы можете создать стиль, который будет содержать только информацию о шрифте, либо только о рамке или заливке с рамкой. Вы можете одновременно использовать все эти параметры или чередовать в зависимости от ваших нужд. Стиль удобен для массового изменения внешнего вида компонентов. Это поможет при настройке нескольких параметров чтобы не выставлять одни и те же свойства вручную много раз. Также с помощью изменения параметров стиля можно быстро изменить внешний вид отчета. Готовую библиотеку стилей можно сохранить в отдельный файл, чтобы использовать для настройки нескольких отчетов. В FastReport VCL стили могут объединяться в «Страницу стилей (StyleSheet)». В совокупности набор страниц стилей называется «Таблица стилей» (или «Книга стилей»). Каждый стиль существует в каждой странице стилей. И в каждой странице стилей сам стиль может иметь разные параметры. При этом становится возможным быстро изменить настройки внешнего вида отчета, просто сменив текущую страницу стилей. Такое может быть полезно, например, если один и тот же отчет необходимо использовать в нескольких операционных системах с разными шрифтами. Тем самым необходимые стили устанавливаются просто переключением страницы стилей. Можно считать, что в FastReport VCL в каждом отчете имеется как минимум одна страница стилей с именем «По умолчанию» (Default).     Элементы управления стилями Для управления и работы со стилями и таблицами стилей имеется панель инструментов «Стили».   Управляет режимом использования таблиц стилей, содержит подменю с двумя элементами: «Designer style book» – разрешает использование таблиц стилей в дизайнере отчетов.«Preview Style book» – разрешает использование таблиц стилей в окне предварительного просмотра (изменение текущей таблицы стилей). Включает режим редактирования стилей непосредственно в отчете. Добавляет новую страницу стилей. Отвечает за выбор активной страницы стилей, а также за изменение имени страницы стиля. Удаляет текущую выбранную страницу стилей. Добавляет новый стиль. Позволяет выбрать стиль для текущего выделенного компонента, изменение имени текущего стиля. Удаление текущего стиля.   Также для редактирования и управления стилями можно использовать форму, которая доступна из меню «Отчет» -> «Стили». Кнопки тулбара этой формы имеют те же функции, что и на панели инструментов «Стили». Дополнительно можно сохранить и прочитать с диска таблицу стилей. Слева на форме расположен список стилей, доступных в отчете. При выборе любого стиля становится возможным редактирование его параметров. На панели ниже расположен образец применения стиля к элементу отчета. По центру на форме имеется 3 кнопки, с помощью которых можно отредактировать составляющие стиля. Рядом с кнопками расположены 3 чекбокса. В них можно указать содержит ли стиль тот или иной компонент – цвет фона, шрифт или рамку. Причем использование той или иной составляющей стиля одновременно разрешено или запрещено во всех страницах стилей.     Работа со стилями Для установки свойств стилей служит специальная форма, доступная из меню «Отчет –> Стили…» (скриншот выше). С помощью этой формы можно добавлять и удалять стили в отчет, переименовывать их, а также устанавливать их свойства. Также можно сохранять и загружать их из файлов стилей. Задать стиль выбранному компоненту отчета можно с помощью ComboBox на панели стилей, либо с помощью свойства «Style» в инспекторе объектов. Если задать для компонента отчета стиль под названием «Нет стиля» или удалить имя стиля в инспекторе объектов, то внешний вид компонента сохранится. Однако после этих действий данный компонент перестанет зависеть от стиля. Также можно перевести дизайнер отчетов в режим редактирования стилей с помощью кнопки на панели стилей (Edit Styles Mode).  В этом режиме становятся активными 2 кнопки по бокам ComboBox с именами стилей – можно добавлять и удалять стили с помощью них. При создании стиля с помощью кнопки на панели стилей, то такому стилю присваиваются свойства текущего выделенного компонента. При удалении стиля форматирование компонентов отчета сохраняется. Однако теперь форматирование будет храниться не в стиле, а в самом компоненте. Каждый пользователь имеет возможность редактировать стили непосредственно в отчете. Если отредактировать визуальные свойства элемента, которому назначен стиль, то фактически будут отредактированы свойства этого стиля. Такое поведение можно увидеть непосредственно в дизайнере. При изменении параметров одного компонента будут меняться все компоненты, имеющие данный стиль.      Работа с таблицами стилей Для работы с таблицами стилей сначала необходимо их включить. Это делается путем нажатия кнопки «Style Book Mode» и выбора режимов «Design Style Book» или «Preview Style Book». После этого становятся активными кнопки «Add Style Sheet», «Delete style Sheet» и ComboBox с именами таблиц стилей. Вы можете добавлять, удалять и переименовывать таблицы стилей, а также сделать какую-либо из них активной. При активации таблицы стилей все стили изменяют свое состояние на то, что хранится в текущей таблице стилей. При создании новой таблицы стилей данные для неё берутся из текущей активной таблицы стилей. При активной опции «Preview Style Book» изменение страниц стилей доступно в предварительном просмотре. Тогда у вас справа на панели инструментов появится ComboBox. В нем можно выбрать требуемую страницу стилей, и она немедленно применится к отчету.     Сохранение и чтение стилей Вернёмся в окно настройки стилей. В этом окне имеются кнопки «сохранить» и «прочитать». При нажатии на них вызываются диалоги чтения и записи файла, позволяющие сохранить и прочитать таблицу стилей в формате *.fs3. Независимо от режима работы со стилями, в файл записываются все таблицы стилей, которые находятся в отчете.  Как правило, конечный пользователь не должен редактировать отчет, у него есть только возможность предварительного просмотра. Поэтому программист должен уметь задавать текущий стиль отчета в коде приложения.  Это можно сделать так: begin  //загружаем отчет  frxReport1.LoadFromFile(DefPath+'main.fr3');  //загружаем стили  frxReport1.Styles.LoadFromFile(DefPath+'main.fs3');  //для управления таблицами стилей frxReport1.Styles.StyleBookMode не должно быть равно []  frxReport1.Styles.StyleBookMode:=[fsbDesigner];  //задаем стиль, который нам нужен  frxReport1.Styles.ActiveStyleSheet:='MyStyleSheet';  //применяем стиль к отчету  frxReport1.Styles.Apply;  frxReport1.ShowReport();end; Более подробно работа со стилями описана в руководстве программиста.     Таблицы стилей и условное форматирование Следует с осторожностью применять условное форматирование совместно с таблицами стилей. Если активен режим «Preview Style Book», то при изменении стиля условное форматирование теряется. Без проблем при этом можно менять те элементы форматирования, которые не используются стилем. Подведём итоги. Работать со стилями и со страницами стилей совсем не сложно. Данный функционал значительно упрощает и ускоряет построение отчетов. Это позволяет вам гораздо быстрее делать группы отчетов с одинаковым стилем оформления.
Читать
28 октября 2024

Как настроить WSL 2 для работы с FastReport и FastCube

Разработчики программного обеспечения давно задумывались о том «Как можно было бы запускать Linux-приложения непосредственно в Windows, без необходимости использования отдельной виртуальной машины». Технология WSL может дать ответ на этот вопрос. История WSL началась в 2016 году. На тот момент был реализован запуск бинарных исполняемых файлов Linux используя системные вызовы в ядре Windows. Также в первой версии была эмуляция ядра Linux через прослойку для трансляции системных вызовов. Вторая версия WSL выпущена в 2019 году. В ней реализована полная совместимость с системными вызовами, полнофункциональное ядро Linux, поддержка GPU и Linux-приложений с графическим интерфейсом пользователя. В этой статье попробуем вместе разобраться, как настроить WSL 2 для работы с компонентами FastReport и FastCube в Lazarus для Linux.     Установка и настройка Ubuntu 24.04 в WSL 2 Запускаем командную строку Windows от имени администратора. Для вывода списка всех доступных дистрибутивов Linux вам необходимо в командной строке Windows ввести команду и нажать клавишу Enter: wsl --list --online или wsl -l -o Для установки Ubuntu 24.04 выполняем следующую команду: wsl --install -d Ubuntu-24.04 После установки дистрибутива будет предложено создать учетную запись пользователя и пароль. Для инсталляции Ubuntu 24.04 необходимо выполнить всего лишь несколько команд. Терминал Ubuntu 24.04 доступен из меню «Пуск» Windows после установки дистрибутива. Запустить ядро Linux и войти в терминал Ubuntu 24.04 можно также командой из командной строки Windows: wsl -d Ubuntu-24.04 После установки Ubuntu 24.04 необходимо выполнить обновление пакетов. Для обновления установленных пакетов выполним следующие команды в терминале Ubuntu 24.04: $ sudo apt update && sudo apt upgrade && sudo apt dist-upgrade Вводим пароль пользователя и нажимаем клавишу Enter. Дождемся запроса на согласие обновления пакетов. Вводим Y и подтверждаем нажатием Enter. Для установки русской локализации выполняем следующие команды в терминале Ubuntu 24.04: $ sudo apt-get install language-pack-ru && sudo apt-get install language-pack-gnome-ru Для обновления локали нужно выполнить команду: $ sudo update-locale LANG=ru_RU.UTF-8 Для установки Nautilus выполняем эту команду в терминале, а затем вводим следующую команду для непосредственного запуска Nautilus. $ sudo apt install nautilus -y $ nautilus После установки файловый менеджер Nautilus доступен из меню «Пуск» Windows.      Установка и настройка ALT Linux 11 Starterkit в WSL 2 Подсистема WSL 2 позволяет использовать любой дистрибутив Linux, импортируя его из tar-файла. Запустим командную строку Windows от имени администратора. Выполним команду, чтобы скачать rootfs-образ ALT Linux в корень диска C\: curl -o C:\alt-p11-rootfs-systemd-x86_64.tar.xz https://ftp.altlinux.org/pub/distributions/ALTLinux/p11/images/cloud/x86_64/alt-p11-rootfs-systemd-x86_64.tar.xz Для импорта дистрибутива в WSL 2 необходимо выполнить команду в командной строке Windows: wsl --import ALTLinux-11 C:\ALTLinux-11 C:\alt-p11-rootfs-systemd-x86_64.tar.xz После импорта файл образа жесткого диска с Linux будет расположен в C:\ALTLinux-11\ext4.vhdx. В командой строке Windows выполним команду чтобы вывести список всех зарегистрированных дистрибутивов. А после запускаем только что импортированный дистрибутив ALTLinux-11 wsl -l -v wsl -d ALTLinux-11 После запуска ALT Linux, откроется терминал. В конфигурационном WSL файле для данного дистрибутива нужно разрешить использование systemd: # echo -e "[boot]\nsystemd=true\n" > /etc/wsl.conf Для того чтобы заработал systemd нужно остановить и заново запустить дистрибутив. Для этого воспользуемся следующими командами: # exit wsl -t ALTLinux-11 wsl -d ALTLinux-11 Чтобы русифицировать локализацию выполните эту команду в терминале: # echo -e "LANG=ru_RU.UTF-8" > /etc/default/locale Для обновления пакетов вам необходимо выполнить следующую команду, затем дождаться запроса на согласие обновления пакетов. Вводим Y и подтверждаем нажатием Enter. # apt-get update && apt-get dist-upgrade Для корректного отображения шрифтов необходимо установить пакет: # apt-get install fonts-ttf-ms Чтобы установить и запустить Lazarus вам необходимо скачать утилиту командной строки make, затем установить Free Pascal компилятор и Lazarus IDE: # apt-get install make # apt-get install fpc && apt-get install fpc-src # apt-get install lazarus Установка завершена. Для запуска Lazarus выполним команду: # startlazarus     Установка FastReport для разработки приложений в ALT Linux Прежде чем начать установку компонентов FastReport и FastCube необходимо скачать установочные пакеты. В терминале ALTLinux-11 выполняем команду для установки wget, затем подтверждаем свои действия введя Y и нажав Enter. # apt-get install wget Скачиваем Trial версии пакетов FastReport и FastCube: # wget https://xn--90aia9aifhdb2cxbdg.xn--p1ai/public_download/fr.vcl/fast_report-trial.rpm # wget https://xn--90aia9aifhdb2cxbdg.xn--p1ai/public_download/fr.vcl/fast_cube-trial.rpm Для установки FastReport выполним команду в терминале: # apt-get install ./fast_report*.rpm Перед установкой пакетов FastReport необходимо скомпилировать пакеты, которые входят в поставку Lazarus и установить дополнительные библиотеки: # lazbuild --build-ide= --add-package /usr/lib64/lazarus/components/tachart/print/tachartprint.lpk # lazbuild --build-ide= --add-package /usr/lib64/lazarus/components/tachart/tachartlazaruspkg.lpk # apt-get install sqlite3 libsqlite3-devel После чего последовательно выполним следующие команды для компиляции пакетов FastReport: # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fs_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fr_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxe_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frCS_lazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxchartlazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxlazdbf.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxSmartMemo_Laz.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fqb*.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxlazsqlite.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxPDFlazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frLanguageRussianPkg.lpk      Установка FastCube для разработки приложений в ALT Linux Теперь переходим к установке FastCube. Выполните следующую команду в терминале: # apt-get install ./fast_cube*.rpm После чего последовательно выполняйте следующие команды для компиляции пакетов FastCube: # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxScript.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxLazarus.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxCharting.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxprint.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxprintTee.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxexport.lpk # lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/frLanguageRussianPkg.lpk     Компиляция и запуск FastReport Demo в Lazarus На этом установка FastReport и FastCube завершена. Наконец можно попробовать скомпилировать и запустить FastReport Demo. Для запуска Lazarus выполняем команду в терминале: # startlazarus --skip-last-project В главном меню Lazarus открываем пункт меню «Проект» -> «Открыть проект…». В диалоговом окне выбираем проект: /usr/share/FastReport - Trial/Demos/FPC/FastReport/FastReportDemo.lpi После открытия проекта нажимаем клавишу F9 для компиляции и запуска. На этом подробная настройка WSL 2 для работы с компонентами FastReport и FastCube в Lazarus для Linux завершена. По всем вопросам обращайтесь в нашу техническую поддержку support@fastreport.ru. Приятного использования!
Читать

Популярные вопросы

Что такое генератор отчетов?

Зачем нужны генераторы отчетов и OLAP-инструменты аналитики?

Что делает компания ООО "Быстрые отчеты"?

Нам доверяют