# Быстрые отчеты > "Быстрые отчеты" разрабатывают программные библиотеки и инструменты для генерации документов и отчетов. ## Русский (RU) ### URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/gkh Summary: Формирование, хранение, отправка, рассылка абонентам квитанций для оплаты жилищно-коммунальных услуг. Формирование, хранение, отправка, рассылка абонентам квитанций для оплаты жилищно-коммунальных услуг. Создавайте квитанции быстро и удобно с помощью генератора отчетов! Формирование, хранение, отправка, рассылка абонентам квитанций для оплаты жилищно-коммунальных услуг. Получить демо # Как мы пришли к идее квитанций для ЖКХ Создание квитанций — очень ресурсоемкий процесс для уполномоченных организаций. Цифровая трасформация биллинга ЖКХ поможет значительно сэкономить материальные и трудовые ресурсы, особенно в городах-миллионниках. И если для небольших сфер может использоваться конфигурация 1С ЖКХ, то технические требования, которые предъявляются к более крупным системам — жёстче. На что способно ядро FastReport FastReport Другие решения Размер библиотеки-компонентов программного обеспечения Несколько Мб
(10-20) От 200 Мб Скорость генерации платежных квитанций Высокая Низкая Скрипты Полноценные скрипты Отсутствуют вовсе или ограниченное количество Хранение и обработка данных Более 30 видов (FireBird, MySQL, MS SQL, PostgreSQL) Не все базы данных поддерживаются Способы и виды формирования квитанций Печатные редактируемые квитанции, PDF, PDF-A, PDF-X, HTML  Печатные квитанции, PDF Исходный код Есть Нет Поддержка работы с удаленными хранилищами Есть Нет Генерирование QR-кода и штрих-кода Более 40 видов без использования шрифтов Есть Наличие экспертизы на рынке Ориентированность на конкретные кейсы Заточенность под другие задачи и решения Смотреть курсы на Rutube # Получите бесплатно демо-приложение для формирования квитанции ЖКХ с документацией! ### "Вдохновившись Хуавеем" URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/huawei-inspired Summary: Разрабатывайте импортозамещающие деловые программы. Разрабатывайте импортозамещающие деловые программы. Разрабатывайте импортозамещающие деловые программы. Ещё несколько лет назад я говорил, что полноценного импортозамещения в ИТ невозможно без полного дублирования всей экосистемы начиная от элементной базы и полностью "железа" и заканчивая программной обвязкой устройств уровня "онлайн-касс" и банкоматов), т.е. в неё будут вовлечены и производители и интеграторы. Собственно, так и происходит. "Первоначальное импортозамещение" на базовом уровне произошло, и государство требует от госучреждений бОльшего - ежегодного повышения %% импортозамещённых решений - понятно, что речь идёт уже о решениях отраслевой направленности. В настоящее время ООО "Фаст Репортс" являясь одним из ведущих российских предприятий-разработчиков библиотек для формирования документов заключил пакет партнёрских договоров с основными поставщиками базовых решений по импортозамещению (операционные системы и СУБД) и проводит со всеми тестирование совместимости. Таким образом мы предлагаем проверенные решения для создания документов, чеков, квитанций практически любого формата (начиная от PDF и PDF/A, столь любимого для архивного хранения, и до ODT/ODS, принятых в РФ в качестве государственного стандарта) в отечественных деловых программах. Tags: Mono, Импортозамещение, Mono, Импортозамещение ### -15% на Single лицензии для индивидуальных разработчиков URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/single-free-may-2026 Summary: Успейте приобрести с 15% скидкой до 22 мая Single-лицензию на FastReport .NET, FastReport VCL, МоиОтчеты Десктоп Успейте приобрести с 15% скидкой до 22 мая Single-лицензию на FastReport .NET, FastReport VCL, МоиОтчеты Десктоп День фрилансера — отличный повод порадовать независимых разработчиков.  С 18 по 22 мая получите скидку 15% на Single-лицензии: — FastReport .NET — FastReport VCL — МоиОтчеты Десктоп Если вы работаете самостоятельно, ведёте проекты, создаёте продукты и каждый день решаете сложные задачи своими силами — это предложение для вас. FastReport тоже когда-то начинался как инструмент, созданный индивидуальным разработчиком. И сегодня мы продолжаем поддерживать тех, кто двигает индустрию вперед своими идеями, опытом и кодом. Успейте приобрести лицензию со скидкой до 22 мая. ### .NET решения URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/faqs/fastreport-net Summary: Ознакомьтесь с ключевыми функциями и обновлениями FastReport .NET, включая установку, использование и устранение неполадок. Ознакомьтесь с ключевыми функциями и обновлениями FastReport .NET, включая установку, использование и устранение неполадок. Есть ли редактор отчетов для Angular-приложений? Можно использовать FastReport .NET и Online дизайнер. Как удалить вкладку Код(Code) в дизайнере(для предоставления пользователям)? Добавьте элемент управления ""EnvironmentSettings"" на вашу форму(Form). Перед вызовом report.Design() добавьте следующую строку: `environmentSettings1.DesignerSettings.Restrictions.DontEditCode = true;` Получили от вас исходники библиотеки, всё собирается, но две библиотеки там уже собранные: FastReport.Compat.dll и FastReport.DataVisualization.dll. Где взять исходники данных библиотек? Исходники находятся здесь: [https://github.com/FastReports/FastReport.Compat](https://github.com/FastReports/FastReport.Compat) [https://github.com/FastReports/winforms-datavisualization](https://github.com/FastReports/winforms-datavisualization) Как использовать элементы управления FastReport .NET в WPF приложениях? Для этого следует использовать WindowsFormsHost: 0) Добавьте ссылку на FastReport.dll; 1) Добавьте атрибут в тэг Window(Page): `xmlns:fr=""clr-namespace:FastReport.Preview;assembly=FastReport""` если вы хотите использовать PreviewControl, `xmlns:fr1=""clr-namespace:FastReport.Design;assembly=FastReport""` - если DesignerControl; 2) Добавьте тэг WindowsFormsHost в вашу XAML-разметку: ``` ``` 3) Добавьте дочерний тэг в WindowsFormsHost: `fr:PreviewControl` или `fr1:Designer`. Полная разметка должна выглядеть следующим образом: ``` ``` Как установить форматирование объектов из кода? Вы можете сделать это в скрипте отчёта или в коде вашего проекта используя следующие строки: ``` FastReport.Format.NumberFormat format = new FastReport.Format.NumberFormat(); format.UseLocale = false; format.DecimalDigits = 2; format.DecimalSeparator = "".""; format.GroupSeparator = "",""; ``` И установить созданное форматирование для текстового объекта (TextObject): ``` textObject.Formats.Clear(); textObject.Formats.Add(format); ``` Как создать линию с разрывами в MSChartObject? Для начала нужно создать объект System.Windows.Forms.DataVisualization.Charting.Series, являющийся базовым для Series в MSChartObject и построить линию в нем. Затем нужно назначить созданную серию объекту, базовому для MSChartObject (MSChart1.Chart.Series.Add(series) Не забудьте подключить библиотеку System.Windows.Forms.DataVisualization.dll (в меню Отчёт -> Скрипт) и пространство имён System.Windows.Forms.DataVisualization.Charting. Пример линии с разрывами: ``` using System.Windows.Forms.DataVisualization.Charting; namespace FastReport { public class ReportScript { private void MSChart1_BeforePrint(object sender, EventArgs e) { Series series = new Series("" sample ""); series.ChartType = SeriesChartType.Line; series.BorderWidth = 2; series.MarkerSize = 5; series.Points.Add(new DataPoint(0, 1)); series.Points.Add(new DataPoint(1, 2)); DataPoint dp = new DataPoint(2, double.NaN); dp.IsEmpty = true; series.Points.Add(dp); series.Points.Add(new DataPoint(3, 5)); series.Points.Add(new DataPoint(4, 8)); MSChart1.Chart.Series.Add(series); } } } ``` В результате получим представленный ниже график: ![](/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdVlDIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--4c3b9258c856888f8c6539bcfcf2491c0b675e8d/gaps.png) Как создать диаграмму MSChartObject из кода? Создайте новый объект MSChart, установите высоту, ширину,и легенду: ``` MSChartObject MSChart1 = new MSChartObject(); MSChart1.Width = 300; MSChart1.Height = 300; MSChart1.Chart.Legends.Add(new Legend() { Name = ""Legend1"", Title=""Legend title""}); ``` Создайте объект ChartArea, установите имя, названия осей и назначьте созданный объект MSChart: ``` ChartArea chartArea1 = new ChartArea(); chartArea1.Name = ""ChartArea1""; chartArea1.Axes[0].Title = ""X name""; chartArea1.Axes[1].Title = ""Y name""; MSChart1.Chart.ChartAreas.Add(chartArea1); ``` Создайте объект Series, установите тип диаграммы, толщину границы, добавьте точки и назначьте серии диаграмме: ``` Series series = new Series(""sample""); series.ChartType = SeriesChartType.Line; series.BorderWidth = 2; series.Points.Add(new DataPoint(0, 1)); series.Points.Add(new DataPoint(1, 2)); series.Points.Add(new DataPoint(3, 5)); series.Points.Add(new DataPoint(4, 8)); MSChart1.Chart.Series.Add(series); ``` Присвойте созданный MSChart объекту отчёта DataBand: ``` Report report = new Report(); report.Load(""ok.frx""); DataBand db = report.FindObject(""Data1"") as DataBand; MSChart1.Parent = db; ``` И полный фрагмент кода: ``` MSChartObject MSChart1 = new MSChartObject(); MSChart1.Width = 300; MSChart1.Height = 300; MSChart1.Chart.Legends.Add(new Legend() { Name = ""Legend1"", Title=""Legend title""}); ChartArea chartArea1 = new ChartArea(); chartArea1.Name = ""ChartArea1""; chartArea1.Axes[0].Title = ""X name""; chartArea1.Axes[1].Title = ""Y name""; MSChart1.Chart.ChartAreas.Add(chartArea1); Series series = new Series(""sample""); series.ChartType = SeriesChartType.Line; series.BorderWidth = 2; series.Points.Add(new DataPoint(0, 1)); series.Points.Add(new DataPoint(1, 2)); series.Points.Add(new DataPoint(3, 5)); series.Points.Add(new DataPoint(4, 8)); MSChart1.Chart.Series.Add(series); Report report = new Report(); report.Load(""ok.frx""); DataBand db = report.FindObject(""Data1"") as DataBand; MSChart1.Parent = db; ``` Результат: ![](/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdWNDIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--319c173796b76f5c53de6078c349d12b8f0f7823/MSChart.png) Куда можно обратиться за техподдержкой FastReport .NET? Запросы могут быть отправлены Пользователем с помощью электронной почты на адрес **[support@fastreport.ru](mailto:support@fastreport.ru)**, через форму обращения на сайте из клиентской панели **[лк.быстрыеотчеты.рф](https://лк.быстрыеотчеты.рф/)**, через онлайн-чат на **[быстрыеотчеты.рф](https://быстрыеотчеты.рф/)**, либо по телефону **[+7(800)551-75-80](tel:+7(800)551-75-80)**. Как отключить показ ProgressForm при построении и отображении отчёта? Вы можете отключить показ окна в EnvironmentSettings: ``` Report report = new Report(); report.LoadPrepared(""1.fpx""); EnvironmentSettings s = new EnvironmentSettings(); s.ReportSettings.ShowProgress = false; report.Show(); ``` Есть веб-приложение, разработанное на Flutter, на back приложение веб-службы, разработанное на C# .NET. Можно ли использовать FastReport .NET для создания отчетов в back, генерируя pdf файлы и отображая их в приложени Flutter? Да. Можно использовать для этого FastReport .NET Как отправить отчёт по почте с помощью кода в формате PDF? Используйте этот фрагмент кода: ``` Report report = new Report(); report.Load(...); report.RegisterData(...); report.Prepare(); PDFExport pdfExport = new PDFExport(); EmailExport export = new EmailExport(); // set up Account properties... export.Account.Host = ""...""; export.Account.Address = ""...""; // set up email properties... export.Address = ""...""; export.Subject = ""...""; export.MessageBody = ""...""; // send email export.Export = pdfExport; export.SendEmail(report); ``` Как подсчитать размер объекта, у которого установлены свойства динамического изменения(AutoWidth, CanGrow, CanShrink)? Если вызвать свойство объекта .Height(Text1.Height), то результатом будет являться высота объекта в шаблоне отчёта. При построении отчёта высота изменяется и чтобы определить высоту объекта в подготовленном отчёте следует использовать метод CalcHeight(Text1.CalcHeight()). Для вычисления длины также используется метод CalcWidth. Как получить значение параметра запроса из кода? Используйте для этого следующий код: `Report.Dictionary.Connections[0].Tables[0].Parameters[0].Value.ToString();` Как вернуть настройки по умолчанию для дизайнера? Удалите файл FastReport.config из папки C:\Users\Имя пользователя\AppData\Local\FastReport. (замените "Имя пользователя" на то, которое указано в системе) При компиляции проекта выводится сообщение об ошибке: Не удалось найти имя типа или пространства имен 'FastReport'(пропущена директива using или ссылка на сборку?) Убедитесь, что в проекте установлены ссылки на требуемые библиотеки(FastReport.dll, FastReport.Web.dll). Проверьте версию .NET Framework, используемую вашим проектом и подключенной библиотекой. Как удалить вкладку Данные(Data) в дизайнере (для предоставления пользователям)? Добавьте элемент управления ""EnvironmentSettings"" на вашу форму (Form). Перед вызовом report.Design() добавьте следующие строки: EnvironmentSettings1.DesignerSettings.Restrictions.DontCreateData = True; EnvironmentSettings1.DesignerSettings.Restrictions.DontEditData = True; Если вы используете DesignerControl, то эти строки: designerControl1.Restrictions.DontCreateData = true; designerControl1.Restrictions.DontEditData = true; Как встроить отчёт в формате HTML в сообщение и отправить по электронной почте, используя код? Используйте этот фрагмент кода: ``` Report report = new Report(); report.LoadPrepared("" preparedreport.fpx ""); HTMLExport htmlExport = new HTMLExport() { SubFolder = false, Navigator = false, Pictures = true, EmbedPictures = true, SinglePage = true, Layers = true, HasMultipleFiles = false }; EmailExport email = new EmailExport(); //email mailer settings email.Account.Address = "" Email @gmail.com ""; email.Account.Name = "" Usename ""; email.Account.Host = "" smtp.yandex.ru ""; email.Account.Port = 25; email.Account.UserName = "" Email ""; email.Account.Password = "" password ""; email.Account.MessageTemplate = "" Test ""; email.Account.EnableSSL = true; //email addressee settings email.Address = "" Destinationaddress @gmail.com ""; email.Subject = "" Embedding of html ""; email.Export = htmlExport; //Set export type email.SendEmail(report); //Send email ``` Почему не работают web-демо? Если не запускаются демо из папки Demos\C#\Web, то чтобы это исправить, нужно: Восстановить пакеты NuGet; Добавить ссылки на все необходимые библиотеки из ""packages""; Изменить версии сборок на текущие в файлах Web.Config из корневой директории и из Views. Есть ли возможность экспортировать PDF текстом, а не картинкой? В отличии от FastReport Open Source, в FastReport .NET экспорт в PDF осуществляется не в формате картинки, а текстом. Как объединить несколько отчётов в один (групповая печать)? Используйте для этого код, представленный ниже. Для настольной версии: ``` Report report = new Report(); report.Load(Path.GetFullPath(@""..\..\Report1.frx"")); report.Prepare(true); report.Load(Path.GetFullPath(@""..\..\Report2.frx"")); report.Prepare(true); report.Load(Path.GetFullPath(@""..\..\Report3.frx"")); report.Prepare(true); report.ShowPrepared(); ``` Для веб версии: ``` webReport.Report.Load(Path.GetFullPath(@""..\..\Report1.frx"")); webReport.Report.Prepare(true); webReport.Report.Load(Path.GetFullPath(@""..\..\Report2.frx"")); webReport.Report.Prepare(true); webReport.Report.Load(Path.GetFullPath(@""..\..\Report3.frx"")); webReport.Report.Prepare(true); webReport.ShowRefreshButton = false; webReport.ReportDone = true; ``` Возможно ли использовать Linq в скрипте отчета FastReport .NET, если нужно найти одну или несколько строк из BusinessObjectDataSource? Да, возможно. Как загружать и вызывать отчёт из ресурсов приложения? Установка отчёта в ресурсы: Переходим в Visual Studio во вкладку ресурсы (Проект -> Свойства -> Ресурсы); Задаём имя (report) и устанавливаем содержимое ресурса(содержимое файла myreport.frx); Вызов отчёта из ресурсов: ``` Report report = new Report(); report.ReportResourceString = Resources.report; report.Show(); ``` Как наследовать отчёт из кода? Создайте новый отчёт: `Report report = new Report();` Добавьте событие CustomLoadEventHandler для загрузки базового отчёта: ``` report.LoadBaseReport += new CustomLoadEventHandler(FReport_LoadBaseReport); ``` Загрузите наследуемый отчёт: `report.Load(""InheritReport.frx"");` Удалите CustomLoadEventHandler: `report.LoadBaseReport -= new CustomLoadEventHandler(FReport_LoadBaseReport);` Теперь Вы можете показать отчёт или открыть его в дизайнере. Он будет содержать как тот, что наследуется, так и тот, который наследует базовый отчёт: `report.Show();` Также нужно создать событие для загрузки базового отчёта: ``` private void FReport_LoadBaseReport(object sender, CustomLoadEventArgs e) { //e.FileName contains the name of base report. It may be the file name, or an ID in the database, //it depends on how you load the main report e.Report.Load(""C:\\Users\\InheritReport\\bin\\Debug\\Title2.frx""); } ``` И полный код: ``` public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { Report report = new Report(); report.LoadBaseReport += new CustomLoadEventHandler(FReport_LoadBaseReport); report.Load(""InheritReport.frx""); report.LoadBaseReport -= new CustomLoadEventHandler(FReport_LoadBaseReport); report.Show(); } private void FReport_LoadBaseReport(object sender, CustomLoadEventArgs e) { // e.FileName contains the name of the base report. It may be the file name, or an ID in the database, // it depends on how you load the main report e.Report.Load(""C:\\Users\\InheritReport\\bin\\Debug\\Title2.frx""); } } ``` Если Вы хотите загрузить отчёт из базы данных, замените метод Load() на LoadFromString(). Как добавить сборку (dll) в отчёт из кода? Используйте данный фрагмент кода: ``` Report report = new Report; List assmbly = new List (report.ReferencedAssemblies); assmbly.Add(""Newtonsoft.Json.dll""); //replace to your dll's name report.ReferencedAssemblies = assmbly.ToArray(); ``` Убедитесь, что добавленная dll находится в одной папке с FastReport.dll. Теперь вы можете использовать методы из подключённой dll. Например, вы можете добавить следующее выражение в TextObject - `[Newtonsoft.Json.ConstructorHandling.Default.ToString()].` Как включить в отчет все таблицы и связи из набора данных? Используйте данный фрагмент кода для того, чтобы сделать доступными в отчёте все таблицы из вашего источника данных (DataSet): ``` foreach (FastReport.Data.DataSourceBase tbl in report.Dictionary.DataSources) { tbl.Enabled = true; } ``` Затем добавьте все связи из DataSet: ``` for (int i = 0; i < ds.Relations.Count; i++) { report.RegisterData(ds.Relations[i], ""relation"" + i); } ``` И включите все связи: ``` foreach(FastReport.Data.Relation rl in report.Dictionary.Relations) { rl.Enabled = true; } ``` Полный код: ``` Report report = new Report(); DataSet ds = new DataSet(); ds.ReadXml(""EstimateFile.xml""); report.RegisterData(ds, ""ds""); foreach(FastReport.Data.DataSourceBase tbl in report.Dictionary.DataSources) { tbl.Enabled = true; } for (int i = 0; i < ds.Relations.Count; i++) { report.RegisterData(ds.Relations[i], ""relation "" + i); } foreach(FastReport.Data.Relation rl in report.Dictionary.Relations) { rl.Enabled = true; } ``` Предположим, у нас есть сборка .NET: dll с DataConnection, написанная аналогично образцам. То есть мы имеем своего провайдера данных. Возможно эту сборку .NET подключить к Online Designer’у? Каким образом? Возможно, через `FastReport.Utils.RegisteredObjects.AddConnection()` FastReport .NET и служба печати установлены на Server_1, все принтеры будут расположены на Server_2. Можно ли отправить отчет в диспетчер очереди печати с другого сервера? Да, это возможно. В системе нужно настроить сетевой принтер. При конвертации rdl-отчетов из SSRS переносится только отображение отчета, но не DataSets? При конвертации источники данных не переносятся. У меня есть строка данных с меткой. Если значение равно 0.00, мне нужно скрыть всю строку вместе с меткой. Возможно ли это? Нужно бэнду добавить обработчик события BeforePrint. Там проверять это значение, если 0.00, то бэнду свойство Visible ставить равным false. Возможно, дополнительно к этому будет нужно выставлять высоту бэнда равной 0. Допускает ли FastReport .NET интеграцию с БД с помощью DTO? (нет прямого доступа к базе данных) Все зависит от того, какие там DTO. Их можно передать как объекты в отчет, в качестве источника данных. Похожий пример есть в демо-проектах. В папке FastReport .NET\Demos\C#\DataFromBusinessObject. Есть ли конвертер шаблонов из .FRX в .FR3? Да. С помощью дизайнера шаблонов вы можете сохранять шаблоны в ряд форматов, включая .FR3. В дизайнере выберите "Сохранить как...", и в диалоге сохранения выберите "FastReport VCL report (.fr3)". Можно ли избавиться в FastReport .NET от Microsoft.CodeAnalysis.CSharp.dll, Microsoft.CodeAnalysis.VisualBasic.dll, Microsoft.CodeAnalysis.dll, генерируемых при публикации? Если их исключить, то произойдет ошибка при подготовке отчета. Как от них можно избавиться? Данные библиотеки нужны для работы нашего скрипта в FastReport .NET, исключение их невозможно. Будет ли полноценный HTML-объект для отображения HTML-файлов? Планируется. В наших отчетах источником данных является DataSet. Можно ли в дизайнере отчетов FastReport .NET отобразить структуру DataSet в виде дерева с учетом имеющихся в нем связей между таблицами? Отобразить структуру DataSet в виде дерева с учетом имеющихся в нем связей между таблицами не получится. Можно ли конвертировать в frx-формат существующие отчетные формы XtraReport? Да. Можно ли в редакторе FastReport задавать отображаемые наименования полей, таблиц и связей (аналог DisplayName в DevExpress)? Есть похожее, свойство Alias. Почему в инсталле начиная с версии 2020.3 нет библиотек для .NET Framework 2.0? Мы решили прекратить поддерживать старый фреймворк и Visual Studio 2005. У нас есть некоторые трудности с поддержкой различных фрагментов кода для устаревших фреймворков. Если вы продолжаете использовать .NET Framework 2.0 в своих приложениях, напишите нам или используйте версию FastReport .NET 2020.2 или более раннюю. Как можно получить старую версию продукта? Если вы используете наш приватный nuget сервер, то вы можете выбрать нужную версию там. Также можно запросить нужную версию у нас. Панель элементов Visual Studio не содержит компоненты FastReport .NET Добавьте компоненты в панель элементов вручную: Нажмите ""Выбрать элементы"" в меню правой кнопки мыши, наведённой на панель элементов Visual Studio и выберите FastReport.dll из папки GAC (C:\Windows\Microsoft.NET\assembly\GAC_MSIL\FastReport). Можно ли подключить файл Exсel в виде базы данных и построить отчет? Прямого подключения не планируется. В зависимости от вашего файла вы, возможно, сможете сконвертировать его в другой формат, например CSV, и такой формат FastReport сможет использовать в качестве базы. Возможно ли подключение к DataSource в FastReport .NET? Да. Поддерживает ли FastReport .NET БД Vertica и Clickhouse? СlickHouse поддерживает, Vertica не поддерживает. Какие форматы офисных документов поддерживает экспорт? RTF, Excel 2007, Excel 97, Word 2007, PowerPoint 2007, Open Office Calc, Open Office Writer, XML, XAML, LaTeX Можно ли работать с MSChart в FastReport .NET? Доступно. Какие типы документов для разных видов принтеров поддерживает экспорт? PostScript, PPML, ZPL, матричные принтеры. Какие типы экспортов доступны в FastReport .NET? В каких форматах я буду получать документы и отчёты? PDF: версий 1.5 и 1.7, PDF / A (1, 2, 3), PDF / X (3, 4); Office: RTF, Excel 2007, Excel 97, Word 2007, PowerPoint 2007, Open Office Calc, Open Office Writer, XML, XAML, LaTeX; Web: HTML, MHT; Graphics: BMP, PNG, GIF, JPEG, TIFF, EMF, SVG, DXF, PPML, PostScript; DataBase: CSV, DBF, Json; А также: Text , ZPL, XPS. Мы постоянно улучшаем наши продукты, так что этот список может оказаться не исчерпывающим. К каким базам данных и СУБД есть возможность подключения? * Cassandra * ClickHouse * Couchbase * ElasticSearch * Excel * Firebird * Json * Linter * MongoDB * MsSql * MySql * OracleODPCore * Postgres * RavenDB * SQLite Также поддерживаются базы, совместимые с вышеуказанными. Мы постоянно улучшаем наши продукты, так что этот список не является исчерпывающим. Если вы обратитесь в поддержку, мы в подробностях расскажем о совместимости с интересующей вас СУБД. Какие стандарты PDF документов поддерживает экспорт FastReport .NET? PDF: версий 1.5 и 1.7, PDF / A (1, 2, 3), PDF / X (3, 4) Есть ли поддержка встраивания RichText в FastReport .NET? Доступно. Почему не сворачиваются некоторые окна в операционной системе РЕД ОС? Из-за особенности операционной системы окна помеченные как диалоговые не могут быть свёрнуты. Почему некорректно отображаются некоторые шрифты или же пропадают из списка доступных в операционной системе РЕД ОС? Данное поведение возникает из-за неправильных метрик (отступов сверху и снизу). Является проблемой в Avalonia UI. Есть ли возможность использовать водяные знаки? Можно, но они будут выглядеть как картинка. Есть ли поддержка диалоговых форм в FastReport .NET? Доступно. Где искать исходники после покупки? Вам необходимо скачать установщик продукта в своей клиентской панели: **[лк.быстрыеотчеты.рф](https://лк.быстрыеотчеты.рф)** После установки полной версии FastReport .NET отчёты продолжают генерироваться с ограничениями. Удалите пробную версию FastReport.NET Trial. Убедитесь, что в директориях C:\Windows\assembly и C:\Windows\Microsoft.NET\assembly\GAC_MSIL отсутствуют библиотеки FastReport .NET. Если были найдены библиотеки - удалите их. Установите полную версию программы. Могу ли я добавить генератор отчетов к моему продукту, чтобы мои клиенты имели возможность изменять отчеты? Или каждый клиент должен купить свою лицензию? Вы можете добавить дизайнер FastReport.NET для конечных пользователей без дополнительного лицензирования. Это означает, что вы можете добавить генератор отчетов к продукту только без исходного кода и вне среды разработки. Где скачать демо FastReport .NET CoreWin? Найти можно по **[ссылке](/ru/download/fast-report-net/)**. Где можно найти документацию FastReport .NET? Найти можно по **[ссылке](/public_download/docs/FRNet/online/ru/index.html)**. Где можно взять триал или демо версию FastReport.Core.Skia? По требованию. Будет ли поддержка SkiaSharp (Replace System.Drawing.Common to SkiaSharp)? Есть поддержка Skia. Есть ли поддержка Xamarin.Forms? Не планируется. Какие ограничения в триал версии FastReport .NET? Проставляется метка “DEMO VERSION” на каждой странице, а также происходит замена случайных полей. Есть ли консольный установщик? Нет. Вы можете установить FastReport .NET с помощью установщика или nuget-сервера. Поддерживаются ли форматы изображений EMF, WMF под FastReport .NET Skia? Нет, эти форматы поддерживаются только на Windows, а Skia кроссплатформенная библиотека Есть ли поддержка Blazor? Да, есть: и Server, и WebAssembly. Поддерживаются ли в FastReport .NET именованные выражения аналогичные вычисляемым полям в DevExpress? Нет, именованные выражения в FastReport .NET не поддерживаются. Есть ли платная доработка функциональности FastReport .NET? Да, на договорной основе. Вы можете написать нам в техническую поддержку [**support@fastreport.ru**](mailto:support@fastreport.ru), и наши менеджеры свяжутся с вами для уточнения деталей. Почему не добавляются элементы управления на форму в Visual Studio 2013? Убедитесь, что FastReport.Editor.dll, FastReport.VSDesign.dll, FastReport.Web и FastReport.dll зарегистрированы в GAC (см. директории из п.3). В противном случае зарегистрируйте их. Для этого откройте папку Visual studio tools (C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts), откройте Developer Command Prompt for..., и напишите в командной строке: `gacutil -i ""reference path+ name.dll""(gacutil -i ""Program Files\FastReports\FastReport.Net\Framework 4.0\FastReport.dll""). ` **[Подробнее о регистрации в GAC](https://learn.microsoft.com/ru-ru/dotnet/framework/app-domains/install-assembly-into-gac)**. После этого добавьте элементы управления FastReport в Visual Studio Toolbox: щелкните правой кнопкой мыши на панели инструментов -> Выбрать элементы -> Выберите FastReport.dll из GAC и нажмите ОК. Можно ли использовать FastReport Online Designer вместе с FastReport .NET? Да, FastReport .NET можно использовать с Online Designer. В паках FastReport .NET Ultimate и WEB онлайн дизайнер уже содержится Online Designer. Для других паков Online Designer придётся покупать отдельно. Как скрывать кнопки в предпросмотре FastReport .NET? Дизайнер отчетов FastReport .NET позволяет просматривать отчеты с помощью Viewer. И вы можете настроить список доступных экспортов в настройках дизайнера. Меню `File->Options->User Interface` Подробнее об этом вы можете прочитать в этой **[статье](https://быстрыеотчеты.рф/blogs/disable-printing)**. У нас есть где-нибудь Положение об оказании технической поддержки? Да, его можно найти по ссылке: [**Положение об оказании технической поддержки.**](https://быстрыеотчеты.рф/technical-support-regulations) Как настроить отображение определенных фильтров экспорта в предпросмотре FastReport .NET? Вы можете настроить список доступных экспортов в настройках дизайнера. Меню `File->Options->User Interface` Кнопка `Exports Menu` открывает окно настройки отображения экспортов. Подробности о настройках фильтров экспорта вы можете найти в **[этой статье](https://быстрыеотчеты.рф/blogs/disable-printing)**. Можно ли использовать кастомные шрифты? Да, возможно. Вы не обязаны устанавливать шрифты в систему для использования их в отчете. Достаточно добавить шрифты в отчет перед построением. Подробная инструкция по использованию шрифтов в отчётах без их установки в систему доступна вам в **[этом материале](https://быстрыеотчеты.рф/blogs/fonts-reports-without-installing)**. Какой тип лицензирования используется в FastReport .NET? - Пробная (ознакомительная) версия; - Лицензия Базовая; - Лицензия Расширенная; - Лицензия Проектная. Подробнее о типах лицензирования вы можете прочитать в **[Лицензии FastReport .NET](https://быстрыеотчеты.рф/license/license-net)** Можно ли подключить файл CSV в виде базы данных и построить отчет? Да, можно. В качества примера приводится **[статья](https://быстрыеотчеты.рф/blogs/build-daily-graphics-csv)** про ежедневное построение графиков из csv файлов. Есть ли возможность экспортировать PDF с интерактивными полями ввода? Да, FastReport .NET поддерживает экспорт в формат PDF с интерактивными полями ввода. Подробнее о работе с PDF экспортом вы можете найти **[в руководстве пользователя.](https://быстрыеотчеты.рф/public_download/docs/FRNet/online/ru/UserManual/ru-RU/PreviewPrintExport/Export/ExportToPDF.html)** Есть ли возможность использовать цифровую подпись при экспорте в PDF? Да, вы можете использовать цифровую подпись. Подробнее об этом объекте читайте **[в руководстве пользователя.](https://быстрыеотчеты.рф/public_download/docs/FRNet/online/ru/UserManual/ru-RU/Fundamentals/ReportObjectsFundamentals/DigitalSignatureObject.html)** Есть ли экспорт отчета в облачные сервисы? Да, такие экспорты поддерживаются в FastReport .NET. Более подробную информацию вы можете найти **[в руководстве пользователя в главе "Экспорт отчета".](https://быстрыеотчеты.рф/public_download/docs/FRNet/online/ru/UserManual/ru-RU/PreviewPrintExport/Export.html)** Можно ли отправить отчет на электронную почту? FastReport .NET позволяет отправить готовый отчет по электронной почте в нужном вам формате. Отправка работает в двух режимах: SMTP и MAPI. Подробнее об этих режимах читайте **[в руководстве пользователя.](https://быстрыеотчеты.рф/public_download/docs/FRNet/online/ru/UserManual/ru-RU/PreviewPrintExport/SendByEmail.html)** Как сохранить отчет FastReport .NET в LaTeX? Вы можете сохранить отчет в LaTeX из дизайнера отчетов или из кода. Подробнее об этих способах сохранения читайте в **[статье](https://быстрыеотчеты.рф/blogs/export-latex-dotnet)**. Как нам установить ваши лицензионные пакеты в наш продукт, используя Linux, MacOS либо Windows. При этом нам бы не приходилось устанавливать последнюю версию продуктов FastReport вручную с помощью инсталлера, скачанного на сайте, который работает только на Windows? На этот вопрос мы подготовили универсальное решение в виде нашего приватного NuGet-сервера. Подробнее о нём читайте в **[следующей статье](https://быстрыеотчеты.рф/blogs/private-nuget-server)**. В случае окончания действия подписки вы можете продолжать пользоваться источником пакетов, однако доступа к последним версиям пакетов не будет. Следовательно, последняя доступная версия пакета будет определяться по условию: > Дата выхода выбранной версии < Дата истечения подходящей подписки Важно! При попытке загрузки пакета с датой выхода позже, чем дата окончания подходящей подписки, NuGet сервер отдаст самую последнюю доступную версию пакета согласно вашей подписке. Но мы не рекомендуем ссылку на недоступную версию пакета, т.к. это приводит к Warning при восстановлении проекта и к задержке загрузки пакета. Как скачать пакет FastReport .NET из nuget? Подробно про это в **[статье](/blogs/private-nuget-server/)**. Где найти демо FastReport .NET с Online Designer? Находится здесь: **[Online Designer demo](https://демо.быстрыеотчеты.рф/net-core/designer/)** Есть ли поддержка WPF? Да, у нас есть продукт **[FastReport WPF](/products/wpf/)**. Как перенести проект из FastReport OpenSource на коммерческую версию FastReport .NET? Подробно про это в **[статье](/blogs/Migrate-FastReport-Open-Source-to-FastReport-Core/)**. В чем различия FastReport .NET со Skia и с GDI+? Посмотреть можно **[по ссылке.](/blogs/fastreport-core-skia/)** Есть ли конвертер шаблонов из .FR3 в .FRX? Да, конвертер шаблонов из .FR3 в .FRX доступен [**по этой ссылке.**](https://быстрыеотчеты.рф/public_download/fr3tofrx.exe) Где найти демо FastReport .NET для .NET Core? Находится здесь: **[Live .NET Core demo](https://демо.быстрыеотчеты.рф/net-core/)** Где найти демо FastReport .NET для Blazor Server? Находится здесь: **[Blazor Server demo](https://демо.быстрыеотчеты.рф/blazor/)** Где найти демо-приложение (триальную версию) FastReport .NET? Найти можно по **[ссылке.](https://быстрыеотчеты.рф/downloads/fast-report-net)** Где найти демо FastReport .NET для ASP.NET MVC? Находится здесь: **[Live ASP.NET MVC demo](https://демо.быстрыеотчеты.рф/razor/)** В чем принципиальные отличия FastReport Open Source от коммерческой версии? Отличия представлены в **[таблице](/designers-comparison/)**. Есть ли поддержка Maui? Не планируется. Какие системные требования к FastReport .NET? Требования к оборудованию: Процессор 1 ГГц, ОЗУ 512 Мб Минимальный объем дискового пространства (32-разрядная или 64-разрядная ОС): 20 Мбайт Необходима поддержка .NET Минимальная версия .NET Framework: .NET Framework 4.6.2 В каких IDE можно использовать в FastReport .NET? Visual Studio, Visual Studio Code, JetBrains Rider, а также любые другие редакторы поддерживающие .NET Работает ли FastReport .NET под мобильными устройствами? На данный момент не планируется. Вы можете использовать Web-версию. Есть ли дизайнер шаблонов в FastReport.NET? Да, дизайнер включен в состав продукта. В каких типах веб-проектов можно использовать FastReport.NET? ASP.NET, ASP.NET MVC, .NET Core, Blazor Server, Blazor WebAssembly Есть ли поддержка WinUI? Не планируется. Есть ли поддержка Uno.WinUI? Не планируется. Есть ли поддержка Uno? Не планируется. Есть ли в FastReport .NET объект отчета позволяющий загружать PDF документ внутри отчета (аналог объекта TfrxPDFView в FastReport VCL)? На данный момент нет. Работает ли FastReport .NET на CentOS и Debian? Да, FastReport .NET Сore работает на CentOS и Debian. Генератор отчетов FastReport .NET предназначен только для сервера Blazor, а не для гибридного режима? Blazor Hybrid не поддерживается. На данный момент поддерживаются платформы Blazor WASM и Blazor Server. Работает ли в FastReport .NET на Linux? Да, FastReport .NET поддерживает Linux в паках Ultimate, WEB, Avalonia, Mono. Есть ли поддержка Blazor WebAssembly? Реализована. Читайте о ней в **[этой статье](/blogs/blazor-webassembly-manual/)**. Поддерживает ли FastReport .NET разработку и печать RFID этикеток? Доступно, читайте про это **[в статье](/blogs/rfid-tags-zpl-fastreport-net/)**. Есть ли поддержка Avalonia UI? Да. Подробнее на странице продукта **[FastReport Avalonia](/products/avalonia)**. Как сделать рендер отчета с использованием WebApi + VueJs? Подробно про это вы можете узнать в нашей **[статье](/blogs/fastreport-core-in-vue-js/)**. Моя подписка истекла. Где я могу скачать последнюю доступную версию? Напишите нам на [**support@fastreport.ru**](mailto:support@fastreport.ru) и мы вышлем самую свежую доступную вам версию. ### 1 сравнение генераторов отчётов SSRS и FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/comparative-analysis-report-sql-server-1 Summary: Сравниваем, в каком генераторе отчетов больше функциональных возможностей - SQL Server Reporting Services или FastReport .NET. Сравниваем, в каком генераторе отчетов больше функциональных возможностей - SQL Server Reporting Services или FastReport .NET. Сравниваем, в каком генераторе отчетов больше функциональных возможностей - SQL Server Reporting Services или FastReport .NET. Электронная и печатная отчетность применяется во многих сферах нашей жизнедеятельности. Вы можете представить бухгалтерию без годового отчета? Или транспортную компанию без накладных? Так или иначе отчеты имеют огромное значение в производстве и бизнесе. Именно поэтому программы – генераторы отчетов так же важны, как и СУБД.  Но, также, как и разные СУБД, разные генераторы отчетов имеют свои сильные и слабые стороны. Давайте рассмотрим мы два ярких представителя, которые достаточно давно обосновались на рынке «софта»: Первый из них – SQL Server Reporting Services (SSRS) . Продукт от мирового гиганта Microsoft. Создавался специально как надстройка над СУБД SQL Server. Этот генератор отчетов очень популярен среди разработчиков TSQL в первую очередь потому, что входит в комплект поставки СУБД MS SQL Server. Главная особенность этого генератора отчетов – это серверная служба, которая позволяет администрировать и просматривать отчеты через веб интерфейс. Для редактирования отчетов требуется десктоп приложение – дизайнер отчетов. Второй сегодняшний кандидат – FastReport . NET . Это продукт российских разработчиков с давней историей. Но сейчас не об этом. Генератор FastReport .NET работает в связке в Microsoft Visual Studio и основан на фреймворке .NET. При инсталляции программы, ее компоненты добавляются в палитру VS. Так что вы используете FastReport в своих приложениях размещая компоненты на форме или подключая библиотеки в коде. Также, как и SSRS, он имеет отдельно запускаемый дизайнер отчетов, однако вы можете встроить дизайнер в свое приложение с помощью компонента ReportDesigner. В противовес SSRS я намеренно взял не столь известный FastReport .NET. Интересно сравнить продукт от лидера софтверного рынка и от небольшой компании. Но не будем забегать вперед, обо всем по порядку. В этой статье мы проведем ряд сравнений и тестов. Так как объем статьи предполагается не маленьким, предлагаю разделить ее на три части. В первой части статьи мы выясним какими же функциональными возможностями обладает каждый из рассматриваемых генераторов отчетов. Но начать я все же хочу с пользовательского интерфейса – дизайнера отчетов. По праву дизайнер отчетов можно считать самым важным компонентом генератора отчетов. От удобства создания отчета зависит отношение пользователя ко всему продукту в целом. Так уж мы устроены, что в первую очередь оцениваем глазами. Давайте посмотрим на интерфейс дизайнера отчетов Reporting Services: Все достаточно понятно и лаконично, выполнено в стиле MS Office 2007. Надо сказать, очень удачная идея с панелями инструментов сгруппированными по назначению на отдельных вкладках. Сейчас этот стиль перенимают многие. Люди, работающие с MS Office быстро освоят такой интерфейс. Слева - данные отчета, в центре – рабочая область. Создавать отчеты в таком дизайнере очень просто. А теперь посмотрим на дизайнер FastReport .NET: Видите, сходство с предыдущим скриншотом? Здесь тоже применяется верхняя панель инструментов по типу MS Office 2007. Здесь слева панель компонентов, справа - дерево данных, в центре – рабочая область. Все также просто и понятно. Однако есть одна особенность в архитектуре шаблона отчета – бэнды. Это контейнеры, разграничивающие информацию по назначению. По началу освоения FR.Net это потребует времени на понимание, однако преимущества данного подхода нивелируют эти затраты. Оба дизайнера понятны и удобны в работе, юзабилити не вызывает нареканий. Функциональные возможности для создания отчетов Теперь рассмотрим основные возможности генераторов в создании отчетов. В таблице ниже я приведу функциональные возможности: Функция SSRS FR.Net Многостраничный отчет ✓ Диалоговые формы ✓ Встроенный скрипт отчета ✓ ✓ Гиперссылки ✓ ✓ Обработчики событий ✓ Выражения ✓ ✓ Поддержка текста справа налево ✓ ✓ Локализация пользовательского интерфейса ✓ ✓ Безразмерная страница отчета ✓ Интерактивные отчеты ✓ ✓ Модификация уже построенного отчета ✓  Немного подробнее о функциях: Многостраничный отчет. Как правило мы создаем шаблон отчета на странице, затем, при построении этот шаблон наполняется данными. Если данные не умещаются на одной странице, то создается новая и так далее. Так вот, многостраничный отчет — это совсем другое. Имеется в виду несколько страниц с разными шаблонами. Например, первая страница титульная, вторая – оглавление, третья – контент. Таким образом отчет состоит из трех страниц, каждая из которых наполняется своими данными. Благодаря этой возможности можно создавать полноценные документы типа буклет. Диалоговые формы – специально создаваемые формы, которые, как правило, отображаются перед построением отчета. Такие формы используют для запроса данных или действий у пользователя. Например, можно фильтровать по вводимому значению или задать количество выводимых колонок. Такая функция позволяет избежать создания специального приложения с формой предварительных настроек отчета. Встроенный скрипт отчета . Всегда найдутся задачи, которые не под силу штатным инструментам дизайнера отчетов. К примеру сложные вычисляемые поля или определенная логика в построении отчета в зависимости от данных. Тут на помощь приходит встроенный в отчет скрипт. Он позволяет работать с объектами отчета в программном коде. Эта функция значительно расширяет возможности генератора отчетов, делает его гибким. Гиперссылки помогут придать отчету интерактивность. Пользователь сможет переходить по ссылкам на заданные позиции в отчете или получать детализирующую страницу для выбранных данных. Выражения – возможность создавать на основе данных или без них произвольные выражения при помощи встроенных функций (математических, текстовых и др.). Используя выражения, вы можете, например, сложить все значения нужного поля для отображения итоговой суммы, или преобразовать дату в другой формат. Выражения в отчете очень важный инструмент, без них вы бы могли просто выводить данные из источника в их исходном виде. Поддержка текста справа налево – актуально для арабских языков, где текст пишется справа налево. Такая функция должна быть в каждом «уважающем себя» генераторе отчетов. Локализация пользовательского интерфейса – возможность выбрать нужный язык локализации. Чем больше языков поддерживается, тем больше потенциальных пользователей у данного генератора отчета. Безразмерная страница отчета – возможность задавать бесконечную ширину и высоту страницы отчета. Таким образом вы можете выводить большие таблицы и матрицы без разбивки по страницам. Это может быть удобно в веб отчетах или просто если вы не планируете выводить отчет на печать. Интерактивные отчеты – отчеты, которые откликаются на действия пользователя. Это могут быть гиперссылки, закладки, разворачивающиеся списки, всплывающие сообщения. Модификация уже построенного отчета – возможность изменять отчет без перестроения. Это реализуется с помощью скрипта. Из приведенной таблицы видно, что по некоторым параметрам FastReport .NET обходит SSRS. Продукт от Microsoft не позволяет создавать отчеты с несколькими шаблонами-страницами. Также ему недоступна безразмерная страница, отчет всегда выводится на страницах фиксированного размера. Опять же модифицировать построенный отчет не получится, хоть это и достаточно экзотическая потребность. Отдельно хочу упомянуть диалоговые формы. В SSRS эта форма выводится сверху отчета, а в FastReport .NET - как отдельная форма перед построением отчета. Причем из этой формы можно вызвать другую, что позволяет наделить отчет большей логикой. По итогам сравнения функциональных возможности для создания отчетов признаем преимущество за FastReport. Возможно сказывается больший опыт компании в разработке генераторов отчетов, ведь свой первый генератор она создала в начале 2000х, а Microsoft в 2004ом. Tags: .NET, FastReport, SSRS, SQL, Конвертирование, .NET, FastReport, SSRS, SQL, Конвертирование ### 14 мая — День фрилансера URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/freelancers-day-2026 Summary: 14 мая — День фрилансера: поздравляем независимых разработчиков и приглашаем присоединиться к сообществу пользователей FastReport! 14 мая — День фрилансера: поздравляем независимых разработчиков и приглашаем присоединиться к сообществу пользователей FastReport! И это отличный повод сказать: индивидуальные разработчики - это настоящая сила индустрии. Именно фрилансеры часто берут на себя всё сразу: разработку, архитектуру, коммуникацию с клиентом, дедлайны и поддержку проектов. Без больших команд, но с огромной ответственностью и экспертизой. Быть независимым разработчиком - это не "работать в одиночку". Это значит быть смелым, гибким, развивать и двигать проекты вперед своими силами. Когда-то FastReport тоже начинался как проект индивидуального разработчика. С одной идеи, неустанной работы и желания сделать удобный инструмент для других программистов. Со временем проект вырос в продукт, которым пользуются разработчики по всему миру, но нам по-прежнему особенно близка философия независимой разработки и людей, которые создают большие вещи самостоятельно. Присоединяйтесь к сообществу пользователей FastReport прямо сейчас, чтобы вместе с нами создавать сильные программные продукты!  ### 2 апреля пройдет семинар Fast Reports в Красноярске URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-april-2-2007 Summary: 2 апреля пройдет семинар Fast Reports в Красноярске 2 апреля пройдет семинар Fast Reports в Красноярске Приглашаем Вас принять участие в семинаре " Новейшие разработки для скоростного построения и формирования отчётов семейства FastReport " Город проведения:  Красноярск Дата проведения:  2 апреля 2007 10.00 регистрация на семинар На семинар приглашаются руководители групп разработки, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, заинтересованные в применении действенных эффективных инструментов бизнес-аналитики. Компания  Fast Reports  - разработчик программного обеспечения для формирования отчетов. Семейство генераторов отчётов  FastReport  - средства для оперативного составления документов на основе табличных данных. Использование этих программ делает доступным быстрое создание документа, мощную систему построения аналитики и скоростное получение готового отчёта. В первой части семинара Вы познакомитесь с  FastReport Server , мощным и полнофункциональным решением для организации корпоративной интернет/интранет-отчётности, содержащим все инструменты для создания и доставки отчётов и не требующим смены сложившейся структуры баз данных и приложений на предприятии. Также Вы узнаете о возможностях  FastReport Studio , студии разработки отчётов, предназначенной для разработчиков и конечных пользователей, использующих технологии  Microsoft . Во второй части мероприятия специалисты компании  Fast Reports  представят обзор новых возможностей линейки генераторов отчётов  FastReport 4  и абсолютно новый продукт для бизнес-аналитики  FastCube . Предварительная регистрация на семинар является обязательной! ### 2 сравнение генераторов отчётов SSRS и FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/comparative-analysis-report-sql-server-2 Summary: SSRS может предложить нам скачать и запустить дизайнер для редактирования отчета. Вам необходимо устройство с ОС Windows. SSRS может предложить нам скачать и запустить дизайнер для редактирования отчета. Вам необходимо устройство с ОС Windows. SSRS может предложить нам скачать и запустить дизайнер для редактирования отчета. Вам необходимо устройство с ОС Windows. Технологии Продолжая тему возможностей генератора отчетов, мы рассмотрим технологии, которые они поддерживают. Технология SSRS FR .NET WinForms ✓ ✓ WPF ✓ ✓ ASP.Net ✓ ✓ ASP.Net MVC ✓ ✓ ASP.Net Core ✓ WCF ✓ ✓ Оба генератора отчетов ориентированы на платформу .NET. Соответственно, в таблице выше приведены современные технологии, основанные на этом фреймворке. WinForms – до недавнего времени основной API для создания графического пользовательского интерфейса desktop приложений. WPF – другой подход в создании приложений с GUI. Сейчас очень популярен и вытесняет WinForms, благодаря большей гибкости. ASP . Net – клиент-серверная технология для создания веб приложений. ASP.Net MVC – основанный на ASP.Net фреймворк, для реализации архитектуры приложений Model – View – Controller. Разработка на этом фреймворке существенно отличается от обычного ASP.Net. ASP.Net Core – последнее «творение» от Microsoft в области веб приложений. Еще один фреймворк для веба. В основе лежит ASP.Net MVC. Основное отличие – кроссплатформенность и открытый код. WCF – фреймворк для создания распределенных приложений с безопасной передачей данных (в основном веб сервисы). Оба генератора отчетов поддерживают почти весь спектр приведенных технологий Однако, на текущий момент SQL Server Reporting Services 2016 не поддерживает ASP.Net Core. Возможно в следующей версии будет реализована эта возможность. А пока, FastReport.Net лидирует в этом сравнении. Объекты отчета Возможности генератора отчетов зависят также от номенклатуры объектов отчета. Эти объекты могут выводить данные, использоваться как элементы управления или же просто быть элементами дизайна. Мы размещаем их на странице отчета, или диалоговой форме. В общем это кирпичики в стене под названием отчет. Не буду лениться и напишу пару слов о каждом объекте. Объект SSRS FR  . NET Описание Text ✓ ✓ Этот объект основа любого генератора отчета. Позволяет выводить любые текстовые данные, например данные из базы или выражения. Picture ✓ ✓ Позволяет вставлять в отчет изображение. Line ✓ ✓ Линия применяется для разграничения пространства в отчете или обрамления объектов. Line with arrow ✓ Линия со стрелкой. Этот объект носит декоративный характер. Можно использовать как указатель. Rectangle ✓ ✓ Прямоугольник. Используется для оформления отчета, разграничения пространства. Rounded Rectangle ✓ Прямоугольник с закругленными углами. Ellipse ✓ Эллипс. Triangle ✓ Треугольник. Diamond ✓ Ромб. Polyline ✓ Ломаная. Позволяет строить граф, указывая ключевые точки. Polygon ✓ Многоугольник, построенный с помощью ломанной. Можно трансформировать фигуру перетягивая мышью ключевые точки. Sub-report ✓ ✓ Вложенный отчет. По сути еще один отчет, который можно вставить в нужное место другого отчета. Table ✓ ✓ Таблица. Может быть заполнена вручную или данными из базы с помощью скрипта (динамическая). Matrix ✓ ✓ Матрица – сводная таблица. Заполняется данными из базы, соответственно растет по высоте и ширине. Chart ✓ ✓ Диаграмма, график. Могут строиться как на основе ручных данных, так и данных из БД. Sparkline ✓ ✓ Искрографик. Еще один вид графиков. Data Graphic ✓ Графические данные. Это представление данных в виде виджетов (шкала, полоса состояния и д.р.). Barcode ✓ Штрих код Gauge ✓ ✓ Измерительный прибор. Имитирует аналоговые шкалы приборов для отображения показаний. Rich Text ✓ Расширенный текст. Позволяет вставлять rtf документы. CheckBox ✓ Флажок. Zip Code ✓ Почтовый индекс в стандартном формате. Cellular Text ✓ Текст в ячейках. Каждый символ выводится в отдельной ячейке. List ✓ Список. HTML ✓ Позволяет вставлять HTML документ, который будет интерпретирован для отображения. Indicator ✓ Иконка-индикатор, меняющаяся в зависимости от заданного условия. Можно использовать флажки, лампочки, стрелки и д.р. Map ✓ ✓ Позволяет вставить в отчет векторную карту, которую можно будет масштабировать. Как видно из таблицы выше, многие из рассмотренных объектов не доступны в SSRS: Во-первых, совсем не предусмотрена векторная графика (полигоны и другие фигуры). Во-вторых, отсутствие CheckBox. По работе мне часто приходится создавать отчеты в SSRS, и каждый раз вызывает раздражение отсутствие флажка при отображении битового поля. В-третьих, штрих коды тоже не доступны. Вам придется генерировать их сторонними средствами и вставлять в отчет в виде картинки. Это нормально? С другой стороны, FastReport тоже имеет «пробелы». Правда они не так критичны: Объект «Список» просто не нужен, он реализуется с помощью архитектурного решения FR – бэндов. Отсутствует Индикатор. Но, его можно сделать с помощью «условного выделения» и скрипта отчета. Не так удобно, как у SSRS, но тоже приемлемо. В целом, нужно признать, что ассортимент у FastReport.Net богаче, и многие из доступных элементов действительно необходимы. Дополнительные возможности Почему я вынес в отдельный раздел часть возможностей генераторов отчетов? Потому что считаю их вспомогательными, не обязательными для генератора отчетов. Однако наличие таких опций будет приятным бонусом.  Многие генераторы отчетов позволяют конвертировать отчеты других программ в собственный формат, тем самым облегчая миграцию. Что же нам предлагают наши «испытуемые»: Конвертация отчетов других форматов Генератор отчета Из … в SSRS Из … в FR.Net RDL ✓ List&Label ✓ DevExpress ✓ Crystal Reports by  Crystal Migration ✓ Как вы знаете, до Reporting Services официальным генератором отчетов в Microsoft был Crystal Reports. Всю массу разработанных отчетов нужно было как-то переводить на новый SSRS. Соответственно, был разработан инструмент миграции на новый формат. К сожалению, это единственный возможный формат конвертации. Наверно, в Microsoft не рассматривают возможность перехода на SSRS от другого генератора отчета. FastReport .NET стремится привлечь часть пользователей других генераторов отчетов. Самое забавное, что отчеты SSRS могут быть сконвертированы в FR .NET. Также, можно конвертировать отчеты немецкого генератора отчетов List&Label, американского DevExpress и откровенно устаревшего Crystal Reports. Теперь рассмотрим другую особенность. FastReport .NET предлагает нам Online Designer . Это почти полная копия визуального дизайнера отчетов, перенесенная на веб платформу. Вы можете включать библиотеку Online Designer в свой веб проект и отображать его пользователю на веб странице. Пользователь может конструировать отчеты в интернет браузере с любого устройства. Эта возможность может быть полезна разработчикам, когда нет возможности создавать отчеты на своем рабочем месте. К примеру, вы находитесь в командировке, но вам срочно потребовалось внести правки в отчет, который будет представлен начальству в ваше отсутствие. Планшет или даже смартфон спасет положение, благодаря онлайн дизайнеру. Согласитесь, очень интересная фича! Но, вполне можно обойтись и без нее. SSRS может предложить нам скачать и запустить дизайнер для редактирования отчета. Это конечно не так удобно. Вам необходимо устройство с ОС Windows. Для гаджетов на Android или iOS это не подойдет. По итогам этого сравнения я хочу похвалить команду FastReport .NET. Онлайн дизайнер отчетов действительно удобное дополнение для разработчика отчетов. Tags: .NET, FastReport, SSRS, Конвертирование, .NET, FastReport, SSRS, Конвертирование ### 20 февраля пройдёт семинар Fast Reports в Самаре URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-february-20-2007 Summary: 20 февраля пройдёт семинар Fast Reports в Самаре 20 февраля пройдёт семинар Fast Reports в Самаре Приглашаем Вас принять участие в семинаре " Новейшие разработки для скоростного построения и формирования отчётов семейства FastReport " Город проведения:  Самара Дата проведения:  20 февраля 2007 10.00 регистрация на семинар На семинар приглашаются руководители групп разработки, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, заинтересованные в применении действенных эффективных инструментов бизнес-аналитики. Компания  Fast Reports  - разработчик программного обеспечения для формирования отчетов. Семейство генераторов отчётов  FastReport  - средства для оперативного составления документов на основе табличных данных. Использование этих программ делает доступным быстрое создание документа, мощную систему построения аналитики и скоростное получение готового отчёта. В первой части семинара Вы познакомитесь с  FastReport Server , мощным и полнофункциональным решением для организации корпоративной интернет/интранет-отчётности, содержащим все инструменты для создания и доставки отчётов и не требующим смены сложившейся структуры баз данных и приложений на предприятии. Также Вы узнаете о возможностях  FastReport Studio , студии разработки отчётов, предназначенной для разработчиков и конечных пользователей, использующих технологии  Microsoft . Во второй части мероприятия специалисты компании  Fast Reports  представят обзор новых возможностей линейки генераторов отчётов  FastReport 4  и абсолютно новый продукт для бизнес-аналитики  FastCube . Предварительная регистрация на семинар является обязательной! подробнее:  http://softline.ru/it_page.php?id=1638 ### 21 февраля пройдёт семинар Fast Reports в Уфе URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-february-21-2007 Summary: 21 февраля пройдёт семинар Fast Reports в Уфе 21 февраля пройдёт семинар Fast Reports в Уфе Приглашаем Вас принять участие в семинаре " Новейшие разработки для скоростного построения и формирования отчётов семейства FastReport " Город проведения:  Уфа Дата проведения:  21 февраля 2007 10.00 регистрация на семинар На семинар приглашаются руководители групп разработки, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, заинтересованные в применении действенных эффективных инструментов бизнес-аналитики. Компания  Fast Reports  - разработчик программного обеспечения для формирования отчетов. Семейство генераторов отчётов  FastReport  - средства для оперативного составления документов на основе табличных данных. Использование этих программ делает доступным быстрое создание документа, мощную систему построения аналитики и скоростное получение готового отчёта. В первой части семинара Вы познакомитесь с  FastReport Server , мощным и полнофункциональным решением для организации корпоративной интернет/интранет-отчётности, содержащим все инструменты для создания и доставки отчётов и не требующим смены сложившейся структуры баз данных и приложений на предприятии. Также Вы узнаете о возможностях  FastReport Studio , студии разработки отчётов, предназначенной для разработчиков и конечных пользователей, использующих технологии  Microsoft . Во второй части мероприятия специалисты компании  Fast Reports  представят обзор новых возможностей линейки генераторов отчётов  FastReport 4  и абсолютно новый продукт для бизнес-аналитики  FastCube . Предварительная регистрация на семинар является обязательной! подробнее:  http://softline.ru/it_page.php?id=1646 ### 24 января отмечается Международный день образования URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/obrazovanie-2026 Summary: «Быстрые отчеты» всегда открыты к сотрудничеству с образовательными организациями и поддерживают инициативы, направленные на развитие прикладных навыков и инженерного мышления. «Быстрые отчеты» всегда открыты к сотрудничеству с образовательными организациями и поддерживают инициативы, направленные на развитие прикладных навыков и инженерного мышления. Компания «Быстрые отчеты» уже много лет сотрудничает с образовательными организациями. Наши продукты используются не только для решения внутренних задач — таких как составление расписаний, графиков работ и отчётности для различных инстанций, но и в учебных проектах студентов. Это помогает учебным заведениям повышать качество подготовки специалистов и укреплять связи с отраслью. Мы считаем важным, чтобы студенты имели доступ к современным инструментам и работали с реальными технологиями уже в процессе обучения. Такой подход позволяет глубже понять профессию и сформировать востребованные практические навыки, облегчая адаптацию профессиональной деятельности после окончания обучения. «Быстрые отчеты» всегда открыты к сотрудничеству с образовательными организациями и поддерживают инициативы, направленные на развитие прикладных навыков, инженерного мышления и практической работы с современными программными решениями. Наша компания готова подобрать оптимальное решение для реализации учебных и рабочих задач. Для этого достаточно написать нам на sales@fastreport.ru , и мы свяжемся с вами. ### 25 лет: история создания библиотек и компонентов URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/birthday-fastreport-2023 Summary: В августе нам исполнилось 25 лет! Спасибо, что вы с нами все эти годы и позволяете делать наши продукты лучше и мощнее. В августе нам исполнилось 25 лет! Спасибо, что вы с нами все эти годы и позволяете делать наши продукты лучше и мощнее. В августе текущего года мы отмечаем юбилей нашей компании - 25 лет. За этот значительный период мы получили неоценимую поддержку со стороны наших клиентов, что позволило нам непрерывно совершенствовать наши продукты и технологии, обеспечивая их высокую эффективность и конкурентоспособность на рынке. ### 25 января пройдёт семинар Fast Reports в Москве URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-january-25-2007 Summary: 25 января пройдёт семинар Fast Reports в Москве 25 января пройдёт семинар Fast Reports в Москве Приглашаем Вас принять участие в семинаре "Новейшие разработки для скоростного построения и формирования отчётов семейства FastReport", проводимый компанией Fast Reports совместно с компанией SoftLine. На семинар приглашаются руководители групп разработки, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, заинтересованные в применении действенных эффективных инструментов бизнес-аналитики. Компания Fast Reports - разработчик программного обеспечения для формирования отчетов. Семейство генераторов отчётов FastReport - средства для оперативного составления документов на основе табличных данных. Использование этих программ делает доступным быстрое создание документа, мощную систему построения аналитики и скоростное получение готового отчёта. В первой части семинара Вы познакомитесь с  FastReport Studio, средой разработки отчётов, предназначенной для разработчиков и конечных пользователей, использующих технологии Microsoft. Также Вы узнаете о возможностях FastReport Server, мощного и полнофункционального решения для организации корпоративной интернет/интранет-отчётности, содержащим все инструменты для создания и доставки отчётов и не требующим смены сложившейся структуры баз данных и приложений на предприятии. Во второй части мероприятия специалисты компании Fast Reports представят обзор новых возможностей линейки генераторов отчётов FastReport 4 и абсолютно новый продукт для бизнес-аналитики FastCube. Регистрация Адрес и схема проезда ### 3 сравнение генераторов отчётов SSRS и FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/comparative-analysis-report-sql-server-3 Summary: Давайте же рассмотрим какие источники данных и форматы экспорта данных доступны в Reporting Services и FastReport .NET. Давайте же рассмотрим какие источники данных и форматы экспорта данных доступны в Reporting Services и FastReport .NET. Давайте же рассмотрим какие источники данных и форматы экспорта данных доступны в Reporting Services и FastReport .NET. Источники данных Основа отчета – данные. Давайте же рассмотрим какие источники данных доступны в Reporting Services и FastReport .NET. Сначала рассмотрим встроенные коннекторы. То есть те, которые доступны вам сразу при создании источника данных в отчете, без дополнительных инсталляций и настроек: Встроенные источники данных SSRS FR .NET SQL Server ✓ ✓ Oracle ✓ в расширении OLE DB ✓ ✓ ODBC ✓ ✓ MS Access в расширении ✓ XML database ✓ ✓ CSV file ✓ Azure SQL Database ✓ MS Analytics Platform ✓ MS SQL Server Analysis Servises ✓ SharePoint ✓ в расширении SAP BW ✓ TERADATA ✓ Для FastReport .NET характерны коннекторы к базам данных Microsoft и файловым источникам данных csv. Reporting Services имеет больше встроенных коннекторов, но в основном к базам данных Microsoft. Конечно, вы можете использовать универсальный ODBC для подключения к БД, отсутствующей в списке доступных. Но при этом пострадает скорость работы с данными. Давайте рассмотрим расширения для подключения к другим СУБД. Этот список заметно больше предыдущего. Дополнительные источники данных SSRS FR . NET MS Access odbc ✓ Xml ✓ ✓ CSV odbc ✓ DB2 ✓ ✓ Firebird ✓ GoogleBigQuery ✓ Json сторонний ✓ MongoDB сторонний ✓ MySQL ODBC ✓ NosDB ✓ Oracle ✓ ✓ OracleODP ✓ Postgres ✓ Postgres.Devart ✓ RavenDB ✓ SharePoint ✓ ✓ SqlAnywhere ✓ SqlCe ✓ SQLite ✓ VistaDB ✓ Business Objects ✓ ✓ Здесь «сторонний» означает, что реализуется с помощью библиотек других производителей. ODBC – значит реализуется с помощью этого универсального коннектора. Как видно из таблицы, расширения FastReport .NET позволяют добавить коннекторы практически ко всем популярным сегодня СУБД. Отличный результат. Reporting Services ограничился коннекторами для DB2 от IBM и сервисов Microsoft. Такой скромный результат объясняется ориентированностью SSRS в первую очередь на собственные системы Microsoft. Ведь высокая интеграция с другими продуктами этой компании - основное достоинство Reporting Services. FastReport же стремится удовлетворить весь потребительский спрос. В конкуренции с такими гигантами, как Microsoft это лучшая стратегия. Пара слов о расширениях. В SSRS дополнительные коннекторы нужно инсталлировать. В FastReport .NET реализовано с помощью плагинов для дизайнера отчетов. Экспорты Еще один важный элемент генератора отчетов – экспорт отчета. Ведь мало отобразить или распечатать отчет, важно сохранить его в нужном формате. К примеру, документооборот на вашем предприятии допускает только формат PDF, DOCX и XLSX. Если генератор отчетов, который вы используете не позволяет экспортировать отчеты в эти форматы, это может стать большой проблемой. Дополнительные затраты и трудности неизбежны. Отчет в необходимом формате – это конечный результат работы генератора. Именно по этому результату пользователи будут оценивать программу. Поэтому важно, чтобы генератор отчетов не только поддерживал необходимый формат экспорта, но и корректно экспортировал в него, без нарушения форматирования и потери качества. Давайте же рассмотрим доступные форматы экспорта обоих «испытуемых». Но вначале, я покажу вам две картинки. Это меню экспорта в SSRS и FastReport .NET Для тех, кому надоело читать, будет достаточно этих картинок: Интересно проверить вашу интуицию. Какому генератору отчетов соответствует первая картинка? Я думаю вы уже догадались – это SQL Server Reporting Services. А теперь все же проведем небольшую аналитику. Export Feature SSRS FR . NET PDF ✓ ✓ Опции экспорта в PDF Встраиваемые шрифты автоматически опция  PDF/A-1a сторонний ✓  PDF/A-2a ✓  PDF/A-2b ✓  PDF/A-3a ✓  PDF/A-3b ✓  PDF/X-3 ✓  PDF/X-4 ✓ CMYK Color Space ✓ RTF сторонний ✓ HTML ✓ MHT ✓ ✓ XML (Excel table) ✓ Excel 2007 ✓ ✓ Excel 97 ✓ Microsoft Word 2007 ✓ ✓ PowerPoint ✓ ✓ OpenOffice Calc ✓ OpenOffice Writer ✓  XPS ✓ CSV ✓ ✓ DBF ✓ Text File/Matrix printer ✓ Image Только TIFF ✓ XAML ✓ SVG ✓ PPML ✓ PostScript ✓ Json ✓ Reporting Services предоставляет экспорт в форматы продуктов Microsoft. Тут ничего удивительного. Хотя нет, есть. Удивительно, что поддерживается всего один формат изображения – TIFF. Удивительно, учитывая, что самые распространенные JPEG и PNG. Экспорт в PDF имеет минимум опций, возможно это не очень важно для рядовых пользователей отчетов, но тем не менее. А что же нам предоставляет FastReport .NET? Такого внушительного «арсенала» я не встречал нигде. Разработчики действительно постарались удовлетворить любые потребности пользователя. К слову экспорт в изображение поддерживает форматы: BMP, JPG, PNG, GIF, TIFF, Windows metafile. А настройки PDF экспорта позволяют выбирать необходимый стандарт PDF и оптимизировать размер итогового файла. Здесь безоговорочное преимущество FR .NET. Отдельно я бы хотел рассмотреть возможность сохранения/отправки отчета в различные сервисы. А именно, отправка отчета в электронном письме, по FTP или сохранение в облачный сервис. Storage SSRS FR .NET E-mail ✓ ✓ FTP by SSIS ✓ Box ✓ DropBox ✓ FastReport Cloud ✓ Google Drive ✓ OneDrive ✓ XMPP ✓ К сожалению, Reporting Services не поддерживает сохранение отчета в облачные сервисы, да это и не нужно в корпоративной отчетности, но идея интересная и наверняка найдет своих пользователей. Интересно, что FastReport предоставляет свой собственный облачный сервис для публикации отчетов. Остается лишь отправить пользователю ссылку, и он посмотрит отчет на веб странице. В следующей части статьи мы рассмотрим производительность генераторов отчетов. Tags: .NET, FastReport, SSRS, .NET, FastReport, SSRS ### 4 апреля пройдет семинар Fast Reports в Омске URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-april-4-2007 Summary: 4 апреля пройдет семинар Fast Reports в Омске 4 апреля пройдет семинар Fast Reports в Омске Приглашаем Вас принять участие в семинаре " Новейшие разработки для скоростного построения и формирования отчётов семейства FastReport " Город проведения:  Омск Дата проведения:  4 апреля 2007 10.00 регистрация на семинар На семинар приглашаются руководители групп разработки, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, заинтересованные в применении действенных эффективных инструментов бизнес-аналитики. Компания  Fast Reports  - разработчик программного обеспечения для формирования отчетов. Семейство генераторов отчётов  FastReport  - средства для оперативного составления документов на основе табличных данных. Использование этих программ делает доступным быстрое создание документа, мощную систему построения аналитики и скоростное получение готового отчёта. В первой части семинара Вы познакомитесь с  FastReport Server , мощным и полнофункциональным решением для организации корпоративной интернет/интранет-отчётности, содержащим все инструменты для создания и доставки отчётов и не требующим смены сложившейся структуры баз данных и приложений на предприятии. Также Вы узнаете о возможностях  FastReport Studio , студии разработки отчётов, предназначенной для разработчиков и конечных пользователей, использующих технологии  Microsoft . Во второй части мероприятия специалисты компании  Fast Reports  представят обзор новых возможностей линейки генераторов отчётов  FastReport 4  и абсолютно новый продукт для бизнес-аналитики  FastCube . Предварительная регистрация на семинар является обязательной! ### 4 сравнение генераторов отчётов SSRS и FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/comparative-analysis-report-sql-server-4 Summary: Сравнительный анализ Microsoft SQL Server Reporting Services и FastReport .NET. Производим замеры производительности генерации отчетов. Сравнительный анализ Microsoft SQL Server Reporting Services и FastReport .NET. Производим замеры производительности генерации отчетов. Сравнительный анализ Microsoft SQL Server Reporting Services и FastReport .NET. Производим замеры производительности генерации отчетов. Это заключительная часть нашего сравнительного анализа двух известных генераторов отчетов Microsoft SQL Server Reporting Services и FastReport .NET. Мы уже рассмотрели ранее функциональные возможности, поддерживаемые технологии, объекты отчета и поддерживаемые форматы экспорта отчетов. В довершение анализа будет логичным провести замеры производительности. Для тестирования возьмем простой отчет со списком из тысячи строк. Для чистоты эксперимента используем один и тот же источник данных в обоих генераторах отчетов. Суть теста – сформировать отчет и экспортировать его в три самых популярных формата: PDF, XLS, DOCX. Измеряем время в миллисекундах. Тест производительности (1000 строк ) Попытка SSRS PDF FR PDF SSRS XLS FR XLS SSRS DOCX FR DOCX 1 2500 1703 234 875 1484 3297 2 1641 1890 328 562 1140 3219 3 2109 2844 235 844 1172 3219 4 1547 2985 250 843 1000 3360 5 1485 2672 265 875 1063 3297  Итак, пяти замеров мне кажется достаточно. 1)    Экспорт в PDF. Для SSRS средний показатель 1856 миллисекунд. Для FastReport .NET – 2418 миллисекунд. SSRS тут явно быстрее. FastReport есть над чем работать. 2)    Экспорт в XLS. SSRS показал среднее время 262 миллисекунды, а FastReport .NET – 800. Тут ничего удивительного. Продукт от Microsoft должен быстрее экспортировать в форматы MS Office. 3)    Экспорт в DOCX. И снова SSRS оказался быстрее, 1172 миллисекунды против 3513 у FastReport .NET. Ситуация ровно такая же, как и в предыдущем экспорте. Можно признать лидерство в этой дисциплине за SQL Server Reporting Services. Для большей наглядности, результаты замеров приведены на графике: Если ситуация с PDF экспортом для FastReport не так критична, то в XLSX и DOCX экспорте проигрыш по времени в 3 раза. Теперь посмотрим на размер получившихся в результате экспорта файлов: Размер файла экспорта, KB Экспорт SSRS FR PDF 308 204 XLS 111 551 DOCX 50 64  Как вы видите, PDF файл уFastReport .NET занимает на треть меньше места, чем у SQL Server Reporting Services. Благодаря большому количеству настроек PDF экспорта в FastReport .NET вы можете добиться минимального размера файла. Что же касается экспорта в XLS и DOCX, то тут лучшие результаты показал SSRS. Размер XLS файла в пять раз меньше, чем у конкурента! Для DOCX разница не существенна. Ну что ж, результаты этого теста не однозначны. Выводы сделаем в конце статьи. А пока, проведем еще один тест – стресс тест. Будем выводить в отчете большое количество строк – 2458524. Согласен, вряд ли такие отчеты будут существовать в реальности, но для нашего теста то, что надо. В качестве СУБД используем MS SQL Server 2016 - родная стихия для SSRS.   Однако, SQL Server Reporting Services не осилил эту задачу:  Банально закончилась оперативная память. Как следствие – ошибка: Exception of type 'System.OutOfMemoryException' was thrown. Да, ОЗУ используют и другие программы, но можно же использовать виртуальную память. Из скриншота видно, что нагрузка на диск минимальна, значит файл подкачки не задействуется. Теперь сформируем такой же отчет в FastReport .NET 2017.2: Ждать пришлось долго – 40 минут. Но все-таки отчет был построен. Посмотрите на скриншот. Исчерпав всю оперативную память, FastReport .NET задействовал файл подкачки – нагрузка на диск 99%. Поставленная задача выполнена. Измерения проводились на следующей конфигурации ПК: CPU – Intel Core i5-2450M (2.5GHz), RAM – 8 GB, OS – Windows 10 x64. Последний этап сравнительного анализа завершен и пора бы завершать сей опус, осталось лишь подвести итоги испытаний по всем трем частям статьи. Давайте по пунктам, заодно вспомним, что было в предыдущих частях. 1)      В начале мы рассмотрели функциональные возможности двух программ. В этом сравнении преимущество сталось за FastReport .NET. Преимущества: поддержка безразмерных страниц отчета, события в отчете, диалоговые формы и возможность изменять уже построенный отчет. Оценки: SSRS – 0, FastReport .NET – 1. 2)      Далее мы сравнили поддерживаемые технологии. FastReport .NET оказался в лидерах благодаря поддержке ASP .NET Core. Реальных прогнозов по поддержке ASP .NET Core в SSRS пока нет. Есть некоторые «костыли», но это совсем не то, чего бы нам хотелось. Оценки: SSRS – 0, FastReport .NET – 2. 3)      Поддерживаемые объекты отчета снова показали превосходство FR .NET. На мой взгляд, отсутствие объектов CheckBox и Barcode не простительно для SSRS. Оценки: SSRS – 0, FastReport .NET – 3. 4)      Экспорты отчета в различные форматы. Reporting Services предоставляет весьма скромный набор поддерживаемых форматов, только самое необходимое. FastReport поразил внушительным набором форматов на любой случай жизни. Это сравнение закрепило лидерство за ним. Оценки: SSRS – 0, FastReport .NET – 4. 5)      Измерение производительности оценивалось по времени экспортирования отчета в три разных формата: PDF, XLS и DOCX. В этом тесте безоговорочную победу одержал SSRS. Оценки: SSRS – 1, FastReport .NET – 4. 6)      Размер файла экспорта. Все те же три формата экспорта из предыдущего теста. Здесь FastReport .NET сформировал более компактный PDF файл. А SSRS сгенерировал меньшие файлы с расширением .xls и .docx. Оцениваю, как ничья. Оценки: SSRS – 2, FastReport .NET – 5. 7)      Стресс-тест на формирование «гигантского» отчета с более чем 2 миллиона строк Reporting Services провалил. Отчет не сформирован. FastReport справился за 40 минут. Оценки: SSRS – 2, FastReport .NET – 6. Если подводить итог по моим оценкам, то FastReport .NET уверенно превосходит Reporting Services по многим показателям и вполне бы мог заменить конкурента. Все достоинства продукта перечислять не буду. Скажу лишь, что ему под силу любая задача, связанная с генерацией отчетов. Однако, я не могу сказать, что Reporting Services плохой генератор отчетов. Он выполняет свои задачи на твердую четверку. Ведь он создан для работы c MS SQL Server. Именно такая связка полностью оправдывает его использование. Tags: .NET, FastReport, SSRS, .NET, FastReport, SSRS ### 5 причин выбрать МоиОтчеты Облако для вашего бизнеса URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/moiotchety-oblako-dlya-vashego-biznesa Summary: В этой статье мы рассмотрим пять основных причин, почему МоиОтчеты Облако является идеальным выбором для вашего бизнеса, а также приведем примеры использования продукта в различных отраслях. В этой статье мы рассмотрим пять основных причин, почему МоиОтчеты Облако является идеальным выбором для вашего бизнеса, а также приведем примеры использования продукта в различных отраслях. В современном мире эффективное управление данными и отчетностью стало ключевым фактором успеха для любого бизнеса. Независимо от сферы деятельности, предприятия сталкиваются с необходимостью создания, хранения, обработки и анализа большого объема данных. МоиОтчеты Облако представляет собой мощное облачное решение, специально разработанное для упрощения этих задач. В современном мире эффективное управление данными и отчетностью стало ключевым фактором успеха для любого бизнеса. Независимо от сферы деятельности, предприятия сталкиваются с необходимостью создания, хранения, обработки и анализа большого объема данных. МоиОтчеты Облако представляет собой мощное облачное решение, специально разработанное для упрощения этих задач. В этой статье мы рассмотрим пять основных причин, почему МоиОтчеты Облако является идеальным выбором для вашего бизнеса, а также приведем примеры использования продукта в различных отраслях. Масштабируемость и гибкость: решение, которое растет вместе с вашим бизнесом МоиОтчеты Облако предоставляет вашему бизнесу возможность беспрепятственно масштабироваться. Независимо от того, насколько быстро растет ваша компания, облачная инфраструктура FastReport позволяет легко увеличивать или уменьшать ресурсы в зависимости от текущих потребностей. Основные преимущества: Горизонтальная масштабируемость: В отличие от традиционных локальных решений, МоиОтчеты Облако поддерживает горизонтальное масштабирование, что означает возможность добавления новых серверов и ресурсов по мере роста нагрузки. Эластичность: Если вашему бизнесу временно требуется больше вычислительных мощностей, например, в период пиковой нагрузки, МоиОтчеты Облако позволяет динамически увеличивать ресурсы и затем уменьшать их, когда потребность в них снижается. Это позволяет значительно снизить затраты на IT-инфраструктуру. Гибкость настройки: МоиОтчеты Облако предлагает гибкую настройку параметров отчетности, что позволяет адаптировать систему под специфические нужды вашего бизнеса. Независимо от того, работаете ли вы в сфере финансов, медицины, торговли или промышленности, вы можете настроить систему в соответствии с требованиями отрасли. Кейсы использования: Розничная торговля: В компании, работающей в сфере розничной торговли, объем данных может варьироваться в зависимости от сезона. МоиОтчеты Облако позволяет эффективно управлять отчетностью в периоды пиковых нагрузок (например, в праздничные сезоны) без необходимости инвестировать в дополнительные серверы и оборудование. Образовательные учреждения: Для школ и университетов, которые сталкиваются с резкими всплесками активности во время экзаменационных сессий, МоиОтчеты Облако предлагает возможность масштабирования ресурсов для обработки большого объема данных, включая результаты экзаменов и отчеты по успеваемости. Повышенная безопасность данных: защита вашего бизнеса на всех уровнях В эпоху цифровых угроз безопасность данных становится критическим аспектом для любого бизнеса. МоиОтчеты Облако предлагает многоуровневую систему защиты, обеспечивающую безопасность ваших данных на всех этапах их обработки и хранения. Основные преимущества: Шифрование данных: Все данные, хранящиеся в МоиОтчеты Облако, шифруются с использованием современных алгоритмов, что делает их недоступными для несанкционированного доступа. Управление доступом: Разграничение прав доступа на уровне пользователей и групп обеспечивает защиту конфиденциальной информации. Вы можете настроить роли и права доступа для различных сотрудников, что позволяет контролировать, кто и какие данные может просматривать или изменять. Защита от утечек: Встроенные системы мониторинга и защиты от утечек данных позволяют своевременно обнаруживать и предотвращать попытки несанкционированного доступа или утечки данных. Соответствие стандартам безопасности: МоиОтчеты Облако соответствует международным стандартам безопасности, включая GDPR, что особенно важно для компаний, работающих на глобальном рынке. Кейсы использования: Финансовые организации: Банки и страховые компании могут использовать МоиОтчеты Облако для безопасного создания и хранения финансовых отчетов, а также для обеспечения конфиденциальности данных клиентов. Благодаря возможности разграничения прав доступа, только уполномоченные сотрудники смогут работать с конфиденциальной информацией. Медицинские учреждения: Клиники и больницы могут использовать МоиОтчеты Облако для безопасного хранения медицинских карт и отчетов о пациентах. Шифрование данных и строгий контроль доступа обеспечивают соответствие нормативным требованиям в сфере здравоохранения, таким как HIPAA. Удобство интеграции и автоматизация процессов: снижайте нагрузку на IT-отдел Одним из ключевых преимуществ МоиОтчеты Облако является его способность легко интегрироваться с существующими бизнес-приложениями и системами, а также поддержка автоматизации процессов, что значительно снижает нагрузку на IT-отдел вашей компании. Основные преимущества: Готовые API и SDK: МоиОтчеты Облако предоставляет мощные API и SDK, которые позволяют быстро и просто интегрировать облачные возможности с вашими существующими системами. Это может быть интеграция с CRM-системами, бухгалтерскими программами, ERP-системами и другими корпоративными приложениями. Автоматизация создания отчетов: Вы можете настроить автоматическую генерацию отчетов по расписанию или в ответ на определенные события, что позволяет сократить ручной труд и минимизировать ошибки. Поддержка различных форматов: МоиОтчеты Облако поддерживает множество форматов данных и отчетов, таких как PDF, Excel, Word, что упрощает интеграцию с различными бизнес-процессами и системами. Кейсы использования: Производственные компании: В производственных предприятиях автоматизация отчетности и интеграция с ERP-системами позволяют получать актуальные данные о производительности, состоянии запасов и других ключевых показателях в реальном времени. Это способствует более оперативному принятию решений и улучшению управления производством. Малый и средний бизнес: Для малого и среднего бизнеса, у которого нет выделенного IT-отдела, МоиОтчеты Облако предлагает возможность автоматизации рутинных задач, таких как создание ежемесячных финансовых отчетов или сводок о продажах. Это освобождает время для выполнения более стратегически важных задач. Простота использования и доступность: решение для всех уровней пользователей МоиОтчеты Облако разработан с учетом потребностей как опытных IT-специалистов, так и пользователей без технической подготовки. Удобный интерфейс и богатый функционал делают его доступным для всех уровней пользователей. Основные преимущества: Интуитивно понятный интерфейс: МоиОтчеты Облако предлагает удобный веб-интерфейс с понятной навигацией, что позволяет пользователям быстро освоить систему и начать работать с отчетами без длительного обучения. Готовые шаблоны отчетов: Встроенная библиотека шаблонов отчетов помогает пользователям создавать профессиональные отчеты без необходимости разрабатывать их с нуля. Это особенно полезно для небольших компаний, где нет времени или ресурсов на создание собственных шаблонов. Поддержка совместной работы: МоиОтчеты Облако позволяет нескольким пользователям работать над одним отчетом одновременно, что облегчает командную работу и ускоряет процесс создания документов. Доступность на всех устройствах: Облачная природа решения позволяет работать с отчетами с любого устройства, будь то компьютер, планшет или смартфон, что делает МоиОтчеты Облако идеальным инструментом для удаленной работы и мобильных сотрудников. Кейсы использования: Консалтинговые компании: Консалтинговые фирмы могут использовать МоиОтчеты Облако для быстрого создания отчетов для клиентов, используя готовые шаблоны и возможность совместной работы. Это позволяет ускорить процесс подготовки отчетности и повысить качество обслуживания клиентов. Образовательные учреждения: Учебные заведения могут использовать МоиОтчеты Облако для создания отчетов по успеваемости студентов, с возможностью доступа к отчетам с любых устройств. Это особенно актуально для учебных заведений, перешедших на дистанционное обучение. Экономия времени и ресурсов: оптимизация бизнес-процессов Время – один из самых ценных ресурсов для бизнеса. МоиОтчеты Облако позволяет оптимизировать процесс создания и управления отчетностью, что помогает существенно экономить время и снижать затраты. Основные преимущества: Минимизация ручного труда: Благодаря автоматизации отчетности и легкости интеграции с существующими системами, МоиОтчеты Облако позволяет существенно снизить количество рутинных задач, выполняемых вручную. Снижение затрат на инфраструктуру: Переход на облачное решение позволяет отказаться от дорогостоящего серверного оборудования и связанных с ним затрат на обслуживание. Все необходимые ресурсы предоставляются и управляются провайдером, что уменьшает нагрузку на IT-отдел. Быстрая окупаемость: Быстрый запуск и использование готовых инструментов и шаблонов в МоиОтчеты Облако способствует быстрой окупаемости инвестиций в облачные технологии. Кейсы использования: Финансовые компании: Финансовые учреждения могут существенно сократить время на создание регулярных отчетов, таких как квартальные и годовые финансовые отчеты, благодаря автоматизации процессов и использованию готовых шаблонов. Малый бизнес: Для малого бизнеса экономия ресурсов может стать критическим фактором успеха. МоиОтчеты Облако позволяет оптимизировать процессы отчетности, что освобождает время и средства для развития бизнеса и улучшения обслуживания клиентов. Заключение МоиОтчеты Облако – это мощное, гибкое и безопасное облачное решение, которое предлагает вашему бизнесу уникальные возможности для управления отчетностью и данными. Масштабируемость, повышенная безопасность, удобство интеграции, простота использования и значительная экономия ресурсов делают МоиОтчеты Облако идеальным выбором для компаний любых размеров и сфер деятельности. Рассматривая кейсы использования в различных отраслях, можно убедиться, что МоиОтчеты Облако способен удовлетворить потребности как крупных организаций, так и малого бизнеса. Внедрение этого решения позволит вашему бизнесу улучшить эффективность, повысить безопасность данных и снизить затраты, что, в свою очередь, приведет к улучшению качества обслуживания клиентов и укреплению позиций на рынке. МоиОтчеты Облако – это инструмент, который позволяет вашему бизнесу расти, адаптироваться к изменениям и оставаться конкурентоспособным в условиях цифровой экономики. Tags: Облако, Web API, Веб хранилище ### 5 функций для работы с отчётами в FastReport Online Designer URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/functions-online-designer Summary: В FastReport Online Designer появились нововведения, повышающие удобство использования и упрощающие создание отчетов. В FastReport Online Designer появились нововведения, повышающие удобство использования и упрощающие создание отчетов. В FastReport Online Designer появились нововведения, повышающие удобство использования и упрощающие создание отчетов. Время для продуктов нашей компании не стоит на месте. Каждый месяц появляются новые функции, объекты, а также улучшается и оптимизируется текущий код. В FastReport Online Designer появились нововведения, повышающие удобство использования и упрощающие создание отчетов. Вот их список: Автосохранение; Выделение нескольких объектов в дереве отчета и в ячейках таблицы; Добавлена возможность задать избранные свойства для объектов; Для нескольких выбранных объектов можно изменить значения свойств; Настройки FastReport Online Designer Builder теперь сохраняются и при задании новой конфигурации. Теперь вам не нужно заново выставлять значения. Автосохранение Теперь в FastReport Online Designer можно включить автосохранение. Делается это двумя способами: 1. Включить автосохранение в уже собранном FastReport Online Designer. 2. Задать соответствующую опцию в FastReport Online Designer Builder. Рассмотрим эти два способа подробнее. Автосохранение в уже собранном FastReport Online Designer Для того, чтобы включить автосохранение, нужно в файле build.json, который находится в директории с собранным дизайнером, поставить опцию autosave в true. Опция автосохранения в FastReport Online Designer Builder Также, автосохранение можно включить в сборщике дизайнера. Данная опция находится во вкладке "Конфигурация". Выделение нескольких объектов в дереве отчета и ячейках таблицы Была добавлена возможность выбрать несколько элементов в дереве отчета с помощью зажатой клавиши shift или ctrl. Также это работает с ячейками таблицы. Избранные свойства для объектов Была добавлена возможность пометить свойство объекта как избранное. Теперь не нужно каждый раз искать часто изменяемое свойство. Для того, чтобы добавить свойство в "Избранное", нужно нажать по нему правой кнопкой мыши и в контекстном меню выбрать "Добавить в избранное". Изменение значений свойств для нескольких выбранных объектов Теперь можно одновременно изменять значения свойств у нескольких объектов: Сохранение настроек для FastReport Online Designer Builder Раньше выбранные опции в FastReport Online Designer Builder не запоминались и каждый раз при задании новой конфигурации приходилось задавать все опции заново. Теперь значения запоминаются. Команда разработки FastReport Online Designer стремится к усовершенствованию пользовательского опыта - в будущем, в FastReport Online Designer появится ещё больше полезных функций, упрощающих создание отчетов. Мы всегда готовы получить от вас обратную связь. Пишите нам в поддержку ! Tags: FastReport, Online Designer, FastReport, Online Designer ### 6 марта пройдет семинар Fast Reports в Новосибирске URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-march-6-2007 Summary: 6 марта пройдет семинар Fast Reports в Новосибирске 6 марта пройдет семинар Fast Reports в Новосибирске Приглашаем Вас принять участие в семинаре " Новейшие разработки для скоростного построения и формирования отчётов семейства FastReport " Город проведения:  Новосибирск Дата проведения:  6 марта 2007 в 10.00 регистрация на семинар Контактное лицо Наталья Леонтьева Компания Softline 630007, Новосибирск, ул. Коммунистическая, дом 48 а, офис 703 Тел./Факс: (383) 362-00-10, (доб. 102) На семинар приглашаются руководители групп разработки, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, заинтересованные в применении действенных эффективных инструментов бизнес-аналитики. Компания  Fast Reports  - разработчик программного обеспечения для формирования отчетов. Семейство генераторов отчётов  FastReport  - средства для оперативного составления документов на основе табличных данных. Использование этих программ делает доступным быстрое создание документа, мощную систему построения аналитики и скоростное получение готового отчёта. В первой части семинара Вы познакомитесь с  FastReport Server , мощным и полнофункциональным решением для организации корпоративной интернет/интранет-отчётности, содержащим все инструменты для создания и доставки отчётов и не требующим смены сложившейся структуры баз данных и приложений на предприятии. Также Вы узнаете о возможностях  FastReport Studio , студии разработки отчётов, предназначенной для разработчиков и конечных пользователей, использующих технологии  Microsoft . Во второй части мероприятия специалисты компании  Fast Reports  представят обзор новых возможностей линейки генераторов отчётов  FastReport 4  и абсолютно новый продукт для бизнес-аналитики  FastCube . Предварительная регистрация на семинар является обязательной! подробнее:  http://www.softline.ru/it_page.php?id=1672 ### 6 февраля - семинар от Fast Reports в Ростове-на-Дону URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-february-6-2007 Summary: 6 февраля пройдёт семинар Fast Reports в Ростове-на-Дону 6 февраля пройдёт семинар Fast Reports в Ростове-на-Дону Приглашаем Вас принять участие в семинаре " Новейшие разработки для скоростного построения и формирования отчётов семейства FastReport " Приносим свои извинения тем, кто не смог зарегистрироваться на наш московский семинар, мы не предвидели настолько большого интереса с вашей стороны. В Южном Федеральном округе в феврале запланирован единственный семинар, и он пройдет в Ростове-на-Дону 6 февраля в 10.00 по адресу ул. Тургеневская, 10, РКСИ, Конференц-зал Контактное лицо в Ростове: Галина Смиренская +7 (863) 237-99-49, 237-40-94, 237-40-95, 219-45-47 GalinaS@softline.ru На семинар приглашаются руководители групп разработки, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, заинтересованные в применении действенных эффективных инструментов бизнес-аналитики. Компания  Fast Reports  - разработчик программного обеспечения для формирования отчетов. Семейство генераторов отчётов  FastReport  - средства для оперативного составления документов на основе табличных данных. Использование этих программ делает доступным быстрое создание документа, мощную систему построения аналитики и скоростное получение готового отчёта. В первой части семинара Вы познакомитесь с  FastReport Server , мощным и полнофункциональным решением для организации корпоративной интернет/интранет-отчётности, содержащим все инструменты для создания и доставки отчётов и не требующим смены сложившейся структуры баз данных и приложений на предприятии. Также Вы узнаете о возможностях  FastReport Studio , студии разработки отчётов, предназначенной для разработчиков и конечных пользователей, использующих технологии  Microsoft . Во второй части мероприятия специалисты компании  Fast Reports  представят обзор новых возможностей линейки генераторов отчётов  FastReport 4  и абсолютно новый продукт для бизнес-аналитики  FastCube . Предварительная регистрация на семинар является обязательной! подробнее:  http://softline.ru/it_page.php?id=1634 ### 8 мая 16.00: расскажем об использовании FastReport Avalonia c Альт Рабочая Станция 10 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/webinar-avalonia Summary: Вебинар от нашего спикера о создании приложения на Альт Рабочая Станция 10 с использованием FastReport Avalonia и редактором кода VSCodium Вебинар от нашего спикера о создании приложения на Альт Рабочая Станция 10 с использованием FastReport Avalonia и редактором кода VSCodium Приглашаем на вебинар по созданию приложения на отечественной ОС с помощью FastReport Avalonia На вебинаре наш спикер рассмотрит разработку приложения Avalonia (.NET 8) с FastReport Avalonia для дизайна шаблонов и генерации отчетов на российской операционной системе Альт Рабочая станция 10 с помощью редактора кода VSCodium.  В ходе обсуждения также рассмотрим работу с дизайнером FastReport Avalonia для создания и настройки шаблона отчета в режиме реального времени. Когда: 8 мая, в 16.00 (МСК). Вебинар можно будет посмотреть  здесь . После эфира будет доступна запись лекции. ### Analysis VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/analysis-vcl Summary: Высокоскоростной движок OLAP-кубов для оперативного анализа больших данных и формирования таблиц с графиками и диаграммами Высокоскоростной движок OLAP-кубов для оперативного анализа больших данных и формирования таблиц с графиками и диаграммами Высокоскоростной движок OLAP-кубов для оперативного анализа больших данных и формирования таблиц с графиками и диаграммами Analysis VCL Высокоскоростной движок OLAP-кубов для оперативного анализа больших данных и формирования таблиц с графиками и диаграммами Купить Попробовать Документация ## Analysis VCL мгновенно обрабатывает массивы и преобразует информацию из БД в компактные и обобщенные отчеты. Интегрируйте OLAP-библиотеку в ваш проект, подготовьте те данные (или несколько наборов), которые будут нужны вашим пользователям для анализа и получайте BI в вашем приложении. Узнать больше Встраивание в интерфейс Полная настройка и интеграция в интерфейс вашего бизнес-приложения. Источники данных Подключение к базам данных осуществляется не только через стандартные компоненты ADO, BDE, но и через любые построенные на основе TDataSet. Наглядные результаты Для построения графиков и диаграмм на основе срезов таблицы вы можете использовать TeeChart (как из RAD Studio, так и коммерческую редакцию TeeChart Pro). Глобальный фильтр Используйте один куб данных для синхронного анализа по различным критериям, построенным по независимым фильтрам. Графическое ядро Для создания графических элементов, отрисовки текста и управления графических изображений используются GDI. Исходный код Этот набор компонентов включает в себя исходные коды. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Ultimate VCL Узнать больше об Ultimate VCL Как настроить WSL 2 для работы с FastReport и FastCube В этой статье вы узнаете, как использовать возможности WSL в связке с FastReport и FastCube для оптимизации работы с данными и создания эффективных отчётов. В этой статье попробуем вместе разобраться, как настроить WSL 2 для работы с компонентами FastReport и FastCube в Lazarus для Linux. Установка компонентов FastReport и FastCube в Lazarus Инструкция по установке FastReport в Lazarus для различных операционных систем со сравнением редакций Academic, Trial, Professional. Инструкция по установке FastReport в Lazarus для различных операционных систем со сравнением редакций Academic, Trial, Professional. Как использовать фильтры и возможности сортировки в FastCube VCL Рассказываем о видах фильтрации и сортировки данных в аналитической среде FastCube VCL с подробной инструкцией по созданию кастомных фильтров. Рассказываем о видах фильтрации и сортировки данных в аналитической среде FastCube VCL с подробной инструкцией по созданию кастомных фильтров. Остались вопросы? Связаться с менеджером ### Analysis VCL (FastCube VCL) URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/faqs/analysis-vcl Summary: Узнайте все об Analysis VCL, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Узнайте все об Analysis VCL, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Есть ли способ настроить колонку так, чтобы она была спрятана? Возможно убрать колонку (измерение) из фильтров или удалить её полностью из сводной таблицы (TfcxSliceGrid). Других способов спрятать нет. Есть ли способ сгруппировать одну или больше колонок в run-time (когда куб открыт)? Да, это возможно. У TfcxSlice есть соответствующие методы. Возможно ли настраивать цвета (в ячейках и колонках) в run-time? Зависит от того, что нужно. Если это про стили – то да, вы можете задавать стили и настраивать цвета элементов таблицы. Если про подсвечивание ячеек – также возможно в run-time. Но насчёт колонок – их значения подсветить нельзя, только ячейки. Возможно ли поменять ориентацию в run-time? (вертикальная/горизонтальная) Да, у TfcxSlice есть соответствующие методы. Возможно ли не показывать пустые (NULL) значения? Зависит от того, что вы конкретно хотите. Если вы хотите заменять “null” на “”, то это возможно (в TfcxSlice есть такая опция). Если про скрытие пустых рядов/колонок – также возможно. Если насчёт фильтрации элементов измерения с “null”-значением – это тоже можно. ### Avalonia URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/avalonia Summary: Универсальный компонент для генерации отчетов при разработке кроссплатформенных приложений с помощью Avalonia UI Универсальный компонент для генерации отчетов при разработке кроссплатформенных приложений с помощью Avalonia UI Кроссплатформенная библиотека для генерации отчетов и документов с выводом готовых файлов на печать в macOS, Linux и Windows. FastReport .NET Avalonia Универсальный компонент для генерации отчетов при разработке кроссплатформенных приложений с помощью Avalonia UI Купить Попробовать Документация FastReport .NET Avalonia позволяет визуализировать ваши данные в различных форматах, от простых таблиц до сложных документов с графиками и диаграммами. Независимо от того, нужны ли вам счета-фактуры, финансовые отчеты, каталоги продукции с цветовыми профилями, меню ресторанов, детализация продаж, анкеты с электронными формами, счета за коммунальные услуги, авиабилеты или что-либо еще, FastReport .NET Avalonia поможет вам преобразовать данные в привлекательные и информативные отчеты. Создавайте отчеты, которые соответствуют вашим требованиям, благодаря широким возможностям настройки. Используйте встроенные шаблоны унифицированных форм или создайте свои собственные с помощью удобного визуального редактора. Скачать бесплатные шаблоны в формате шаблонов или PDF вы можете в нашем каталоге [**МоиОтчеты Магазин**](/products/store). Узнать больше Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Встраиваемость в проекты Установите необходимый пакет из NuGet репозитория, либо загрузите пакет с нашего сайта на компьютер и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Экономия ресурсов разработки Преимущество фреймворка Avalonia, помноженное на удобство работы с FastReport: создавайте компоненты отчетности для вашего приложения сразу для трех платформ: macOS, Linux и Windows. Один фрагмент кода - три платформы! Совместимость и интеграция Avalonia является частью единой платформы FastReport на C#. В МоиОтчеты Облако вы можете хранить свои шаблоны, отчеты и источники данных, а после использовать их в десктопном дизайнере. Плавный переход из других решений Наш генератор отчетов мгновенно преобразует ваши отчеты из List&Label, DevExpress, Microsoft Reporting Services (RDL, RDLC), Crystal Reports, StimulSoft, Jasper Library в формат FastReport. Графический движок В качестве отрисовщика используется SkiaSharp, что позволяет вам строить красивые, профессионально выглядящие отчеты в максимальном качестве. Ultimate .NET Подробности .NET Core Online Designer Blazor WASM Blazor Server Узнать больше Как из FastReport .NET экспортировать отчет в DXF DXF (Drawing Exchange Format) — это открытый формат обмена графическими данными, разработанный компанией Autodesk для хранения и передачи двумерных и трехмерных чертежей. Благодаря широкой поддержке со стороны различных CAD-систем, DXF стал одним из наиболее распространенных форматов для обмена инженерной и технической документацией между приложениями. В этой статье рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Как из FastReport .NET экспортировать отчет в PostScript FastReport .NET поддерживает экспорт отчетов во множество популярных форматов, таких как PDF, Excel, Word и другие. Однако для задач профессиональной полиграфии, работы с плоттерами или специализированным печатным оборудованием часто требуется формат PostScript (.ps). В этой статье мы на примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. В этой статье мы на простом примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. Как настроить Content Security Policy для отчетов FastReport .NET WEB Content Security Policy (CSP) — ключевой инструмент защиты веб‑приложений от XSS‑атак, но его интеграция с отчётными системами нередко сопряжена со сложностями. В новых версиях FastReport .NET WEB архитектура клиентской части существенно переработана — это упрощает соблюдение строгой CSP без потери функциональности отчётов. В статье разберём, как грамотно настроить CSP для отчётов FastReport и учесть типичные риски. Узнайте, как настроить Content Security Policy для отчётов FastReport .NET WEB: обзор директив и значений CSP, изменения в архитектуре FastReport, типичные сценарии обхода и способы защиты. Остались вопросы? Связаться с менеджером ### Aztec–коды URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/barcode-aztec-net Summary: «Aztec-коды»- формат кода, который также поддерживается в FastReport .NET. Сочетает в себе лучшие идеи двумерных штрих-кодов. Посмотрите, как использовать его в своих отчетах. «Aztec-коды»- формат кода, который также поддерживается в FastReport .NET. Сочетает в себе лучшие идеи двумерных штрих-кодов. Посмотрите, как использовать его в своих отчетах. «Aztec-коды»- формат кода, который также поддерживается в FastReport .NET. Сочетает в себе лучшие идеи двумерных штрих-кодов. Посмотрите, как использовать его в своих отчетах. В статье «Использование QR-кодов в отчетах» был рассмотрен один из популярных форматов 2D штрих кодов. В данной статье речь пойдет о востребованном формате- «Aztec-коде»- который также поддерживается в FastReport.Net. Название кода вызывает ассоциацию с одноименным племенем индейцев из Центральной Америки и для этого есть основание. Рассмотрите, пожалуйтса, нижеприведенный код. В центре кода расположен квадрат, внутри которого находятся более маленькие квадраты. Эта схема напоминает вид сверху пирамиды Ацтеков. Название  кода «Aztec» произошло из-за его внешнего сходства  с ацтекской символикой. «Aztec - код» разработан в 1995 и сочетает в себе лучшие идеи двумерных штрих - кодов: MaxiCode, SuperCode, CodeOne, DataMatrix, DotCode и PDF417. Несмотря на патент, эта разработка стала достоянием общественности. Стандарт, описывающий кодирование, изложен в ISO/IEC 24778:2008. Размер кода зависит от объема кодируемой информации. Например, минимальный размер 15х15 пикселей позволяет закодировать 6 байт, то есть 12 букв или 13 цифр. А максимальный размер 151х151 пиксель позволяет закодировать 1914байт, 3067 букв или 3832 цифры. Необходимо учесть, что код имеет два формата отображения: Compact (Компактный), в котором символ с мишенью состоит из двух квадратов, и "Full-Range" (Полный), в котором символ с мишенью состоит из трех квадратов. Выбор формата зависит от объема кодируемых данных. Явным преимуществом данного типа кодирования перед другими, является возможность считывания кода при любой его ориентации. Даже зеркально отраженный, код будет без труда прочитан. Это достигается благодаря использованию навигационных маркеров. Использование мишени в центре кода позволило считывать информацию даже с искаженных или растянутых изображений. Благодаря использованию алгоритма кодирования Рида-Соломона, «Aztec – код» может быть прочитан и при частичном повреждении. На этот случай в код специально закладывается избыточность. Есть возможность регулировать процент избыточного кода от 5 до 95. Таким образом, можно обеспечить очень большую устойчивость к ошибкам чтения. Послойная структура кода дает возможность увеличивать объем хранимой информации путем увеличения области кодирования. Все эти преимущества сделали «Aztec – код» очень привлекательным для применения в транспортных сетях в качестве электронных билетов, например, в авиа- и железнодорожных перевозках.  В ряде стран он используется и в правительственной документации. Также как и другие коды высокой плотности, Aztec-  коды популярны в коммерции, логистике, производстве и фармацевтике. По сравнению с QR-кодом «Aztec – код» имеет большую плотность записи и не требует наличия полей вокруг кода. Также, минимальный размер «Aztec - кода» 15х15 против 21х21 у QR. Cформировать «Aztec - код», как и многие другие, можно с помощью FastReport.Net. Tags: .NET, FastReport, Штрихкод, .NET, FastReport, Штрихкод ### BPM-система (Business Process Management): что это такое и для чего нужна URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/business-process-management Summary: Рассказываем что такое BPM как концепция управления бизнесом, при которой работа выстраивается и развивается как система взаимосвязанных бизнес-процессов. Рассказываем что такое BPM как концепция управления бизнесом, при которой работа выстраивается и развивается как система взаимосвязанных бизнес-процессов. BPM (управление бизнес-процессами) — это дисциплина, сочетающая методы, технологии и инструменты для моделирования, анализа, оптимизации и автоматизации бизнес-процессов. В отличие от разрозненного подхода к управлению задачами, BPM предлагает целостную структуру: от проектирования до постоянного улучшения процессов. Для разработчиков BPM становится мостом между ИТ-реализацией и бизнес-целями компании. BPM (управление бизнес-процессами) — это дисциплина, сочетающая методы, технологии и инструменты для моделирования, анализа, оптимизации и автоматизации бизнес-процессов. В отличие от разрозненного подхода к управлению задачами, BPM предлагает целостную структуру: от проектирования до постоянного улучшения процессов. Для разработчиков BPM становится мостом между ИТ-реализацией и бизнес-целями компании. При этом BPM — это не конкретное программное обеспечение, это подход. Программные решения это лишь инструменты реализации этого подхода. Зачем вообще нужен BPM? BPM помогает компании работать без хаоса. Он показывает, где слабые места, убирает лишнее, автоматизирует то, что повторяется изо дня в день. Например, если один и тот же отчёт собирается вручную — зачем? BPM найдёт это место и подскажет, как упростить. Кроме того, бизнес редко стоит на месте. Меняются цели, приходят новые клиенты, рынок дергается. BPM помогает быстро адаптировать процессы под новые условия. Без постоянных совещаний и паники. И ещё одна важная вещь: с BPM проще контролировать качество. Потому что если у всех один и тот же понятный процесс — меньше ошибок, меньше «человеческого фактора», и результат стабильнее. Ключевые этапы BPM 1. Построение модели.  Это, по сути, попытка нарисовать, как вообще работает тот или иной процесс. Делают это с помощью схем, чаще всего — стандартных. Например, BPMN — он сейчас наиболее понятный и распространённый. 2. Запуск процесса.  В реальной среде, где есть не только автоматизированные участки, но и живые сотрудники. Здесь уже важно не только «что» делают, но и «кто» и «когда». Всё это вместе даёт первое представление — работает ли вообще задуманное. 3. Наблюдение.  То есть отслеживают, как процесс ведёт себя в реальности: где тормозит, где проходит гладко, а где вообще что-то идёт не так. Это делается почти всегда в реальном времени — иначе смысла мало. 4. Разбор информации. Смотрят на цифры, сравнивают с ожиданиями, находят слабые звенья. Иногда они на поверхности, иногда — глубже. 5. Улучшение.  Убирают лишнее, упрощают, местами перестраивают. Иногда немного, иногда почти заново. А потом — всё сначала. Такой цикл не замыкается. BPM — это не история про «один раз и готово». Это процесс, который постоянно требует внимания. Просто потому, что бизнес тоже не стоит на месте. Примеры применения На практике BPM применяется в широком спектре задач: Обработка заявок (кредит, техподдержка, заказ) Маркетинговые кампании с последовательной логикой HR-процессы: найм, адаптация, увольнение Управление документами и согласования Логистика и контроль поставок Во всех этих случаях процессы повторяются, требуют учёта исключений, согласования между отделами — и всё это можно автоматизировать и контролировать с помощью BPM. Зачем IT-разработчику BPM — реальная польза Процессы можно перестраивать без постоянного вмешательства в программный код. Это даёт команде большую гибкость (особенно когда требования часто меняются). То, что вчера работало, сегодня может уже не подходить, и в этом смысле BPM даёт пространство для манёвра без риска всё сломать. Ошибок тоже становится меньше. Когда логика процесса задаётся явно и визуально, проще заметить, где что может пойти не так. Разработчик меньше гадает и больше видит — особенно если речь идёт о сложной бизнес-логике, в которой раньше можно было легко запутаться. Процессы становятся не просто управляемыми, а наблюдаемыми. Видно, что происходит на каждом этапе — от старта до финала. Это упрощает и тестирование, и контроль, и вообще даёт уверенность: всё работает как нужно. Один раз выстроенная схема становится шаблоном, который легко подстроить под другие случаи. Это экономит время, силы и, в конечном счёте, снижает нагрузку на команду. Когда IT-команде стоит серьёзно подумать о BPM В современном мире управление бизнес-процессами становится всё более сложной задачей, и IT-командам порой трудно обеспечить их эффективную организацию. Система управления бизнес-процессами (BPM) может стать полезным инструментом. Давайте разберёмся, в каких случаях IT-команде стоит задуматься о её внедрении. Прежде всего, BPM стоит рассмотреть, если в компании низкая прозрачность и управляемость бизнес-процессов. Когда команды не имеют полного представления о том, как работает бизнес, это приводит к задержкам, ошибкам и снижению эффективности. BPM позволяет визуализировать процессы, отслеживать их выполнение и находить «узкие места», что помогает работать более слаженно и результативно. Кроме того, внедрение BPM целесообразно, если компания сталкивается с проблемами масштабирования или хочет повысить уровень автоматизации. По мере роста бизнеса процессы усложняются, увеличивается объём данных и количество взаимодействий между подразделениями — BPM помогает стандартизировать и оптимизировать их, сделать более гибкими.  Также BPM-системы позволяют автоматизировать рутинные операции, снизить количество ошибок, связанных с человеческим фактором, и ускорить выполнение стандартных процедур, что освобождает время сотрудников для более сложных и творческих задач. Как BPM работает в реальных IT-сценариях Применение BPM можно увидеть в самых разных цифровых продуктах — особенно там, где много логики и этапов. Например, возьмём интернет-магазин. Вместо того чтобы прописывать возврат товара вручную в коде, процесс выстраивается визуально — через понятную схему. Меняется правило и схема подправляется. Код трогать не нужно. Другой случай это конечно же банковские системы. Там часто нужно открывать клиенту счёт. Это не просто «нажать кнопку»: есть проверки, документы, согласования. Через BPM вся цепочка превращается в автоматизированный маршрут — шаг за шагом. Без хаоса и потерь. Госуслуги ещё один показательный пример. Когда человек подаёт заявку, её движение по системе можно отслеживать: от регистрации до финального решения. BPM позволяет не просто следить, но и гарантировать, что ни один шаг не будет пропущен. Заключение BPM — это не просто модное слово, а важный подход для устойчивой разработки в быстро меняющемся бизнесе. Сначала кажется сложно — отходить от привычного кодинга и смотреть на процессы шире. Но когда понимаешь, что бизнес-логика — это живой механизм, становится ясно, зачем нужен BPM. Для разработчиков BPM даёт шанс создавать понятные и гибкие системы, которые легко менять и контролировать. Это не панацея, но если внутри компании всё держится на «человеке, который всё знает», пора задуматься. Освоение BPM это не только про процессы, но и про рост команды и самого разработчика. Tags: Новые технологии ### Business Graphics .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/business-graphics-net Summary: Библиотека для визуализации данных для .NET Framework 4.6.2 и .NET 6-8 Библиотека для визуализации данных для .NET Framework 4.6.2 и .NET 6-8 Визуализируйте различные иерархические данные, стройте бизнес диаграммы для последующего анализа и принятия решений. FastReport Business Graphics .NET Библиотека для визуализации данных для .NET Framework 4.6.2 и .NET 6-8 Купить Ultimate .NET Попробовать Документация ## С помощью библиотеки FastReport Business Graphics .NET вы сможете визуализировать различные иерархические данные, построить бизнес диаграммы для последующего анализа и принятия решений. ## Всё это будет работать непосредственно в вашем приложении! Узнать больше Данные Возможность Business Graphics использовать иерархические данные из приложения, в том числе, подготовленные в FastCube .NET В стандартном наборе FastReport Business Graphics представлены два класса, обеспечивающие представление данных для иерархических диаграмм . Через поле Children выстраивается иерархическая взаимосвязь между записями. Можно указать, какие элементы данных следует использовать в качестве меток элементов , значений или дочерних записей. Вы можете выстроить иерархическую структуру на основе табличных источников. Задается коллекция с наименованиями полей и порядком следования вложенности. Дополнительно можно установить лимит погружения по иерархии. Некоторые диаграммы, например Sunburst , могут отображать корневой элемент. Интерактивность Когда статичных отчетов недостаточно. Чарты FastReport Business Graphiсs открывают отличные интерактивные возможности! Позвольте клиенту погрузиться в данные на любую глубину , необходимую для принятия решения, а также подниматься на высокий уровень абстракции. Большинство зон диаграмм могут взаимодействовать с пользователем по клику мышки, имея возможность возврата к предыдущему изображению. При наведении на необходимую область появится информационный текст, по клику мышки будет происходить смена цвета или штриховки. Вы можете добавить реализации собственных обработчиков реакций на интерактивные зоны. Визуализация Помогает принять информированное решение с помощью лучшей визуализации данных. Надёжная поддержка в принятии решений путем представления даже самой сложной информации в легко читаемой форме. Наглядные дашборды помогут с первого взгляда оценить состояние процессов и систем, мгновенно сформировать представление о трендах и тенденциях.  FastReport Business Graphics позволяет использовать разные цветовые палитры для заливки различных уровней отображения данных. Облегчите восприятие информации, добавив штриховые линии на отдельные части диаграмм или создайте запоминающиеся градиенты. Свобода выбора цветовых решений даёт возможность создавать диаграммы под тематические приложения или кастомизировать готовые палитры, установив пользовательские значения. Выберите вариант заливки: сплошной цвет, градиент, штриховка. Доступна возможность смены шрифта, окантовки текста, толщины и цвета границы диаграммы. Интеграция Дополняющий элемент инфраструктуры: идеальная интеграция с библиотекой оперативного анализа данных OLAP-кубом FastCube .NET. Экосистема "Быстрых отчетов" для внедрения Business Intelligence в ваши приложения. 1. Подготовка иерархических данных в  FastCube .NET 2. Оперативная работа и аналитика “крупными мазками” с богатством визуальных возможностей FastReport Business Graphics .NET 3. Формирование документов и отчётов с красочными графиками в  FastReport .NET Всё богатство подготовки документов. Идеальная интеграция с генератором отчетов FastReport .NET и  OLAP-кубом FastCube .NET с помощью плагинов, входящих в комплект поставки данных продуктов. В FastReport Business Graphics .NET доступен на данный момент экспорт в следующие графические форматы: BMP, PNG, JPEG, TIFF, GIF, EMF . Разумеется, вы можете добавить наши интерактивные диаграммы в свои собственные продукты - это их основное назначение! System.Drawing (GDI+) Для создания графических элементов, отрисовки текста и управления изображениями используется уже привычный System.Drawing с графическими функциями GDI+. Встраиваемость в проекты Установите необходимый пакет из NuGet репозитория и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Узнать больше Ultimate .NET Узнать больше Купить Business Graphics .NET В данный момент поддерживается работа с приложениями WinForms и .NET Framework 4.6.2 и выше. Что такое пузырьковая диаграмма Bubble chart? Рассмотрим особенности и алгоритмы формирования диаграммы Bubble Chart: простого инструмента наглядной визуализации данных Рассмотрим особенности и алгоритмы формирования диаграммы Bubble Chart: простого инструмента наглядной визуализации данных Установка FastReport Business Graphics в FastReport .NET Пошаговая инструкция по установке FastReport Business Graphics в FastReport .NET при использовании в составе Designer или вашего проекта. Пошаговая инструкция по установке FastReport Business Graphics в FastReport .NET при использовании в составе Designer или вашего проекта. Как использовать диаграмму Гантта в FastReport Business Graphics Разбираемся, что такое диаграмма Гантта в FastReport BusinessGraphics. Узнаем о функциональных особенностях и создадим свою диаграмму с нуля. Разбираемся, что такое диаграмма Гантта в FastReport BusinessGraphics. Узнаем о функциональных особенностях и создадим свою диаграмму с нуля. Остались вопросы? Связаться с менеджером ### CMYK в PDF экспорте URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/cmyk-in-pdf Summary: FastReport .NET позволяет экспортировать отчеты в формате PDF с возможностью выбора цветовой схемы CMYK. Ознакомьтесь, что такое CMYK и когда стоит использовать эту цветовую модель. FastReport .NET позволяет экспортировать отчеты в формате PDF с возможностью выбора цветовой схемы CMYK. Ознакомьтесь, что такое CMYK и когда стоит использовать эту цветовую модель. FastReport .NET позволяет экспортировать отчеты в формате PDF с возможностью выбора цветовой схемы CMYK. Ознакомьтесь, что такое CMYK и когда стоит использовать эту цветовую модель. CMYK – это цветовая модель, основанная на синтезе любого цвета на основе четырех базовых цветов: голубого ( C yan), пурпурного ( M agenta), желтого ( Y ellow), черного ( K eycolor). Эта модель применяется в основном в полиграфии. Рассматривая CMYK необходимо  упомянуть другую, не менее известную цветовую модель RGB–Red (Красный), Green (Зеленый), Blue (Синий). Эти три цвета являются базовыми для создания других цветов. Эта модель синтеза цвета применяется в телевидении и компьютерах. Когда использовать CMYK? Необходимо, чтобы  все документы, которые будут печататься на принтере, основывались на CMYK, а документы, которые будут размещаться в Интернете - на RGB. Рассмотрим принцип печати цветных документов в полиграфии. Сначала, на бумагу наносится один цвет. Когда чернила высохнут, наносим  другой цвет. И так далее. Современные принтеры позволяют печатать в RGB. На это ушли долгие годы эволюции печатного оборудования. Тем не менее, общепринятым стандартом для печатных документов по-прежнему является CMYK, так как RGB - печать может отличаться по цвету на разных принтерах. Итак,  CMYK образуется путем наложения цветов. Пожалуйста, посмотрите на рисунок ниже. Как видно из рисунка, путем наложения голубого, пурпурного и желтого базовых цветов мы получаем  три дополнительных цвета: зеленый, синий, красный. CMYK относится к субтрактивному синтезу. Это означает, что цвета вычитаются из базового. Необходимо отметить, что в полиграфии бумага считается отражающей поверхность и нанося цвет чернила, мы как бы вычитаем отражаемый свет. Таким образом, из белого цвета бумаги мы вычитаем три базовых цвета RGB и получаем три дополнительных CMY. В противопоставление субтрактивному синтезу цвета существует аддитивный синтез. Из названия понятно, что вместо вычитания цвета, здесь происходит сложение. На этом принципе основана схема RGB. В отличии от полиграфии, где свет отражается от бумаги, в компьютерных мониторах и телевизорах свет излучается. Поверхность, которая не излучает свет воспринимается глазом как черная. Белый цвет мы получим путем соединения всех трех цветов. Изображение с аддитивным синтезом может отличаться на мониторах разных производителей. Это обусловлено различием цветовой температуры белого цвета, различием гамма-коррекции. К тому же, базовые цвета RGB могут быть получены из большего количества цветов. PDFдокументы поддерживают обе цветовые модели. То есть вы можете создавать документы «заточенные» под полиграфию или веб-документы. Это возможно благодаря технологии цветовых профилей ICC. Цветовые профили определяют устройства цветного ввода или вывода, а также требования к внешнему виду. Генератор отчетов FastReport.Net позволяет экспортировать отчеты в формате PDF с возможностью выбора цветовой схемы RGB или CMYK: По умолчанию выбрана цветовая схема RGB. Из появляющегося сверху списка можно выбрать CMYK. Нажмите «ОK» и получите документ, который могут открыть в типографии и без дополнительной обработкиотправить в печать. Необходимо уточнить, что появилась возможность добавлять к экспорту отчета в PDF свой файл цветового профиля. Сделать это можно из кода пользовательского приложения. Например, типичный метод экспорта отчета в PDF: ``` stringcurdir = Environment.CurrentDirectory.ToString(); Reportreport = newReport(); report.Load(curdir + @"\Lines.frx"); report.Prepare(); PDFExport export = newPDFExport(); export.ColorProfile = File.ReadAllBytes(curdir + @"\G1400_CWPM190_CW490_D50_PM.icm"); export.Export(report); ``` В данном случае нам интересна следующая строка: ``` export.ColorProfile = File.ReadAllBytes(curdir + @"\G1400_CWPM190_CW490_D50_PM.icm"); ``` Файл цветового профиля должен быть представлен в виде массива байтов. Использовать свои файлы цветовых профилей нужно при выбранном формате PDF/X-4, так как именно в нем они поддерживаются. Tags: .NET, Экспорты, FastReport, PDF, .NET, Экспорты, FastReport, PDF ### CodeGear приглашает на семинар "InterBase 2008" URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-interbase-2008 Summary: Наш партнер компания CodeGear приглашает на бесплатный семинар "InterBase 2008" для представления обновлённой версии продукта. Наш партнер компания CodeGear приглашает на бесплатный семинар "InterBase 2008" для представления обновлённой версии продукта. Компания CodeGear приглашает на бесплатный семинар, посвященный  InterBase. Компания CodeGear вместе со своими технологическими  партнерами представит новую версию InterBase 2008. ### CodeRage 7 – трехдневная онлайн конференция Embarcadero URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/online-conference-coderage-2012 Summary: CodeRage 7 – трехдневная он-лайн конференция Embarcadero CodeRage 7 – трехдневная он-лайн конференция Embarcadero CodeRage 7 – трехдневная он-лайн конференция Embarcadero для C++разработчиков приуроченная к выпуску 64 битной версии С++Builder. С 10 по 12 декабря с 6 вечера до 5 утра по Московскому времени присоединяйтесь к он-лайн конференции CodeRage7. В течение 3 дней конференции экспертами Embarcadero и партнёрами будет показано все новейшие разработки для С++ и опыт использования технологий заказчиками. Формат доклада ориентирован на всех интересующихся процессом создания приложений на С++ на живой демонстрации. Почему нужно участвовать в CodeRage? •В первый день конференции, 10 декабря ожидается дискуссия Бьёрна Страутструпа, прародителя С++, с Девидом Интерсимоне о новом стандарте C++11, переносимости и повсеместном распространении C++ на рынке разработки ПО •Михаил Филипенко, генеральный директор Fast Report расскажет, как разработчики C++, разрабатывающие под Windows и под MAC OS X могут генерировать отчеты для своих приложений •Если перед вами возникают задачи перехода от клиент серверной архитектуры на многозвенную, то Всеволод Леонов покажет, как осуществить миграцию с минимальными усилиями Приглашенный докладчик: Бьерн Страуструп, почетный профессор, возглавляет колледж компьютерных наук в Техасском университете. Программируя на С++ Бьерн стал первопроходцем в области использования объектно-ориентированных и общих техник создания приложений, таких как симуляторы, графика, пользовательские интерфейсы, прикладные системы, системы для научных вычислений. Сегодня С++ является самым популярным языком программирования. Бьерн также является автором многих популярных книг по C++, которые были переведены на многие языки. Конференция будет проходить на английском языке. ### Cookies Policy URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/cookies-policy Summary: This Cookies Policy describes cookies and other technologies that Fast Reports Inc. uses on its website and the choices that users have This Cookies Policy describes cookies and other technologies that Fast Reports Inc. uses on its website and the choices that users have This Cookies Policy ( "Cookies Policy" ) describes cookies and other technologies that Fast Reports Inc. ( "Fast Reports" ,  "we" ,  "us"  or  "our" ) uses on its website ( "Site" ) and the choices that users have. This Cookies Policy is a part of Fast Reports’s Privacy Policy. When you first visit the Site, you will be asked to consent to the use of cookies in accordance with this Cookies Policy. Note that if you accept, we will store them on your computer. What is a cookie? A 'cookie' is a piece of information that is sent to your browser by a website you visit. The Site uses first party cookies (those set by a website that is being visited by the user at the time. For example, cookies via https://www.fast-report.com/en/) as well as third-party cookies (set by a different domain), as described below. Cookies can be stored on your computer for various periods of time. They can be in a form of either "session cookies" or "persistent cookies." A session cookie only lasts as long as the browser session and is automatically deleted when you close your browser. A persistent cookie lasts long after your browser is closed and will remain until it expires (as determined by the third party in charge of placing it) or until you delete the cookie. Persistent cookies are used to help sites recognize and identify your computer when you open your browser and surf the Internet again. The data collected through cookies may include information about the IP (Internet Protocol) address of your device, browser type, language, operating system, the state or country from which you have accessed the Site, the date and the time of your visit(s), the number of links you click on this Site, the functions you use, the searches you request, and the data you have saved while on this Site. Fast Reports may use the information collected for a variety of necessary, legitimate purposes, including user authentication, user interface customization, security, research and analysis to improve the functionality of our Site, and advertising. You can find out more about cookies (including how to see or manage them) at  All About Cookies  or  AboutCookies.org  websites. How do we use cookies? The following sets out how we use different categories of cookies, as well as information on your options for managing your settings for the data collected by these technologies: Necessary cookies :  These cookies are used to provide users with services available through a Site and to use some of its features, such as the ability to log-in and access secure areas, provide pop-up notices, and accept language from sign-up forms. These cookies are essential for using and navigating a Site. Without them, basic functions of our Site would not work. Because these cookies are strictly necessary to deliver our Site’s essential services, you cannot refuse them. Performance/Analytics cookies :  These cookies are used to recognize and count the number of Site visitors, gather statistics regarding how visitors move around the Site (including number of page views and the amount time spent on each page) and for conversion tracking and click hotspots. This helps us improve the way our Site works and general user experience. For example, these cookies allow us to ensure that users are able to find what they need easily. Advertising cookies (ad cookies) :  These cookies are used to show advertising that is relevant to you. Cookies used to integrate third party services :  These cookies are used to integrate third-party functions on the Site, such as videos, maps, or social network plug-ins. Other third party cookies :  On some parts of the Site, including, but not limited, to news widgets, we use content provided by other websites(third parties). These third party sites are able to set their own cookies in some cases. Note that we have no control over these third-party cookies. You can turn them off by disabling them on your browser. You can find more information on the most popular web-browser help pages: Google Chrome Mozilla Firefox Microsoft Edge Safari (macOS) Safari (iOS) For other browsers, please consult the documentation that your browser manufacturer provides. Changes We may change the type of third party service providers that place cookies on our Site and amend this Cookies Policy at any time by posting the amended version on our Site. Unless additional notice or consent is required by applicable laws, this will serve as your official notification of these changes. ### Cпонсоры и партнёры конференции Fast Reports URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/sponsors-conference-2011 Summary: Cпонсоры и партнёры конференции Fast Reports Cпонсоры и партнёры конференции Fast Reports Выражаем благодарность всем нашим коллегам, поддержающим мероприятие: Компания Devrace разрабатывает программное обеспечение для Delphi и C++ Builder программистов. Компания работает над созданием различных библиотек компонент (общего и специального назначения) и дополнительных утилит, которые позволяют повысить качество и скорость разработки. Интернет-магазин Allsoft.ru предлагает широкий спектр лицензионного программного обеспечения для пользователей России и стран СНГ. Интернет-магазин Allsoft.ru был открыт в 2004 году компанией Softline, ведущим поставщиком и экспертом по лицензированию программных продуктов. Компания "Айбэйз" осуществляет платное и бесплатное техническое сопровождение, обучение, консультации, ремонт баз данных в отношении СУБД Interbase, Firebird и Yaffil. Также компания осуществляет продажи программного обеспечения для разработчиков и офиса (Borland, Sybase, Microsoft, CA, FastReport, Devrace и др.) "Torry's Delphi Pages" are maintained for you by Maxim Peresada and Co free of charge (it is really hard work!). We've decided to create those pages because we know, what problems you can have when trying to find something for your projects. We work with Delphi from the moment of appearances of pre-release of first version and have enough expirience of programming, so we're trying to help you. Yes, we don't know everything, and we don't work with everything, but we consider that "collective mind" can solve many problems. "Журнал «Системный администратор» – ежемесячное издание, цель которого – предоставление максимально полной и объективной информации о решениях, продуктах и технологиях современной ИТ-отрасли. Delphiplus.org - это сайт для тех, кто хочет программировать на Delphi, программирует на Delphi и будет программировать на Delphi. А также читает статьи и новости, посвященные Delphi. SvCom is an integrated package of classes and tools for development of service applications and use of NT Security framework. Currently SvCom components work with Delphi 5, 6, 7, 2005, 2006, 2007, 2009, 2010 and XE, C++ Builder 5 and 6 under all flavors of Windows. Realcoding.NET — для настоящих программистов Форум Независимых Разработчиков Программного Обеспечения Регистрация на конференцию продолжается! ### Delphi и Lazarus решения URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/faqs/fastreport-vcl Summary: Узнайте все о FastReport VCL, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Узнайте все о FastReport VCL, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Оказываем мы ли техподдержку FastReport VCL? Да, для клиентов с действующей подпиской. Как можно повторить печать MasterData требуемое количество раз? Количество задано в одном из полей записи. Добавьте в отчёт бэнд DetailData. Установите DetailData.RowCount=1 (Это обязательно!) В событии MasterData1OnBeforePrint устанавливайте DetailData.RowCount:= На бэнде DetailData расположите мемо с полями из датасета, привязанного к MasterData. Высоту MasterData установите равной 0: MasterData.Height=0 Как конвертировать отчеты из QuickReport в Fast Report? Добавьте модуль ConverterQR2FR в uses секцию и: ``` conv := TConverterQr2Fr.Create; conv.Source := QuickRep1; conv.Target := FReport; conv.Convert; FReport.SaveToFile('converted_fromQR.fr3'); ``` Как отключить использование глобального списка датасетов при использовании TfrxReport в потоке? По умолчанию FR использует глобальный список датасетов который инициализируется в модуле frxClass, при создании экземпляра TfrxDBDataset он добавляется в этот список. В связи с этим невозможно использовать датасеты с одинаковыми именами (даже в разных потоках). Для использования локального списка датасетов нужно использовать следующий код (начиная с версии 4.5.46): ``` frxReport.EngineOptions.UseGlobalDataSetList := False; frxReport.EnabledDataSets.Clear(); frxReport.EnabledDataSets.Add(frxDataSet); frxReport.LoadFromFile(ReportName); ``` Как использовать FastReport VCL в нескольких потоках? Перед запуском отчета надо установить: ``` TfrxReport.EngineOptions.EnableThreadSafe := True; TfrxReport.EngineOptions.SilentMode := True; ``` Какие версии IDE поддерживает продукт FastReport VCL? Начиная с версии FastReport VCL 2023.2 осуществляется поддерживает IDE только, начиная с версии Delphi 2010 и до самых актуальных на данный момент. В превью текст, отображаемый в TfrxMemoView, отличается от TfrxRichView, несмотря на то, что тип и размер шрифта одинаков. Установите свойство TfrxRichView.Wysiwyg в False. В отчёте требуется вписать текст в фиксированный по ширине TfrxMemoView, используя уменьшение размера шрифта. Как это реализовать? Используйте функцию TfrxMemoView.CalcWidth в обработчике: ``` TfrxMemoView.OnAfterData: procedure Memo1OnAfterData(Sender: TfrxComponent); begin Memo1.Font.Size:=10; if Memo1.CalcWidth>Memo1.Width-Memo1.GapX*2 then Memo1.Font.Size:=Trunc(Memo1.Font.Size*((Memo1.Width-Memo1.GapX*2)/Memo1.CalcWidth)); end; ``` При построении отчета с кросс таблицей появляется ошибка «Could convert variant of type (String) into type (Double)». Если в ячейке кросс таблицы используются строковые значения, то нужно отключить агрегатную функцию в редакторе «Кросс - таблицы». Можно ли динамически менять локализацию дизайнера и окна предварительного просмотра? Сделайте языковой файл утилитой mkall.bat (лежит в каталоге с языком) и подключайте язык динамически: ``` uses frxRes; frxResources.LoadFromFile('english.xml'); ``` Как вы можете перенести массив переменных из Delphi в FastReport? Используйте данный код: ``` var a: variant; begin a := VarArrayOf([1,2,3]); frxReport1.Script.Variables['a'] := a; end; ``` Как в заголовок окна предварительного просмотра вставить своё наименование отчета? Чтобы в заголовок вставить свое наименование отчета, выполните: frxReport1.ReportOptions.Name := 'Мой отчёт'; Куда можно обратиться за техподдержкой FastReport VCL? Запросы могут быть отправлены Пользователем с помощью электронной почты на адрес **[support@fastreport.ru](mailto:support@fastreport.ru)**, через форму обращения на сайте из клиентской панели **[лк.быстрыеотчеты.рф](https://лк.быстрыеотчеты.рф/)**, через онлайн-чат на **[быстрыеотчеты.рф](https://быстрыеотчеты.рф/)**, либо по телефону **[+7(800)551-75-80](tel:+7(800)551-75-80)**. Пожалуйста, объясните подробно, в чём разница основных типов лицензирования? В основном наши продукты имеют три типа лицензирования: Single License – лицензия на одно рабочее место. На одного разработчика. Team License – 4 рабочих места. Дополнительно включает лицензию для Build сервера. Site License – неограниченное количество рабочих мест, зарегистрированных по одному географическому адресу. Дополнительно включает лицензию для Build сервера. У компонента TfrxPreview отсутствует панель с кнопками, подобная той, которая есть в стандартном окне предварительного просмотра. Можно ли создать свою панель, аналогичную стандартной? Конечно, можно. Вы можете создать панель с кнопками и использовать следующие методы TfrxPreview для каждой кнопки frxPreview1.Print; ``` frxPreview1.LoadFromFile; frxPreview1.SaveToFile; frxPreview1.Export(Filter); frxPreview1.Find; frxPreview1.Zoom:=frxPreview1.Zoom + 0.25; frxPreview1.Zoom:=frxPreview1.Zoom - 0.25; frxPreview1.OutlineVisible := frxPreview1.OutlineVisible; frxPreview1.ThumbnailVisible:=not frxPreview1.ThumbnailVisible; frxPreview1.PageSetupDlg; frxPreview1.Edit; frxPreview1.First; frxPreview1.Prior; frxPreview1.PageNo := 1; frxPreview1.Next; frxPreview1.Last; ``` Сколько стоит продление лицензирования FastReport VCL? И что я от этого получу? Вы можете продлить лицензирование в вашей контрольной панели. Продление включает в себя техническую поддержку и обновления продуктов. Она доступна по 1/2 от полной стоимости в год. Когда ваша лицензия истекла, у Вас есть два варианта: - Продлить лицензию. Это позволит Вам получать техническую поддержку и обновления продуктов. - Продолжать использовать FastReport VCL. В этом случае, у Вас не будет возможности использовать последние обновления продукта и получать техническую поддержку. Возможно ли использовать FastReport VCL на сервере? Да, на сервере с Windows если вы используете IDE от Еmbarcadero или если вы используете Lazarus, на сервере с Windows, c Linux (ограничения многопоточности), FastReport VCL, начиная с версии Enterprise, включает в себя набор серверных компонентов. После закрытия окна превью в Delphi не удаётся получить значения переменных отчёта Перед формированием отчёта добавьте: `frxReport1.EngineOptions.DestroyForms:=False;` Каким образом можно реализовать редактирование TfrxRichView, TfrxPictureView в окне предварительного просмотра посредством стандартных диалоговых окон редактирования TfrxRichView, TfrxPictureView? Используйте код: ``` uses frxRich, frxRichEditor, frxDesgn; procedure TForm1.frxReport1ClickObject(Sender: TfrxView; Button: TMouseButton; Shift: TShiftState; var Modified: Boolean); begin if Sender is TfrxRichView then with TfrxRichEditorForm.Create(Form1) do begin RichView := TfrxRichView(Sender); Modified := ShowModal = mrOk; Free; end; end; uses frxDesgn, frxEditPicture; procedure TForm1.frxReport1ClickObject(Sender: TfrxView; Button: TMouseButton; Shift: TShiftState; var Modified: Boolean); begin if Sender is TfrxPictureView then with TfrxPictureEditorForm.Create(Form1) do begin Image.Picture.Assign(TfrxPictureView(Sender).Picture); Modified := ShowModal = mrOk; if Modified then TfrxPictureView(Sender).Picture.Assign(Image.Picture); Free; end; end; ``` Как вы можете закодировать навигацию по набору данных, подключенную к отчету, но не подключенную ни к какому бэнду в скрипте отчета? Используйте данный код: ``` var DS: TfrxDataSet; begin DS:=Report.GetDataset('Items'); DS.First; while not DS.Eof do begin ShowMessage(DS.Value('Part Name')); DS.NEXT; end; end. ``` При компиляции проекта выдаётся сообщение 'Class TfrxButtonControl not found' (TfrxRichView, TfrxCrossView, TfrxOLEView,TfrxBarCodeView, TfrxCheckBoxView, TfrxGradientView, TfrxChartView, TfrxADOQuery и т.д.). Добавьте в отчёт компонент TfrxDialogControls (TfrxRichObject, TfrxCrossObject, TfrxOLEObject, TfrxBarCodeObject, TfrxCheckBoxObject, TfrxGradientObject, frxChartObject, TfrxADOComponents и т.д) с палитры компонентов Fast Report или добавьте в секцию uses модули frxDCtrl, frxRich, frxCross, frxOLE, frxBarcode, frxChBox, frxGradient, frxChart, frxADOComponents. Как конвертировать отчеты из Report Builder в Fast Report? Добавьте в секцию uses модуль ConverterRB2FR. В рантайме в дизайнере отчётов Fast Report появится возможность открыть отчёты Report Builder и пересохранить в формате Fast Report. В скрипте пытаюсь установить границы у Memo: Memo1.Frame.Typ := [ftLeft, ftRight, ftTop, ftBottom]. Получаю ошибку. Скрипт Fast Report не поддерживает множества. Нужно делать так: `Memo1.Frame.Typ := ftLeft + ftRight + ftTop + ftBottom;` Каким образом загрузить в скрипте RTF-файл в TfrxRichView? Используйте данный код: `Rich1.RichEdit.Lines.LoadFromFile()` Есть список отчётов. Для предварительного просмотра при выборе отчёта необходимо показывать пользователю только первую страницу отчёта. Как это сделать? Используйте код: ``` procedure TForm1.frxReport1Progress(Sender: TfrxReport; ProgressType: TfrxProgressType; Progress: Integer;) begin if Progress > 1 then frxReport1.Engine.StopReport; end; procedure TForm1.Button1Click(Sender: TObject); begin frxReport1.PrepareReport(); while frxReport1.PreviewPages.Count > 1 do frxReport1.PreviewPages.DeletePage(1); frxReport1.ShowPreparedReport; end; ``` У меня в дизайнере отчётов пропал инспектор объектов (дерево данных, стандартная панель инструментов) Зайдите в дизайнере в меню Вид|Настройки и нажмите кнопку **Восстановить настройки** Каким образом можно поместить последнюю запись из базы данных на отдельной странице? Используйте следующий код: procedure MasterData1OnBeforePrint(Sender: TfrxComponent); begin if MasterData1.DataSet.RecNo = MasterData1.DataSet.RecordCount-1 then Engine.NewPage; end; Как остановить построение отчёта? Используйте данный код: frxReport1.Engine.StopReport; Каким образом выводить колонки не сверху вниз, а слева направо? Если задать количество столбцов для страницы, то записи будут выводиться снизу вверх, а если задать количество столбцов для бэнда, то слева направо. В отчёте формируются две TfrxReportPage. На первой странице выводятся данные для лицевой стороны листа, на второй - для обратной. Для печати в дуплексе необходимо выводить поочерёдно лицевую и обратную сторону. Как это можно реализовать? Вы можете пересортировать страницы превью после формирования отчёта: ``` var i, j: integer; page : TfrxReportPage; begin frxReport1.PrepareReport(); j := frxReport1.PreviewPages.Count div 2; page := TfrxReportPage.Create(nil); for i := 0 to j - 2 do begin page.AssignAll(frxReport1.PreviewPages.Page[j + i]); frxReport1.PreviewPages.AddEmptyPage(i * 2 + 1); frxReport1.PreviewPages.ModifyPage(i * 2 + 1, page); frxReport1.PreviewPages.DeletePage(j + i + 1); end; page.Free; frxReport1.ShowPreparedReport; end; ``` Каким образом можно добавить кнопку в окно предварительного просмотра? Используйте данный код: ``` uses frxClass, frxPreview, ComCtrls, ToolWin, Buttons; ... procedure TForm1.ButtonClick(Sender: TObject); begin ShowMessage('My Button pressed'); end; procedure TForm1.frxReport1Preview(Sender: TObject); var Button: TSpeedButton; begin // Добавление новой кнопки Button := TSpeedButton.Create(TfrxPreviewForm(frxReport1.PreviewForm).ToolBar); Button.Parent:=TfrxPreviewForm(frxReport1.PreviewForm).ToolBar; Button.Caption:='My Button'; Button.Width:=60; Button.Left:=650; // Обработчик новой кнопки Button.OnClick:=ButtonClick; end; ``` Также кнопку в стандартный Preview можно добавить не из события OnPreview, а из OnEndDoc. Данные вариант полезен для двух случаев: 1) Когда обработчик этой кнопки, что то делает с данными предварительного просмотра. В этом случае создавать кнопку из OnPreview нежелательно, так как она будет активной еще во время построения отчета. 2) Когда доп. кнопка должна появится по некоторому условию, которое задается в предпечатном диалоге (frxDialogPage). Для кнопки PDF экспорта: ``` uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, frxClass, frxExportPDF, frxPreview, frxDsgnIntf, Menus; type TForm1 = class(TForm) frxReport1: TfrxReport; frxPDFExport1: TfrxPDFExport; SaveDialog1: TSaveDialog; procedure FormCreate(Sender: TObject); procedure frxReport1Preview(Sender: TObject); procedure PDFExport(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.PDFExport(Sender: TObject); begin if SaveDialog1.Execute then begin frxPDFExport1.FileName:=SaveDialog1.FileName; TfrxPreview(frxReport1.Preview).Export(frxPDFExport1); end; end; procedure TForm1.FormCreate(Sender: TObject); begin frxReport1.ShowReport; end; procedure TForm1.frxReport1Preview(Sender: TObject); var i, j, mi: integer; begin TfrxPreviewForm(frxReport1.PreviewForm).PdfB.OnClick:=PDFExport; for i := 0 to frxExportFilters.Count - 1 do begin if TfrxCustomExportFilter(frxExportFilters[i].Filter).ClassName = 'TfrxPDFExport' then mi:=i; end; TfrxPreviewForm(frxReport1.PreviewForm).ExportPopup.Items[mi].OnClick:=PDFExport; for i:=0 to TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items.Count-1 do begin if TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items[i].Caption=TfrxPreviewForm(frxReport1.PreviewForm).ExportB.Hint then begin for j:=0 to TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items[i].Count-1 do if TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items[i][j].Caption=TfrxPreviewForm(frxReport1.PreviewForm).ExportPopup.Items[mi].Caption then TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items[i][j].OnClick:=PDFExport; end; if TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items[i].Caption=TfrxPreviewForm(frxReport1.PreviewForm).PdfB.Hint then TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items[i].OnClick:=PDFExport; end; end; end. ``` Каким образом скрыть кнопку в меню в дизайнере? По аналогии с окном предварительного просмотра: ``` procedure TForm1.frxDesigner1Show(Sender: TObject); begin if Sender is TfrxDesignerForm then begin TfrxDesignerForm(Sender).OpenB.Visible := False; end; end; procedure TForm1.frxDesigner1Show(Sender: TObject); var i: integer; begin if Sender is TfrxDesignerForm then begin for i:=0 to TfrxDesignerForm(Sender).ObjectsTB1.ButtonCount-1 do if TfrxDesignerForm(Sender).ObjectsTB1.Buttons[i].ImageIndex in [30, 32] then //скрываются кнопки КОПИРОВАНИЕ ВНЕШНЕГО ВИДА и СЛУЖЕБНЫЙ ТЕКСТ TfrxDesignerForm(Sender).ObjectsTB1.Buttons[i].Visible:=False; TfrxDesignerForm(Sender).DataTree.FunctionsTree.Visible:=False; TfrxDesignerForm(Sender).DataTree.ClassesTree.Visible:=False; end; end; ``` Как переопределить обработчик кнопки в стандартном окне предварительного просмотра? Следующий обработчик переопределяет обработчик кнопки "Открыть": ``` uses frxClass, frxPreview, frxPreviewPages, frxRes; type TForm1 = class(TForm) frxReport1: TfrxReport; procedure frxReport1Preview(Sender: TObject); procedure NewOnClick(Sender: TObject); end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.frxReport1Preview(Sender: TObject); begin if frxReport1.PreviewForm is TfrxPreviewForm then begin TfrxPreviewForm(frxReport1.PreviewForm).OpenB.OnClick := NewOnClick; TfrxPreviewForm(frxReport1.PreviewForm).RightMenu.Items[3].OnClick := NewOnClick; end; end; procedure TForm1.NewOnClick(Sender: TObject); var OpenDlg: TOpenDialog; begin if frxReport1.Engine.Running then Exit; OpenDlg := TOpenDialog.Create(nil); try OpenDlg.Options := [ofHideReadOnly]; OpenDlg.Filter := frxResources.Get('clFP3files') + ' (*.fp3)|*.fp3'; if OpenDlg.Execute then begin TfrxPreview(frxReport1.Preview).LoadFromFile(OpenDlg.FileName); frxReport1.PreviewForm.Caption := OpenDlg.FileName; end; finally OpenDlg.Free; end; end; end. ``` Каким образом можно сменить тип бумаги при печати отчёта? Доступ ко всем полям структуры DEVMODE можно получить событии OnPrintPage, к примеру для изменения поля DM_MEDIATYPE можно использовать такой код (по аналогии и для остальных полей): ``` uses frxprinter; procedure frxReport1PrintPage(Page: TfrxReportPage; CopyNo: Integer); procedure ChangeMediaType(mType: Integer); begin if frxPrinters.Printer is TfrxPrinter then with TfrxPrinter(frxPrinters.Printer) do begin DeviceMode.dmFields := DeviceMode.dmFields or DM_MEDIATYPE; DeviceMode.dmMediaType := mType; SetPrintParams(Page.PaperSize, Page.PaperWidth, Page.PaperHeight, Page.Orientation, Page.Bin, Integer(Page.Duplex), frxReport1.PrintOptions.Copies); end; end; begin if idx = 0 then ChangeMediaType(DMMEDIA_TRANSPARENCY) else if idx = 1 then ChangeMediaType(DMMEDIA_GLOSSY) else ChangeMediaType(DMMEDIA_STANDARD); inc(idx); end; ``` Каким образом поменять строку коннекта для TfrxADODataBase, чтобы избежать появления сообщения об ошибке, если у пользователя строка коннекта отлична от строки коннекта, установленной разработчиком в шаблоне отчёта? Для реализации такой функциональности нужно запретить коннект при загрузке отчёта в событии TfrxReport.OnBeforeConnect ``` var Form1: TForm1; Connect: Boolean; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin Connect:=False; frxReport1.LoadFromFile('C:\test.fr3'); Connect:=True; TfrxADODataBase(frxReport1.FindObject('ADODatabase1')).Connected := False; TfrxADODataBase(frxReport1.FindObject('ADODatabase1')).DatabaseName := 'Provider=Microsoft.Jet.OLEDB.4.0; User ID=Admin; Data Source=C:\Program Files\FastReports\FastReport 4\Demos\Main\demo.mdb'; TfrxADODataBase(frxReport1.FindObject('ADODatabase1')).Connected := True; frxReport1.ShowReport(); end; procedure TForm1.frxReport1BeforeConnect(Sender: TfrxCustomDatabase; var Connected: Boolean); begin if not Connect then Connected:=False; end; ``` В дизайнере при вводе текста в мемо с установленным размером шрифта в 6 пт текст в мемо невозможно прочесть Зайдите в дизайнере в меню Вид|Настройки и снимите опцию Использовать шрифт объекта Пропали цвета в заголовках бэндов. Что делать? В дизайнере в меню Вид-Настройки включите опцию "Показывать заголовки бэндов" Создал отчёт с помощью визарда. Теперь не могу изменить цвет, шрифт элементов отчёта. Визард создал отчёт с использованием стилей. Вам нужно либо изменить соответствующий стиль, либо очистить стиль объекта Каким образом можно вывести пустые ячейки до конца страницы, если MasterData1 содержит 3-5 строк данных? Добавьте в отчёт ещё один MasterData2 с пустыми ячейками и управляйте значением MasterData2.RowCount в скрипте в обработчике подвала данных Можно ли добавить текст (например, водяной знак) в уже сформированные страницы? Можно добавить текст как в превью в событии TfrxReport.OnEndDoc: ``` procedure TForm1.frxReport1EndDoc(Sender: TObject); var p: TfrxReportPage; m: TfrxMemoView; i: integer; begin frxReport1.Preview.Lock; for i := 0 to frxReport1.PreviewPages.Count - 1 do begin p:=TfrxReportPage(frxReport1.PreviewPages.Page[i]); m:=TfrxMemoView.Create(p); m.CreateUniqueName; m.SetBounds(0, 0, (p.PaperWidth - p.RightMargin - p.LeftMargin) * fr01cm, (p.PaperHeight - p.TopMargin - p.BottomMargin) * fr01cm); m.Text := 'Demo'; m.Rotation := 45; m.Font.Size := 128; m.VAlign := vaCenter; m.HAlign := haCenter; frxReport1.PreviewPages.ModifyPage(i,p); end; frxReport1.Preview.UnLock; end; //так и перед непосредственной печатью страницы в событии TfrxReport.OnPrintPage procedure TForm1.frxReport1PrintPage(Page: TfrxReportPage; CopyNo: Integer); var m: TfrxMemoView; begin m:=TfrxMemoView.Create(page); m.CreateUniqueName; m.SetBounds(0, 0, (page.PaperWidth - page.RightMargin - page.LeftMargin) * fr01cm, (page.PaperHeight - page.TopMargin - page.BottomMargin) * fr01cm); m.Text := 'Demo'; m.Rotation := 45; m.Font.Size := 128; m.VAlign := vaCenter; m.HAlign := haCenter; end; ``` В отчёте формируются две TfrxReportPage. На первой странице выводятся данные для лицевой стороны листа, на второй - для обратной. Для печати в дуплексе необходимо выводить поочерёдно лицевую и обратную сторону. Как это можно реализовать? Вы можете пересортировать страницы превью после формирования отчёта: ``` var i, j: integer; page : TfrxReportPage; begin frxReport1.PrepareReport(); j := frxReport1.PreviewPages.Count div 2; page := TfrxReportPage.Create(nil); for i := 0 to j - 2 do begin page.AssignAll(frxReport1.PreviewPages.Page[j + i]); frxReport1.PreviewPages.AddEmptyPage(i * 2 + 1); frxReport1.PreviewPages.ModifyPage(i * 2 + 1, page); frxReport1.PreviewPages.DeletePage(j + i + 1); end; page.Free; frxReport1.ShowPreparedReport; end; ``` В скрипте не удаётся изменить параметры подключения к ADODataBase, приложение выдаёт ошибку "Operation is not allowed because object is open". В 3-й версии было возможно. Как решить проблему с изменением данных о подключении к БД? Попробуйте установить ADODataBase.Connected=False перед изменением параметров соединения, а потом восстанавливайте соединение. Как программно скрыть столбец в DBCrossView? Попробуйте просто устанавливать ширину=0: ``` procedure Cross1OnCalcWidth(ColumnIndex: Integer; ColumnValues: Variant; var Width: Extended); begin if ColumnIndex=0 then Width:=0; end; ``` Каким образом можно получить доступ к RTF тексту? (что то типа string s:=Rich.RichText.Lines.RTF) В приведенном коде при клике на TfrxRichView его содержимое копируется в Memo1 на диалоговой форме: procedure Rich1OnPreviewClick(Sender: TfrxView; Button: TMouseButton; Shift: Integer; var Modified: Boolean); var st: TMemorystream; begin st:=TMemoryStream.Create; Rich1.RichEdit.StreamFormat := 0; Rich1.RichEdit.Lines.SaveToStream(st); st.Position := 0; Memo1.Lines.LoadFromStream(st); st.Free; DialogPage1.ShowModal; end; Как добавить в скрипт функцию SendToBack? Используйте код constructor TFunctions.Create(AScript: TfsScript); begin inherited Create(AScript); with AScript do begin with TfsClassVariable(Find('TfrxView')) do AddMethod('procedure SendToBack',CallMethod); end; end; initialization fsRTTIModules.Add(TFunctions); В скрипте отчёта значения Page1.PaperHeight, Page1.TopMargin и т.п. представлены в мм, тогда как значения высоты объектов - в пикселях. Каким образом перевести мм в пиксели? Используйте в скрипте константы fr01cm (для перевода мм в пиксели), fr1cm (для перевода см в пиксели) В скрипте отчёта необходимо задать имя файла для фильтра экспорта, но классы фильтров экспорта отсутствуют в скрипте. Как их можно добавить? В Delphi: frxReport1.Script.AddClass(TfrxCustomExportFilter, 'TComponent'); frxReport1.Script.AddClass(TfrxCustomImageExport, 'TfrxCustomExportFilter'); frxReport1.Script.AddClass(TfrxBMPExport, 'TfrxCustomImageExport'); frxReport1.Script.AddClass(TfrxRTFExport, 'TfrxCustomExportFilter'); ... frxReport1.Script.AddObject('frxRTFExport1',frxRTFExport1); frxReport1.Script.AddObject('frxBMPExport1',frxBMPExport1); ... В скрипте: Код frxRTFExport1.FileName := 'myFilename.rtf'; Возможно ли менять стиль шрифта в TfrxMemoView в зависимости от состояния заголовка группы (свёрнут/развёрнут)? Для этого нужно зарегистрировать в скрипте отчёта пользовательскую функцию, которая будет возвращать состояние заголовка группы ``` function TForm1.frxReport1UserFunction(const MethodName: String; var Params: Variant): Variant; begin if MethodName = 'CHECKDRILLSTATE' then Result := frxReport1.DrillState.IndexOf(Params[0]); end; procedure TForm1.FormShow(Sender: TObject); begin frxReport1.AddFunction('function CheckDrillState(DrillName : string): integer'); end; ``` а в самом скрипте отчёта проверять состояние заголовка группы и устанавливать требуемый стиль шрифта ``` procedure GroupHeader1OnBeforePrint(Sender: TfrxComponent); begin if CheckDrillState(GroupHeader1.DrillName) <> - 1 then Memo6.Font.Style := fsBold else Memo6.Font.Style := 0; end; ``` Построение списка функций: Используйте код ``` unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, frxClass, fs_itools, fs_xml, frxRes, frxrcDesgn, frxDesgn, ComCtrls; type TForm1 = class(TForm) frxReport1: TfrxReport; TreeView1: TTreeView; procedure FormShow(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormShow(Sender: TObject); var XML: TfsXMLDocument; procedure SetImageIndex(Node: TTreeNode; Index: Integer); begin Node.ImageIndex := Index; Node.StateIndex := Index; Node.SelectedIndex := Index; end; procedure AddFunctions(xi: TfsXMLItem; Root: TTreeNode); var i: Integer; Node: TTreeNode; s: String; begin s := xi.Prop['text']; if xi.Count = 0 then s := Copy(s, Pos(' ', s) + 1, 255) else { function } s := frxResources.Get(s); { category } if CompareText(s, 'hidden') = 0 then Exit; Node := TreeView1.Items.AddChild(Root, s); if xi.Count = 0 then Node.Data := xi; if Root = nil then Node.Text := frxResources.Get('dtFunc'); if xi.Count = 0 then SetImageIndex(Node, 52) else SetImageIndex(Node, 66); for i := 0 to xi.Count - 1 do AddFunctions(xi[i], Node); end; begin XML := TfsXMLDocument.Create; TreeView1.Images := frxResources.MainButtonImages; frxReport1.Script.AddRTTI; GenerateXMLContents(frxReport1.Script, XML.Root); TreeView1.Items.BeginUpdate; TreeView1.Items.Clear; AddFunctions(XML.Root.FindItem('Functions'), nil); TreeView1.FullExpand; TreeView1.TopItem := TreeView1.Items[0]; TreeView1.Items.EndUpdate; end; end. ``` Создал отчет в котором в начале его выполнения появляется диалоговое окно. В диалоге я выбираю одно из двух значений: продолжить выполнение текущего отчета или вызать из него новый отчет. При вызове нового отчета мне нужно закрыть форму предварительного просмотра первого отчета. Иначе получается так: Вызываю из первого отчета второй, он отрабатывает, показывает данные, я закрываю окно пр.просмотра второго отчета дальше вижу пустое окно пр. просмотра первого отчета. Используйте пользовательскую функцию В Delphi: procedure TForm1.FormCreate(Sender: TObject); begin frxReport1.AddFunction('function CloseReport'); frxReport1.LoadFromFile('testReport1.fr3'); frxReport1.ShowReport(); end; function TForm1.frxReport1UserFunction(const MethodName: String; var Params: Variant): Variant; begin if MethodName='CLOSEREPORT' then frxReport1.PreviewForm.Close; end; //в скрипте: procedure Button1OnClick(Sender: TfrxComponent); var rep: TfrxReport; begin rep := TfrxReport.Create(Report); rep.EngineOptions := Report.EngineOptions; rep.LoadFromFile('TestReport2.fr3'); rep.ShowReport; CloseReport; end; В версии FastReport2 при создании MasterBand'а есть возможность выбрать Virtual DataSet. В FR4 такого пункта нет Задайте у бэнда свойство RowCount. Работает ли FastReport с Delphi XE7 для создания 64-разрядного приложения? Да. Как я могу печатать номер страницы на обратной стороне каждого листа отчета? Только добавлением страницы с номером страницы. Можно сформировать отчёт, добавить такое же количество страниц с номерами, а затем пересортировать их ``` var i, j: integer; page : TfrxReportPage; begin j := frxReport1.PreviewPages.Count div 2; page := TfrxReportPage.Create(nil); for i := 0 to j - 2 do begin page.AssignAll(frxReport1.PreviewPages.Page[j + i]); frxReport1.PreviewPages.AddEmptyPage(i * 2 + 1); frxReport1.PreviewPages.ModifyPage(i * 2 + 1, page); frxReport1.PreviewPages.DeletePage(j + i + 1); end; page.Free; frxReport1.ShowPreparedReport; end; ``` Какой драйвер используется для подключения ODBC для SQL сервера? ADO, но можно и другие. Использование как с TfrxBDEComponents невозможно и вместо этого всегда должны быть пары TfrxDBDataset и TDataSet? Да, internal-датасеты нужно или делать самому или искать реализации. Если у меня есть y собственных QR-компонентов (например, TMyQRLabel, которые изменяют только свойства по умолчанию), которые не конвертируются, есть ли способ преобразовать их так же? Только если добавит в модуле конвертора, где условие с TQRLabel свое имя класса. В QR вы можете написать некоторый код в событиях, например, перед печатью для полосы, есть ли способ также передать код при конвертации шаблонов? Скрипт не конвертируется. Как загружать и выгружать из базы данных? При чтении появляется ошибка “invalid format” Установить Stream.Position := 0; Если отчет QR наследуется от другого QR-отчета, то преобразование завершается неудачей, есть ли способ обойти это? Поддержки унаследованных форм пока нет. Необходимо передать в отчёт Unicode строку. Как это сделать? Передавайте строку в кодировке UTF8. Например, символ "диаметр" можно передать следующим кодом: frxReport1.Script.Variables['test']:= UTF8Decode('⌀'); У нас есть где-нибудь Положение об оказании технической поддержки? Да, его можно найти по ссылке: **[Положение об оказании технической поддержки](https://быстрыеотчеты.рф/technical-support-regulations/)** Нужно ли прикладывать файл лицензии FastReport VCL к своему разрабатываемому продукту? Регистрация одной лицензии программного обеспечения дает Вам право на написание и компиляцию Ваших собственных прикладных программ, использующих программное обеспечение, содержащееся в Продукте. Все копии программного обеспечения, которые Вы пишете и распространяете, должны включать указание на авторские права Лицензиара. Больше информации Вы можете найти в лицензионном соглашении. Совместим ли FastScript с многопоточностью? Совместим, но есть особенности, описаны на 47-й странице **[руководства](https://быстрыеотчеты.рф/public_download/docs/FRVCL/FSVCLDeveloperManual-ru.pdf)**. Ищите абзац, начинающийся с "Альтернативный способ, без использования fsGlobalUnit (для корректной работы в многопоточных приложениях)". ### Delphi-продукт 2002 (по опросу www.delphizine.com) URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/reward-survey-delphi-2002 Summary: Delphi-продукт 2002 (по опросу www.delphizine.com) Delphi-продукт 2002 (по опросу www.delphizine.com) Лучший генератор отчетов Наш продукт признан читателями Delphi Informant Magazine как "продвинувшийся вверх" в этой категории. В этом году FastReport набрал 20% голосов (в прошлом году - только 12%) и уверенно единолично занял второе место. Огромное спасибо всем пользователям FastReport! ### Delphi: что это за язык программирования и где применяется URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/delphi-yazyk-programmirovaniya Summary: Delphi — высокоуровневый язык программирования для быстрой разработки стабильных приложений. Применяется в бизнесе, финансах, медицине и др. Востребован, хорошо оплачивается. Delphi — высокоуровневый язык программирования для быстрой разработки стабильных приложений. Применяется в бизнесе, финансах, медицине и др. Востребован, хорошо оплачивается. Delphi – это язык программирования, который часто используют для создания разных программ и приложений. Он относится к высокоуровневым языкам – писать на нём проще, чем, например, на ассемблере. В Delphi нужно чётко указывать типы переменных (например, число это или текст), и он поддерживает работу с объектами, логическую структуру кода и пошаговое выполнение команд. Delphi – это язык программирования, который часто используют для создания разных программ и приложений. Он относится к высокоуровневым языкам – писать на нём проще, чем, например, на ассемблере. В Delphi нужно чётко указывать типы переменных (например, число это или текст), и он поддерживает работу с объектами, логическую структуру кода и пошаговое выполнение команд. Особенности Delphi Среда разработки Delphi проста и при этом не уступает по возможностям C++. Программы на Delphi работают почти так же быстро, как и на C++, за исключением очень тяжёлых вычислений. Преимущества Delphi: Быстрая разработка сложных интерфейсов.  Delphi построен на объектно-ориентированной библиотеке визуальных компонентов, что делает разработку удобной и быстрой. Хорошая производительность.  Приложения компилируются в нативный код, от этого – высокая скорость выполнения. Легкость изучения. Язык синтаксически чистый и простой, особенно для тех, кто ранее работал с Pascal. Стабильность и структурированность.  За более чем 25 лет язык обрел широкую экосистему, богатую библиотеками и компонентами. Он консервативный и жесткий. Язык защищен от ошибок разработчика. Кросс-платформенность.  Благодаря FireMonkey можно разрабатывать приложения под Windows, macOS, iOS и Android из единого кода. Где Delphi используется сегодня Многие крупные компании и государственные организации используют приложения, созданные на Delphi, и нуждаются в специалистах, способных поддерживать и развивать эти системы. Это позволяет сохранять инвестиции в уже существующий код, избегая дорогой и рискованной полной переработки. Delphi до сих пор активно применяют для создания прикладных программ. Чаще всего в следующих областях: Автоматизация бизнес-процессов Банковские и финансовые системы Медицинские информационные системы Устройства и встроенные системы Образование и наука Поддержка и миграция старого ПО Программисты со знанием Delphi востребованы. На сайтах висят десятки тысяч вакансий. Зарплаты начинаются от 40 000 рублей для новичков и могут превышать 120 000 с опытом. Хотя Delphi развивается медленно и у него не так много встроенных библиотек, это делает специалистов по нему редкими. Для разработчика это плюс: найти Delphi-программиста сложно – ценятся они выше. Современные возможности Delphi Одно из главных преимуществ – визуальное программирование: интерфейс можно собирать прямо во время написания кода, что ускоряет создание Windows-приложений. Delphi даёт управлять свойствами компонентов ещё до запуска программы, что делает разработку наглядной и удобной. Следующая важная особенность – библиотека VCL (Visual Component Library). Она упрощает работу с Windows: разработчикам не нужно вникать в сложные системные механизмы вроде обратных вызовов, дескрипторов и указателей. При этом остаётся доступ к низкоуровневым функциям, если это нужно. Delphi – актуальный инструмент для эффективной разработки приложений, особенно в тех сферах, где важны стабильность, визуальный интерфейс и интеграция с Windows. Недостатки языка Для многих регионов и отраслей, где преобладает унаследованный код, Delphi остается востребованным и хорошо оплачиваемым важным навыком. Однако, популярность языков программирования строится не только на возможности применения в новых условиях, но и на пиаре и предпочтениях разработчиков. Поэтому от Delphi иногда отворачиваются: изучать его «немодно», язык несовременный. Сами компании, работающие с Delphi, часто имеют довольно специфический уклон: внутреннее ПО страховых и банков, СКУД, научно-производственные центры, рынки ценных бумаг, бюджетные учреждения и так далее. Такие узкие ниши часто бывают заняты профессионалами, которые входили в программирование еще 10–20 лет назад. Стоит сказать, многих разработчиков отталкивает ручное управление памятью и малое количество современных фреймворков (в отличие от C#, Java или Python). Кому и когда стоит использовать Delphi? Несмотря на сдержанный маркетинг и уменьшившуюся долю рынка, Delphi остаётся мощным инструментом разработки. Для многих организаций это – проверенная временем технология , которая сочетает стабильность, производительность и богатую функциональность. Если вы разрабатываете десктопные приложения или работаете с устоявшейся IT-инфраструктурой, знание Delphi может оказаться крайне полезным. Если ваша цель глубже изучить программирование как концепт, то Delphi не будет лишним. Хотите занять узкую нишу? Delphi опять же подойдет, но на ранних этапах найти работу будет труднее. Это проблема многих узких ниш. Изучение и использование Delphi – это не только способ поддерживать и развивать существующие проекты, но и возможность эффективно создавать новые решения с высокими требованиями к производительности и стабильности. Tags: Delphi, Новые технологии ### DevProConnections Community Choice Awards URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/awards-bronze-2011 Summary: DevProConnections Community Choice Awards DevProConnections Community Choice Awards FastReports, на открытом голосовании DevProConnections Community Choice Awards, в номинации Best Vendor Support завоевал награду «Bronze» Спасибо всем кто нас поддержал! ### Downloads URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/downloads Summary: Используйте демонстрационные версии, чтобы протестировать наши продукты перед тем, как принять решение о покупке. Демоверсии Демо FastReport .NET Демо FastReport VCL Демо Business Graphics .NET Демо FastCube .NET Демо Analysis VCL Демо Reporting Lazarus Демо МоиОтчеты Вьювер Демо МоиОтчеты Десктоп Демо Корпоративный сервер Демо МоиОтчеты Публикатор info@fastreport.ru Отдел продаж sales@fastreport.ru +7 (800) 551-75-80 +7 (863) 227-07-40 Офис Ростов-на-Дону, Россия ул. Обороны 24, офис 311, 344082 Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Реестр ПО ВБЦ СОУТ Декларация Реквизиты Согласие с обработкой ПД Политика конфиденциальности Не является публичной офертой Не является публичной офертой © 1998-2026 ООО «Быстрые отчеты» Ссылка успешно скопирована ### ERP система: что это такое и как работает URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/erp-sistema Summary: ERP системы — это мощный инструмент для управления бизнесом, обеспечивающий централизованный контроль над ресурсами и процессами компании. ERP системы — это мощный инструмент для управления бизнесом, обеспечивающий централизованный контроль над ресурсами и процессами компании. ERP (Enterprise Resource Planning) — это комплексное программное обеспечение, предназначенное для управления бизнес-процессами и ресурсами предприятия. ERP системы объединяют различные отделы компании в единую информационную систему, обеспечивая автоматизацию и интеграцию ключевых бизнес-функций, таких как бухгалтерия, производство, складской учет, продажи и управление персоналом. Что такое ERP система? ERP (Enterprise Resource Planning) — это комплексное программное обеспечение, предназначенное для управления бизнес-процессами и ресурсами предприятия. ERP системы объединяют различные отделы компании в единую информационную систему, обеспечивая автоматизацию и интеграцию ключевых бизнес-функций, таких как бухгалтерия, производство, складской учет, продажи и управление персоналом. Основные функции ERP системы ERP система охватывает широкий спектр функциональных возможностей, среди которых: Финансовый учет и бухгалтерия — автоматизация расчетов, управление бюджетами, контроль затрат. Управление запасами — контроль остатков, автоматизация закупок, прогнозирование потребностей. Продажи и CRM — ведение клиентской базы, управление заказами, анализ продаж. Производство — планирование ресурсов, контроль за выполнением заказов, управление процессами производства. Кадровый учет и управление персоналом — расчет зарплат, контроль рабочего времени, управление кадровыми ресурсами. Как работает ERP система? ERP система функционирует по принципу единой базы данных, в которой хранятся все ключевые бизнес-данные компании. При этом все отделы работают в одном информационном пространстве, что обеспечивает: Централизованное управление данными — информация обновляется в режиме реального времени, исключая дублирование и ошибки. Автоматизацию бизнес-процессов — снижается необходимость ручного ввода данных, ускоряются рабочие процессы. Гибкость и масштабируемость — возможность адаптации системы под специфические задачи бизнеса. Генерация отчетов в ERP системе с помощью FastReport Одним из важных компонентов ERP системы является инструмент для создания отчетности и аналитики. Для этого используются модули отчетности как, например, FastReport. Они подключаются к источникам данных, представляют информацию из них в наглядном виде (интерактивные таблицы, графики и т.д.) и позволяют экспортировать их в электронном виде в любой формат или отправить на печать или в облако. Например, PDF, MS Office, Open Office, HTML и другие файлы можно распечатать или экспортировать в Yandex Disk, OneDrive, Google Drive, Box, Dropbox. Преимущества использования FastReport в ERP системе по сравнению с самописными модулями: Гибкость и настраиваемость — возможность создания индивидуальных отчетов под потребности бизнеса без необходимости менять что-то в самой системе. Информативные отчеты — поддержка графиков, диаграмм, таблиц и других элементов визуализации данных. Интерактивные отчеты - встроенные диалоги с пользователями для организации быстрой фильтрации, выборки необходимых диапазонов данных, получения детализации нужной глубины, выстраивания “цепочек” живого взаимодействия с бизнес-пользователями. Сохранение в различные форматы — PDF, Excel, XML, HTML и другие. Высокая скорость обработки данных — генерация отчетов даже при больших объемах информации. Даже отчеты с тысячами страниц PDF, например, ЖКХ квитанций для абонентов, формируются за считанные минуты.  Поддержка – производитель сам заботится о том, чтобы модуль отчетности поддерживал последние технологии и решает возникшие проблемы. Заключение ERP системы — это мощный инструмент для управления бизнесом, обеспечивающий централизованный контроль над ресурсами и процессами компании. Важной частью ERP является качественная отчетность, и в этом помогают генераторы отчетов FastReport, предоставляя удобный и эффективный инструмент для анализа данных. Быстрые и наглядные отчеты - краеугольный камень принятия информированных бизнес-решений.  Tags: Новые технологии, Импортозамещение ### Excel формулы в BIFF экспорте URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/excel-formulas-biff-export Начиная с версии FR VCL 4.11.15 экспорт BIFF умеет экспортировать формулы. Например, чтобы экспортировать формулу SUM(A1:B2) нужно положить на отчёт TfrxMemoView и записать в нём Код =SUM(A1:B2) Первым символом должен быть знак равенства "=", а оставшаяся часть - правильной Excel формулой. Экспорт формул управляется свойством BIFF экспорта ExportFormulas и чтобы отключить эту возможность, достаточно написать Код ``` procedure DisableFormulas(Exp: TfrxBIFFExport); begin Exp.ExportFormulas := False end; ``` По умолчанию экспорт формул включён. Что произойдёт, если в отчёте встретилась неправильная формула? Экспорт попытается её обработать, но обнаружив ошибку, сохранит формулу в xls файле в виде обычной текстовой ячейки. Какие формулы поддерживает экспорт Экспорт поддерживает Excel формулы. Нужно заметить, что синтаксис формул в Excel, OpenOffice и LibreOffice различается в деталях и хотя в большинстве случаев с этими различиями не придётся столкнуться, всё же стоит иметь ввиду, что поддерживается именно Excel-синтаксис. Один из примеров таких различий в форме записи ссылки на внешнюю ячейку. Допустим в отчёте есть страницы PageA и PageB и нужно, чтобы в ячейке A1 на странице PageA была сумма первых десяти ячеек третьего столбца со страницы PageB. Это можно записать такой формулой в Excel: Код =SUM(PageB!C1:C10) в то же время, эта формула записывается в LibreOffice по другому: Код =SUM($PageB.C1:C10) Нужно иметь ввиду, что BIFF экспорт поддерживает только первую форму записи. Операторы Формулы в Excel позволяют использовать разнообразные операторы и функции. Ниже перечислены те из них, что поддерживаются в BIFF экспорте: 1. Унарные операторы + - и бинарные операторы + - * / ^ а также операторы сравнения < <= = >= > <> 2. Унарный оператор % который пишется после операнда и делит его на 100. Например формула =A1% равносильна =A1/100 3. Оператор : который создаёт диапазон ячеек. Чтобы посчитать сумму первых трёх ячеек столбца G можно написать =SUM(G1, G2, G3) или =SUM(G1:G3) 4. Оператор & соединяющий строки: = "abc" & "def" равносильно ="abcdef" 5. Оператор ! который позволяет сделать ссылку на ячейку или диапазон ячеек расположенных на другой странице того же документа. Такой пример уже был: =SUM(PageB!C1:C10) Есть и другие разновидности оператора ! но они пока что не поддерживаются экспортом. Их можно добавить, если в этом будет необходимость у пользователей экспорта. 6. Оператор пересечения областей, обозначаемый пробелом. например выражение A2:C2 B1:H8 равно B2 Строки Экспорт поддерживает два вида строк, различающиеся обрамляющими их кавычками: 'abc' и "abc". Чтобы вставить в строку символ кавычки, можно или удвоить его или применить другие обрамляющие кавычки. Например следующие строки идентичны: "abc""def" и 'abc"def' При вызове внешней ячейки оператором ! можно использовать строки, если имя страницы содержит пробелы или написано национальным алфавитом. Следующие формулы равносильны: Код =SUM(PageB!C1:C10) =SUM("PageB"!C1:C10) =SUM('PageB'!C1:C10) Последние два способа записи позволяют использовать сложные имена страниц: =SUM("Another Page In This Document"!C1:C10) Функции В формулах можно вызывать стандартные Excel функции. Одна из таких известных функции это SUM - она суммирует свои аргументы. Excel поддерживает очень много функций. Экспорт BIFF поддерживает лишь примерно 150 из них. Среди этих функций есть широко используемые SUM, AVERAGE, INDIRECT, MIN, MAX, AND, OR и так далее. Чтобы добавить подержку новой функции в экспорт, достаточно в файле frxBIFF.pas дописать одну строчку: Код ``` class procedure TBiffFormulaFuncList.Init; begin if GetCount > 0 then Exit;   {http://sc.openoffice.org/excelfileformat.pdf   http://msdn.microsoft.com/en-us/library/dd904817.aspx }   Add(0, 'count', 1, 30, 'v', 'r'); Add(1, 'if', 2, 3, 'r', 'vr'); Add(2, 'isna', 1, 1, 'v', 'v');   <...>   Add(362, 'maxa', 1, 30, 'v', 'r'); Add(363, 'mina', 1, 30, 'v', 'r'); end; ``` Описание функций можно найти по приведённым ссылкам. Можно также сообщить мне, что нужна такая то функция и я добавлю её описание. Технические детали Формула в xls файле представлена как обычная ячейка. Она выглядит как запись с кодом 6 (http://msdn.microsoft.com/en-us/library/dd908919.aspx), внутри которой указаны строка, столбец, настройки форматирования (индекс XF записи), результат формулы и код. Код формулы это набор инструкций переменной длины, оперирующих в рамках виртуальной машины без регистров со стеком LIFO. Инструкции можно разделить на две группы: те, что заталкивают на стек новые значения и те, что забирают значения со стека, делают какую то операцию над ними и возвращают результат на стек. Пример простой формулы: int(1) int(2) add Первые две инструкции кладут на стек две целых 4-байтных числа 1 и 2, а третья - забирает два значения со стека, складывает их и возращает сумму на стек, после чего в стеке находится всего одно число: 3. Одну и ту же формулу можно представить разным набором инструкций. BIFF экспорт старается выбирать те инструкции, что занимают меньше места. Для примера рассмотрим простую формулу состояющую всего из одного числа: =-7.0 Есть два способа записать код этой формулы: Код ``` double(-7.0) ``` этот код занимает 9 байт; и второй вариант: Код ``` int(7) neg ``` этот код занимает 6 байт. То же самое верно и для более сложных случаев. Tags: VCL, Экспорты, FastReport, Excel, VCL, Экспорты, FastReport, Excel ### Fast Query Builder 1.01 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastquerybuilder-1.01 Summary: Fast Query Builder 1.01 Fast Query Builder 1.01 Позвольте вашим пользователям создавать запросы без знания SQL! Fast Query Builder  позволяет работать с локальными и клиент-серверными базами данных используя BDE. Так же есть возможность работать и через другие компоненты для доступа к данным: ADO, IBX, FIBPlus    Основные особенности:     1. Подержка Borland Delphi 4, 5, 6, 7, 2005 и C++ Builder 4, 5, 6      2. Сохранение визуальной модели запроса для дальнейшего использования и корректировки.         3. Возможность создания произвольного окна дизайнера запросов.     4. Встраивание дизайнера в любое окно вашего приложения     5. Полностью визуальная настройка параметров запросов. ### Fast Query Builder 1.02 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastquerybuilder-1.02 Summary: Fast Query Builder 1.02 Fast Query Builder 1.02 + добавлен движок DBX + многоязыковая поддержка - исправлен конфликт между fr_sinmemo.pas (Fr2) и fqb_sinmemo (FQB) - исправленна ошибка при работе с XPManifest - исправленна ошибка при работе с FR3 * несколько незначительных изменений ### Fast Reports Accessibility Solutions URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/accessibility-solutions Fast Reports, Inc. is committed to improving the accessibility of its software products and solutions. As part of this commitment, Fast Reports current product plans include incorporating Section 508 access standards in our solutions, products, and documentation so that they will be compliant in a future release. This includes: Designing our software for maximum accessibility by the widest range of users as a fundamental component of feature functionality Providing full disclosure of the Section 508-compliant status of our products Continually testing and evaluating our software products against accessibility standards Developing and maintaining applications in conformance with accessibility standards when serving clients who are subject to the provisions of Section 508 Fixing products that fall short of accessibility standards by making any necessary changes to a non-conforming feature for inclusion in the next release of the product. Note: Certain changes may be accomplished in phases over several successive releases and it may not be possible to correct older products and products that are no longer in general use What is 508 Compliance? Section 508 is a part of the Rehabilitation Act of 1973, which requires electronic and information technology developed, procured, maintained, or used by the Federal government be accessible to people with disabilities. On August 7, 1998, the President signed into law the Workforce Investment Act of 1998, which includes the Rehabilitation Act Amendments of 1998. Section 508 was originally added to the Rehabilitation Act in 1986; the 1998 amendments significantly expand and strengthen the technology access requirements in Section 508. You can find more information on the official Federal Government Web site for Section 508, www.section508.gov . Section 508 Rehabilitation Act Voluntary Product Accessibility FastReport 4 VCL ### Fast Reports в Сибири URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fast-reports-siberia Summary: FastReports в Сибири FastReports в Сибири Уважаемые дамы и господа! В связи с потеплением, компании Softline, Fast Reports и Devrace проводят серию семинаров на сибирских просторах нашей Родины. Приглашаем Вас в конце мая принять участие в серии бесплатных семинаров  "Народный Business Intelligence - отчётность и бизнес-аналитика с Fast Reports, быстрая разработка и работа с Firebird/Interbase от Devrace" . На семинар приглашаются руководители групп, IT – директора, руководители проектов, разработчики, руководители служб технической поддержки, руководители структурных подразделений компании, системные интеграторы, заинтересованные в применении действенных эффективных инструментов бизнес - аналитики. Предварительная регистрация является обязательной! Программа семинаров: 09.30 – 10.00 Регистрация, кофе-брейк  10.00 – 10.10 Вступительное слово  10.10 – 10.40 FIBPlus: какой русский не любит прямой доступ к InterBase/Firebird?  10.40 – 11.10 FastReport Server и FastReport Studio - быстрые отчеты для чайников  11.10 – 11.40 Athlant и MultiProfile - монтировка в руках профессионала!  11.40 – 12.00 Перерыв, кофе  12.00 – 12.30 Как экономить время и деньги при разработке своей CRM системы  12.30 – 13.00 CleverFilter: фильтрация данных в руках пользователя - найти и отобрать!  13.00 – 13.30 Тайны лицензирования FastReport или почему выгодно быть партнером  Мы посетим такие города: 27 мая, в 10:00 Новосибирск - регистрация  28 мая, в 12:00 Красноярск - регистрация  30 мая, в 10:00 Иркутск - регистрация ### Fast Reports в списке лучших производителей ПО 2021 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreports-top-100 Summary: Fast Reports вошли в список лучших производителей программного обеспечения 2021 Fast Reports вошли в список лучших производителей программного обеспечения 2021 Который год подряд рады войти в Toп 100 издателей по версии  Component Source ! ### Fast Reports в ЮРГТУ (НПИ) URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/cooperation-npi-fastreport Summary: Fast Reports в ЮРГТУ (НПИ) Fast Reports в ЮРГТУ (НПИ) Компания Fast Reports подарила лицензии на использование генераторов отчётов FastReport Studio и FastReport.Net в образовательном процессе кафедре АСУ Южно-Российского Государственного Технического Университета (НПИ). Основатели компании - Александр Цыганенко и Михаил Филиппенко - выпускники как-раз этой кафедры .  Символично, что вручение проходило в лаборатории имени Черноморова Г.А. (заведовавшего кафедрой в их годы обучения). Стороны договорились о дальнейшем взаимодействии и сотрудничестве в вопросах разработки, научной работы и подготовки квалифицированных выпускников. ### Fast Reports на DelphiCon 2021 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/delphicon-2021 Summary: Наш спикер представляет доклад на тему: "Генерация счетов-фактур с помощью Telegram-бота с использованием FastReport VCL и Delphi" на DelphiCone 2021. Наш спикер представляет доклад на тему: "Генерация счетов-фактур с помощью Telegram-бота с использованием FastReport VCL и Delphi" на DelphiCone 2021. 18 ноября в 19.00 (Мск) Delphi-разработчик Fast Reports Александр Сырых выступит на DelphiCon 2021 , которую проведет Embarcadero, собрав лучших спикеров-экспертов в Delphi разработке. Конференция пройдет онлайн, в своем докладе Александр выступит с темой “Генерация счетов-фактур с помощью Telegram-бота с использованием FastReports и Delphi”. Доклад будет посвящен пошаговому рассмотрению процесса создания бота Telegram с меню, работа с API бота Telegram в Delphi, создание счетов-фактур с использованием FastReport VCL в формате PDF и отправка их пользователю. Участие бесплатно.  Занять свое место на докладе можно здесь. ### Fast Reports на выставке digIT2008 в г.Ростов-на-Дону 14 ноября 2008 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-digIT2008 Summary: Fast Reports на выставке digIT2008 в г.Ростов-на-Дону 14 ноября 2008 Fast Reports на выставке digIT2008 в г.Ростов-на-Дону 14 ноября 2008 Коллеги! Рады Вам сообщить, что 14 ноября 2008 года в рамках деловой программы выставки digIT2008 в г.Ростов-на-Дону (РФ), пройдет конференция организованная компанией Fast Reports, посвященная проблемам автоматизации предприятий. http://www.vertolexpo.ru/Exhibition.aspx?eid=103&ceid=819 Вход свободный. ### Fast Reports на выставке Interop 2007 Moscow URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/exhibition-interop-2007 Summary: Fast Reports на выставке Interop 2007 Moscow Fast Reports на выставке Interop 2007 Moscow Компания Fast Reports рада сообщить, что будет участвовать в выставке Interop 2007 Moscow c 30 по 31 мая и приглашает Вас посетить наш стенд №209. Наши специалисты будут рады представить вам: 1. Генератор отчётов FastReport Studio 4.0 для Windows Vista 2. Сервер отчётов FastReport Server 2.0 3. OLAP-компоненты FastCube 4. Партнёрскую программу Fast Reports План выставки Для обсуждения каких-либо вопросов с руководством компании Fast Reports договоритесь заранее о времени встречи. ### Fast Reports на выставке SofTool 2007 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/exhibition-softool-2007 Summary: Fast Reports на выставке SofTool 2007 Fast Reports на выставке SofTool 2007 Компания Fast Reports рада сообщить, что будет участвовать в выставке SofTool 2007 c 2 по 5 октября и приглашает Вас посетить наш стенд № А17. Наши специалисты будут рады представить вам:  1. FastReport .Net Preview! 2. Генератор отчётов FastReport Studio 4.0 для Windows Vista 3. Сервер отчётов FastReport Server 2.0 4. OLAP-компоненты FastCube 5. Партнёрскую программу Fast Reports Также все желающие могут принять участие в мини-турнире по Дартсу на призы компании Fast Reports. План выставки Как добраться до выставки? Для обсуждения каких-либо вопросов с руководством компании Fast Reports  договоритесь заранее о времени встречи. ### Fast Reports на выставке SOFTOOL-2008 с 30.09 по 03.10 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/softool-exhibition-2008 Summary: Fast Reports на выставке SOFTOOL-2008 с 30го сентября по 3-е октября Fast Reports на выставке SOFTOOL-2008 с 30го сентября по 3-е октября Приглашаем Вас посетить ежегодную выставку информационных  компьютерных технологий SOFTOOL-2008 ( http://www.softool.ru ),  которая пройдет в Москве с 30го сентября по 3-е октября, в павильоне №8 ЦВК "Экспоцентр" на Красной Пресне.  Наша компания, вместе с нашими компаниями-партнёрами ООО "ПолюсСофт ИТ" ( http://polesoft.ru )  и ООО "Тродос Консалтинг" ( http://qpronline.ru ),  будет ждать Вас на совместном стенде Fast Reports - В2. Схема павильона №8: http://fast-report.com/ru/images/foyer.jpg Вы сможете пообщаться с сотрудниками и узнать о новинках,  в том числе о FastReport.Net, выходящем на днях.  Время работы выставки: 30 сентября - 2 октября 10:00 - 18:00 3 октября 10:00-16:00  Вы можете получить бесплатный билет на выставку по электронной почте,  предварительно зарегистрировавшись на сайте ( http://www.softool.ru/shopregister/registraciq/index.khtml ).  Рассылка билетов начнется с 1 сентября. Регистрация закончится 25 сентября. ### Fast Reports на круглом столе "Реализация Целевой модели наставничества в ППО" URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/target-mentoring-model Summary: Fast Reports участвует на круглом столе "Реализация Целевой модели наставничества в ППО Ростовской области" с докладом. Fast Reports участвует на круглом столе "Реализация Целевой модели наставничества в ППО Ростовской области" с докладом. 25 февраля прошел Круглый стол «Реализация Целевой модели наставничества в ППО Ростовской области», где Fast Reports рассказали о форме наставничества «Работодатель - студент». В рамках этой программы наша компания проводит профессиональные пробы для учеников 10-11 классов и студентов 1-2 курса колледжа, а также организовывает профориентационные мастер-классы по различным квалификациям. Заинтересованных студентов обучают по образовательной программе " Академик ". Образовательные учреждения (ГБПОУ РО «РКСИ», ГБПОУ РО «НКПТ и У», ГПБОУ РО «РАДК», ГБПОУ РО «РКРИПТ», ЮФУ) делились опытом реализации проекта, а также рассказали о достигнутом успехе и возможных трудностях на всех этапах работы. Было разобрано несколько форм Наставничества, в которые были включены, такие виды как: “студент - студент”, “наставник - студент”, “работодатель - студент” и т.д. Посмотреть запись круглого стола. ### Fast Reports на семинаре Embarcadero URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-embarcadero-2017 Summary: Fast Reports на семинаре Embarcadero Fast Reports на семинаре Embarcadero 19 апреля в Москве состоится семинар, посвященный возможностям RAD Studio 10.2 Tokyo.  Ведущий разработчик Fast Reports направлений FMX и VCL будет рад ответить на ваши любые вопросы.  Участие бесплатно, обязательна регистрация Дата и время: 19 апреля (среда), начало регистрации в 9.30.  Адрес: г. Москва, ул. Сущевский Вал, д. 74, отель «Холидей Инн Москва Сущевский», зал «Гранд Бол рум» (3 мин. от метро «Рижская»). ### Fast Reports наградили призеров на чемпионате World Skills Russia URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/reward-prize-winners-worldskills Summary: Fast Reports наградили призеров на чемпионате World Skills Russia (Молодые профессионалы) в Ростове-на-Дону и Таганроге. Fast Reports наградили призеров на чемпионате World Skills Russia (Молодые профессионалы) в Ростове-на-Дону и Таганроге. 28 февраля 2022 года на базах Ростовский-на-Дону колледжа связи и информатики и Таганрогского колледжа морского приборостроения прошло закрытие Регионального Чемпионата "Молодые профессионалы". Наша компания поддержала и наградила такие направления как: "Интернет маркетинг", "Машинное обучение и большие данные". Чемпионат проводится уже 7 лет. За это время некоторые участники смогли стать экспертами известных компаний в своей профессиональной сфере. Сегодня все они успешны в своем деле и развиваются, придерживаясь своих профессиональных целей.   ### Fast Reports назвали лучших партнёров 2020 года URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/best-partners-2020 Summary: Fast Reports назвали лучших партнёров 2020 года Fast Reports назвали лучших партнёров 2020 года В начале 2021-го года мы проанализировали работу партнерского канала за 2020-й. Несмотря на трудный год, партнеры мобилизовались и не сдали позиций, а даже наоборот - показали свой рост. По итогам ушедшего года мы отобрали лучших из лучших. Рады представить наших "Партнёров года", которые проявили себя в продвижении, активном проведении мероприятий, и, конечно, продажах. Победители: Партнер года РФ -  Софтлайн Старт года РФ -  1С:Северо-Запад Партнер года North America -  Component Source Партнер года South America -  FireBase Партнер года Europe -  Component Source  /  IT Haimerl Партнер года Asia -  Evget  /  Ag Tech Партнер года OEM -  Isah “1С-Рарус” выделились, проведя большое количество мероприятий, и за свою маркетинговую активность получают награду в номинации «Best Marketing». Партнером года в категории «Academic» стал “Ростовский-на-Дону колледж связи и информатики”, на базе которого был открыт первый сертифицированный академический учебный центр Fast Reports. Михаил Филиппенко, генеральный директор: "Несмотря на очень непростой 2020-й год, наши партнёры показали себя с самой лучшей стороны. Мы ещё раз убедились, насколько важны крепкие доверительные отношения, являющиеся куда большим, чем "just business" - вместе мы делаем жизнь разработчиков приложений лучше!" Благодарим всех партнеров за сотрудничество и желаем им успехов и победы в новом году. ### Fast Reports спонсор Delphi Developer Days 2010 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fast-reports-sponsored-delphi-2010 Summary: Fast Reports Inc. выступит спонсором Delphi Developer Days 2010 и Первой Украинской международной конференции по Firebird Fast Reports Inc. выступит спонсором Delphi Developer Days 2010 и Первой Украинской международной конференции по Firebird Компания Fast Reports Inc., ведущий разработчик программного обеспечения для формирования отчетов, выступит спонсором Delphi Developer Days 2010 и Первой Украинской международной конференции, посвященной свободной системе управления базами данных Firebird. 23 апреля в Днепропетровске при спонсорской поддержке компании Fast Report Inc. состоится Первая Украинская международная конференция по Firebird. В рамках этого мероприятия  специалисты и разработчики проекта Firebird представят широкий спектр решений в области СУБД Firebird и выступят с докладами о популярных инструментах, используемых при создании и обслуживании информационных систем. Центральные темы будут освещены ведущими разработчиками Firebird  Дмитрием Емановым, Алексеем Пешковым и Владиславом Хорсун.  Новая версия Firebird 2.5 вышла также при поддержке Fast Report Inc., которая спонсирует  всемирную кампанию MindTheBird!. Fast Reports Inc. готова предоставить лицензии на некоторые из своих продуктов в качестве поощрения всем присоединившимся к кампании. Второе мероприятие, которое состоится при поддержке Fast Reports Inc., -— конференция Delphi Developer Days. Это уникальная возможность задать вопросы Кэри Дженсену и Марко Канту, ведущим специалистам Delphi. Организаторы обещают насыщенную программу докладов и круглых столов, а по завершении мероприятия все участники получат подготовленные Дженсеном и Кантом материалы и пособия. Конференция пройдет в мае в Англии, Германии и трех городах США. Ознакомиться с программой конференции, темами докладов и другой необходимой информацией можно на сайте события  http://www.delphideveloperdays.com . ### Fast Reports участвует в .NET Developers Days в Польше URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/event-warsaw-2016 Summary: Fast Reports участвует в .NET Developers Days в Польше Fast Reports участвует в .NET Developers Days в Польше Мы снова едем в Варшаву на .Net Developers Days!  Так это было в 2016 и мы рады снова принять участие в одной из самых крупных конференций для .Net разработчиков! Тысячи разработчиков, спикеров, экспонентов: пропустить нельзя! Узнайте о  .Net Developers Days ### Fast Reports участник Фонда поддержки ИТ-образования URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/IT-education-in-Rostov-on-Don Summary: Fast Reports участвует в Фонде поддержки ИТ-образования Ростовской области. Fast Reports участвует в Фонде поддержки ИТ-образования Ростовской области. 30 сентября прошла встреча руководителей, ведущих ИТ-компаний Ростовской области. Во время встречи фонда был определен ряд проблем и их варианты решения. Несмотря на то, что Ростовская область была признана, как самый цифровой регион по итогам народного голосования “Цифровой прорыв”, кадры остаются ключевой проблемой развития отрасли. Наряду с этим эксперты озабочены качеством знаний выпускников, несоответствием учебных программ требованиям отрасли, нехваткой хороших преподавателей, а также отсутствием их участия в реальных ИТ-проектах. В ходе обсуждения была принята программа по поддержке ИТ-образования Ростовской области, определены приоритеты и “дорожная карта” развития Фонда на ближайший год. Фонд создан для диалога с ВУЗами, помощи в ориентации и выставлении приоритетов в образовании преподавателям, выстраивании профессиональной траектории студентам. Одним из публичных шагов в решении проблем станет проведение конференции по теме подготовки кадров для цифровой экономики (первый квартал 2022 года). Уникальность Ростовской области - в наличии трёх сильных образовательных центров - Ростов-на-Дону, Таганрог и Новочеркасск, что отметили все участники встречи, и что даёт огромный потенциал для реализации нашего региона как ИТ-драйвера страны. Все участники готовы вкладывать не только деньги, но и свой опыт работы с учебными заведениями, преподавательский опыт, разработки и ноу-хау. Генеральный директор Fast Reports Михаил Филиппенко так прокомментировал эту особенность работы: Нам хочется помочь преподавателям расширить доступные для них возможности. У многих компаний есть готовые курсы, библиотеки, софт, которые педагоги могут использовать в своей работе. У нас, например, есть целая академическая программа поддержки. Опыт показывает, что это большая ценность как для преподавателей, так и для студентов. Фонд был создан 25 августа 2021 года. Ведущие региональные компании Ростовской области подписали Соглашение о сотрудничестве и приняли решение об учреждении Фонда, основной целью которого станет раскрытие цифрового потенциала донского региона. В учредительный фонд вошли такие ИТ-лидеры Ростовской области как: ООО “РНДСОФТ”, ООО “Fast Reports”, ФГАНУ НИИ “Спецвузавтоматика”, ООО “Иностудио Солюшинс”, ПАО КБ «Центр-инвест», ООО “Студия Олега Чулакова”, ООО “Себбиа”, ООО “ИТ-Групп”, ООО “ВебАнт”, ООО “Вебпрактик”, ООО “Илонсофт”. ### FastCube - высокоскоростной движок OLAP-кубов и Pivot Grid URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastcube-pivot-grid-olap Summary: Изучаем FastCube .NET и его возможности. Изучаем FastCube .NET и его возможности. Изучаем FastCube .NET и его возможности. Сложно представить анализ данных без технологии OLAP (On-Line Analytical Processing) . Хотя существуют разные мнения по поводу того, стоит ли считать OLAP технологией или идеологией. Ведь OLAP можно представить и как сложный многомерный куб , и как обычные перекрёстные таблицы (кросс-таблицы). Все это можно назвать оперативной аналитической обработкой данных. Традиционно OLAP принято считать технологией для упорядочения больших объемов данных с целью проведения статистического анализа. Часто OLAP системы называют кубами . Как мы знаем куб имеет три измерения: длину, ширину и высоту. Поэтому куб – трехмерная фигура. Также и с данными. Например, данные по количеству проданных товаров каждым менеджером компании можно представить в виде матрицы (кросс-таблицы). Это двумерный набор данных – в заголовках строк – наименование товара, в заголовках колонок – имена менеджеров. Но если мы добавим еще одно измерение, например, месяцы, то этот набор данных станет трехмерным. А можно добавить еще и годы. То есть количество измерений совсем не ограничивается двумя-тремя. Название куб не должно вводить вас в заблуждение, оно служит лишь для того, чтобы было сразу понятно – речь идет о многомерном хранилище данных . Таким образом, OLAP куб на практике может иметь несколько десятков измерений – это очень сложная конструкция, которую сложно представить в голове. Но именно такой многомерный куб и позволяет собрать все данные воедино и быстро получить нужную информацию для анализа. Для работы с кубами применяют срезы – то есть выборку только определенных, нужных вам измерений. Удобство работы с кубами в том, что вы можете мгновенно добавить необходимые измерения в свой срез, ведь куб уже построен, и вы берете из него лишь нужное. На волне востребованности OLAP-систем компания Fast Reports выпустила свою – FastCube.  Так как конечным итогом работы аналитика становится отчет, всякая OLAP-система должна уметь их генерировать. Это можно отнести к сильным сторонам FastCube, ведь она использует популярный и быстрый генератор отчетов FastReport VCL для платформ VCL и LCL (FastCube VCL), FastReport.Net – для платформы .Net и Mono (FastCube .Net), FastReport FMX – для платформы FMX (FastCube FMX). В отличие от готовых «коробочных» продуктов, FastCube представляет собой набор библиотек для целевой платформы. Это позволяет включать в собственные приложения OLAP компонент. Такое решение более гибкое, хоть и требует навыки программирования для создания своего приложения. Все же, для тех, кого бы устроило какое-либо стандартное решение без создания собственного приложения, есть демонстрационное приложение в поставке. Оно представляет собой интерфейс для работы с кубом и срезами и содержит все стандартные инструменты FastCube. Возможно, большинству будет достаточно и этого приложения для своей работы. Выглядит это демонстрационное приложение так: Какие же возможности предоставляет нам FastCube.Рассмотрим их кратко: 1)      Очень просто создавать срезы. Главное - указать источник данных: таблица, либо SQL запрос. Затем, вы добавляете в кросс-таблицу нужные поля в измерения, показатели (measures), сортировку, фильтры и прочее. 2)      Доступны стандартные статистические операции: сумма, минимальное, максимальное, среднее значение, счетчик, дисперсия. Эти операции используются для фильтрации или выделения данных. 3)      Дополнительные функции для фильтрации и условного выделения данных: список уникальных значений, количество уникальных значений, первое встреченное значение. 4)      Возможность создавать вычисляемые показатели. Это реализуется с помощью скрипта на одном из доступных языков программирования (Delphi и C++ - для платформы VCL, VB.Net, C# - для .Net) 5)      Сортировка по осям (по измерениям и показателям). Можно применить несколько сортировок для каждого измерения. 6)      Условное выделение значений ячейки в срезе. Эта очень полезная функция, которая позволит выделить цветом, или значками данные, в зависимости от условия. 7)      Гибкие настройки отображения итогов. Можно задавать положение итога (в начале, в конце), делать невидимыми. 8)      Возможность создавать вычисляемые фильтры значений при расчете показателей. Реализуется с помощью скрипта. 9)      Формат вывода показателей (дата, деньги, текст, число). Можно добавить свой формат. 10)   Измерения можно сворачивать как конкретные, так и все целиком. 11)   Кросс-таблицу можно транспонировать – поворачивать, менять строки и столбцы местами. 12)   Показатели могут отображаться как процент. 13)   Возможность строить графики с помощью TeeChart. 14)   Возможность просматривать и экспортировать детализацию ячейки, то есть записи из исходной таблицы, откуда берутся данные для ячейки. 15)   Доступен экспорт среза в один из форматов: HTML, DBF, CSV, XML, Open Document Spreadsheet, Excel, Excel 2007. 16)   Можно сохранять куб и схему. 17)   Возможность скопировать диапазон значений из кросс-таблицы в буфер. 18)   Дата автоматически разбивается на дату и время. Так что есть возможность выводить их раздельно. 19)   Срез может быть преобразован в отчет FastReport. А это означает, что могут быть использованы средства генератора отчета для вывода, экспорта и печати этого отчета, что расширяет возможности FastCube. 20)   Возможность экспорта куба/данных в XML. 21)   Настройки куба можно задавать программно или с интерфейса. 22)   Возможность создания готовых шаблонов (схем) для сводных таблиц. Есть возможность запрета изменения схемы пользователем. Рассмотренные возможности продукта говорят нам, что помимо стандартных возможностей по созданию срезов куба, сортировки и фильтрации, предусмотрены расширенные средства анализа данных. В частности, это инструмент условного выделения данных. В зависимости от условия ячейки могут подсвечиваться цветом, в ячейку могут добавляться иконки или градиент. Эти графические указатели помогают быстро оценить какие из значений попадают в заданный диапазон, или превышают его. Не маловажной является возможность экспорта среза. Это можно произвести как штатными средствами FastCube, так и через генератор отчетов. Во втором случае список возможных форматов экспорта значительно больше. Нужно отметить, что куб можно подключать к базам данных как с помощью стандартных компонентов ADO и BDE, так и с помощью любые других источников данных посредством TDataSet. В заключение можно сказать, что FastCube обеспечивает быструю загрузку и обработку больших объемов данных.  Хоть FastCube и подразумевает создание собственного приложения на основе компонентов, конечное использование куба пользователем не требует специфических знаний программиста. Tags: .NET, VCL, FMX, FastCube, Visual Studio, FastReport, Delphi ### FastCube .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-cube-net Summary: С#-библиотека оперативного анализа данных с поддержкой .NET Framework 4.7.2, Mono, ASP.NET MVC и WinForms С#-библиотека оперативного анализа данных с поддержкой .NET Framework 4.7.2, Mono, ASP.NET MVC и WinForms FastCube .NET это библиотека на языке C# для OLAP анализа больших данных на базе .NET Framework 4.7.2, Mono FastCube .NET С#-библиотека оперативного анализа данных с поддержкой .NET Framework 4.7.2, Mono, ASP.NET MVC и WinForms Скачать демо Онлайн демо Документация FastCube .NET позволит Вам без лишних затрат сил и времени проанализировать данные, получить сводные таблицы (срезы данных), построить отчеты и графики. Узнать больше Встраивание в интерфейс Полная настройка и интеграция в интерфейс вашего бизнес-приложения. Глобальный фильтр Используйте один куб данных для синхронного анализа по различным критериям, построенным по независимым фильтрам. Исходный код Этот набор компонентов включает в себя исходные коды. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Узнать больше Ultimate .NET Узнать больше о Ultimate Купить FastCube .NET В данный момент библиотека работает с приложениями на WinForms, .NET Framework 4.7.2, Mono Framework. Как настроить WSL 2 для работы с FastReport и FastCube В этой статье вы узнаете, как использовать возможности WSL в связке с FastReport и FastCube для оптимизации работы с данными и создания эффективных отчётов. В этой статье попробуем вместе разобраться, как настроить WSL 2 для работы с компонентами FastReport и FastCube в Lazarus для Linux. Установка компонентов FastReport и FastCube в Lazarus Инструкция по установке FastReport в Lazarus для различных операционных систем со сравнением редакций Academic, Trial, Professional. Инструкция по установке FastReport в Lazarus для различных операционных систем со сравнением редакций Academic, Trial, Professional. Как использовать фильтры и возможности сортировки в FastCube VCL Рассказываем о видах фильтрации и сортировки данных в аналитической среде FastCube VCL с подробной инструкцией по созданию кастомных фильтров. Рассказываем о видах фильтрации и сортировки данных в аналитической среде FastCube VCL с подробной инструкцией по созданию кастомных фильтров. Остались вопросы? Связаться с менеджером ### FastCube FMX commercial beta URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-fmx-commercial-beta Summary: FastCube FMX commercial beta FastCube FMX commercial beta Выпущена коммерческая бета-версия FastCube FMX для Delphi XE4-XE6. Компиляция только для Windows и OS X. FASTCUBE FMX - инструмент оперативного анализа данных FastCube FMX позволит Вам без лишних затрат сил и времени проанализировать данные, получить сводные таблицы  (срезы данных),  построить отчеты и графики. Это удобное средство оперативной аналитической обработки больших массивов данных. Поддерживает : Embarcadero Delphi XE4, XE5, XE6, C++Builder XE4, XE5, XE6, RAD Studio XE4 и выше. FastCube FMX относится к классу Desktop OLAP. Поддерживается компиляция для MS Windows и Apple Mac OS X. ### FastCube FMX для FireMonkey URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-fastcube-fmx Summary: FastCube FMX для FireMonkey FastCube FMX для FireMonkey Релиз продукта FastCube FMX - инструмент оперативного анализа данных для FireMonkey. - Поддерживает: Embarcadero Delphi/C++Builder XE4, XE5, XE6, XE7. - Поддерживается компиляция для MS Windows и Apple Mac OS X. - Создание среза данных “на лету”. Достаточно указать таблицу/SQL-запрос или пользовательский источник данных. - Все основные статистические операции (Счетчик, сумма, минимальное, максимальное, среднее, дисперсия и т.д.) - Специальные функции (Количество уникальных значений, первое встреченное значение, список уникальных значений) - Фильтры для значений измерений - Автоматическая разбивка дат и времени на составляющие при загрузке данных и в процессе работы - Неограниченное количество показателей в сводной таблице - Возможность расположения показателей в столбцах или в строках, а так же на любом уровне измерений - Вычисляемые показатели (на основе FastScript) - Вычисляемые фильтры для значений при расчете показателей (на основе FastScript) - Управление отображением значений показателей с помощью формата вывода. Есть возможность добавления пользовательских форматов. - Вывод показателей в виде значения или процента (в строке, в колонке, в группе, общий по таблице) - Возможность использования показателей типа Дата, Время и Строка. - Условное выделение значений ячейки в срезе (по диапазону) - Возможность сворачивать измерения целиком, а также любые значения по отдельности - Возможность управления отображением итогов - Управление сортировкой осей (по значению измерения или показателя) - Управление сортировкой каждого уровня измерений (направление сортировки) - Группировка значений измерений - Top-N - Сохранение шаблонов (схем) и самих данных для последующего использования - Экспорт среза куба в Excel и HTML - Копирование выделенного диапазона в буфер обмена - Просмотр и экспорт детализации ячейки среза - Экспорт куба/данных куба в XML форматы: XML for Analysis, xml-msdata, ms rowset, DataPacket - Вывод на печать с использованием FastReport FMX - Построение графиков с использованием TeeChart - Утилита Recompile Wizard ### FastCube VCL - "Достижение Российского ПО 2015" URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/award-fastcube-vcl-2015 Summary: FastCube VCL - "Достижение Российского ПО 2015" FastCube VCL - "Достижение Российского ПО 2015" FastCube VCL 2 вошел в список "Российское ПО 2015: инновации и достижения" журнала PC Magazine ! FastCube признан одной из самых интересных и технологичных разработок отечественных компаний. Выбор в рейтинге делается на основании голосования читателей PC Magazine/RE и мнений экспертов издания. При отборе учитывается новизна разработки: рассматривались прежде всего программы, официально представленные либо существенно переработанные (с увеличением старшего номера версии) в текущем году. Помимо этого, учитывается общая оценка на основании голосов читателей и экспертов. Ознакомиться с полным обзором разработок можно здесь . ### FastEditors URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-editors-vcl Summary: Библиотека UI компонентов для визуализации и редактирования данных на VCL и Lazarus Библиотека UI компонентов для визуализации и редактирования данных на VCL и Lazarus Универсальная библиотека с UI-элементами для просмотра и редактирования данных с помощью самостоятельных компонентов или встроенных в ячейки FastGrid редакторов. FastEditors Библиотека UI компонентов для визуализации и редактирования данных на VCL и Lazarus Купить Попробовать Документация Встраиваемость в компонент FastGrid Некоторые свойства и события собраны в набор под названием Properties. На его основе автоматически создаются редакторы в ячейках компонента FastGrid. Это упрощает форматирование и редактирование данных. Предсказуемое поведение Поведение редакторов похоже на стандартные редакторы VCL и Lazarus. Библиотека поддерживает основные свойства, методы и события. Благодаря этому наши редакторы легко интегрировать в проект как в составе компонента FastGrid, так и в качестве отдельных компонентов. Интерфейс бизнес-приложения «как есть» Создавайте идеальный интерфейс для вашего бизнес-приложения без лишних усилий. Принцип WYSIWYG («что видишь, то и получаешь») позволяет получить наглядные результаты быстро и просто. Высокая производительность Редакторы в ячейках FastGrid работают оптимально и эффективно. Они создают поле ввода и визуальное представление данных только при необходимости. Это ускоряет работу и избавляет от лишних идентификаторов окна. Экспорт данных Интеграция с FastReport VCL Reporting упрощает экспорт данных из ячеек FastGrid. Вы можете легко выводить их на печать в том виде, в котором они представлены в проекте. Исходный код Библиотека FastEditors включает в себя исходный код каждого редактора. Максимальное удобство для компаний, желающих гибко адаптировать готовое решение под свои нужды. Ultimate VCL Узнать больше о Ultimate VCL Узнать больше Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### FastExperts 1.21 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastexperts-1.21 Summary: FastExperts 1.21 FastExperts 1.21 Новая версия FastExperts. - поддержка новых языков - исправлены ошибки предыдущей версии ### FastGrid URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-grid-vcl Summary: Библиотека для визуализации, редактирования и структурирования данных на VCL и Lazarus Библиотека для визуализации, редактирования и структурирования данных на VCL и Lazarus Универсальная библиотека с UI элементами для визуализации, редактирования, а также структурирования локальных и серверных данных на VCL и Lazarus. FastGrid Библиотека для визуализации, редактирования и структурирования данных на VCL и Lazarus Купить Попробовать Документация Узнать больше Высокая производительность Наши компоненты прошли множество этапов тестирования, чтобы действительно стабильно работать с большими объемами данных. Ваша информация будет обработана за пару мгновений. Источники данных Подключайтесь к локальным и серверным источникам данных без сложных настроек и дополнительных инструментов. Стандартный TDataSource компонент поддерживает подключения к FireDAC, ADO, BDE, DBX, IBX, FIBPlus и Oracle. Интерфейс бизнес-приложения «как есть» Создание идеального интерфейса для вашего бизнес-приложения по принципу WYSIWYG («что видишь, то и получаешь»). Наглядные результаты без лишних усилий! Встроенные редакторы Наши редакторы позволяют преобразовывать ваши данные в удобную и наглядную информацию. Принимайте бизнес-решения с помощью UI элементов, автоматически подстраиваемых под типы данных. Экспорт данных Интеграция с FastReport VCL Reporting позволяет вам с лёгкостью экспортировать данные в различные форматы и выводить их на печать. Исходный код Библиотека FastGrid включает в себя исходные коды. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Ultimate VCL Узнать больше об Ultimate Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### FastQueryBuilder URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-query-builder Summary: Визуальный построитель SQL-запросов к базам данных для VCL и Lazarus приложений Визуальный построитель SQL-запросов к базам данных для VCL и Lazarus приложений Визуальный конструктор для максимально быстрого построения текста запроса на языке SQL в VCL, FMX и Lazarus приложениях. FastQueryBuilder Визуальный построитель SQL-запросов к базам данных для VCL и Lazarus приложений Попробовать Документация Узнать больше Поддержка платформ Embarcadero Delphi (бывший Borland и бывший CodeGear), C++Builder и RAD Studio 2009 и Lazarus. Удобство в работе FastQueryBuilder сохраняет визуальную модель запроса для дальнейшего использования и корректировки. Наглядность Полностью визуальная настройка параметров запросов может быть встроена в любое окно вашего приложения. Ultimate VCL Узнать больше о Ultimate В данный момент FastQueryBuilder работает в Windows и Linux системах. Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-report-net Summary: Библиотека генерации отчётов и создания документов для .NET 10, Blazor, .NET Core, ASP.NET, MVC и WinForms Библиотека генерации отчётов и создания документов для .NET 10, Blazor, .NET Core, ASP.NET, MVC и WinForms Ядро для создания, редактирования и формирования отчетов на различных платформах. Библиотека генерации отчётов и создания документов для .NET 10, Blazor, ASP.NET, MVC и Windows Forms FastReport .NET Библиотека генерации отчётов и создания документов для .NET 10, Blazor, .NET Core, ASP.NET, MVC и WinForms Попробовать Документация ## Библиотека генерации отчётов и создания документов для .NET 10, Blazor, .NET Core, ASP.NET, MVC и WinForms. Возможно использование в средах Microsoft Visual Studio 2026 и JetBrains Rider. Узнать больше Встраиваемость в проекты Установите необходимый пакет из NuGet репозитория и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Множество компонентов Для построения отчетов в дизайнере доступны разнообразные элементы: от текста и изображений до математических формул и 3D-диаграмм. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Совместимость и интеграция FastReport .NET является частью единой экосистемы FastReport на C#. Отчёты, созданные в других продуктах, будут работать в этом продукте и наоборот. Плавный переход из других решений Наш генератор отчетов мгновенно преобразует ваши отчеты из List&Label, DevExpress, Microsoft Reporting Services (RDL, RDLC), Crystal Reports, StimulSoft, Jasper Library в формат FastReport. System.Drawing (GDI) Для создания графических элементов, отрисовки текста и управления графических изображений используется уже привычный System.Drawing с графическими функциями GDI+ или Skia. Генератор отчётов для WinForms, Blazor Server, ASP.NET, MVC, .NET 10 Используя FastReport .NET, вы можете создавать отчеты, работающие независимо от приложения. Другими словами, FastReport .NET может быть использован как самостоятельное решение для построения отчетов. Судите сами: - Содержит мощный визуальный дизайнер для создания и модификации отчетов. Ваше приложение может запустить дизайнер отчетов из кода; - Содержит онлайн дизайнер отчетов для ASP.NET; - Вы можете подключиться к любой базе данных, использовать любые ее таблицы или создать собственные запросы на языке SQL; - Вы можете добавить одну или несколько диалоговых форм в отчет для запроса параметров перед запуском отчета; - Используя встроенный скрипт, можно управлять взаимодействием между элементами управления диалоговых форм и производить сложную обработку данных; - Наконец, вы можете увидеть результат в окне предварительного просмотра, вывести отчет на печать или сохранить его во множестве популярных форматов.  Скачать демо ASP.NET MVC демо .NET Core демо Online Designer демо Blazor WASM демо Blazor Server демо Что такое FastReport .NET? - FastReport .NET написан на C# и содержит только управляемый код. Он совместим с .NET Framework 4.6.2 и более новыми, .NET Core, .NET 10, Blazor. - FastReport .NET поставляется с исходными кодами в редакции Ultimate. Вы можете адаптировать его под собственные нужды. - Разумная цена и лицензионная политика. В стоимость лицензии входит визуальный дизайнер - вы можете дать вашим пользователям возможность самостоятельно разрабатывать отчеты. Каких-либо дополнительных отчислений с вашей стороны не требуется! Обратите внимание на полные условия использования в  Лицензионном соглашении ! - Генератор отчетов FastReport .NET позволяет добавить в отчет географические карты с помощью объекта maps, что сделает соответствующий тематике отчет еще более интерактивным. - Интегрированная в FastReport .NET поддержка облачных сервисов дает возможность сохранять отчеты в хранилища: Google Drive, OneDrive, DropBox, Box. Есть возможность отправки документов по e-mail и FTP. - Расширяемая архитектура FastReport .NET позволяет создавать и подключать к отчету свои объекты, фильтры экспорта, функции, мастера, движки БД. Если имеющихся возможностей вам не достаточно - расширьте их! - Автоматизированное обновление Nuget пакетов в Visual Studio . - Поддержка RDL формата - возможность открывать и сохранять в этом формате.  - Поддержка импорта отчетов Crystal Reports.  - Очень компактный и действительно Быстрый! Узнать больше Как купить продукт? Ultimate .NET WEB WinForms WPF Avalonia Mono # Входит ли FastReport .NET в реестр программного обеспечения? Да, этот программный продукт находится в реестре ПО. Подробная информация доступна [**по этой ссылке.**](https://reestr.digital.gov.ru/reestr/302351/) Как из FastReport .NET экспортировать отчет в DXF DXF (Drawing Exchange Format) — это открытый формат обмена графическими данными, разработанный компанией Autodesk для хранения и передачи двумерных и трехмерных чертежей. Благодаря широкой поддержке со стороны различных CAD-систем, DXF стал одним из наиболее распространенных форматов для обмена инженерной и технической документацией между приложениями. В этой статье рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Как из FastReport .NET экспортировать отчет в PostScript FastReport .NET поддерживает экспорт отчетов во множество популярных форматов, таких как PDF, Excel, Word и другие. Однако для задач профессиональной полиграфии, работы с плоттерами или специализированным печатным оборудованием часто требуется формат PostScript (.ps). В этой статье мы на примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. В этой статье мы на простом примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. Как настроить Content Security Policy для отчетов FastReport .NET WEB Content Security Policy (CSP) — ключевой инструмент защиты веб‑приложений от XSS‑атак, но его интеграция с отчётными системами нередко сопряжена со сложностями. В новых версиях FastReport .NET WEB архитектура клиентской части существенно переработана — это упрощает соблюдение строгой CSP без потери функциональности отчётов. В статье разберём, как грамотно настроить CSP для отчётов FastReport и учесть типичные риски. Узнайте, как настроить Content Security Policy для отчётов FastReport .NET WEB: обзор директив и значений CSP, изменения в архитектуре FastReport, типичные сценарии обхода и способы защиты. Остались вопросы? Связаться с менеджером ### FastReport .NET - 2017.4 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2017.4 Summary: FastReport .NET - 2017.4 FastReport .NET - 2017.4 В версии 2017.4 очень много полезных изменений: поддержка .NET Core (в редакциях Professional и Enterprise) новые объекты отчета: изображения SVG и датчики отправка отчетов через Telegram экспорт в формат научной документации LaTeX редактор хайлайтов и гиперссылок в Online Designer Android приложение для просмотра готовых отчетов доступно в Google Play Market   А еще...   [Core] + добавлена поддержка .NET Core в редациях Professional и Enterprise (\Demos\Core\FastReportCore.MVC\readme.txt)   [Engine] + добавлено свойство Trim для линейных штрих-кодов + добавлено свойство Tag для всех компонентов + добавлено сохранение мета-данных (ReportInfo.Name, ReportInfo.Author, ReportInfo.Description,   ReportInfo.Created, ReportInfo.Modified, ReportInfo.CreatorVersion) в файл готового отчета + добавлены функции RegisterData(DataSet data, bool enableAllTables) и RegisterData(DataSet data, string name, bool enableAllTables)   для регистрации DataSet и активации всех его таблиц + добавлена возможность обращаться к Report.Dictionary без чувствительности к регистру + добавлен круговой датчик (RadialGauge) + добавлен простой датчик прогресса (SimpleProgressGauge) - исправлена ошибка вывода неверных результатов для значений типа n.9999 в функциях NumToWords - исправлена ошибка с многопоточным построением и использованием курсоров в отчете - исправлены границы объектов типа датчик (Gauge) - исправлены пропорции шкалы и указателя простого датчика (SimpleGauge)   [Дизайнер] + добавлен постраничный вывод в окне просмотра данных + добавлен Пробел в список разделителей в подключении к CSV таблице + добавлена возможность открывать файлы List and Label с расширениями crd, srt, inv, lab и let + добавлен выбор предыдущего фильтра в окне открытия файла - исправлена ошибка с удалением бэндов при определенной последовательности действий - исправлена ошибка с пустыми полями при подключении к CSV таблице - исправлена ошибка с пробелом в качестве разделителя при подключении к CSV таблице - исправлена ошибка со строками без разделителей при подключении к CSV таблице - исправлена ошибка при просмотре данных бизнес-объекта - исправлена ошибка со значением System.Guid равным null - исправлена ошибка в классе PageColumns когда количество позиций не равно количеству колонок   [Экспорты] + добавлен экспорт в LaTeX (без изображений, поддерживается XeLaTeX) * добавлено свойство Word2007Export.RowHeight с множеством (Minimum, Exactly) * добавлено преобразование в процентный формат для экспорта в Excel2007(*.xlsx) - исправлена ошибка с дубликатами баркодов в PDF экспорте - исправлена ошибка дублирования ячеек таблиц в экспортах в XAML и SVG - исправлена ошибка экспорта символа тильда (~) в экспорте в Excel2007 - исправлена ошибка дублирования изображений в PDF экспорте - исправлена ошибка экспорта Biff8 из подготовленного отчёта - добавлена возможность экспортировать текстовые объекты с нестандартным значением параметра FontWithRatio в Excel 2007   [WebReport] + добавлено свойство WebReport.DesignerConfig для хранения пользовательского конфигурационного файла для Online Designer - исправлено изменение размеров объекта WebReport   [Extras] + добавлен пример Web API self-hosted (Demos\C#\Web\WebApiSelfHosted) + добавлен плагин объекта SVG (SVGObject, \Extras\Misc\SVGObjectPlugin) + добавлен плагин для отправки отчетов с помощью Telegram (\Extras\Misc\Messaging\TelegramMessenger) * улучшен конвертор из Crystal Reports, теперь работает и с последними версиями Crystal   [Online Designer] + добавлен Highlight редактор + добавлена область за которую можно ресайзить левый SideBar + добавлены MaxiCode & Intelligent Mail баркоды + возможность вызывать управляющие диалоги из панели properties кликом по кнопке в заголовке подраздела + переключатель сразу всех панелей кастомизации + диалог редактирования шрифта + диалог редактирования border свойства + диалог редактирования hyperlink свойства + изменен механизм сборки * изменен дизайн всплывающих сообщений в правом верхнем углу - исправлен баг из-за которого DataHeader Band позиционировался после DataBand - исправлен баг с зависанием на этапе загрузки в IE ### FastReport .NET 2013.2 MVC URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/net-2013.2-mvc В связи с выпуском новой версии генератора отчетов FastReport .NET 2013.2 прошу обратить внимание  всех пользователей объекта WebReport на следующие изменения. Во-первых , изменилось расширение у имени хендлера, который необходимо прописывать в файле web.config для корректной работы WebReport. Старое название «FastReport.Export.aspx» нужно заменить на новое «FastReport.Export.axd». Если этого не сделать, то WebReport вызовет исключение с ошибкой и инструкциями по внесению изменений в файл web.config. Проверить корректную работу хендлера WebReport можно набрав в адресной строке браузера: http://site_address/app_folder/ FastReport.Export.axd (замените строки site_address и app_folder на свои). В случае удачного запроса будет выведен номер версии FastReport и текущее серверное время. Во-вторых , в FastReport .Net 2013.2 добавлена поддержка фреймворка ASP.NET MVC всех версий. С использованием контрола в разметке ASPX (MVC 2) не должно возникнуть никаких сложностей – объект достаточно перетащить на форму из Toolbox, установить свойства и работать с ним как с привычным контролом. Необходимые настройки в файл web.config будут добавлены автоматически. Пример применения WebReport в разметке aspx можно посмотреть в папке \Demos\C#\MvcDemo. На использовании WebReport в разметке Razor, которая появилась с версии MVC 3 нужно остановиться подробнее.  Для корректной работы WebReport нужно добавить в файл web.config в корневой папке веб-приложения определения хендлеров.  При использовании сервера IIS7 и выше нужно добавить следующую строку в секцию : При использовании IIS6 добавляется строка в секцию : Далее нужно внести изменения в файл web.config в папке, где находятся View.  В секцию нужно добавить строки: Эти строки необходимы, чтобы можно было создавать объекты FastReport и обращаться к их свойствам непосредственно во View. В файле _Layout.cshtml в теге добавляем строки: @WebReportGlobals.Scripts() @WebReportGlobals.Styles() Теперь можно переходить к отображению отчета на View. Переходим в соответствующий контроллер и создаем там WebReport: WebReport webReport = new WebReport(); // создаем объект webReport.Width = 600;  // задаем ширину webReport.Height = 800; // задаем высоту webReport.Report.RegisterData(dataSet, "AppData"); // привязка источника данных webReport.ReportFile = this.Server.MapPath("~/App_Data/report.frx");  // загрузка отчета из файла ViewBag.WebReport = webReport; // передаем данные во View В коде View добавляем строку в нужное место: @ViewBag.WebReport.GetHtml() Аналогичный код по созданию WebReport можно написать также непосредственно во View. Пример использования WebReport  в разметке Razor находится в папке \Demos\C#\MvcRazor. Там есть различные варианты загрузки отчета, в том числе и заранее подготовленного, а также есть пример использования события StartReport. Не забудьте добавить в папку bin каждого из примеров недостающие библиотеки. Tags: .NET, FastReport, MVC, .NET, FastReport, MVC ### FastReport .NET 2017.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2017.3 Summary: FastReport .NET 2017.3 FastReport .NET 2017.3 В новой версии FastReport .NET 2017.3 добавлены 2 новых баркода: Intelligent Mail Barcode для USPS и MaxiCode для хранения сопутствующей информации о грузоперевозках. Реализована возможность вложения файлов в PDF. Добавлен пример использования FastReport .Net совместно с фреймворком ASP.NET Web API Все изменения: [Core] + добавлен баркод Intelligent Mail (USPS) + добавлен баркод MaxiCode + добавлено свойство Report.ReportInfo.Tag + добавлено свойство Report.ReportInfo.SaveMode + добавлена поддержка функций с необязательными параметрами * реализована поддержка потокобезопасных коллекций для .Net 4 [Designer] + добавлена возможность многострочного редактирования свойств Report.ReportInfo.Description и Report.ReportInfo.Tag - исправлена ошибка с неверной шириной разных линий рамки [Экспорты] + добавлена возможность присоединения файлов к экспорту в формате PDF с помощью методов: PDFExport.AddEmbeddedXML, PDFExport.AddEmbeddedFile - исправлена ошибка создания пустой страницы после таблиц в экспортах RTF и Word2007 - исправлена ошибка неправильной работы свойства Exportable у бэндов - исправлена ошибка отображения дат в экспорте в Excel2007 - исправлена ошибка с отступами и высотой строки в PDF экспорте - исправлена ошибка с черными прямоугольниками в экспортах [Extras] + добавлен новый пример работы с ZUGFeRD и PDF/A-3b \Demos\C#\ZUGFeRD + добавлен новый пример работы с Web API \Demos\C#\Web\WebApi - исправлена ошибка с относительным путем к файлу JSON в JSON коннекторе [WebReport] + добавлены свойства WebReport.RequestHeaders, WebReport.ResponseHeaders + добавлена обработка ошибок при вызове WebReport.DesignerSaveCallBack - исправлены отступы страниц при печати из браузера - исправлена ошибка с линиями в HTML экспорте и WebReport - исправлена обработка ошибок TTF для экспорта в PDF [Online Designer] + добавлена поддержка свойства ReportInfo.Tag у объекта Report - исправлено многоуровневое отображение дочерних связей - свойство Padding может содержать только целочисленные значения ### FastReport .NET Avalonia совместима с Альт Рабочая станция 10 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/compatibility-alt-avalonia Summary: Библиотека для генерации отчетов FastReport .NET Avalonia получила сертификат совместимости с Альт Рабочая станция 10 Библиотека для генерации отчетов FastReport .NET Avalonia получила сертификат совместимости с Альт Рабочая станция 10 В рамках импортозамещения компании ООО "Быстрые отчеты" и ООО "Базальт СПО" подписали сертификат совместимости программного обеспечения FastReport .NET Avalonia с операционной системой семейства "Альт" на платформе x86_64. Базальт СПО  (ALT Linux) - разработчик российских ОС Альт Рабочая станция, Альт Сервер, Альт Образование, Альт СП, Альт Виртуализация, Simply Linux. "Базальт СПО" (Alt Linux до 2015 года) — разработчик линейки российских операционных систем «Альт» для рабочих станций, серверов и построения виртуальной инфраструктуры. ОС служат платформой для ИТ-инфраструктур любого масштаба и сложности; развитие платформы ведется более 20 лет. ОС «Альт» включены в Единый реестр российского ПО. Наличие собственной независимой инфраструктуры разработки обеспечивает развитие самостоятельных операционных систем, а не клонов (деривативов) зарубежных ОС. Все разработчики «Базальт СПО» являются членами ALT Linux Team — международной команды разработчиков свободного программного обеспечения. "Альт Рабочая станция" — универсальная операционная система для компьютеров и ноутбуков. Она включает в себя расширенный набор программ и драйверы современных устройств. А также содержит графическую оболочку MATE. После проведенных испытаний и тестов специалистами компаний была подтверждена функциональная работоспособность и совместимость FastReport .NET Avalonia с дистрибутивом ОС Альт Рабочая станция 10.  ### FastReport .NET Core URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-net-core Summary: Посмотрите, как использовать FastReport .NET не только под Windows, но и под Linux в контейнерах Docker. Посмотрите, как использовать FastReport .NET не только под Windows, но и под Linux в контейнерах Docker. Посмотрите, как использовать FastReport .NET не только под Windows, но и под Linux в контейнерах Docker. В FastReport .NET 2017.4 появилась поддержка .NET Core, теперь вы можете использовать FastReport .NET не только под Windows, но и под Linux или в контейнерах Docker. Для Linux нужен XServer и библиотеки libgdiplus и libx11-dev. В комплекте поставки есть демо-версия, которая позволяет проверить работу FR.Net на вашем устройстве. Найти ее можно в папке "\Demos\Core\FastReportCore.MVC". FastReport.Net Core соответствует .Net Standard 2.0. Появилась возможность подключить FastReport .NET Core при помощи менеджера пакетов NuGet. Для того, чтобы подключить FastReport.Net через NuGet, необходимо: - Открыть настройки VisualStudio и перейти в "NuGet Package Manager" -> "Package Sources"; - Добавить новый пакет, при помощи кнопки с изображением зеленого плюса; - В поле "Name" ввести желаемое имя пакета; - В поле "Source" выбрать путь до репозитория FastReport (по умолчанию в C:\Program Files\FastReports\FastReport.Net\Nugets); - Жмем "Update", а затем "OK"; - Теперь можно найти и загрузить FastReport .NET Core в NuGet. В данный момент отсутствует WebReport, а также не поддерживаются диалоги, чарты (MsChart) и RTF (RichObject), но все это планируется в ближайшем будущем. SQL соединения отсутствуют, но зато встроены CSV и XML соединения. Если необходимо использовать SQL соединение, то нужно воспользоваться дополнительной библиотекой и зарегистрировать данные из приложения. Визуальный дизайнер тоже отсутствует, но планируется поддержка работы с онлайн дизайнером. Можно из шаблона отчёта (*.frx) получить готовый отчёт (*.fpx), либо получить документы (pdf, html и т.д.). Для работы необходимо 3 дополнительных библиотеки из NuGet: а) System.Drawing.Common ; б) Microsoft.CodeAnalysis.CSharp; в) Microsoft.CodeAnalysis.VisualBasic; Tags: .NET, FastReport, Core, Libgdiplus, .NET, FastReport, Core, Libgdiplus ### FastReport .NET и jQuery URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-net-jquery Объект WebReport генератора отчетов FastReport .NET использует в своей работе библиотеку jQuery. Данная библиотека очень популярна и уже может быть использована в вашем проекте. Чтобы избежать дублирования загрузки скриптов и стилей jQuery в браузер клиента при работе с разметкой Razor, нужно использовать следующие строки в файле _Layout.cshtml:         @WebReportGlobals.ScriptsWOjQuery()         @WebReportGlobals.StylesWOjQuery() вместо стандартных, которые загружают все файлы         @WebReportGlobals.Scripts()         @WebReportGlobals.Styles() При работе с разметкой ASPX нужно установить свойство ExternalJquery = true (по умолчанию false). Tags: .NET, FastReport, MVC, .NET, FastReport, MVC ### FastReport .NET и Visual Studio 2017 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/net-compatibility-visual-studio Summary: Проводим тест совместимости FastReport .NET и MS Visual Studio на примере простого приложения. Проводим тест совместимости FastReport .NET и MS Visual Studio на примере простого приложения. Проводим тест совместимости FastReport .NET и MS Visual Studio на примере простого приложения. В этой статье я хочу провести первый тест совместимости FastReport .Net и новейшей версии MS Visual Studio 2017 Enterprise. В качестве первого теста я создам простейшее приложение в WindowsForms, добавлю в него компонент Report и запущу отчет в дизайнере. Но для начала необходимо добавить компоненты FastReport в палитру инструментов (Toolbox). Для этого открываем палитру инструментов и делаем правый клик по ней. В контекстном меню выбираем Add Tab: Я назвал вкладку FastReport. Теперь нужно добавить компоненты в эту вкладку. Делаем правый клик по ней. Из контекстного меню выбираем Choose Items…: Появляется окно выбора компонентов для палитры инструментов: Нажимаем кнопку Browse…: И выбираем библиотеки FastReport.dll и FastReport.Web.dll из папки FastReports/FastReport.Net/Framework 4.0.  В палитру инструментов добавились компоненты FastReport.Net. Перетащим на форму компонент Report и две кнопки: Делаем двойной клик по первой кнопке. И добавляем следующий код: ``` private void button1_Click(object sender, EventArgs e) { report1.Load(@"C:\Program Files (x86)\FastReports\FastReport.Net\Demos\Reports\Text.frx"); report1.Prepare(); report1.Show(); } ``` Здесь, мы загружаем отчет в объект Report. Затем, строим отчет. И, наконец, отображаем его. Теперь сделаем двойной клик по второй кнопке и добавим такой код: ``` private void EditReportBtn_Click(object sender, EventArgs e) { report1.Load(@"C:\Program Files (x86)\FastReports\FastReport.Net\Demos\Reports\Text.frx"); report1.Design(); } ``` Также, загружаем отчет в объект Report и вызываем редактор для этого отчета. А теперь запустим приложение и протестируем. Сначала нажимаем первую кнопку. И получаем наш отчет в режиме предварительного просмотра: Нажимаем вторую кнопку. И запускается дизайнер отчетов: Итак, мы убедились, что в новой версии MS Visual Studio 2017 отчеты FastReport.Net строятся и запускаются в редакторе. Теперь проверим веб отчеты. Для этого создадим приложение ASP.Net, заполненное примерами. Открываем веб страницу Default.aspx. Переключаемся в режим визуального редактирования: А теперь, из палитры инструментов перетаскиваем компонент WebReport на веб-страницу: Я удалил ненужный контент с этой страницы и оставил лишь заголовок и объект отчета. В правом верхнем углу объекта WebReport расположен значок выпадающего меню . Нажимаем его и выбираем Design Report… В дизайнере отчетов открываем нужный отчет и… И просто закрываем редактор. Отчет уже попал в кэш. Теперь запустим веб приложение: Ну что же, и веб отчет без проблем работает в VS 2017. Мы рассмотрели основные функции FastReport.Net, и все они успешно работают в новой версии Visual Studio. На основании этого я делаю вывод о полной совместимости FastReport.Net 2017.1.18 и Microsoft Visual Studio 2017 RC Enterprise. Tags: .NET, Visual Studio, FastReport, .NET, Visual Studio, FastReport ### FastReport .NET теперь поддерживает .NET 9: что нового? URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/support-net-9 Summary: FastReport .NET с версии 2025.1.8 поддерживает .NET 9. Это открывает новые возможности для пользователей, использующих последние версии технологий Microsoft. FastReport .NET с версии 2025.1.8 поддерживает .NET 9. Это открывает новые возможности для пользователей, использующих последние версии технологий Microsoft. В мире разработки программного обеспечения своевременная адаптация инструментов под новые версии платформ имеет решающее значение для удобства разработчиков и эффективности их работы. И теперь FastReport .NET , FastReport Business Graphics .NET и FastCube .NET с версии 2025.1.8 поддерживают .NET 9. Это открывает новые возможности для пользователей, использующих последние версии технологий Microsoft. Изменилось ли что-то в FastReport .NET? Мы отказались от бинарной сериализации. BinaryFormatter стал причиной целого ряда проблем с безопасностью и Microsoft в .NET 9 отказались от его использования. Наша команда также убрала класс BinaryFormatter из исходного кода. Почему важна поддержка .NET 9? .NET 9 — это последняя версия платформы от Microsoft, которая предлагает улучшенную производительность, обновленные библиотеки и расширенные возможности для разработки. Ключевые изменения в .NET 9 включают: 1.  Улучшение работы сборщика мусора (GC). Оптимизация управления памятью снижает время отклика приложений. 2.  Поддержка новых языковых возможностей C# 12. Такие функции, как расширенные конструкции для работы с данными, делают код компактнее и понятнее. 3.  Расширенные возможности для облачных решений. Обновленные инструменты и библиотеки упрощают разработку облачных приложений и микросервисов. 4.  Совместимость с предыдущими версиями .NET. Переход на .NET 9 становится менее болезненным для существующих проектов. Еще раз хотим подчеркнуть важность своевременной поддержки актуальных версий различных технологий. В "Быстрых отчетах" мы всегда стараемся внести изменения в наши продукты одномоментно с появлением обновлений.  ### FastReport 2.47 VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2.47 Summary: FastReport 2.47 VCL FastReport 2.47 VCL Представляем вашему вниманию FastReport 2.47 VCL. Что появилось нового? - Поддержка Delphi7; - Редактор скрипта с подсветкой синтаксиса; - Поддержка Jpeg по умолчанию; - Полная поддержка вывода Bi-directional - текстов; - Мелкие багофиксы. ### FastReport 2.54 VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2.54 Summary: FastReport 2.54 VCL FastReport 2.54 VCL - добавлена поддержка Delphi 2005 - багофиксы ### FastReport 3 beta тестирование URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-3-beta-test Summary: FastReport 3 beta тестирование FastReport 3 beta тестирование Приглашаем Вас присоединиться к тестированию FastReport 3 beta!  Переработанная иерархия классов.  Формат сохранения файлов - xml.  Полный WYSIWYG (теперь и для текста).  Текст под углом 0..360.  Поддержка простых html-тэгов (font color, b, i, u, sub, sup) в объекте Memo.  Улучшенное растягивание мемо-объектов (св-ва StretchMode и ShiftMode).  Задание алиасов для таблиц и полей БД.  Стили  Перетекание текста  Св-ва Cursor, URL у объектов отчета. Поддержка anchors.  Построение отчетов для вывода на матричный принтер.  Единый скрипт для всего отчета (как unit в Delphi).  Новые обработчики событий для объектов отчета.  Четыре скриптовых языка - PascalScript, C++Script, JSCript, BasicScript.  Новые возможности (try/except, with, case и т.п.)  Отладчик  Улучшенный Object Inspector с поддержкой вложенных св-в.  Масштабирование.  Линейки, выносные линии.  Редактирование мемо-объектов на месте.  Инструменты "рука", "лупа", "текст".  Бэнды, "прилипающие" друг к другу.  Возможность отображать содержимое поля БД вместо его названия.  Сетка-миллиметровка, дюймовка, с произвольным шагом, изменение левой/правой границ листа (объекты сдвигаются автоматически).  Мастера для создания базовых типов отчетов.  Копирование объектов в буфер обмена Windows.  Полное Undo/Redo. ### FastReport 3 Enterprise Client/Server URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3-enterprise Summary: FastReport 3 Enterprise Client/Server FastReport 3 Enterprise Client/Server При разработке FastReport 3 Enterprise в полной мере были учтены все основные требования к клиент-сервер приложениям, что позволило добиться следующих возможностей: - построение отчетов любой сложности на стороне сервера по запросу клиента без непосредственного доступа клиента к серверу баз данных; - обслуживание нескольких клиентов сервером в различных потоках позволяет добиться высокой нагрузочной способности и минимизации времени - применение протокола передачи данных HTTP (RFC 2068 [2]) позволяет использовать большое количество уже существующих программ, таких как web- браузеры (Internet Explorer, Netscape Navigator, Mozilla, Opera и др.), Proxy серверы, web-серверы (Internet Information Server, Apache и др.) для совместной работы без дополнительных трудоемких решений; - примение технологий сжатия на основе алгоритма GZip (RFC 1952 [6]) уменьшает сетевой трафик и увеличивает общую производительность клиент- сервер системы; - применение контрольных сумм на основе алгоритма MD5 в качестве MIC (Message Integrity Checksum) полей в заголовках (RFC 1321 [4], RFC 1864 [5]) увеличивает целостность переданных данных и уменьшает вероятность ее искажения; - совместимость с ранее разработанными отчетами FastReport 3, с некоторыми ограничениями, упрощает процесс перевода уже разработанных приложений на технологию клиент-сервер; - реализация полностью автономного сервера позволяет увеличить производительность (уменьшить время построения отчета), минимизировать затраты на использование оперативной памяти и процессора по отношению к решениям для построения отчетов на основе технологии CGI, в тот же момент такой подход никак не сказывается на взаимодействии с уже работающими HTTP серверами; - сервер может быть использован в качестве простого HTTP сервера для хранения и отображения любых HTML документов, что позволяет обойтись без применения других HTTP серверов; - примение технологии SSI (Server Side Include) позволяет упростить построение web-сайта под управлением сервера FastReport; - ведение журналов доступа, ошибок и другой служебной информации позволяет оперативно диагностировать неисправности, вести статистику работы и отслеживать попытки несанкционированного доступа к серверу; - применение аутентификации, а также списков разрешенных и запрещенных к обслуживанию IP адресов позволяют ограничить доступ к серверу; - работа с несколькими базами данных одновременно для получения перекрестных отчетов (при применении подключений к базам данных в самих отчетах); - использование в качестве клиента не только внутренних компонент FastReport, но и любого web-браузера; - конвертация диалоговых форм FastReport в web-формы на лету позволяет реализовать элементы концепции web-приложений без дополнительных трудоемких решений; - поддерживаемые форматы результатов отчета: HTML, PDF, RTF, XML, XLS, JPEG, Text; - при использовании в качестве клиента web-браузера во время просмотра результатов отчета в HTML формате доступен удобный навигатор страниц. Скачать демо: http://www.fast-report.com/pbc_download/fr3csdemo.exe ### FastReport 3 Enterprise Client/Server Demo URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3-demo Summary: FastReport 3 Enterprise Client/Server Demo FastReport 3 Enterprise Client/Server Demo FastReport 3 Enterprise Demo содержит скомпилированные серверную и клиенскую программы. Серверная часть (файл FRServer.exe) представляет собой полноценный автономный HTTP сервер с возможностью генерации отчетов в форматах HTML, PDF, RTF, XLS, XML, TXT, JPEG а также в нативном формате FastReport 3 (FP3). Количество одновременно обслуживаемых клиентов ограничено только ресурсами компьютера, где запущена программа FastReport 3 Server Demo. В качестве клиента возможно использование любого HTTP браузера (Internet Explorer, Mozilla, Opera и т.д.). Для запроса и отображения файлов в формате FastReport 3 (FP3) необходимо использование идущего в комплекте поставки Client Demo (файл FRClient.exe), построенного на основе клиентских компонент FastReport 3 Enterprise. ### FastReport 3.01 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.01 Summary: FastReport 3.01 FastReport 3.01 + добавлены Ukrainian, Brazil, Hungarian, German, French ресурсы + добавлено свойство TfrxReport.EnabledDatasets + добавлено свойство TfrxCrossView.PlainCells + добавлены отдельные пакеты для DB и IBO + добавлены отдельные пакеты FastScript для DB, BDE, IBX, ADO * изменения в фильтрах экспорта RTF и PDF - багофиксы ### FastReport 3.02 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.02 Summary: FastReport 3.02 FastReport 3.02 + добавлены Serbian ресурсы + добавлена библиотека DelphiFastZLib (вместо стандартной zlib) для устранения   конфликта между FR3 и JediVCL + добавлена функция group/ungroup в дизайнере + добавлена утилита для быстрой компиляции пакетов FR * изменения в объекте Chart - необходимо переделать отчеты, содержащие   этот объект! - багофиксы ### FastReport 3.03 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.03 Summary: FastReport 3.03 FastReport 3.03 + добавлены Czech, Turkish ресурсы + добавлены свойства TfrxUserDataset.Fields, TfrxUserDataset.OnGetValue + редакция 1.01 документации (добавлены номера страниц) + добавлено свойство TfrxDataBand.KeepHeader - багофиксы ### FastReport 3.04 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.04 Summary: FastReport 3.04 FastReport 3.04 + добавлены Taiwan, Italian, Slovene, Spanish, Catalon, Dutch ресурсы + добавлен модуль "frxPBarcode.pas" для PSOFT BarcodeLibrary ( http://www.psoft.sk ) + добавлены функции DayOf, MonthOf, YearOf + добавлен "Multi-language wizard" для быстрого создания многоязыкового файла ресурсов + добавлены свойства TfrxReport.OldStyleProgress, OnProgressSTart, OnProgress, OnProgressStop - багофиксы ### FastReport 3.05 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.05 Summary: FastReport 3.05 FastReport 3.05 - добавлено свойство TfrxReport.ShowProgress  - багофиксы ### FastReport 3.07 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.07 Summary: FastReport 3.07 FastReport 3.07 + добавлены пакеты Delphi2005 + добавлено свойство TfrxReport.Modified + добавлено свойство TfrxReport.EngineOptions.DestroyForms + добавлены Polish, Swedish, Romanian ресурсы + добавлена поддержка выражений в кросс-таб объект * изменения в вызове агрегатных функций: символы <> больше не нужны * изменения в функции IIF: теперь она работает как макрос + добавлена поддержка форм клиентами на основе TfrxReportClient + добавлено кеширование отчетов на сервере + обертка CGI для совместного использования с серверами Apache/IIS (см. файл cgi_readme.txt) - багофиксы ### FastReport 3.08 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.08 Summary: FastReport 3.08 FastReport 3.08 + добавлено свойство TfrxMemoView.Clipped + добавлено событие TfrxReport.OnAfterPrintReport + добавлено baClient в свойство Align + добавлены Danish, Chinese ресурсы + возможно использование русских имен в скрипте + добавлено свойство TfrxPDFExport.PrintOptimized + увеличена скорость работы фильтра экспорта в формат Excel + добавлена функция "Log rotate" в версии Client/Server - багофиксы ### FastReport 3.09 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.09 Summary: FastReport 3.09 FastReport 3.09 - улучшен HTML экспорт - багофиксы ### FastReport 3.10 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.10 Summary: FastReport 3.10 FastReport 3.10 - добавлены Swiss, Portuguese, Latvian ресурсы - добавлено событие TfrxReport.OnEndDoc - добавлено событие TfrxReportServer.OnAfterBuildReport - добавлены тени в экспортах HTML, PDF, XLS, XML, RTF - добавлены обрамления страниц в экспортах HTML, PDF, XLS, XML - добавлены языковые ресурсы навигатора в экспорте HTML - добавлено свойство TfrxXLSExport.AsText - добавлен outline в экспорте PDF (св-во TfrxPDFExport.Outline) - добавлены свойства TfrxPDFExport.Author, TfrxPDFExport.Subject - добавлено свойство "Stream" в фильтры экспорта - исправлена ошибка экспорта диагональных линий - исправлена ошибка печати результатов отчета после использования web-форм - исправлена ошибка повторного показа диалогового окна web-формы - исправлена ошибка с печатью толстых линий на второй странице отчета - исправлена ошибка AV при экспорте больших отчетов (более 50 страниц) ### FastReport 3.11 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.11 Summary: FastReport 3.11 FastReport 3.11 + добавлена поддержка тегов HTML в PDF экспорте + добавлена поддержка языков Hebrew, Turkish, Arabic в PDF экспорте + добавлено свойство TfrxPDFExport.Background (default = False) + добавлены свойства TfrxRTFExport.Creator и TfrxPDFExport.Creator + улучшено качество PDF экспорта + добавлена поддержка password protected отчетов в режиме client/server (Внимание: Не используйте эту возможность совместно с глобальной аутентификацией на сервере) + подробный отчет об ошибках при построении отчета на сервере при HTTP подключении  - исправлено наименование свойств TfrxServerConnection.Proxy и TfrxServerConnection.ProxyPort  (нажмите кнопку 'ignore' при загрузке проекта для автоматического исправления полей в компонентах) - исправлена ошибка очистки кеша при останове сервера - исправлена ошибка отрисовки фона в HTML экспорте на сервере - багофиксы ### FastReport 3.12 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.12 Summary: FastReport 3.12 FastReport 3.12 + добавлено свойство TfrxReport.StoreInDFM + добавлено свойство TfrxShapeView.Curve + добавлено свойство TfrxReport.PreviewOptions.OutlineExpand + добавлено свойство TfrxXLSExport.FastExport, установите FastExport := False усли у Вас возникает ошибка OLE error при экспорте в Excel + добавлено свойство TfrxXLSExport.PageBreaks + улучшены фильтры экспорта XLS, PDF, HTML - исправлен экспорт URL ссылок и якорей (anchors) в HTML экспорте - исправлена ошибка расчета ширин символов при экспорте в PDF - исправлена ошибка PrintOnParent в фильтрах экспорта (Enterprise) + добавлено свойство TfrxServerConfig.ReportsList + добавлен параметр строки URL запроса 'getvariable' для получения значений внутренних переменных сервера + добавлены внутренние переменные сервера SERVER_REPORTS_LIST, SERVER_REPORTS_HTML + добавлена функция TfrxReportClient.GetServerVariable(const VariableName: String): String; + улучшена производительность TfrxReportServer + добавлен пример использования сервера в качестве сервиса NT (см. проект \Demos\ClientServer\Service) + полностью переписан пример Advanced Client (см. проект \Demos\ClientServer\Client\Advanced) + изменены примеры отчетов в примере Server (см. проект \Demos\ClientServer\Server) + изменены html файлы в примере Server (см. проект \Demos\ClientServer\Server) + добавлена on-line документация в примере Server (см. \Demos\ClientServer\Server\htdocs\Documentation) - Внимание! отчеты содержащие TfrxRichView (RTF) не работают в режиме сервера при включенном кешировании ### FastReport 3.13 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.13 Summary: FastReport 3.13 FastReport 3.13 + добавлено свойство "ExportNotPrintable" во все фильтры экспорта + добавлены свойства "Resolution", "SeparateFiles" в фильтры экспорта BMP, JPEG и TIFF + улучшена совместимость TfrxHTTPClient с RFC 2068 - исправлена ошибка построения Outline при экспорте в PDF формат - исправлена ошибка в PDF экспорте при работе с RTL языками (Иврит, Арабский) - исправлена ошибка формирования заголовка файла при экспорте в TIFF формат - багофиксы ### FastReport 3.14 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.14 Summary: FastReport 3.14 FastReport 3.14 + поддержка FastQueryBuilder (вызов из окна редактирования SQL запроса) + добавлено свойство TfrxOverlay.PrintOnTop + добавлен компонент TfrxDMPCommand для печати ESC-последовательностей. Используйте свойство Command для печати последовательности: DMPCommand1.Command := '#27#40' (или '1B28') + добавлено событие для скрипта TfrxReport.OnRunDialogs. Используйте его для ручного управления показом диалогов отчета + добавлено свойство Description всем компонентам отчета * изменено поведение внутренних наборов данных, теперь они могут быть добавлены на любую страницу отчета (без использования диалоговых форм) * изменена архитектура движков БД (общий класс TfrxCustomDatabase, поддержка QBuilder) - исправлен баг со стилями заливки <> bsSolid - исправлена ошибка в сервере отчетов при выборке из кеша отчетов с одинаковыми переменными - исправлена ошибка в экспорте XML с типом формата fkNumber ### FastReport 3.15 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.15 Summary: FastReport 3.15 FastReport 3.15 + добавлены новые мастера (db connection, table, query) + добавлено свойство FlowTo для TfrxDMPMemoView + добавлены Болгарские ресурсы + добавлена поддержка FIBPlus (вы должны установить пакеты Source\FIB\frxFIBx.dpk, dclfrxFIBx.dpk вручную) + добавлена возможность композиции уже построенных отчетов. Пример: frxReport1.PrepareReport; frxReport2.PrepareReport; frxReport1.PreviewPages.AddFrom(frxReport2); frxReport1.ShowPreparedReport; + добавлены свойства UseFileCache, DefaultPath во все фильтры экспортов + улучшены фильтры экспорта в форматы PDF, XLS * изменена структура языковых ресурсов * изменены компоненты DBX для работы с bidirectional dataset - исправлена ошибка сортировки копий при печати - исправлена ошибка со сдвигом горизонтальных линий - исправлено поведение DMPLineView.Align = baWidth - исправлена ошибка TfrxDBLookupComboBox (некорректная работа с field aliases) - исправлена ошибка при построении списка дотупных отчетов на сервере FastReport ### FastReport 4 demo доступен для скачивания! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-4-demo-is-available Summary: What's new in the FastReport 4? Report Designer, Report Preview, Print, Report Core. Download the compiled demo of FastReport 4 here: download What's new in the FastReport 4? Report Designer, Report Preview, Print, Report Core. Download the compiled demo of FastReport 4 here: download Что нового в FastReport 4? Дизайнер : новые полноцветные иконки закладка "Data" со всеми источниками данных отчета рисование диаграмм в закладке "Data" code completion (Ctrl+Space) breakpoints watches шаблоны отчетов Предварительный просмотр : эскизы страниц Печать : разрезание страниц при печати на меньший размер бумаги печать нескольких страниц на одной большой управление дуплексом из диалога печати Ядро : режим "бесконечная страница" увеличена скорость работы с изображениями режим "reset page numbers" для групп шифрация файлов отчета (Rijndael алгоритм) наследование отчетов drill-down отчеты объект frxGlobalVariables улучшения в объекте "cross-tab" объект "Линия" может иметь стрелки Скачайте скомпиленное демо FastReport 4 здесь: скачать  Нам важно ваше мнение! Вы можете высказать его в новостной группе или на форуме. ### FastReport 4 выпущен! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-fastreport-4 Summary: FastReport 4 выпущен! FastReport 4 выпущен! FastReport 4 для Delphi/C++Builder/BDS выпущен! Дизайнер: - оформление интерфейса в стиле XP - закладка "Data" со всеми источниками данных отчета - рисование диаграмм в закладке "Data" - code completion (Ctrl+Space) - точки останова - watches - шаблоны отчетов - локальные выносные линии (появляются при перемещении или изменении размеров объекта) - возможность немодальной работы, mdi child Предварительный просмотр: - эскизы страниц Печать: - разрезание страниц при печати на меньший размер бумаги - печать нескольких страниц на одной большой - печать с масштабированием - управление дуплексом из диалога печати - печать имени копии на каждой копии документа (например, "Первая копия", "Вторая копия") Ядро: - режим "бесконечная страница" - увеличена скорость работы с изображениями - режим "reset page numbers" для групп - шифрация файлов отчета (Rijndael алгоритм) - наследование отчетов (в файлах и формах dfm) - drill-down отчеты - объект frxGlobalVariables - улучшения в объекте "cross-tab"   - улучшенное управление ячейками   - элементы показываются в дизайнере   - заполнение угла таблицы (св-во ShowCorner)   - несколько кроссов в ширину (св-во NextCross)   - объединение одинаковых ячеек (св-во JoinEqualCells)   - объединение одинаковых строковых значений внутри ячейки (св-во AllowDuplicates)   - возможность вывода посторонних объектов внутри кросс-таблицы   - свойства AddWidth, AddHeight для увеличения ширины и высоты ячейки   - свойство AutoSize, возможность менять размеры ячеек вручную - объект "Линия" может иметь стрелки - добавлено св-во TfrxPictureView.FileLink (может содержать переменную или имя файла) - индивидуальное оформление каждой линии рамки (свойства Frame.LeftLine, TopLine, RightLine, BottomLine - настраиваются в инспекторе) - поддержка PNG изображений (раскомментируйте {$DEFINE PNG} в файле frx.inc) - поддержка экспорта в формат Open Document Format for Office Applications (OASIS), таблиц (ods) и текстовых документов (odt) Enterprise компоненты: - Поддержка разграничения доступа на основе политики Пользователей/Групп (добавлено новое demo) - Поддержка шаблонов - Динамическое обновление конфигурации, списка пользователей/групп ### FastReport 5.6 с поддержкой Embarcadero RAD Studio 10.2 Tokyo URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-5.6 Summary: FastReport 5.6 с поддержкой Embarcadero RAD Studio 10.2 Tokyo уже здесь. FastReport 5.6 с поддержкой Embarcadero RAD Studio 10.2 Tokyo уже здесь. Вместе с поддержкой новой среды разработки новая версия включает несколько новых возможностей и множество исправлений. Также, мы продолжаем улучшать FastReport 5 не только для Delphi, но и для Lazarus. В текущей версии стало возможным собирать приложения с использованием виджета GTK для Lazarus. А еще: + Добавлена поддержка Embarcadero RAD Studio 10.2 Berlin для x32 и x64 платформ + Добавлена поддержка тэгов Sup, Sub для TfrxHTMLExport + Добавлено свойство TfrxPDFExport.SaveOriginalImages. Значение по умолчанию - True + Добавлена поддержка GS1 для штрихкодов Code128C, EAN128C + Добавлена сортировка принтеров по имени в списке принтеров + Добавлены норвежские ресурсы + Добавлена поддержка TfrxFDTable в frxFDRTTI + Добавлена поддержка символов #0..#31 в Code128A + Добавлено свойство TfrxBarcodeView.TestLine + Добавлено сохранение состояния формы TfrxRichEditor + [Lazarus] Добавлена поддержка виджета GTK - Исправлен frx2xto30.pas для XE2 и позже - Увеличено количество элементов PaperSizes до 512 - [Lazarus] Исправлена прокрутка в дизайнере - Исправлен smMaxHeight в TfrxRichView - Исправлен TfrxXLSXExport для файлов с 1000 листами в книге - Исправлен TfrxPreviewPages.ClearPageCache - Исправлен TfrxIBXQuery.ExecSQL - Исправлена вставка нового события в скрипт, если в главной процедуре отчёта есть строка с закомментированным с помощью // begin - Исправлено имя вставляемого компонента после перетаскивания из дерева данных для случаев c Unicode символами в имени поля - Исправлено выравнивание baCenter, baRight у TfrxBarcodeView - Исправлено поведение ReprintOnNewPage и KeepTogether для TfrxGroupHeader - Исправлено обновление параметров в TfrxADOQuery после загрузки - Исправлена панель инструментов для RAD Studio Berlin 10.1 Update 2 при использовании VCL стилей - Исправлено использование TfrxReport.PrintOptions.Duplex - Исправлена печать PNG изображений - Исправлено использование TfrxReport.ReportOptions.Author в DOCX, PPTX и XLSX экспортах - Исправлено использование vsExport для фильтров экспорта - Исправлен экспорт в ODF символов (<, >, &) внутри HTML тэгов - [FastScript] Исправлена функция Format - Исправлен HTMLTags в TfrxMemoView - Исправлено вычисление выражений в гиперссылках - Исправлен размер изображений в DOCX экспорте - Исправлено формирование MSI штрихкода - Исправлен экспорт гиперссылок объектов в защищённый PDF - Исправлен экспорт в неразрывный XLSX отчётов с большим числом изображений - Исправлен экспорт рамок объектов с толщиной менее 1 в HTML - Исправлен экспорт пустых страниц в XLSX - Исправлено растягивание бэндов со штрихкодами - Исправлено поведение KeepChild для дочерних бэндов TfrxReportTitle - Исправлен экспорт пользовательских числовых форматов в ODF - [Lazarus] Исправлен выбор принтера в диалоге печати - Исправлен экспорт гиперссылок hkPageNumber если номер страницы больше количества страниц - Исправлено имя вставляемого компонента после перетаскивания из дерева данных для некоторых случаев - Исправлена ошибка "Divizion by zero" при использовании режима печати pmSplit - Исправлено отображение PrintOnSheeet в диалоге печати для некоторых случаев - [Lazarus] Исправлена инициализация принтера по умолчанию в диалоге печати - Исправлен экспорт изображений в BIFF8 для x64 - [Lazarus] Исправлен выбор принтера перед показом диалога свойств принтера - Исправлено уменьшение размеров диалоговой формы в дизайнере в RAD Studio 10.1 Berlin - Исправлен экспорт чисел с символом '%' в строке форматирования (например, #,##0.###%) в BIFF8 экспорте - [Enterprise] Исправлена обработка ошибки "Report not found" - Исправлена опция "Print to file" для GDI отчётов - Исправлен экспорт в PDF пустых мемок при встраивании шрифтов - Исправлен экспорт в PDF для HAlign = haBlock (с учётом GapX) - Исправлено встраивание шрифтов для защищённых PDF при EmbedFontsIfProtected = False и EmbeddedFonts = True - Исправлен экспорт TfrxShapeView в XLSX и DOCX - Исправлен экспорт Unicode символов в мемо с HTML тэгами в DOCX для не-Unicode IDE - Исправлен TfrxPreviewButtons в frxClassRTTI - Исправлено определение родительского объекта для объектов в некоторых случаях - Исправлен экспорт имени шрифта в ODF ### FastReport Academic URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-academic Summary: FastReport Academic FastReport Academic Что такое FastReport Academic? FastReport Academic – бесплатная версия программных компонентов FastReport .NET и FastReport VCL. Она выдается любому образовательному учреждению в целях обучения программистов разных направлений в работе с FastReport. Это делается для того, чтобы по окончании обучения выпускник уже обладал навыками, требуемыми для успешного трудоустройства, т.к. знание FastReport – очень частое требование при приеме на работу. Как получить? Чтобы получить лицензию FastReport Academic, нужно зайти на сайт https://быстрыеотчеты.рф/ru/academic/index.php , заполнить форму, прикрепить скан лицензии образовательного учреждения. Таким образом, автоматически создастся учетная запись, в которой в течение 2 рабочих дня можно будет скачать обе версии продукта – для VCL и .NET, бесплатно и бессрочно . Для работы с академической лицензией не требуется заключения договоров. Образовательное учреждение получает сертификат обладателя лицензии и становится некоммерческим партнером компании Fast Reports. ### FastReport Avalonia теперь в составе Ultimate .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/avalonia-ultimate-net Summary: Теперь в состав Ultimate .NET входит новая кроссплатформенная библиотека для генерации отчетов на macOS, Linux и Windows. Теперь в состав Ultimate .NET входит новая кроссплатформенная библиотека для генерации отчетов на macOS, Linux и Windows. Мы расширили список компонентов, доступных для разработки ваших бизнес-проектов. Теперь подписка на Ultimate Edition .NET стала еще выгодней! В состав редакции входит новая кроссплатформенная библиотека для генерации отчетов и документов с выводом готовых файлов на печать в macOS, Linux и Windows, поддерживающая Avalonia UI, .NET 6 и выше. При этом цена на подписку не изменилась. FastReport Ultimate .NET — это выгодное решение для создания проектов на всех современных платформах .NET, ASP.NET, Blazor, WASM, WPF, WinForms, Avalonia UI, Mono и других. Со своей командой вы сможете работать как в десктопном дизайнере, так и прямо из браузера. В состав Ultimate также входят компоненты для визуализации данных, а именно бизнес-графика с набором диаграмм, и OLAP продукты для быстрой обработки больших массивов данных. Владельцы действующей Ultimate .NET подписки могут уже сейчас бесплатно протестировать FastReport Avalonia в личном кабинете . ### FastReport CLX 2.5 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-clx-2.5 Summary: FastReport CLX 2.5 FastReport CLX 2.5 Настоящий подарок ценителям Kylix к Новому Году! добавлено: - Совместимость форматов с FastReport 2.5 VCL - Экспорт в BMP - Экспорт в HTML - В TfrReport добавлены новые свойства: ReportComment, ReportName, ReportAutor, ReportDate, ReportLastChange, ReportPasswordProtected, ReportPassword, Advanced ReportVersion (major, minor, release, build) - В скрипте доступны глобальные переменные ReportComment, ReportName, ReportAutor, ReportDate, ReportLastChange, ReportPasswordProtected, ReportPassword, Advanced ReportVersion (major, minor, release, build) - Опциональное сохранение в формат FR3.0 Xml из дизайнера - Программное изменение страниц перед печатью - функция FieldIsNull в скрипте И множество багофиксов. ### FastReport Core сертифицирован для работы с Astra Linux URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/astralinux-fastreport-compatible Summary: Astra Linux и FastReport Core полностью совместимы Astra Linux и FastReport Core полностью совместимы Испытания технической совместимости FastReport Core с  “Astra Linux Special Edition”, операционной системой специального назначения, прошли успешно. Astra Linux Special Edition - э то отказоустойчивая платформа для защищенных IT-инфраструктур любого масштаба и работы с данными любой степени конфиденциальности. С версии Astra Linux Special Edition 1.6 "Смоленск" работа генератора отчетов с поддержкой Core будет безотказной. Мощный репортинг доступен и для закрытых систем, работающих с секретными данными. ### FastReport Desktop 2021.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-desktop-2021.1 Summary: FastReport Desktop 2021.1 FastReport Desktop 2021.1 В новой версии FastReport Desktop мы добавили поддержку экранов высокого разрешения в дизайнере и окне просмотра готовых отчётов. Добавлены экспорты в форматы DXF, «Мой офис» (XODT, XODS), PDF/A-1a, PDF/A-2u. Добавлены новые иконки в стиле Visual Studio. Вы можете переключаться между наборами иконок в окне дизайнера "Вид/Настройки/Интерфейс" (или "Файл/Настройки/Интерфейс" в случае использования ribbon-интерфейса): Новые иконки представлены в нескольких размерах и отлично подходят для работы на мониторах высокого разрешения (hiDPI). Добавлены новые баркоды: Swiss QR Code, ITF-14, Deutsche Post Identcode, Deutsche Post Leitcode, Japanese PostNet: Появилась возможность создавать QR-код СберБанка: Добавлена возможность упрощенного отображения полей БД в объекте "Текст" в режиме дизайна. Эта настройка доступна в окне дизайнера "Вид/Настройки/Внешний вид объектов". По умолчанию настройка отключена; при ее включении объекты "Текст", содержащие одно поле БД, отображаются в упрощенном виде: Добавлена возможность индивидуальной настройки ячеек в углу объекта "Матрица". Для этого используйте контекстное меню ячейки, команды "Разбить ячейку", "Объединить ячейки": Добавлена возможность подключения к ElasticSearch. Подключение доступно в мастере подключения к данным и из кода. Значительно улучшено и переработано подключение к источнику данных CSV. Появились свойства VisibleExpression, PrintableExpression и ExportableExpression. С их помощью можно настраивать значения свойств Visible, Printable и Exportable в зависимости от какого-либо условия: Полный список изменений: [Engine] + добавлено подключение к ElasticSearch + добавлен новые штрих-коды - QR-код СберБанка, Swiss QR Code, ITF-14, Deutsche Post Identcode, Deutsche Post Leitcode, Japanese PostNet + добавлена возможность изменять количество знаков после запятой для форматов Числовой, Денежный и Процент, при использовании системных настроек + добавлено свойство "SplitRows" для MatrixObject. По умолчанию его значение False и в этом случае происходит объединение строк с одинаковыми значениями. Если True - строки разбиваются (как у TableObject) + добавлена агрегатная функция CountDistinct (итоги отчета и итоги объекта Матрица) + добавлена поддержка TLS 1.2 + добавлены 2 новых типа UncheckedSymbol для CheckBox + добавлена возможность запретить загрузку данных форматов XML и CSV локально + добавлена возможность загружать источник данных XML по URL + добавлены функции преобразования чисел в слова для польского языка + добавлены функции преобразования чисел в слова для индийского языка + добавлен символ рупий для индийской валюты + добавлены функции преобразования чисел в слова для персидского языка + добавлены функции преобразования чисел в слова для украинского языка + добавлен метод Report.Prepare(int pagesLimit), позволяющий подготовить ограниченное количество страниц + добавлена возможность выравнивания штрих-кодов + добавлено свойство PictureObject.ImageSourceExpression, позволяющее установить выражение, содержащее источник изображения + добавлена возможность использовать выражения, заключенные в квадратные скобки в свойствах VisibleExpression, PrintableExpression и ExportableExpression + добавлено свойство PictureObject.ImageFormat, позволяющее выбрать формат хранения изображения + добавлено свойство MatrixObject.PrintIfEmpty, позволяющее отображать матрицу даже если она пуста + добавлено свойство Page.LastPageSource, позволяющее настраивать лоток принтера для печати последней страницы отчета + добавлены свойства VisibleExpression, PrintableExpression и ExportableExpression + добавлено свойство Report.Tag + добавлено свойство AutoEncode для DataMatrix Barcode. По умолчанию, при значении true, управляющий символ &1; кодируется как символ FNC1. При значении false, символ кодируется как есть. + добавлены новые TextQuality: SingleBitPerPixel и SingleBitPerPixelGridFit + добавлена возможность разбивать строки таблицы + добавлены валюты RUB, BYN и BBYN в функцию ToWordsRu * оптимизирована работа свойств VisibleExpression, PrintableExpression и ExportableExpression для бэндов * улучшен алгоритм конвертации RTF в объекты отчета * оптимизирован и унифицирован конвертор RichText в объекты отчёта * оптимизировано копирование потоков в некоторых случаях - исправлена ошибка с неправильной шириной табуляции при TextObject.TextRenderType = TextRenderType.HtmlTextRenderer - исправлена ошибка с объектом "Вложенный отчет" на бэнде "Подвал страницы", приводящая к переполнению стека - исправлена ошибка со свойствами Dock и Anchor у объектов внутри ячеек таблицы/матрицы - исправлена ошибка, приводящая к System.ArgumentException при отрисовке PictureObject расположенными за пределами бэнда - исправлена ошибка с некорректной работой правого якоря (Anchor = AnchorStyles.Right) при неограниченной ширине страницы - исправлена ошибка с заменой пользовательского шрифта на шрифт, по умолчанию при подготовке отчета - исправлена ошибка с выравниванием по вертикали при конвертации RTF (по умолчанию теперь Top вместо Center). - исправлена ошибка конвертации таблиц RTF в объекты отчета - исправлена ошибка, при которой размеры страницы могли сбрасываться после предварительного просмотра - исправлена ошибка, при которой печать объекта RichText на большом масштабировании Windows происходила некорректно - исправлена ошибка, приводящая к System.ArgumentOutOfRangeException в функциях Substring - исправлена ошибка, приводящая к System.ArgumentException при отрисовке PictureObject с некоторыми изображениями - исправлена ошибка, при которой не отображались таблицы при подключении к Advantage Database через ODBC - исправлена ошибка, при которой RichText выходил за пределы страницы - исправлена ошибка перекомпиляции скрипта отчёта, который взаимодействовал с ChildBand - исправлены ошибки при импорте отчетов DevExpress - исправлены ошибки при импорте отчетов RDL - исправлена ошибка, при которой бэнд с включенным свойством FillUnusedSpace, не выводился еще раз, хотя свободного места достаточно - исправлены ошибки при импорте отчетов List and Labels - исправлена ошибка, при которой свойство AutoSize для SvgObject работало неправильно - исправлена ошибка с TextObject.AutoShirnk=FontSize при очень маленьком размере TextObject - исправлена ошибка с некорректным значением переменной TotalPages при ее использовании в VisibleExpression - исправлена ошибка с неполным копированием матрицы при копировании страницы отчета - исправлена ошибка с преобразованием RichText, когда значение RichObject.Text равно null - исправлен ошибка со StreamReader при подключении к удаленному JSON - исправлена ошибка компиляции отчета при некоторых выражениях в свойствах VisibleExpression, PrintableExpression и ExportableExpression - исправлена ошибка с неправильным вычислением контрольный суммы для штрих-кода Deutsche Post Identcode - исправлена ошибка, приводящая к исключению, при включенном свойстве "Формировать новую страницу" у дочернего бэнда заголовка страницы - исправлена ошибка, при которой значение выражения отображалось текстом этого выражения - исправлена ошибка с прозрачностью RichObject - исправлена ошибка с видимостью текстового объекта, при включенном параметре Visible у Highlight - исправлена ошибка с работой свойства PrintableExpression - исправлена ошибка, при которой перенос вложенного отчета на новую страницу работал некорректно - исправлена ошибка, при которой подвал данных отрывался от данных при включенном свойстве "не отрывать от данных" - исправлена генерация штрих-кода GS1-128 - исправлено некорректное значение Итога, если он ссылался на другой Итог - исправлена ошибка, при которой таблица переносилась некорректно - исправлена ошибка парсинга xml с шестнадцатеричными параметрами, например "To create it: " - исправлена ошибка с попыткой преобразовать DBNull в пустую строку при отключенном ConvertNulls - исправлена ошибка, при которой PageFooter с включенным PrintOn=LastPage, выводился на предпоследней странице [Designer] + добавлена поддержка HiDPI + добавлено упрощенное отображение имен полей БД в дизайнере + добавлена кнопка свернуть все/развернуть все, и поле поиска для дерева отчетов и дерева данных + добавлены новые иконки. Вы можете выбрать их в окне дизайнера "Вид/Настройки/Интерфейс". + улучшено поведение панели страниц + добавлена возможность копировать источник данных + добавлен импорт отчетов DevExpress сохраненных в формате XML + добавлена возможность добавлять текст и картинки перетаскиванием их из браузера + добавлена возможность редактировать количество строк и столбцов таблицы перетаскиванием мыши + добавлена загрузка RTF текстов, таблиц и стилей при загрузке DevExpress файлов + добавлена возможность загрузки CSV файлов через URL + добавлена возможность открывать страницу вложенного отчета по двойному нажатию на его объект + добавлена возможность менять шрифт во вкладке с кодом, окне редактирования текста и окне редактора формул + добавлена возможность замены картинок при перетаскивании + добавлена возможность горизонтальной прокрутки отчета при зажатой клавише Shift + добавлена возможность открывать файл отчета перетаскиванием + добавлена подсветка бэнда, на который будет помещен объект при перетаскивании + добавлена возможность перетаскивать на страницу изображения в форматах png, jpeg, jpg, gif, ico, bmp, tif, tiff, emf, wmf и текстовые файлы в форматах txt и rtf + добавлена возможность вставлять текст и изображение на страницу из буфера обмена + добавлена возможность создавать новую страницу отчёта с помощью: кнопки "+" на панели страниц, двойным нажатием на свободное место на панели страниц, сочетанием клавиш Ctrl+N * теперь при смене окна контекстное меню закрывается * теперь в момент автосохранения выбранный пункт из окна свойств не сбрасывается - исправлена ошибка, приводящая к падению дизайнера отчётов, при некорректной таблице в источнике данных - исправлена ошибка с выходом за пределы массива в SQLBuilder в дизайнере - исправлена ошибка, при которой не открывалась диалоговая страница если в ней есть GridControl - исправлены ошибки в режиме Right to Left - исправлена ошибка при повторном масштабировании диалоговой формы - исправлена ошибка при добавлении штрих-кода, при которой создавался штрих-код не того типа - исправлена ошибка, при которой при перетаскивании из функций создавался NUD и пустой текстовый объект - исправлена ошибка, при которой в диалоговых окнах неправильно отрисовывался RichTextBoxControl - исправлены проблемы с масштабированием в окнах WelcomeForm и Wizard - исправлена ошибка при копировании объекта, когда создавался объект с таким же именем - исправлена ошибка с пустым именем базы данных после перезагрузки отчета - исправлена ошибка, при которой двойное нажатие по кнопкам-стрелкам на панели отчета создавало новые страницы - исправлена ошибка, при которой у окна редактирования датчиков была неправильная ширина - исправлена ошибка, при которой переключение свойств на алфавитный порядок не работало - исправлена ошибка загрузки размера страницы при конвертировании DevExpress файла - исправлена ошибка, при которой пустая строка в штрих-коде Datamatrix приводила к исключению - исправлена ошибка, при которой перетаскивание в матрицу не работало - исправлена ошибка, приводящая к System.FormatException при открытии файлов DevExpress - исправлена ошибка "Значение счетчика не может быть меньше нуля." при открытии файлов DevExpress - исправлена ошибка с перемещением объектов в дереве отчета при нажатой клавише Ctrl - исправлена ошибка с выпадающим меню кнопки выбора цвета - исправлена ошибка при изменении параметров, сразу после добавления линии, вызывающая исключение - исправлена ошибка при создании штрих-кода Intelligent Mail - исправлена ошибка с JSON-подключением в Мастере Подключения к Данным - исправлена ошибка с неправильной отрисовкой горизонтальных направляющих - исправлена ошибка, при которой ширина объектов сбрасывалась после закрытия Preview при включенном правом якоре - исправлена ошибка при попытке задания некорректного значения RowSpan ячейке MatrixObject - исправлена ошибка со сбрасыванием цвета, ширины и стиля в редакторе границ - исправлена ошибка с изменением размера PolyLineObject/PolygonObject, скопированного с помощью Ctrl+Button - исправлена ошибка с неактивным контекстным меню "Режим отображения" у SVG-объекта - исправлена ошибка, когда невозможно было удалить вложенный отчет, если связанная с ним страница удалена - исправлена ошибка, когда кнопки в разделе "Панели" вкладки "Вид" не соответствовали видимости соответствующих окон [Preview] + добавлена кнопка "О программе" в панели инструментов предварительного просмотра + добавлена возможность горизонтальной прокрутки отчета при зажатой клавише Shift + добавлен редактор меню экспортов * теперь меню с источниками данных скрыто в редакторе текста в окне предварительного просмотра * кнопка "Удалить Страницу" в окне предварительного просмотра теперь неактивна, если подготовленный отчет состоит из одной страницы - исправлена ошибка сохранения подготовленных отчётов, содержащих сконвертированный RichObject - исправлена ошибка, при которой проценты масштаба в Preview могли отображаться некорректно - исправлена ошибка, приводящая к System.ObjectDisposedException при повторной подготовке отчета [Exports] + добавлены экспорты в форматы DXF, XODT, XODS, PDF/A-1a, PDF/A-2u + добавлена поддержка стандарта ODF 1.2 при экспорте в ODT/ODS + добавлена опция при экспорте в Word 2007 "Не добавлять разрывы разделов при разрывах страниц". По умолчанию добавляются и разрывы страниц, и разрывы разделов. + добавлено свойство ReportPage.ExportAlias, позволяющее задать имя страницы при экспорте в Excel 2007 + добавлена возможность разделить страницы в XML-экспорте + добавлена поддержка свойства Padding для текстовых объектов в Word2007 * теперь в PDF-экспорте при InteractiveForms = true шрифты не сохраняются, если в отчете нет редактируемых элементов * теперь в Excel 2007 экспорте для листов без изображений не создаются файлы с описанием изображений и связи к ним * оптимизировано сохранение встраиваемых шрифтов при экспорте в PDF. Размер файлов значительно уменьшился. - исправлен разрыв страницы в Html экспорте (свойство PageBreaks) - исправлен SVG экспорт с параметром "Экспорт в несколько файлов" - исправлена ошибка в SVG экспорте на мониторах с высоким разрешением - исправлены имена фалов, сохраняемых в zip архив - исправлена ширина табуляции при экспорте RichObject - исправлена ошибка XPS-экспорта, при которой документы, экспортированные на Linux, не открывались на Windows - исправлены ошибки некорректной работы свойств Anchor и Dock при экспорте страниц с бесконечной шириной - исправлена ошибка экспорта текстовых объектов в Excel 2007 с включенным типом рендеринга HtmlParagraph. Отключите параметр экспорта WYSIWYG, чтобы экспортировать текст вместо изображений. - исправлена ошибка экспорта в ODF при которой документ не открывался в МойОфис - исправлена ошибка с закрытием ячейки, содержащей RichText при экспорте в RTF - исправлена ошибка при экспорте объектов с режимом рендеринга HtmlParagraph - исправлена ошибка экспорта линии со стрелочным указателем при послойном экспорте в Word 2007 - исправлена ошибка экспорта линии со стрелочным указателем при экспорте в PowerPoint 2007 - исправлено сохранение отчета в Box - исправлено сохранение отчета в OneDrive - исправлено сохранение отчета в GoogleDrive - исправлена ошибка, приводящая к System.OutOfMemoryException при экспорте в PDF - исправлена ошибка создания некорректного файла при экспорте в Excel 2007 с большим количеством страниц и опцией разрывов страниц - исправлена ошибка, при которой экспорт в изображение не учитывал прозрачный фон отчета - исправлена ошибка, приводящая к System.NullReferenceException при экспорте в Excel 2007 - исправлены ошибки валидации при экспорте в ODT/ODS - исправлена ошибка экспорта в ODT при которой файл некорректно открывался в Word 2019 - исправлена ошибка с некорректным расположением линии при экспорте в Word 2007 - исправлена ошибка экспорта строк, содержащих только пробелы, при экспорте в DXF - исправлена ошибка в PDF экспорте, приводящая к исчезновению пробелов при наличии в отчете символов табуляции - исправлена ошибка экспорта подвалов страниц при экспорте в Excel 2007 в режиме бесшовной таблицы - исправлена ошибка экспорта символа "\" при экспорте в Excel 2007 - исправлена ошибка при экспорте в Excel 2007 в режиме "Без разрывов таблицы", приводящая к разрывам таблицы, некорректному объединению ячеек, некорректному экспорту изображений - исправлена ошибка, при которой ссылки с русскими буквами не работали в PDF экспорте - исправлена ошибка, при которой даты создания и редактирования документа не соответствовали эквивалентным в метаданных в PDF/A-1a экспорте - исправлена ошибка при экспорте в Excel 97, приводящая к исключению "Huge SAT not implemented" - исправлена ошибка при экспорте текстов, содержащих амперсанд '&', в Excel 2007 экспорте - исправлена ошибка при экспорте MapObject в PowerPoint - исправлена ошибка сохранения темы по умолчанию при экспорте в Excel 2007 - исправлена ошибка с экспортом градиентных заливок с паролем владельца или пользователя при экспорте в PDF - исправлена ошибка с шифрованием цифровой подписи в PDF-экспорте при защите документа паролем - исправлена ошибка со смещением параграфов при экспорте в OpenOffice Writer - исправлена ошибка с некорректными отступами при экспорте в OpenOffice Writer - исправлена ошибка с некорректным размером картинки при экспорте в RTF - исправлена ошибка с разбиением на страницы при экспорте в OpenOffice Writer - исправлена ошибка со смещением параграфов при экспорте в OpenOffice Writer - исправлена ошибка с выравниванием текста по ширине при экспортах в OpenOffice Writer и OpenOffice Spreadsheet - исправлена ошибка при экспорте в Excel (BIFF8) - исправлена ошибка печати при послойном Html-экспорте, если в отчёте были листы с ландшафтной ориентацией страниц - исправлена ошибка, при которой экспорт в EMF вызывал исключение - исправлено отображение объектов с отрицательной высотой/шириной при послойном экспорте в Html - исправлены ошибки при экспорте многостраничного отчёта в XML - исправлена ошибка в PDF-экспорте приводящая к созданию некорректного файла при включенных свойства EmbeddingFonts и InteractiveForms - исправлено отображение фона у BarcodeObject при экспорте в Pdf и HTML - исправлены ошибки при отображении Shape, Barcode, Polygon и т.д. с заливкой (или фоном) во всех табличных экспортах ### FastReport Embarcadero Edition URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/fastreport-embarcadero-edition FastReport VCL - встраиваемый компонент, который позволит вашему приложению формировать отчеты быстро и эффективно.  FastReport включает весь необходимый набор инструментов для генерации отчетов, включая визуальный дизайнер, ядро отчетов и окно просмотра. Он может быть использован в средах разработки Delphi, C++Builder и RAD Studio. FastReport Embarcadero Edition доступен только зарегистрированным пользователям следующих продуктов: Embarcadero® Delphi XE2, Embarcadero ® C++Builder XE2, Embarcadero® Delphi XE3, Embarcadero ® C++Builder XE3, Embarcadero® Delphi XE4, Embarcadero ® C++Builder XE4 Embarcadero® Delphi XE5, Embarcadero ® C++Builder XE5, Embarcadero® Delphi XE6, Embarcadero ® C++Builder XE6, Embarcadero® Delphi XE7, Embarcadero ® C++Builder XE7, Embarcadero® Delphi XE8 и Embarcadero ® C++Builder XE8, Embarcadero® Delphi 10 Seattle, Embarcadero ® C++Builder 10 Seattle, Embarcadero® Delphi 10.1 Berlin, Embarcadero ® C++Builder 10.1 Berlin, Embarcadero® Delphi 10.2 Tokyo и Embarcadero ® C++Builder 10.2 Tokyo, Embarcadero® Delphi 10.2 Tokyo и Embarcadero ® C++Builder 10.2 Tokyo environments  (Community Edition), Embarcadero® RAD Studio 10.3 Rio, Embarcadero®   RAD Studio 10.4 Sydney,    Embarcadero® RAD Studio 11.2 Alexandria, Embarcadero® RAD Studio 12 Athens  (поставляется через Embarcadero GetIT).  Скачать FastReport Embarcadero Edition можно по следующей  ссылке . Сравните Embarcadero Edition с другими редакциями FastReport VCL, чтобы оценить все их преимущества.  ### FastReport Enterprise по цене Professional URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/free-designer Summary: Летняя акция для FastReport Enterprise по цене Professional Летняя акция для FastReport Enterprise по цене Professional Майские праздники закончились, а сезон отпусков еще не начался. Значит сейчас самое время воспользоваться специальным предложением на покупку генератора отчетов FastReport, чтобы летом сосредоточиться на отдыхе и не переживать за генерацию документов.  До 1 июля можно приобрести FastReport .NET Enterprise Single по цене Professional ! То есть получить платформонезависимый дизайнер отчетов FastReport Online Designer совершенно бесплатно и сэкономить 23 990 рублей.  FastReport Online Designer позволяет создавать, редактировать и просматривать отчеты на любом устройстве, не вызывая проблем с совместимостью. Чтобы воспользоваться предложением, обратитесь к менеджерам в  саппорте , чате на сайте или по адресу sales@fastreport.ru ### FastReport FMX 2.6 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-fmx-2.6 Summary: FastReport FMX 2.6 FastReport FMX 2.6 В этом техническом релизе мы добавили поддержку последний среды разработки Embarcadero RAD Studio 10.2 и исправили ошибки, присланные нашими пользователями. Версия 2.6 --------------- + Добавлена поддержка Embarcadero RAD Studio 10.2 с исправлениями совместимости: - Добавлено исправление для модальных диалогов(когда диалог появлялся позади неактивной формы) - Исправлен неправильный размер текста у штрихкода при печати из OSX - Исправлены HTML Теги в OSX - Исправлен редактор переменных - Исправлены ошибки печати под OSX - Исправлена печать HTML текста из OSX Основные исправления: + Добавлено разбиение текста для простого отображения текста - Изменено выравнивание текста в PDF - Исправлена функция calcheight для простого текста под OSX - Исправлена сетка выравнивания в дизайнере - Изменен текста в OSX(frxCompareText) - Исправлены несколько много-поточных проблем - Исправлена работа двойной буферизации для объектов фигур - Исправлена печать из GDIP контекста - Исправлен редактор параметров RAD Studio 10.1 - Исправлено заполнение TfrxDBLookupComboBox - Исправлено форматирование в PDF экспорте - Исправлено Вертикальное выравнивание текста - Исправлена проблема с scrollbars в XE3 - Исправлена финансовые серии для TeeChart Pro - Исправлено свойство OpenAfterExport ### FastReport FMX для Apple macOS URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-fastreport-fmx Summary: FastReport FMX для Apple MacOS FastReport FMX для Apple MacOS Компания Fast Reports анонсирует скорый выход  FastReport FMX  - профессионального генератора отчётов для кросс-платформенной разработки в среде  FireMonkey  (входит в состав Delphi XE2 компании Embarcadero Technologies, на сегодня поддерживает Apple macOSX и MS Windows).  На нашем сайте доступна для скачивания демонстрационная версия продукта.  Старт продажи  полной версии  планируется в мае 2012.  Ссылки для скачивания:  OSX demo ,  Win32 demo . ### FastReport for DBA 2021.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-dba-2021.2 Summary: FastReport for DBA 2021.1 FastReport for DBA 2021.1 В новой версии FastReport for DBA мы добавили поддержку экранов высокого разрешения в дизайнере и окне просмотра готовых отчётов. Добавлены экспорты в форматы DXF, «Мой офис» (XODT, XODS), PDF/A-1a, PDF/A-2u. Добавлены новые иконки в стиле Visual Studio. Вы можете переключаться между наборами иконок в окне дизайнера "Вид/Настройки/Интерфейс" (или "Файл/Настройки/Интерфейс" в случае использования ribbon-интерфейса): Новые иконки представлены в нескольких размерах и отлично подходят для работы на мониторах высокого разрешения(hiDPI). Добавлены новые баркоды: Swiss QR Code, ITF-14, Deutsche Post Identcode, Deutsche Post Leitcode, Japanese PostNet: Появилась возможность создавать QR-код СберБанка: Добавлена возможность упрощенного отображения полей БД в объекте "Текст" в режиме дизайна. Эта настройка доступна в окне дизайнера "Вид/Настройки/Внешний вид объектов". По умолчанию настройка отключена; при ее включении объекты "Текст", содержащие одно поле БД, отображаются в упрощенном виде: Добавлена возможность индивидуальной настройки ячеек в углу объекта "Матрица". Для этого используйте контекстное меню ячейки, команды "Разбить ячейку", "Объединить ячейки": Добавлена возможность подключения к ElasticSearch. Подключение доступно в мастере подключения к данным и из кода. Значительно улучшено и переработано подключение к источнику данных CSV. Появились свойства VisibleExpression, PrintableExpression и ExportableExpression. С их помощью можно настраивать значения свойств Visible, Printable и Exportable в зависимости от какого-либо условия: Полный список изменений: [Engine] + добавлено подключение к ElasticSearch + добавлен новые штрих-коды - QR-код СберБанка, Swiss QR Code, ITF-14, Deutsche Post Identcode, Deutsche Post Leitcode, Japanese PostNet + добавлена возможность изменять количество знаков после запятой для форматов Числовой, Денежный и Процент, при использовании системных настроек + добавлено свойство "SplitRows" для MatrixObject. По умолчанию его значение False и в этом случае происходит объединение строк с одинаковыми значениями. Если True - строки разбиваются (как у TableObject) + добавлена агрегатная функция CountDistinct (итоги отчета и итоги объекта Матрица) + добавлена поддержка TLS 1.2 + добавлены 2 новых типа UncheckedSymbol для CheckBox + добавлена возможность запретить загрузку данных форматов XML и CSV локально + добавлена возможность загружать источник данных XML по URL + добавлены функции преобразования чисел в слова для польского языка + добавлены функции преобразования чисел в слова для индийского языка + добавлен символ рупий для индийской валюты + добавлены функции преобразования чисел в слова для персидского языка + добавлены функции преобразования чисел в слова для украинского языка + добавлен метод Report.Prepare(int pagesLimit), позволяющий подготовить ограниченное количество страниц + добавлена возможность выравнивания штрих-кодов + добавлено свойство PictureObject.ImageSourceExpression, позволяющее установить выражение, содержащее источник изображения + добавлена возможность использовать выражения, заключенные в квадратные скобки в свойствах VisibleExpression, PrintableExpression и ExportableExpression + добавлено свойство PictureObject.ImageFormat, позволяющее выбрать формат хранения изображения + добавлено свойство MatrixObject.PrintIfEmpty, позволяющее отображать матрицу даже если она пуста + добавлено свойство Page.LastPageSource, позволяющее настраивать лоток принтера для печати последней страницы отчета + добавлены свойства VisibleExpression, PrintableExpression и ExportableExpression + добавлено свойство Report.Tag + добавлено свойство AutoEncode для DataMatrix Barcode. По умолчанию, при значении true, управляющий символ &1; кодируется как символ FNC1. При значении false, символ кодируется как есть. + добавлены новые TextQuality: SingleBitPerPixel и SingleBitPerPixelGridFit + добавлена возможность разбивать строки таблицы + добавлены валюты RUB, BYN и BBYN в функцию ToWordsRu * оптимизирована работа свойств VisibleExpression, PrintableExpression и ExportableExpression для бэндов * улучшен алгоритм конвертации RTF в объекты отчета * оптимизирован и унифицирован конвертор RichText в объекты отчёта * оптимизировано копирование потоков в некоторых случаях - исправлена ошибка с неправильной шириной табуляции при TextObject.TextRenderType = TextRenderType.HtmlTextRenderer - исправлена ошибка с объектом "Вложенный отчет" на бэнде "Подвал страницы", приводящая к переполнению стека - исправлена ошибка со свойствами Dock и Anchor у объектов внутри ячеек таблицы/матрицы - исправлена ошибка, приводящая к System.ArgumentException при отрисовке PictureObject расположенными за пределами бэнда - исправлена ошибка с некорректной работой правого якоря (Anchor = AnchorStyles.Right) при неограниченной ширине страницы - исправлена ошибка с заменой пользовательского шрифта на шрифт, по умолчанию при подготовке отчета - исправлена ошибка с выравниванием по вертикали при конвертации RTF (по умолчанию теперь Top вместо Center). - исправлена ошибка конвертации таблиц RTF в объекты отчета - исправлена ошибка, при которой размеры страницы могли сбрасываться после предварительного просмотра - исправлена ошибка, при которой печать объекта RichText на большом масштабировании Windows происходила некорректно - исправлена ошибка, приводящая к System.ArgumentOutOfRangeException в функциях Substring - исправлена ошибка, приводящая к System.ArgumentException при отрисовке PictureObject с некоторыми изображениями - исправлена ошибка, при которой не отображались таблицы при подключении к Advantage Database через ODBC - исправлена ошибка, при которой RichText выходил за пределы страницы - исправлена ошибка перекомпиляции скрипта отчёта, который взаимодействовал с ChildBand - исправлены ошибки при импорте отчетов DevExpress - исправлены ошибки при импорте отчетов RDL - исправлена ошибка, при которой бэнд с включенным свойством FillUnusedSpace, не выводился еще раз, хотя свободного места достаточно - исправлены ошибки при импорте отчетов List and Labels - исправлена ошибка, при которой свойство AutoSize для SvgObject работало неправильно - исправлена ошибка с TextObject.AutoShirnk=FontSize при очень маленьком размере TextObject - исправлена ошибка с некорректным значением переменной TotalPages при ее использовании в VisibleExpression - исправлена ошибка с неполным копированием матрицы при копировании страницы отчета - исправлена ошибка с преобразованием RichText, когда значение RichObject.Text равно null - исправлен ошибка со StreamReader при подключении к удаленному JSON - исправлена ошибка компиляции отчета при некоторых выражениях в свойствах VisibleExpression, PrintableExpression и ExportableExpression - исправлена ошибка с неправильным вычислением контрольный суммы для штрих-кода Deutsche Post Identcode - исправлена ошибка, приводящая к исключению, при включенном свойстве "Формировать новую страницу" у дочернего бэнда заголовка страницы - исправлена ошибка, при которой значение выражения отображалось текстом этого выражения - исправлена ошибка с прозрачностью RichObject - исправлена ошибка с видимостью текстового объекта, при включенном параметре Visible у Highlight - исправлена ошибка с работой свойства PrintableExpression - исправлена ошибка, при которой перенос вложенного отчета на новую страницу работал некорректно - исправлена ошибка, при которой подвал данных отрывался от данных при включенном свойстве "не отрывать от данных" - исправлена генерация штрих-кода GS1-128 - исправлено некорректное значение Итога, если он ссылался на другой Итог - исправлена ошибка, при которой таблица переносилась некорректно - исправлена ошибка парсинга xml с шестнадцатеричными параметрами, например "To create it: " - исправлена ошибка с попыткой преобразовать DBNull в пустую строку при отключенном ConvertNulls - исправлена ошибка, при которой PageFooter с включенным PrintOn=LastPage, выводился на предпоследней странице [Designer] + добавлена поддержка HiDPI + добавлено упрощенное отображение имен полей БД в дизайнере + добавлена кнопка свернуть все/развернуть все, и поле поиска для дерева отчетов и дерева данных + добавлены новые иконки. Вы можете выбрать их в окне дизайнера "Вид/Настройки/Интерфейс". + улучшено поведение панели страниц + добавлена возможность копировать источник данных + добавлен импорт отчетов DevExpress сохраненных в формате XML + добавлена возможность добавлять текст и картинки перетаскиванием их из браузера + добавлена возможность редактировать количество строк и столбцов таблицы перетаскиванием мыши + добавлена загрузка RTF текстов, таблиц и стилей при загрузке DevExpress файлов + добавлена возможность загрузки CSV файлов через URL + добавлена возможность открывать страницу вложенного отчета по двойному нажатию на его объект + добавлена возможность менять шрифт во вкладке с кодом, окне редактирования текста и окне редактора формул + добавлена возможность замены картинок при перетаскивании + добавлена возможность горизонтальной прокрутки отчета при зажатой клавише Shift + добавлена возможность открывать файл отчета перетаскиванием + добавлена подсветка бэнда, на который будет помещен объект при перетаскивании + добавлена возможность перетаскивать на страницу изображения в форматах png, jpeg, jpg, gif, ico, bmp, tif, tiff, emf, wmf и текстовые файлы в форматах txt и rtf + добавлена возможность вставлять текст и изображение на страницу из буфера обмена + добавлена возможность создавать новую страницу отчёта с помощью: кнопки "+" на панели страниц, двойным нажатием на свободное место на панели страниц, сочетанием клавиш Ctrl+N * теперь при смене окна контекстное меню закрывается * теперь в момент автосохранения выбранный пункт из окна свойств не сбрасывается - исправлена ошибка, приводящая к падению дизайнера отчётов, при некорректной таблице в источнике данных - исправлена ошибка с выходом за пределы массива в SQLBuilder в дизайнере - исправлена ошибка, при которой не открывалась диалоговая страница если в ней есть GridControl - исправлены ошибки в режиме Right to Left - исправлена ошибка при повторном масштабировании диалоговой формы - исправлена ошибка при добавлении штрих-кода, при которой создавался штрих-код не того типа - исправлена ошибка, при которой при перетаскивании из функций создавался NUD и пустой текстовый объект - исправлена ошибка, при которой в диалоговых окнах неправильно отрисовывался RichTextBoxControl - исправлены проблемы с масштабированием в окнах WelcomeForm и Wizard - исправлена ошибка при копировании объекта, когда создавался объект с таким же именем - исправлена ошибка с пустым именем базы данных после перезагрузки отчета - исправлена ошибка, при которой двойное нажатие по кнопкам-стрелкам на панели отчета создавало новые страницы - исправлена ошибка, при которой у окна редактирования датчиков была неправильная ширина - исправлена ошибка, при которой переключение свойств на алфавитный порядок не работало - исправлена ошибка загрузки размера страницы при конвертировании DevExpress файла - исправлена ошибка, при которой пустая строка в штрих-коде Datamatrix приводила к исключению - исправлена ошибка, при которой перетаскивание в матрицу не работало - исправлена ошибка, приводящая к System.FormatException при открытии файлов DevExpress - исправлена ошибка "Значение счетчика не может быть меньше нуля." при открытии файлов DevExpress - исправлена ошибка с перемещением объектов в дереве отчета при нажатой клавише Ctrl - исправлена ошибка с выпадающим меню кнопки выбора цвета - исправлена ошибка при изменении параметров, сразу после добавления линии, вызывающая исключение - исправлена ошибка при создании штрих-кода Intelligent Mail - исправлена ошибка с JSON-подключением в Мастере Подключения к Данным - исправлена ошибка с неправильной отрисовкой горизонтальных направляющих - исправлена ошибка, при которой ширина объектов сбрасывалась после закрытия Preview при включенном правом якоре - исправлена ошибка при попытке задания некорректного значения RowSpan ячейке MatrixObject - исправлена ошибка со сбрасыванием цвета, ширины и стиля в редакторе границ - исправлена ошибка с изменением размера PolyLineObject/PolygonObject, скопированного с помощью Ctrl+Button - исправлена ошибка с неактивным контекстным меню "Режим отображения" у SVG-объекта - исправлена ошибка, когда невозможно было удалить вложенный отчет, если связанная с ним страница удалена - исправлена ошибка, когда кнопки в разделе "Панели" вкладки "Вид" не соответствовали видимости соответствующих окон [Preview] + добавлена кнопка "О программе" в панели инструментов предварительного просмотра + добавлена возможность горизонтальной прокрутки отчета при зажатой клавише Shift + добавлен редактор меню экспортов * теперь меню с источниками данных скрыто в редакторе текста в окне предварительного просмотра * кнопка "Удалить Страницу" в окне предварительного просмотра теперь неактивна, если подготовленный отчет состоит из одной страницы - исправлена ошибка сохранения подготовленных отчётов, содержащих сконвертированный RichObject - исправлена ошибка, при которой проценты масштаба в Preview могли отображаться некорректно - исправлена ошибка, приводящая к System.ObjectDisposedException при повторной подготовке отчета [Exports] + добавлены экспорты в форматы DXF, XODT, XODS, PDF/A-1a, PDF/A-2u + добавлена поддержка стандарта ODF 1.2 при экспорте в ODT/ODS + добавлена опция при экспорте в Word 2007 "Не добавлять разрывы разделов при разрывах страниц". По умолчанию добавляются и разрывы страниц, и разрывы разделов. + добавлено свойство ReportPage.ExportAlias, позволяющее задать имя страницы при экспорте в Excel 2007 + добавлена возможность разделить страницы в XML-экспорте + добавлена поддержка свойства Padding для текстовых объектов в Word2007 * теперь в PDF-экспорте при InteractiveForms = true шрифты не сохраняются, если в отчете нет редактируемых элементов * теперь в Excel 2007 экспорте для листов без изображений не создаются файлы с описанием изображений и связи к ним * оптимизировано сохранение встраиваемых шрифтов при экспорте в PDF. Размер файлов значительно уменьшился. - исправлен разрыв страницы в Html экспорте (свойство PageBreaks) - исправлен SVG экспорт с параметром "Экспорт в несколько файлов" - исправлена ошибка в SVG экспорте на мониторах с высоким разрешением - исправлены имена фалов, сохраняемых в zip архив - исправлена ширина табуляции при экспорте RichObject - исправлена ошибка XPS-экспорта, при которой документы, экспортированные на Linux, не открывались на Windows - исправлены ошибки некорректной работы свойств Anchor и Dock при экспорте страниц с бесконечной шириной - исправлена ошибка экспорта текстовых объектов в Excel 2007 с включенным типом рендеринга HtmlParagraph. Отключите параметр экспорта WYSIWYG, чтобы экспортировать текст вместо изображений. - исправлена ошибка экспорта в ODF при которой документ не открывался в МойОфис - исправлена ошибка с закрытием ячейки, содержащей RichText при экспорте в RTF - исправлена ошибка при экспорте объектов с режимом рендеринга HtmlParagraph - исправлена ошибка экспорта линии со стрелочным указателем при послойном экспорте в Word 2007 - исправлена ошибка экспорта линии со стрелочным указателем при экспорте в PowerPoint 2007 - исправлено сохранение отчета в Box - исправлено сохранение отчета в OneDrive - исправлено сохранение отчета в GoogleDrive - исправлена ошибка, приводящая к System.OutOfMemoryException при экспорте в PDF - исправлена ошибка создания некорректного файла при экспорте в Excel 2007 с большим количеством страниц и опцией разрывов страниц - исправлена ошибка, при которой экспорт в изображение не учитывал прозрачный фон отчета - исправлена ошибка, приводящая к System.NullReferenceException при экспорте в Excel 2007 - исправлены ошибки валидации при экспорте в ODT/ODS - исправлена ошибка экспорта в ODT при которой файл некорректно открывался в Word 2019 - исправлена ошибка с некорректным расположением линии при экспорте в Word 2007 - исправлена ошибка экспорта строк, содержащих только пробелы, при экспорте в DXF - исправлена ошибка в PDF экспорте, приводящая к исчезновению пробелов при наличии в отчете символов табуляции - исправлена ошибка экспорта подвалов страниц при экспорте в Excel 2007 в режиме бесшовной таблицы - исправлена ошибка экспорта символа "\" при экспорте в Excel 2007 - исправлена ошибка при экспорте в Excel 2007 в режиме "Без разрывов таблицы", приводящая к разрывам таблицы, некорректному объединению ячеек, некорректному экспорту изображений - исправлена ошибка, при которой ссылки с русскими буквами не работали в PDF экспорте - исправлена ошибка, при которой даты создания и редактирования документа не соответствовали эквивалентным в метаданных в PDF/A-1a экспорте - исправлена ошибка при экспорте в Excel 97, приводящая к исключению "Huge SAT not implemented" - исправлена ошибка при экспорте текстов, содержащих амперсанд '&', в Excel 2007 экспорте - исправлена ошибка при экспорте MapObject в PowerPoint - исправлена ошибка сохранения темы по умолчанию при экспорте в Excel 2007 - исправлена ошибка с экспортом градиентных заливок с паролем владельца или пользователя при экспорте в PDF - исправлена ошибка с шифрованием цифровой подписи в PDF-экспорте при защите документа паролем - исправлена ошибка со смещением параграфов при экспорте в OpenOffice Writer - исправлена ошибка с некорректными отступами при экспорте в OpenOffice Writer - исправлена ошибка с некорректным размером картинки при экспорте в RTF - исправлена ошибка с разбиением на страницы при экспорте в OpenOffice Writer - исправлена ошибка со смещением параграфов при экспорте в OpenOffice Writer - исправлена ошибка с выравниванием текста по ширине при экспортах в OpenOffice Writer и OpenOffice Spreadsheet - исправлена ошибка при экспорте в Excel (BIFF8) - исправлена ошибка печати при послойном Html-экспорте, если в отчёте были листы с ландшафтной ориентацией страниц - исправлена ошибка, при которой экспорт в EMF вызывал исключение - исправлено отображение объектов с отрицательной высотой/шириной при послойном экспорте в Html - исправлены ошибки при экспорте многостраничного отчёта в XML - исправлена ошибка в PDF-экспорте приводящая к созданию некорректного файла при включенных свойства EmbeddingFonts и InteractiveForms - исправлено отображение фона у BarcodeObject при экспорте в Pdf и HTML - исправлены ошибки при отображении Shape, Barcode, Polygon и т.д. с заливкой (или фоном) во всех табличных экспортах ### FastReport Mono URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/blog-fastreport-mono Summary: FastReport Mono FastReport Mono Наша команда занималась переносом продукта FastReport .NET под Mono, и вот мы готовы показать, что же у нас получается.  Более подробную информацию читайте  в блоге  ведущего разработчика Алексея Мандрыкина. Обсуждение и комментарии приветствуются!  Сообщения о найденных ошибках, проблемах и недочётах можно оставлять в блоге или присылать на почтовый адрес  support@fast-report.com  с указанием FastReport Mono в теле письма. ### FastReport Mono Как запустить demo.exe под MacOS X URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-mono-macos-blog Summary: We are often asked: "You have the professional multi-platform report generator for MONO - FastReport.Mono. We are often asked: "You have the professional multi-platform report generator for MONO - FastReport.Mono. Нас часто спрашивают: "У вас есть профессиональный мультиплатформенный генератор отчётов для MONO - FastReport Mono. Отлично! Но как запустить хотя бы демку с отчётами demo.exe под Apple MacOS?" - Отвечает наш разработчик Алексей Мандрыкин в своём блоге . ### FastReport Mono официально совместим с ОС Astra Linux Special Edition URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/compatibility-astralinux-mono Summary: 18 января в рамках импортозамещения компании ООО "Быстрые отчеты" и ООО "РусБИТех-Астра" подписали сертификат совместимости. 18 января в рамках импортозамещения компании ООО "Быстрые отчеты" и ООО "РусБИТех-Астра" подписали сертификат совместимости. В рамках импортозамещения 18 января 2024 года компании ООО "Быстрые отчеты" и ООО " РусБИТех-Астра " подписали сертификат совместимости программного обеспечения  FastReport Mono  с операционной системой специального назначения Astra Linux Special Edition. ООО "РусБИТех-Астра" осуществляют лицензированную разработку, производство и внедрение информационных и автоматизированных систем, систем поддержки принятия решений, программных средств общего назначения, разработку и создание средств защиты информации и телекоммуникационных средств, комплексных тренажерных систем нового поколения. Astra Linux Special Edition - это операционная система класса Linux, обеспечивающая защиту информации, содержащей сведения, составляющие государственную тайну с грифом не выше «совершенно секретно». Разработаны и включены в состав операционной системы программные компоненты, расширяющие ее функциональность и повышающие уровень защищенности и удобства ее использования.  После проведенных испытаний и тестов специалистами компаний была подтверждена функциональная работоспособность и совместимость продуктов. ### FastReport Mono сертифицирован для работы с Astra Linux URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/astra-linux-special-edition Summary: FastReport Mono сертифицирован для работы с Astra Linux FastReport Mono сертифицирован для работы с Astra Linux Проведенные испытания технической совместимости FastReport Mono с “Astra Linux Special Edition”, операционной системой специального назначения, прошли успешно. Astra Linux Special Edition - это база, созданная для комплексной защиты информации и построения защищённых автоматизированных систем. С версии Astra Linux Special Edition 1.6 работа генератора отчетов с поддержкой Mono будет безошибочной. Подробнее об Отечественных версиях Linux. ### FastReport Mono совместим с операционными системами Альт URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/compatibility-alt-mono Summary: 27 марта 2024 года компании ООО "Быстрые отчеты" и ООО "Базальт СПО" подписали сертификат совместимости программного обеспечения 27 марта 2024 года компании ООО "Быстрые отчеты" и ООО "Базальт СПО" подписали сертификат совместимости программного обеспечения В рамках импортозамещения 27 марта 2024 года компании ООО "Быстрые отчеты" и ООО "Базальт СПО" подписали сертификат совместимости программного обеспечения FastReport Mono с операционными системами семейства "Альт" на платформе x86_64. Базальт СПО (ALT Linux) - разработчик российских ОС Альт Рабочая станция, Альт Сервер, Альт Образование, Альт СП, Альт Виртуализация, Simply Linux. "Базальт СПО" (Alt Linux до 2015 года) — разработчик линейки российских операционных систем «Альт» для рабочих станций, серверов и построения виртуальной инфраструктуры. ОС служат платформой для ИТ-инфраструктур любого масштаба и сложности; развитие платформы ведется более 20 лет. ОС «Альт» включены в Единый реестр российского ПО. Наличие собственной независимой инфраструктуры разработки обеспечивает развитие самостоятельных операционных систем, а не клонов (деривативов) зарубежных ОС. Все разработчики «Базальт СПО» являются членами ALT Linux Team — международной команды разработчиков свободного программного обеспечения. "Альт Рабочая станция" — универсальная операционная система для компьютеров и ноутбуков. Она включает в себя расширенный набор программ и драйверы современных устройств. А также содержит графическую оболочку MATE. После проведенных испытаний и тестов специалистами компаний была подтверждена функциональная работоспособность и совместимость FastReport Mono с операционными системами Альт.  Узнать больше об использовании продуктов FastReport в Альт системах можно в наших статьях . ### FastReport Mono, Core и Open Source официально совместимы с ОС РОСА «Кобальт» URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-rosa Summary: С 4 апреля 2022 года все обновления линейки продуктов FastReport Mono, Core и Open Source официально совместимы с РОСА «Кобальт». С 4 апреля 2022 года все обновления линейки продуктов FastReport Mono, Core и Open Source официально совместимы с РОСА «Кобальт». Проведенные испытания технической совместимости FastReport Mono, Core и Open Source с операционной системой РОСА «Кобальт» прошли успешно. РОСА «Кобальт» используется коммерческими структурами, промышленными предприятиями и органами государственной власти, работающими с конфиденциальной информацией, включая персональные данные. Начиная с 4 апреля 2022 года все последующие обновления FastReport совместимы с РОСА «Кобальт».  ### FastReport Mono. Что это, и для чего? URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/what-is-mono Моно - это платформа разработки с открытым исходным кодом на основе .NET Framework, позволяет разработчикам создавать кросс-платформенные приложения. Реализация Mono .NET основана на стандартах ECMA для C # и Common Language Infrastructure. Разработанный компанией Novell, Xamarin, а теперь Microsoft и .NET Foundation, проект Mono имеет активное и энтузиастское сообщество. Mono включает как инструменты разработчика, так и инфраструктуру, необходимую для запуска клиентских и серверных приложений .NET. Платформа Mono состоит из нескольких компонентов: Компилятор C # - поддерживает C # стандарта 1.0, 2.0, 3.0, 4.0, 5.0 и 6.0 (ECMA). Mono Runtime - среда выполнения ECMA Common Language Infrastructure (CLI). Среда исполнения предоставляет компилятор Just-in-Time (JIT), компилятор Ahead-of-Time (AOT), загрузчик библиотек, сборщик мусора и др. Библиотека классов .NET Framework. Платформа Mono предоставляет реализацию библиотек WinForms, ADO.Net, ASP.Net и других. Mono Class Library – было создано множество классов с дополнительной функциональностью специально для Mono, которые выходят за рамки библиотеки базового класса, предоставляемой Microsoft. Несмотря на предвзятое отношение разработчиков к платформе Mono, многие известные компании используют его. Например: Novell использует Mono для клиентских и серверных приложений; Unity Technologies использует Mono в инструменте моделирования компьютерных игр Unity 3D. Это дает возможность создавать кросс-платформенные видеоигры; Artisteer использует Mono для переноса своего веб дизайнера на другую платформу. Начиная с версии 2.2, можно запустить свое программное обеспечение с помощью Mono. Так как кросс-платформенных генераторов не так уж и много, а действительно хороших, так вообще по пальцам посчитать можно, FastReports решила создать генератор отчетов для Mono. Тем более, что уже есть готовый популярный генератор отчетов FastReport.Net, на базе которого и был создан FastReport.Mono. Он появился в 2013 году, и на тот момент повторял функционал FastReport.Net. Однако сейчас, между ними есть различия. Что уж таить, FR.Net значительно продвинулся вперед. Тем не менее FastReport.Mono остается сильным конкурентом в своей нише. И лично я не знаю других генераторов отчетов под фреймворк Mono с таким богатым функционалом. Что же предлагает FastReport.Mono? Удобный и функциональный дизайнер отчетов; Подключение к любой БД, и не только. Даже текстовые файлы могут быть источниками данных, не говоря уже об XML и JSON; Наличие встроенного скрипта отчета. Что наделяет отчет огромными возможностями. Ведь вы можете использовать библиотеки Mono прямо в отчете, для произведения преобразований данных, а также работать с объектами отчета; Веб отчеты, на основе ASP.Net; Давайте рассмотрим детальнее. Итак, с FastReport.Mono можно работать в разных операционных системах . Ну конечно же, Mono кросс-платформенный фреймворк. Поэтому нам доступны системы: Windows, MacOs, семейство Linux. Для работы с Mono, а соответственно и с FastReport.Mono подходят следующие среды разработки : Microsoft Visual Studio (под Windows), MonoDevelop (Windows, MacOs, Linux) и Embarcadero Delphi Prism (Windows, MacOs, Linux). Языки программирования , для работы с FR.Mono: C#, VB.Net, Oxygene (Embarcadero Delphi Prism). Язык встроенного скрипта отчета : C#, VB.Net. Все также, как и в FastReport.Net. Источники данных , доступные по умолчанию: XML, CSV. А для подключения к базам данных нужно использовать источник данных пользовательского приложения, или внешние коннекторы, устанавливаемые в систему. Интересные особенности генератора отчетов: диалоговые формы – перед отображением отчета можно вывести форму с элементами управления. Таким образом пользователь отчета может задать параметры отображения отчета. Например, отфильтровать нужные значения; наследование отчетов – возможность использовать отчет как базовый шаблон для других. Это удобно, когда вы делаете много подобных отчетов. Кроме того, изменения в базовом отчете отобразятся во всех наследованных отчетах. Это тоже можно отнести к плюсам. Ведь не нужно изменять большое количество отчетов, если требуются правки базового шаблона; Компонент предварительного просмотра отчета – позволяет просматривать отчет и делать его экспорт, отправлять email, а также управлять просмотром отображая план отчета, переходить между страницами; Дизайнер отчета может быть вызван отдельно как самостоятельная программа, может быть вызван во время разработки пользовательского приложения, а также во время выполнения пользовательского приложения. Последний вариант очень интересен. По сути вы встраиваете дизайнер в свою программу и даете пользователю возможность редактировать отчеты самостоятельно. Продвинутый режим печати – еще один продуманный инструмент. Настройки печати очень богатые. Веб отчеты реализуются посредством технологии ASP.Net и ASP.Net MVC. Что тут сказать - современный и востребованный подход. Список возможных экспортов отчета достаточно большой: Acrobat PDF; Images Jpeg/PNG/BMP/GIF/TIFF; RichText; Word OOXML (docx); PowerPoint OOXML (pptx); HTML; MHT (web archive); Microsoft XPS; Excel OLE; Excel XML; Excel binary (xls); Excel OOXML (xlsx); Comma separated values (CSV); DBF (table); Open Document Speadsheet (OpenOffice); Open Document Text (OpenOffice); Email; PostScript; Json; LaTex; FTP; Text File / Matrix Printer; Clouds (DropBox); Clouds (Box); Clouds (FastReport Cloud); Clouds (GoogleDrive); Clouds (OneDrive). Обратите внимание, последние элементы списка – Clouds – это по сути сохранение отчета в облачные сервисы. Формат файла отчета – frx, такой же, как и в FastReport.Net. Да, собственно, отчеты совместимы между FR.Net и FR.Mono. Разработчики, выбирая логотип для FastReport.Mono, проявили остроумие. Судите сами. Вот логотип платформы Mono: А вот логотип FastReport.Mono: В заключение хочу отметить, что перенос FastReport.Net на платформу Mono, было стратегически верным решением. Сейчас это актуально как никогда, в контексте «Импортозамещения» и «Гослинукса». Tags: .NET, MacOS, Mono, FastReport, C#, .NET, MacOS, Mono, FastReport, C# ### FastReport Mono: подтвержденная совместимость URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/confirmed-compatibility-mono Summary: FastReport Mono: подтвержденная совместимость FastReport Mono: подтвержденная совместимость После ряда испытаний, Fast Reports подписал заключение с рядом производителей отечественных операционных систем и СУБД о совместимости генератора отчетов FastReport Mono и других отечественных разработок в рамках импортозамещения:  РЕД СОФТ:  РЕД ОС и СУБД Ред База Данных Базальт СПО: операционные системы семейства "Альт" Офисным пакетом Р7-Офис. Сертификаты совместимости гарантируют стабильную работу компонентов FastReport Mono со сторонними компонентами. ### FastReport Online Designer URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/faqs/online-designer Summary: Узнайте все об Online Designer, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Узнайте все об Online Designer, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Как использовать FastReport Online Designer в веб приложении Mono? Подробная инструкция по работе Online Designer в веб приложении Mono есть в этой **[статье](/blogs/use-online-designer-mono/)**. Как использовать FastReport Online Designer с FR.Core в одностраничном приложении Vue.js? Подробная инструкция про Online Designer в приложении Vue.js есть в нашей **[статье](/blogs/fr-core-with-designer-in-vue-js/)**. Работают ли нумерованные списки в RichText? Нет, и работать не будут. В данный момент бекенд не поддерживает нумерованные списки, он превращает их в html объекты ` ` Работает ли FastReport Online Designer под мобильными устройствами? Да, создавайте, редактируйте и просматривайте ваши отчеты на планшетах, мобильных и стационарных компьютерах, не задумываясь о совместимости! К каким базам данных и СУБД есть возможность подключения из FastReport Online Designer? Подключение к источника данных происходит на стороне бэкенда FastReport .NET, пример доступных СУБД: * Cassandra * ClickHouse * Couchbase * ElasticSearch * Excel * Firebird * Json * Linter * MongoDB * MsSql * MySql * OracleODPCore * Postgres * RavenDB * SQLite Как хостить фронтенд FastReport Online Designer и бэкенд часть FastReport .NET, на разных серверах и связать их? Или как использовать другой домен для API? Для того, чтобы использовать для API другой домен, в билдере нужно включить опцию “Use another domain for api”: И ввести URL сервера Образца https://example.com/ Также, можно в window добавить свойство hostAPI перед инициализацией онлайн-дизайнера. Какие фильтры экспорта есть в FastReport Online Designer? Фильтры экспорта зависят от FastReport.Web PDF: версий 1.5 и 1.7, PDF / A (1, 2, 3), PDF / X (3, 4); Office: RTF, Excel 2007, Excel 97, Word 2007, PowerPoint 2007, Open Office Calc, Open Office Writer, XML, XAML, LaTeX; Web: HTML, MHT; Graphics: BMP, PNG, GIF, JPEG, TIFF, EMF, SVG, DXF, PPML, PostScript; Data Base: CSV, DBF, Json; А также: Text , ZPL, XPS. Как настроить FastReport Online Designer в приложении React .NET Core? Подробности по настройке Online Designer в приложении React .NET Core можно найти в этой **[статье](/blogs/designing-react-net-core/)**. Что нужно сделать, чтоб работали построение и просмотр отчетов в FastReport Online Designer? Для работы FastReport Online Designer требуется генератор отчетов FastReport .NET, FastReport Open Source или FastReport VCL. Как подготовить продукт к работе, [**читайте в специальной статье**](/blogs/Migrate-FastReport-Open-Source-to-FastReport-Core). Как использовать FastReport Online Designer в ASP .NET Core? Подробную информацию по работе с ASP .NET Core в Online Designer вы можете найти в **[статье](/blogs/online-report-designer-asp-net-core/)**. Как настроить локализацию FastReport Online Designer и WebReport? Инструкция по работе с локализацией Online Designer находится в этой **[статье](/blogs/localization-online-designer-webreport/)**. Как поменять иконки FastReport Online Designer? Пошаговую инструкцию по изменению иконок вы можете найти в этой **[статье](/blogs/upload-report-online-designer-download/)**. Как загрузить отчет в FastReport Online Designer и скачать отредактированный отчет? Пошаговая инструкция по загрузке отчета находится в этой **[статье](/blogs/upload-report-online-designer-download/)**. Как обновить FastReport Online Designer до актуальной версии? Пошаговая инструкция по обновлению дизайнера через Builder доступна **[в нашей статье](/blogs/update-online-designer/)** Можно ли работать с MSChart в FastReport Online Designer? Да, это доступно с версии [**FastReport Online Designer 2023.2**](/news/fastreport-online-designer-2023.2). Как использовать Online Designer в ASP .NET Core? Вы можете найти пошаговую инструкцию в этой **[статье](/blogs/online-report-designer-asp-net-core/)**. Как включить автосохранение в FastReport Online Designer? 1. Включить автосохранение в уже собранном Online Designer. 2. Задать соответствующую опцию в Builder. Подробная информация про автосохранение доступна в этой **[статье](/blogs/functions-online-designer/)**. Как настроить API для сборки FastReport Online Designer? Авторизация пользователя происходит с помощью API ключа, который вы можете создать в FastReport Online Designer Builder. Для создания ключа вам необходимо: - войти под своим аккаунтом; - перейти в пункт меню API Ключи. Подробная инструкция описана в этой **[статье](/blogs/api-builder-online-designer/)**. Как выделить нескольких объектов в дереве отчета и ячейках таблицы FastReport Online Designer? Была добавлена возможность выбрать несколько элементов в дереве отчёта с помощью зажатой клавиши Shift или Ctrl. Подробнее про этот функционал вы можете прочитать **[в этой статье](/blogs/functions-online-designer/)**. Как добавлять свойства в избранные в FastReport Online Designer? Для того, чтобы добавить свойство в "Избранное", нужно нажать по нему правой кнопкой мыши и в контекстном меню выбрать "Добавить в избранное". Подробности использования этого свойства вы можете найти **[в этой статье](/blogs/functions-online-designer/)**. Пожалуйста, объясните подробно, в чём разница основных типов лицензирования? В соответствии с нашим лицензионным соглашением мы предоставляем следующие варианты лицензирования: **Лицензия SCL (Single Corporate License / Единая корпоративная лицензия)** - предоставляет право загрузки и использования одного экземпляра ПО в пределах внутренней инфраструктуры пользователя на одном внутреннем сервере (предназначена для 1 проекта, рассчитана на неограниченное количество разработчиков). **Лицензия SaaS (Программное обеспечение как услуга)** - предоставляет право загрузки с целью обеспечения совместимости и последующего использования ПО конечным пользователем по своему функциональному назначению совместно с внешним (удаленным) приложением Пользователя.(встраивается в облачную платформу, используется для неограниченного количества проектов). **Лицензия OEM (Производитель оригинального оборудования)** - предоставляет право для интеграции FastReport Online Designer в одно приложение, которое распространяется среди других предприятий (проекты- не ограничено, разработчики- не ограничено). **Лицензия Unlimited Perpetual Distribution (Лицензия на неограниченное бессрочное распространение)** - неограниченная лицензия по количеству конечных пользователей пользователей в приложении, где FastReport Online Designer используется в качестве компонента. Как добавить свои пользовательские (кастомные) шрифты в FastReport Online Designer? Для того, чтобы использовать нестандартные шрифты, нужно: - развернуть сервер шрифтов; - определить настройки шрифтов с помощью css; - добавить нужные шрифты и конфигурацию в FastReport WebReport; - сконфигурировать FastReport Online Designer в Builder. Пошаговое добавление пользовательских шрифтов описано **[в этом материале](/blogs/custom-fonts-online-designer/)**. Как использовать FastReport Online Designer в приложении на основе библиотеки knockout.js? Прежде всего нам потребуется шаблон приложения Knockout для dotnet платформы. У вас должен быть установлен NET Core 2.0 SDK или MS Visual Studio 2017. Инструкция по внедрению Online Designer в ваше приложение **[доступна в этой статье](/blogs/online-designer-knockout-app/)**. Где найти демо приложение FastReport Online Designer? Демо приложение FastReport Online Designer доступно по этой **[ссылке](https://демо.быстрыеотчеты.рф/net-core/designer/)**. Где искать исходники после покупки? FastReport Online Designer необходимо собрать. Подробнее можно узнать **[по ссылке](https://быстрыеотчеты.рф/blogs/update-online-designer)** Есть ли платная доработка функциональности FastReport Online Designer? Да, на договорной основе. Вы можете написать нам в техническую поддержку support@fastreport.ru, и наши менеджеры свяжутся с вами для уточнения деталей. ### FastReport Online Designer 2021.4.5 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-online-designer Summary: Выход обновления FastReport Online Designer 2021.4.5. Выход обновления FastReport Online Designer 2021.4.5. Новые объекты Добавлен новый объект "Радиальный счетчик": Этот объект позволяет визуально отобразить значения. У данного счетчика есть несколько видов: Круг Полукруг Квадрант Добавлен новый объект "Контейнер": Данный объект позволяет сгруппировать другие объекты. Добавлен новый объект "Цифровая подпись": Этот объект представляет собой поле для подписи при PDF экспорте, кликнув по которому в Acrobat Reader, можно прикрепить свой сертификат. Примечание: убедитесь, что свойство IsDigitalSignEnable в PDF Export установлено true. Добавлены новые фигуры - пятиугольник, шестиугольник, семиугольник, восьмиугольник: Новые возможности Появилась возможность задавать угол наклона текстового объекта. Это можно сделать с помощью верхнего контрола: Либо с помощью свойства Angle: Добавлена возможность задания другого хоста для бекенда Для того, чтобы задать другой хост, необходимо задать конфигурацию в FastReport Online Designer Builder: После этого, собранная версия дизайнера будет делать запросы по указанному хосту. Также, есть возможность задать хост, добавив свойство host API в window перед загрузкой дизайнера: window.hostAPI = 'https://myawesomehost.com/'. Добавлена возможность использования собственных шрифтов Ранее в дизайнере не было возможности добавить свои собственные шрифты. Сейчас можно указать адрес сервера шрифтов, по которому дизайнер будет их получать. Для этого необходимо в FastReport Online Designer Builder задать конфигурацию: После этого дизайнер будет обращаться по указанному адресу для получения нового шрифта, также передавая GET-параметры family (семейство запрашиваемого шрифта) и report_id (идентификатор текущего шаблона отчета). Полный список изменений FastReport Online Designer 2021.4.5 ---------------------------- + добавлен объект RadialGauge; + добавлен объект Container; + добавлен объект DigitalSignature; + добавлена возможность задать угол поворота для TextObject; + добавлена возможность указать другой хост для бекенда дизайнера; + добавлены новые фигуры: пентагон, гексагон, септагон, октагон; + добавлена возможность задания адреса, по которому дизайнер будет получать шрифты; - исправлен авторазмер для некоторых штрих-кодов; - исправление перевыбора источника данных для дата бенда; - исправление выбора цвета для некоторых браузеров; - исправлено отображение некоторых фигур при подготовке отчета; - исправление отображения некоторых штрих-кодов; - исправлены некорректные размеры Landscape страниц при вызове превью из Online Designer; - исправление загрузки шрифтов; - исправление вставки объекта; * оптимизирован размер бандла. ### FastReport Online Designer и поддержка Blazor WebAssembly бесплатно URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-discount-2023 Summary: С 14 по 30 июня можно приобрести FastReport .NET Enterprise Single по цене Professional и получить Online Designer бесплатно! С 14 по 30 июня можно приобрести FastReport .NET Enterprise Single по цене Professional и получить Online Designer бесплатно! Сейчас самое время воспользоваться специальным предложением на покупку генератора отчетов FastReport .NET , чтобы летом сосредоточиться на отдыхе и не переживать за генерацию документов.  До 30 июня можно приобрести FastReport .NET Enterprise Single по цене Professional! То есть получить платформонезависимый дизайнер отчетов FastReport Online Designer совершенно бесплатно и сэкономить от 16 000 рублей.  FastReport Online Designer позволяет создавать, редактировать и просматривать отчеты на любом устройстве, не вызывая проблем с совместимостью. Это отличная возможность сэкономить, получив гораздо более широкий функционал. Сравните редакции и выберите наиболее подходящую здесь . *Предложение распространяется только на покупку полных лицензий и не действует при покупке апгрейда или продления. Чтобы воспользоваться предложением, переходите по следующей ссылке. ### FastReport Server 1.0 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-server-1.0 Summary: FastReport Server 1.0 FastReport Server 1.0 FastReport Server дополняет комплекс программ Fast Reports Inc. FastReport Server - мощное и полнофункциональное решение для организации корпоративной отчётности, содержащее все инструменты для создания и доставки отчётов. FastReport Server служит базой для реализации стратегии Business Intelligence (BI), предоставляя наиболее востребованную информацию через интернет/интранет сеть напрямую или в составе корпоративных приложений. Сервер отчетов FastReport Server содержит полный набор средств для удаленной генерации отчетов. FastReport Server - идеальное решение для бизнеса любого масштаба. ### FastReport Server 2.0 выпущен URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-server-2.0 Summary: FastReport Server 2.0 выпущен FastReport Server 2.0 выпущен Все зарегистрированные пользователи FastReport Server получают одну лицензию на FastReport Studio Business Edition.  Вы можете получить эту лицензию на нашем сайте в Customer User Panel. Демо версия FastReport Studio включена в каждую поставку Server. * изменено ядро на FastReport 4 + добавлено автообновление параметров конфигурации + добавлено автообновление списка отчетов + добавлена поддержка шаблонов (папка "templates"), внимание: все файлы шаблонов записаны в кодировке UTF8 + добавлен запуск в трее (командная строка: "start frxservice /tray", служба должна быть остановлена) + добавлена поддержка Open Document Format, экспорт в файлы Open Office *.ods и *.odt + добавлен планировщик отчетов в Server Configurator + доавлена экспериментальная возможность печати на принтеры, подключенные к серверу    (config.xml "AllowPrint", установлено в "no" по умолчанию) + увеличено быстродействие и надежность - исправлены ошибки ### FastReport Studio 3.16 beta URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-3.16 Summary: FastReport Studio 3.16 beta FastReport Studio 3.16 beta FastReport Studio это решение для разработчиков, использующих в работе продукты MicrosoftR:  Microsoft Visual Studio, Microsoft Access, Microsoft Excell, Microsoft FoxPro, а также PowerBuilder и т.п.  Добавлены руководство программиста, руководство пользователя, руководство по использования FastReport Studio из командной строки. Добавлены полная поддержка юникода, наличие мастеров для еще более простой автоматической генерации отчётов, а также встроенный визуальный построитель SQL запросов к базам данных. ### FastReport Studio 3.20 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-3.20 Summary: FastReport Studio 3.20 FastReport Studio 3.20 + добавлен интерфейс IfrxFont + добавлен интерфейс IfrxFrame + добавлен интерфейс IfrxDisplayFormat + добавлен метод ResetDataSet в интерфейс IfrxDataBand + добавлена поддержка .NET Stream + добавлен SaveAs параметр в событие OnSaveReport + добавлен интерфейс IfrxShapeView + добавлен C# пример использования событий OnLoadreport и OnSaveReport. + добавлены события OnLoadreport и onSaveReport в интерфейс IfrxDesignerEvents + добавлен интерфейс IfrxPage и добавлен метод GetPage в интерфейсе IfrxReport + улучшен экспорт в RTF + добавлена поддержка ParagraphGap в PDF экспорте + увеличена скорость и уменьшен размер выходного файла в PDF экспорте * множество мелких исправлений * изменён интерфейс IfrxMemmoView - добавлено множество свойств (выравнивание, цвет, форматирование и т.д.) * мзменено событие OnSaveReport класса TfrxDesigner * свойство EnableLoadSaveEvents интерфейса IfrxDesigner разложено на два свойства: EnableLoadEvent и EnableSaveEvent * обновлена демонстрационная С++ программа Variables (добавлены коммментарии и изменён демонстрационный отчёт) * исправлен C# пример DataSetDemo * функция AVG считает только не-Null значения * объект RichView теперь поддерживает WYSIWYG - исправлена оошибка в мнтоде AddVariable интерфейса TfrxReport - исправлена ошибка в RTF экспорте с аттрибутами стиля шрифта - исправлена ошибка с отрисовкой рамок в PDF экспорте - исправлена ошибка с размером бумаги - исправлен ParagraphGap в PDF экспорте - исправлена ошибка stack overflow с бэндом report summary - исправлена ошибка с диалоговой формой - исправлена ошибка TProgressBar property out of range при экспорте пустой страницы в HTML - исправлена ошибка в PDF экспорте с нулевой высотой/шириной bitmap изображения - исправлена ошибка в объекте checkbox - исправлена ошибка в datatree - исправлена ошибка в chart (тип datetime) - исправлена ошибка с окном инспектора в режиме отладки - исправлена операция Undo защищенного паролем отчета - исправлены ошибки в датасетах - исправлено сохранение файла в дизайнере при открытии другого файла - исправлен PDF экспорт (цвет шрифта clNone теперь виден как clBlack)  ### FastReport Studio 3.21 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-3.21 Summary: FastReport Studio 3.21 FastReport Studio 3.21 + добавлены новые примеры для VB6: Pictures,UserDataset и Dynamic report. + добавлен интерфейс IPersistPropertyBag к ActiveX объекту TfrxPreviewX + добавлена поддержка совместимых с Visual Basic 6 событий + добавлены примеры хранения отчетов в БД (Delphi.NET) + добавлен интерфейс IfrxRichView + добавлены примеры Delphi for .NET - DataSetDemo и StreamExample + добавлена поддержка юникода в HTML, "Rich Text" (RTF) и XML экспортах + добавлено отсечение объектов в превью + добавлены шрифты принтера в список выбора шрифтов + добавлена прозрачность/цвет заливки в объект Rich * переписан C# пример Pictures: новая версия отображает в отчёте картинки из базы данных. * переписан C# пример StreamExample: новая версия демонстрирует возможность храния отчётов в базе данных. * добавлены методы в интерфейс IfrxPictureView для потокового чтения/записи * изменения в редакторе датабэнда * изменен чекбокс "Pictures" на комбобокс (none/jpeg/bmp/gif) в диалоге HTML экспорта  * изменен чекбокс "Styles" на "Continuous" в XLS и XML экспортах - исправлен баг в демонстрационной программе С++ ActiveX_Demo - исправлен баг в методе SelectDataset интерфейса IfrxReport. - исправлен баг при работе .NET Stream - исправлен метод IfrxReport::SelectDataset. Случай Selected = false теперь обрабатывается корректно. - исправлен метод IfrxComponent::FindObject. В среде NET больше не кидается исключение в случае, если объект не найден. - исправлено свойство ADO DataBase у объектов ADO Query и ADO Table. У этих объектов появилась возможность сбрасывать значение свойства DataBase в NULL. - исправлена ошибка с неправильным определением кодовой страницы в навигаторе страниц HTML экспорта - исправлен некорректный экспорт EAN штрихкодов (цифры за границей штрихкода обрезались) - исправлено неверное разбиение на страницы в RTF экспорте - исправлена проблема со сдвигом объектов - исправлено растягивание монохромных изображений - исправлена ошибка при копировании сгруппированных объектов - исправлена ошибка vband&overlay - исправлена установка параметров печати - испрпавлено поведение KeepFooter + агрегатные функции - исправлена ошибка в параметрах ADO - исправления в мастере database/table/query - исправлена ошибка с font charset в RTF экспорте - исправлена ошибка в отрисовке превью - исправлена ошибка с объектом Rich, если нет установленных принтеров - исправлены копии в экспорте в матричный отчет - исправлена ошибка в разборе выражений в объекте Rich - исправлена ошибка с mdi preview - исправлена ошибка со скобками в RTL тексте при экспорте в PDF - исправлена ошибка с вводом китайских символов в диалоговые контролы - исправлено поведение сдвига объектов (shiftmode) - исправлена ошибка с правым выравниванием и ненулевым межсимвольным интервалом в PDF экспорте - исправлена ошибка с подчеркиваниями в HTML экспорте - исправлена ошибка с бэндом overlay и keeptogether - исправлены ошибки с крупными шрифтами в системе - исправлены ошибки с html тэгами ### FastReport Studio beta 2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/testing-fastreport-studio Summary: FastReport Studio beta 2 FastReport Studio beta 2 FastReport Studio - FastReport 3 COM сервер FastReport Studio позволяет использовать возможности генератора отчётов FastReport 3 в приложениях написанных на  Visual С++, Visual Basic.NET, Visual C#.NET, Visual FoxPro  и на других языках, поддерживающих технологию COM. Прикладному программисту предоставляется доступ к следующим объектам генератора отчётов - TfrxReport, TfrxUserDataSet, TfrxADODatabase, TfrxADOTable и TfrxADOQuery. В демонстрационный пакет входят следующие компоненты: 1. Библиотека frxCOM.dll, включающая в себя COM сервер и TypeLibrary. 2. Демонстрационная база данных в формате Microsoft Access 3. Демонстрационные отчёты в формате FastReport 3 4. Демонстрационные примеры использования FastReport COM сервер для следующих языков и сред: 4.1 Visual C++ Demo 4.2 Visual C#.NET Demo 4.3 Visual Basic.NET Demo 4.4 Visual FoxPRO Demo 4.5 Microsoft Access Demo 4.6 Microsoft Excel Demo 5. Дизайнер отчётов. Все демонстрационные программы поставляются с исходными текстами. Изменения в FastReport Studio Beta 2 + FastReport Studio основан на FastReport 3.12 + Добавлены демонстрационные программы для Visual FoxPro,  MicrosoftAccess и Microsoft Excel + Дизайнер отчётов + Добавлены COM объекты для технологии ADO  + Включены ресурсы для многоязыковой поддержки - Интерфейс IStrings исключен из TypeLibrary.  + Появилась возможность доступа к внутренним объектам FastReport, для которых определены COM интерфейсы. + Добавлены новые возможности в Visaul C++ Demo - ScriptText browser, ReportStructure browser. + Сделано корректное отображение отчётов, основанных на UserData в демонстрационных программах на Visual C#.NET и Visual Basic.NET + Изменен алгоритм регистрации событий в демонстрационных программах на Visual C#.NET и Visual Basic.NET + Добавлен интерфейс для TfrxComponent. + Добавлены методы для динамического привязывания объектов, основанных на классе TfrxDataSet к объекту TfrxReport. + Множество мелких багофиксов. Обсуждение - в форуме ### FastReport VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-report-vcl Summary: VCL-библиотека с полными исходными кодами для создания отчётов и документов для Delphi, C++Builder, RAD Studio и Lazarus VCL-библиотека с полными исходными кодами для создания отчётов и документов для Delphi, C++Builder, RAD Studio и Lazarus Многофункциональный генератор отчётов и документов для Delphi, C++Builder, RAD Studio и Lazarus. VCL-библиотека с полными исходными кодами для создания отчётов и документов для Delphi, C++Builder, RAD Studio и Lazarus FastReport VCL VCL-библиотека с полными исходными кодами для создания отчётов и документов для Delphi, C++Builder, RAD Studio и Lazarus Скачать демо Онлайн демо Документация Узнать больше Отчеты вне шаблонов Создавайте этикетки, ценники, гео-отчеты с картами, инфографику, наряду с традиционными табличными и многоуровневыми иерархическими отчетам. - Объект "Текст" может показывать одну или несколько строк текста. Он может содержать текст вперемешку с выражениями и полями БД, поддерживает простые HTML-тэги (b,i,u,strike,sub,sup,font color). Поддерживаются все виды выравнивания текста, вращение текста под произвольным углом, заливка, обрамление. - Объект «Таблица» обеспечивает удобство создания и редактирования табличных отчетов. - Большой выбор поддерживаемых штрих-кодов PDF417, DataMatrix, Aztec, MaxiCode и многие другие. - Поддержка географических карт форматов OSM и ESRI, а также GPX маршрутов. - Индикаторы для визуализации данных. - Фигура, диаграмма, линия, таблица, Rich Text, «флажок», изображение, градиент, OLE объект, сводная таблица и т.д. - Ссылки на объекты-страницы внутри отчёта и за его пределы. - Построение нескольких отчетов в одном окне предварительного просмотра. - Предварительный просмотр позволяет сформировать, отправить на печать или выполнить экспорт полученного отчета в один из множества форматов и отправить его по электронной почте. - Пользователь может редактировать данные и изменять некоторые свойства объектов в предварительном просмотре без дизайнера отчетов! - Печать. FastReport предлагает широкие возможности печати: разрезание больших страниц на малые, печать нескольких малых страниц на большой, печать с масштабированием. Поддержка матричных принтеров. - FastReport XML (да, отчёты FastReport хранит в истинном XML-формате - можете быть уверенны в сохранности своих данных!). - Отправка отчёта по электронной почте через SMTP/MAPI. - Экспорт во множество форматов PDF, HTML, HTML5, SVG, RTF, XLS, XML, BMP, JPEG, TIFF, E-mail, CSV, TXT, GIF, ODS, ODT, Excel (98, 2000, XP). Многие из этих форматов являются государственными и бизнес-стандартами для документооборота. - Экспорт сложных объектов таких, как RichText, Chart, Карты в векторные примитивы. Безопасность Защита ваших шаблонов и отчётов с помощью надёжного шифрования данных. Адаптируйте все исходные коды под свои решения. Мы уделяем большое внимание защищённости ваших данных. - Исходный код. Это очень удобно для компаний, желающих адаптировать его под свои нужды. Будьте полностью уверены в используемом программном обеспечении! - Отчёты имеют доступ только к указанным вами данным и только на чтение. - Шифрование шаблонов и отчётов. Защита данных документа паролем с надёжным алгоритмом. Будьте уверены в защищённости и конфиденциальности ваших отчётов! Гибкость и интерактивность Подключайте свои собственные объекты, фильтры экспорта, функции, движки БД без проблем с помощью открытой архитектуры FastReport. - Встроенный интерпретатор скрипта, поддерживающий 4 языка: PascalScript, C++Script, BasicScript, JScript. - Диалоговые формы, Drill-Down (раскрывающиеся) отчеты, вызов другого отчета с детальной информацией из окна просмотра одним кликом мыши. - Гибкая и открытая архитектура. Если имеющихся возможностей FastReport недостаточно, то можно их расширить: создать и подключить к отчету свои объекты, фильтры экспорта, функции, движки БД. - Наследование шаблонов отчётов. - Интерактивные редакторы объектов с возможностью использования в дизайнере и предварительном просмотре. - Ваши отчёты могут не зависеть от приложения, а ваше приложение не требует перекомпиляции при изменении требований пользователя к отчётам. Хранение документов Сохраняйте и загружайте шаблоны отчетов и подготовленные отчеты в разные файловые хранилища. Транспортные фильтры ввода-вывода позволяют сохранять и загружать шаблоны отчетов и подготовленные отчеты в разные файловые хранилища, а также сохранять экспортируемые файлы. Поддерживаются следующие удаленные хранилища: E-mail, FTP, DropBox, OneDrive, Box.com, GoogleDrive. Лёгкая интеграция с любыми данными FastReport VCL поддерживает подключение во множество популярных баз данных и сторонних библиотек, такие как: ADO, BDE, DBX, IBX, FIBPlus, FireDac и другие. - Поддерживаются библиотеки доступа к БД: ADO, BDE, DBX, IBX, FIBPlus, FireDac, обеспечивающие доступ практически ко всем базам данных, включая Oracle, а также множество сторонних библиотек. - Использование данных приложения. - Вы можете передать из своей программы в отчет любые данные, как статические, так и меняющиеся от записи к записи. Интернациональность Работайте с комфортом на любом языке мира и даже на нескольких языках одновременно! FastReport VCL поддерживает более 32 языков локализации. - UNICODE. Отчет может быть на любом языке мира и даже на нескольких языках одновременно, поддерживая истинную интернациональность! - Интерфейс FastReport локализован на десятки языков, а формат файлов локализации позволяет самостоятельно внести изменения или добавить перевод. - Документация и файлы справки переведены на английский, немецкий, польский, испанский, португальский и русский языки. Узнать больше Узнать больше Клиент-серверные компоненты Подробная информация Да, этот программный продукт находится в реестре ПО. Подробная информация доступна [**по этой ссылке.**](https://reestr.digital.gov.ru/reestr/302349/) Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### FastReport VCL 2.46 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2.46 Summary: FastReport VCL 2.46 FastReport VCL 2.46 1. Добавлена поддержка C++Builder 6 2. Усовершенствован кросс-таб отчет 3. Исправлены обнаруженные ошибки ### FastReport VCL 2.51 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2.51 Summary: FastReport VCL 2.51 FastReport VCL 2.51 Изменения в новой версии Fast Report: добавлено: - Open QueryBuilder для быстрого построения SQL запросов (по соглашению с автором Open QueryBuilder) - гипертекстовые ссылки во время предварительного просмотра - URL ссылки во время предварительного просмотра - новый редактор скрипта с поддержкой подсветки синтаксиса, закладками и пр. исправлено: - бакгофиксы ### FastReport VCL 2.52 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2.52 Summary: FastReport VCL 2.52 FastReport VCL 2.52 добавлено: ! добавлен экспорт в текст с возможностью печати на матричном принтере ! добавлен экспорт в HTML-формат на основе таблиц и стилей ! добавлен экспорт в Excel на основе формата XML (MS Office 2000/XP/2003) - полностью переработан экспорт в Excel (OLE) - полностью переработан экспорт в RTF (построение на основе таблиц, поддержка MS Office 97-2003) - доработан формат записи отчетов для конвертации в версию FastReport 3.0 (fr3) - Open QueryBuilder поставляется опционально (идет в комплекте поставки) исправлено: - багофиксы. ### FastReport VCL 4.11 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-vcl-4.11 Summary: Мы выпустили FastReport VCL 4.11. Самое главное нововведение - новый прямой экспорт в BIFF8 (Excel) Мы выпустили FastReport VCL 4.11. Самое главное нововведение - новый прямой экспорт в BIFF8 (Excel) Мы выпустили FastReport VCL 4.11. Самое главное нововведение - новый прямой экспорт в BIFF8 (Excel) По просьбам населения выпустили FastReport VCL 4.11 Самое главное нововведение - новый прямой экспорт в BIFF8 (Excel). С помощью него продукт напрямую может формировать отчёты в эксель-формате без сторонних программ и технологий. В FastReport и ранее было 2 (два) фильтра экспорта в XLS - один из них через технологию OLE, которая абсолютна не применима для серверных отчётов (ибо медленная и требует предустановленного Excell на сервере), а также нехорошая для больших отчётов (ибо достаточно сложный формат, формировался в оперативной памяти компьютера, которой для больших отчётов не хватало, а сделать с этим мы ничего не можем - технология OLE сама лучше нас знает, как формировать), второй (по сути - XML) - не понимается Excel младше 2000го, да и были там некоторые особенности, в частности, с отображением изображений... Формат BIFF8 достаточно сложный сам по себе, тем не менее, наши специалисты сделали экспорт отчётов в этот формат и, по просьбам наших пользователей, мы не стали дожидаться 5й версии FastReport VCL, чтобы включить этот фильтр в продукт. Tags: VCL, Фильтры экспорта, FastReport, VCL, Фильтры экспорта, FastReport ### FastReport VCL 4.13 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.13 Summary: FastReport VCL 4.13 FastReport VCL 4.13 Рады сообщить, что новая версия продукта FastReport VCL для  RAD Studio XE  теперь официально поддерживает и свежую  XE3.   Стабильная сборка доступна в пользовательской панели управления под соответствующую среду разработки.  Второе, не менее значимое дополнение: поддержка  Lazarus.  Пока в статусе "Beta-тестирования". Текущая версия позволяет просматривать, печатать и редактировать шаблон отчета под Windows и Linux ( qt ) платформами. Поддержка Lazarus будет включена только в редакции  Professional  и  Enterprise . Полный список исправлений и дополнений: + добавлена поддержка Lazarus + добавлена поддержка Embarcadero RAD Studio XE3 - исправлена совместимость с Fast Report FMX установленным в туже IDE.  Данная версия может со существовать с Fast Report FMX уст установленным  в IDE. + опубликовано свойство "Quality" объекта TfrxPDFExport + опубликовано свойство "UseMAPI" объекта TfrxExportMail + опубликовано свойство "PictureType" объекта TfrxODFExport - исправлена ошибка с выражениями в RichEdit - исправлена ошибка с много колоночным отчетом - исправлено исключение в дизайнере отчета - исправлена ошибка с гиперссылками в экспортах Open Document Text и  Open Document Spreadsheet - исправлена строка формата в XLS OLE экспорте - исправлена строка формата в XLS BIFF8 экспорте - исправлен вывод чекбоксов на подсвеченные строки в PDF экспорте - исправлена ошибка с экспортом якорей в PDF - исправлена ошибка при использовании двух и более макросов в мемо - другие небольшие исправления Новость от наших партнеров, комании Embarcadero. Выход 64-битной версии компилятора для C++Builder XE3  ожидается в декабре 2012 года  Получи обновление на C++Builder 64-bit, бесплатно! Покупая C++Builder XE3 или RAD Studio XE3, new user или upgrade, заказчики получат бесплатное обновление, включающее 64-битную версию C++Builder XE3 64-bit сразу после ее официального релиза (ожидается в декабре 2012). Как воспользоваться: Купив C++Builder XE3 или RAD Studio XE3, в редакции Professional или старше следует установить и зарегистрировать продукт. После входа C++Builder XE3 64-bit зарегистрированные пользователи указанных продуктов смогут бесплатно скачать 64-битное обновление  отсюда .  ### FastReport VCL 6 FAQ URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/faq-fastreport-vcl-6 Summary: FastReport VCL 6 FAQ FastReport VCL 6 FAQ 1. Когда релиз? Мы запланировали на 1 марта 2018 2. Что нового? Вот тут очень сжато и кратко 3. Какие версии Delphi / RAD Studio / C++ Builder поддерживаются? Начиная с 7й и до актуальной на сегодня. Как технологические партнёры Эмбаркадеро, мы добавляем поддержку новых актуальных версий так скоро, как это возможно. 4. Как получить FastReport 6 бесплатно и до релиза? a) Купить лицензию FastReport VCL 5 и сразу получить вдобавок FastReport VCL 6 b) как и прежде мы с радостью выдаём лицензии FastReport VCL 6 нашим технологическим партнёрам и MVP для поддержки совместимости наших разработок, написания обзоров, руководств и т.п. 5. А как быть тем, кто купил лицензию на FastReport 5 раньше? Если вы приобрели лицензию после 31 августа 2017 - вы получите это обновление до FastReport VCL 6 бесплатно! Загляните в вашу CP - есть? Если вы приобрели лицензию до 1 сентября 2017 - вы можете получить обновление с 20% скидкой - Загляните в CP -> upgrades. 6. Упс... А у меня только FastReport 4 (3, 2). Никаких скидок не будет? Почему же? Загляните в CP -> upgrades и получите 20% скидку. 7. Могу ли я использовать FastReport VCL 6 в новых проектах? Это же только Beta? Она уже достаточно стабильна. Традиционно все официальные бета-тестеры 6й версии получают релизную версию. 8. Эй, постойте, а как же использовать? Где новая документация на новые функции-возможности? Именно сейчас мы обновляем-дописываем документацию. А пока по новым функциям мы написали и продолжаем писать статьи "how-to" - их можно посмотреть тут Кроме того, планируем семинары и вебинары по новым возможностям FastReport VCL 6. Следите за нашими новостями. ### FastReport VCL RAD Edition URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-rad-edition Summary: FastReport VCL RAD Edition FastReport VCL RAD Edition Генератор отчетов FastReport, ключевой продукт российской компании Fast Reports, Inc., теперь поставляется в составе новой версии  Embarcadero RAD Studio XE2 (Delphi, C++ Builder с 32-битным и 64-битным компиляторами, Delphi Prism для .NET).  Вы можете ознакомиться с отличиями FastReport RAD Edition от остальных типов поставок FastReport VCL: ### FastReport VCL и FMX в Embarcadero Community edition URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/vcl-fmx-community-edition Summary: Впервые Embarcaero представляет Community Edition и FastReport VCL и FMX уже неотъемлемая его часть. Впервые Embarcaero представляет Community Edition и FastReport VCL и FMX уже неотъемлемая его часть. Впервые Embarcaero представляет Community Edition и FastReport VCL и FMX уже неотъемлемая его часть.  Используйте всю мощность генератора отчетов, даже если ваш бизнес только начинает расти. Узнайте об условиях использования лицензии здесь . Community Edition это полноценная бесплатная IDE, позволяющая строить приложения для iOS, Android, Windows и macOS с одной базой исходного кода, используя надежный и легкий в изучении язык Delphi. Это отличный способ начать изучение нового языка программирования или освоить мультиустройственную разработку. Embarcadero's Community Edition доступна для Delphi and C++Builder. Она включает оптимизированную IDE, редактор кода, встроенный дебаггер, двухвариантный визуальный дизайнер для ускоренной разработки, сотни компонентов и ограниченную для коммерческого использования лицензию. ### FastReport VCL официально поддерживает RAD Studio 13 Florence URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/rad-studio-13 Summary: Обновление 2025.2.8 для FastReport VCL (и всех его вариантов поставки) с поддержкой RAD Studio 13 Florence уже доступно в личном кабинете. Обновление 2025.2.8 для FastReport VCL (и всех его вариантов поставки) с поддержкой RAD Studio 13 Florence уже доступно в личном кабинете. Наша команда завершила работу по обеспечению полной совместимости FastReport VCL (и всех его вариантов поставки) с RAD Studio 13. Мы тщательно протестировали изменения, сохранив обратную совместимость со старыми версиями Delphi. Поддержка RAD Studio 13, Delphi 13 и C++Builder 13 открывает разработчикам доступ к новым возможностям IDE, улучшенной производительности и стабильности приложений, а также сокращает время на отладку. Обновление 2025.2.8 со встроенной поддержкой RAD Studio 13 уже доступно в личном кабинете. ### FastReport VCL официально совместим с Альт ОС URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/compatibility-alt-vcl Summary: Библиотека с полными исходными кодами для генерации отчетов FastReport VCL получила сертификат совместимости с Альт Рабочая станция 10 Библиотека с полными исходными кодами для генерации отчетов FastReport VCL получила сертификат совместимости с Альт Рабочая станция 10 Компании ООО "Быстрые отчеты" и ООО "Базальт СПО" подписали официальный сертификат совместимости программного обеспечения FastReport VCL с операционной системой семейства "Альт" на платформе x86_64. Базальт СПО (Alt Linux до 2015 года) — разработчик линейки российских операционных систем «Альт» для рабочих станций, серверов и построения виртуальной инфраструктуры. ОС служат платформой для ИТ-инфраструктур любого масштаба и сложности; развитие платформы ведется более 20 лет. ОС «Альт» включены в Единый реестр российского ПО. Наличие собственной независимой инфраструктуры разработки обеспечивает развитие самостоятельных операционных систем, а не клонов (деривативов) зарубежных ОС. Все разработчики «Базальт СПО» являются членами ALT Linux Team — международной команды разработчиков свободного программного обеспечения. Альт Рабочая станция — универсальная операционная система для компьютеров и ноутбуков. Она включает в себя расширенный набор программ и драйверы современных устройств. А также содержит графическую оболочку MATE. Сертификат совместимости оформлен по результатам тестовых испытаний, проведенных специалистами компании ООО "Быстрые отчеты", и подтверждает функциональную работоспособность FastReport VCL с дистрибутивом ОС Альт Рабочая станция 10.  ### FastReport VCL — обновление до версии 2026.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2026.1 Summary: В версии 2026.1 для FastReport VCL расширены возможности движка отчётов: новые свойства для построителя динамической таблицы и управления бэндами отчёта, улучшен дизайнер и другое. В версии 2026.1 для FastReport VCL расширены возможности движка отчётов: новые свойства для построителя динамической таблицы и управления бэндами отчёта, улучшен дизайнер и другое. В новой версии расширены возможности движка отчётов: добавлены новые свойства для построителя динамической таблицы и управления бэндами отчёта, улучшен дизайнер отчётов (в частности, добавлен режим выравнивания по сетке «привязать к сетке»), реализованы новые функции в FastQueryBuilder . Кроме того, улучшены объекты отчёта, добавлены возможности для работы с PDF (автоматическая подстановка шрифта, выбор цветового профиля), внесены изменения в экспорт в DOCX и XLSX, а также обновлены конверторы из других отчётных систем. Ключевым изменением стало обеспечение полной совместимости с Embarcadero RAD Studio 13 (включая Delphi 13 и C++Builder 13), при этом сохранена обратная совместимость со старыми версиями Delphi. Поддержка Embarcadero RAD Studio 13 Наша команда завершила работу по обеспечению полной совместимости FastReport VCL (и всех его вариантов поставки) с RAD Studio 13. Мы тщательно протестировали изменения, сохранив обратную совместимость со старыми версиями Delphi. Поддержка RAD Studio 13, Delphi 13 и C++Builder 13 открывает разработчикам доступ к новым возможностям IDE, улучшенной производительности и стабильности приложений, а также сокращает время на отладку. Движок отчетов: новые возможности Движок отчетов постоянно совершенствуется, предлагая все больше инструментов для создания отчетов. Построитель динамической таблицы получил два новых свойства: FitPartsToPageWidth и MinimumTableWidth. Они помогают управлять процессом пагинации табличных отчетов. С помощью свойства FitPartsToPageWidth можно растянуть каждую часть таблицы до максимальной ширины страницы, заполняя свободное пространство. Свойство MinimumTableWidth задает минимальный размер таблицы до пагинации, пропорционально растягивая ее до указанного размера. Это полезно для синхронизации нескольких таблиц. Теперь управлять бэндами отчета стало проще. У заголовков и подвалов групп появилось новое свойство KeepWithData. Оно указывает, что заголовок или подвал группы должны оставаться вместе с записью данных при переносе на новую страницу. Это свойство аналогично KeepHeader и KeepFooter, но работает с бэндами группы. Также расширились возможности управления выводом объектов отчета. Новое свойство PrintOn предлагает набор флагов для точной настройки. Например, можно выводить объект только на заголовках, которые повторяются на новой странице (флаг ptRepeatedBand), или только на первой странице отчета (флаг ptFirstPage). Дизайнер отчетов и UI Наш дизайнер шаблонов получил несколько новых функций, упрощающих работу с отчетами.  Теперь можно использовать режим выравнивания по сетке «привязать к сетке» (snap to grid). В этом режиме объекты всегда остаются на сетке при перемещении или изменении. Ранее шаг сетки использовался для объектов, и они могли перемещаться вне сетки, если изначально их не размещали на ней. По умолчанию активирован старый режим «шаг сетки». Новый режим позволяет точно выравнивать объекты даже в старых отчетах. Все основные текстовые редакторы, помимо поиска, теперь поддерживают замену текста. В редактор графиков добавлена возможность клонировать серии графиков для быстрого создания новых серий. FastQueryBuilder Теперь в FastQueryBuilder , как и в дизайнере отчетов, есть функции поиска и замены в редакторах. Улучшения в объектах отчёта Несколько объектов отчёта получили новые функции, которые помогут сделать ваши отчеты еще более гибкими и удобными. Ячейки таблиц теперь могут выравнивать объекты по-новому. Для этого в них добавили свойство TfrxContainerPadding.FromCenter. Оно позволяет инвертировать клиентскую область выравнивания, что делает автоматическое выравнивание внутри ячеек более гибким. Объект PDFView получил новый режим работы pdOneToOneNormalizeAutoRotation для свойства DetailStretchMode. В этом режиме страницы с ландшафтной ориентацией автоматически поворачиваются при выводе в отчете. В цифровую подпись добавили возможность генерировать штамп электронной подписи по ГОСТ Р 7.0.97-2016. Настройки водяных знаков стали еще удобнее. Теперь можно регулировать прозрачность текста водяного знака. Появилась поддержка Macro PDF417. В стандартном PDF417 добавили целый набор свойств для детальной настройки в соответствии с требованиями стандарта. Помимо этого, штрихкод QR теперь поддерживает стандарт GS1. Фильтры экспорта С обновлением 2026.1 экспорт в PDF получил автоматическую подстановку шрифта. Это долгожданное улучшение избавляет от необходимости подбирать юникодные шрифты. Фильтр экспорта сам определяет шрифт, используемый системой для отображения текста, и включает его в PDF-файл. Теперь экспорт PDF использует системные функции Windows, что позволяет получить результат, максимально близкий к предпросмотру. Еще одно нововведение для экспорта PDF – возможность выбора цветового профиля для отчетов в формате PDF/A-3U. Доступны три варианта:  Стандартный RGB; Типографический CMYK; Градации серого. Вы можете выбрать цветовую модель в зависимости от ваших задач: будь то обычная серая печать или типографическая в CMYK. Кроме того, были улучшены и другие форматы экспорта. Например, в DOCX и XLSX исправлен экспорт водяных знаков, а в XLSX добавлена опция отключения линий сетки при экспорте. Конверторы из других систем отчетности Фильтры конверторов теперь собраны в отдельные пакеты frxReportConverters. Их можно легко добавить в ваше приложение, используя компоненты с палитры (TfrxSaveFRX, TfrxOpenQuickReport, TfrxOpenReportBuilder, TfrxOpenFRF, TConverterDMP2GDI, TConverterGDI2DM). Также были обновлены и исправлены ошибки в фильтрах. FastReport FMX В экспорт PDF добавлена поддержка счетов по стандарту ZUGFeRD. Пример использования этого функционала можно найти в InvoiceDemo. Значительное обновление получил движок разбивки «SimpleText». Новая версия работает намного быстрее старой при большом объеме текста (при отключенном выводе HTML-тегов) и исправляет проблемы с разбивкой. Версия 2026.1 VCL.Core ---------------   [Engine] + добавлена поддержка RAD Studio 13; + добавление min, max и других функций; + в контекстное меню компонентов на форме добавлены пункты с названием компании, номером версии и ссылкой на сайт компании; * изменение документации; - исправлена ошибка, из-за которой индексированный геттер по умолчанию в C++ Builder с константной ссылкой генерировал неверные заголовочные файлы;   [Graphic] - исправлен CreateBitmap; - исправлена ошибка, при которой нулевая ширина штриха пера в изображении SVG рисовалась с шириной контекста устройства в 1 пиксель; - исправлено преобразование bmp32 в PNG; - исправлена ошибка доступа к памяти с изображением SVG; - исправлен экспорт полупрозрачных PNG; FMX.Core --------------- [Engine] + добавление min, max и других функций; + в контекстное меню компонентов на форме добавлены пункты с названием компании, номером версии и ссылкой на сайт компании; + добавлена поддержка RAD Studio 13; * изменение документации; - исправлена совместимость порядка псевдонимов перечисления в RAD 13 для FMX; [Graphic] - исправлен CreateBitmap; VCL.Controls ---------------   [Engine] + добавлена замена в семейство Memo; - исправлены известные ошибки в TfrTreeView и TfrShellTreeView; - исправлены известные ошибки редактора компонента TfrTreeView и TfrShellTreeView;   [UI] - исправлено изменение Canvas.Font в событии OnCustomDrawItem; - исправлена работа всплывающих подсказок у узлов; - исправлена работа подсветки узлов при наведении; - исправлено появление и скрытие всплывающих подсказок у узла; - исправлено поведение мигающего указателя (caret) при включенном MultiByte; Lazarus.Controls --------------- [Engine] + добавлена замена в семейство Memo; - исправлены известные ошибки в TfrTreeView и TfrShellTreeView; - исправлены известные ошибки редактора компонента TfrTreeView и TfrShellTreeView; - исправлены AV в редакторе TfrTreeView и TfrShellTreeView в Lazarus; [UI] - исправлено изменение Canvas.Font в событии OnCustomDrawItem; - исправлена работа всплывающих подсказок у узлов; - исправлена работа подсветки узлов при наведении; - исправлена отрисовка treelines в Lazarus; - исправлено появление и скрытие всплывающих подсказок у узла; - исправлена медленная отрисовка в Linux; VCL.FastCube --------------- [Engine] - исправлено поведение, когда Advanced Demo открывается с ошибками в Embarcadero RAD Studio 2010; - исправлена ошибка, когда не прорисовывались ячейки при группировке; [Exports] - исправлены ошибки в экспортах в ODS, XLSX; FMX.FastCube --------------- [Engine] - исправлена ошибка, когда не прорисовывались ячейки при группировке; [UI] - удален ненужный отступ в ниспадающих списках со значениями для фильтрации; Lazarus.FastCube --------------- [Engine] - исправлена ошибка, когда не прорисовывались ячейки при группировке; [Exports] - исправлена ошибка экспорта в XLS Lazarus; - исправлены ошибки в экспортах в ODS, XLSX; VCL.FastQueryBuilder --------------- [Engine] + добавлена кнопка поиска в редакторы текста; + добавлена возможность экранировать имена таблиц; Lazarus.FastQueryBuilder --------------- [Engine] + добавлена кнопка поиска в редакторы текста; + добавлена возможность экранировать имена таблиц; VCL.FastScript --------------- [Engine] + добавлен метод TfrxWatermarks.Add в скрипт; - исправлена ошибка, когда при включении свойства MultiByteLang отключался курсив для комментариев; [RTTI] + добавлен TStringStream; Lazarus.FastScript --------------- [Engine] + добавлен метод TfrxWatermarks.Add в скрипт; - исправлена ошибка, когда при включении свойства MultiByteLang отключался курсив для комментариев; [RTTI] + добавлен TStringStream; VCL.FastReport --------------- [Client-Server] + добавлен базовый API для FastReport Online Designer; + добавлен API данных для FastReport Online Designer в компоненте «Клиент-сервер»; - исправлена ошибка дублирования экспортов в общем списке экспортов внутри сервера отчетов; [Designer] + добавлено поведение, когда при нажатии кнопки Enter в ReportTree вызывается редактор; + добавлено сохранение позиции scrollbar при изменении масштаба дизайнера; + добавлено новое свойство AlignToGrid на замену на GridStepMode; * небольшое улучшение StatusBar в Дизайнере; * оптимизировали перерисовку дизайнера при перемещении линий, теперь перерисовка срабатывает чаще; - исправлена ошибка при попытке выставить отрицательный Left; - исправлен выбор активной направляющей линии; - исправлено движение по сетке при работе с шаблоном таблицы; - исправлена ошибка, при которой при движении за левую линию сдвигалась правая; - исправлена опция дизайнера GuidesAsAnchor; - исправлено событие MouseWheel в дизайнере; - исправлена ошибка «отказано в доступе» при работе с дизайнером при запуске из IDE через RDP; - исправлены диалоги во встроенном дизайнере; - исправлена ошибка, когда при включении свойства MultiByteLang отключался курсив для комментариев; - исправлена ошибка, при которой выбранные объекты произвольно перемещались на разные страницы; - исправлен Drag&Drop функций на TfrxReportPage; [Engine] + добавлена кнопка поиска в редакторы текста; + добавлено свойство TfrxContainerPadding.FromCenter у ячеек таблицы, которое позволяет инвертировать клиентскую область отступов для механизма выравнивания; + добавлено свойство TfrxCustomTableBuilder.FitPartsToPageWidth построителю динамической таблицы, которое позволяет включать автоматическое растягивание части разбивки таблицы на всю ширину листа; + добавлено свойство TfrxCustomTableBuilder.MinimumTableWidth построителю динамической таблицы, которое устанавливает минимальную ширину всей результирующей таблицы до разбивки; + добавлено свойство PrintOn для компонентов отчета, которое определяет, где компонент может быть напечатан во время построения отчета; + добавлено свойство KeepWithData для заголовка и нижнего колонтитула группы как аналог свойств KeepHeader/KeepFooter; + добавлено клонирование серии чарта в редакторе; - исправлена ошибка при печати PDFView из приложения x64; - исправлена ошибка «List index out of bounds (-1)» когда нажимается «Ctrl C» при отображении дизайнера; * перенесена инициализация переменных движка в момент начала запуска основного блока скрипта; - восстановлено поведение smMaxHeight, при котором полоса не растягивается, когда объект увеличивается в размере за пределы родительского контейнера; - исправлено преобразование векторного изображения водяного знака в растровый формат для поддержки полупрозрачности; - исправлены водяные знаки в составных отчетах; - исправлено состояние ClearLastReport при построении отчета из метода ShowReport; - исправлен режим четности и нечетности водяного знака в композитном отчете; [Exports] + добавлена поддержка PDF/A-3U, DeviceCMYK, DeviceGray; + добавлена подпись соответственно ГОСТ Р 7.0.97-2016; + добавлено свойство GridLines для XLSX экспорта; + добавлена подстановка шрифтов в экспорт PDF экспорте; * изменено поведение, теперь экспорт PDF записывает дополнительную отладочную информацию об используемой среде создания; * библиотека USP перемещена в модуль отложенной загрузки; * улучшен экспорт водяных знаков в DOCX и XLSX; - исправлен экспорт пустых TfrxMemoView fkDateTime в XLSX экспорте; - исправлена функция IsDigits в модуле frxExportXML; - исправлены ошибки частичного встраивания шрифтов в экспорт PDF; - исправлен экспорт RTF c нестандартными значениями ParagraphGap; - исправлен экспорт полупрозрачных PNG; [Other] + добавлена поддержка TfrxCrypt и TfrxRichObject для 64-bit IDE; * обновление языковых ресурсов на португальском языке; * обновление языковых ресурсов на японском языке; * выделены в отдельные пакеты конвертеры из других систем отчетности; - исправлена компиляция исходников на Delphi 10.3.1; [Preview] * отключена кнопка Escape для встроенного превью; - исправлены печать, сохранение и экспорт пустого отчёта; - исправлен ввод количества копий в диалоге печати; [Report object] + добавлена возможность редактирования водяных знаков из скрипта; + добавлена поддержка TfrxBarcodeLogo в скрипт; + в штрихкод PDF417 добавлена поддержка Macro; + добавлен новый вариант pdOneToOneNormalizeAutoRotation свойства DetailStretchMode в класс PDFView; + добавлена поддержка GS1 штрихкоду QR; + добавлены в IDE компоненты TfrxDBDialogControls, TfrxGaugeDialogControls; - исправлен выбор шрифта в некоторых диалогах; FMX.FastReport --------------- [Designer] + исправлены события OnLoadReport/OnSaveReport в TfrxDesigner; [Engine] - исправлена обрезка длинного текста при разделении объекта Memo на несколько частей; [Exports] + добавлена поддержка ZUGFeRD в экспорт PDF; - исправлена функция IsDigits в модуле frxExportXML; [Other] * обновление языковых ресурсов на португальском языке; Lazarus.FastReport --------------- [Client-Server] + добавлен API данных для FastReport Online Designer в компоненте «Клиент-сервер»; - исправлена ошибка дублирования экспортов в общем списке экспортов внутри сервера отчетов; [Designer] + добавлено поведение, когда при нажатии кнопки Enter в ReportTree вызывается редактор; + добавлено сохранение позиции scrollbar при изменении масштаба дизайнера; + добавлено новое свойство AlignToGrid на замену на GridStepMode; * небольшое улучшение StatusBar в Дизайнере; - исправлена ошибка при попытке выставить отрицательный Left; - исправлен выбор активной направляющей линии; - исправлено движение по сетке при работе с шаблоном таблицы; - исправлена ошибка, при которой при движении за левую линию сдвигалась правая; - исправлена опция дизайнера GuidesAsAnchor; - исправлено событие MouseWheel в дизайнере; - исправлены диалоги во встроенном дизайнере; - исправлена ошибка, когда при включении свойства MultiByteLang отключался курсив для комментариев; - исправлена ошибка, при которой выбранные объекты произвольно перемещались на разные страницы; - исправлен Drag&Drop функций на TfrxReportPage; [Engine] + добавлена кнопка поиска в редакторы текста; + добавлено свойство TfrxContainerPadding.FromCenter у ячеек таблицы, которое позволяет инвертировать клиентскую область отступов для механизма выравнивания; + добавлено свойство TfrxCustomTableBuilder.FitPartsToPageWidth построителю динамической таблицы, которое позволяет включать авто растягивание части разбивки таблицы на всю ширину листа; + добавлено свойство TfrxCustomTableBuilder.MinimumTableWidth построителю динамической таблицы, которое устанавливает минимальную ширину всей результирующей таблицы до разбивки; + исправлена ошибка «List index out of bounds (-1)» когда нажимается «Ctrl C» при отображении дизайнера; + добавлено свойство PrintOn для компонентов отчета, которое определяет, где компонент может быть напечатан во время построения отчета; + добавлено свойство KeepWithData для заголовка и нижнего колонтитула группы как аналог свойств KeepHeader/KeepFooter; * перенесена инициализация переменных движка в момент начала запуска основного блока скрипта; - восстановлено поведение smMaxHeight, при котором полоса не растягивается, когда объект увеличивается в размере за пределы родительского контейнера; - исправлено преобразование векторного изображения водяного знака в растровый формат для поддержки полупрозрачности; - исправлены водяные знаки в составных отчетах; - исправлено состояние ClearLastReport при построении отчета из метода ShowReport; - исправлен режим четности и нечетности водяного знака в композитном отчете; [Exports] + добавлена поддержка PDF/A-3U, DeviceCMYK, DeviceGray; + исправлен экспорт пустых TfrxMemoView fkDateTime в XLSX экспорте; + добавлено свойство GridLines для XLSX экспорта; * изменено поведение, теперь экспорт PDF записывает дополнительную отладочную информацию об используемой среде создания; * библиотека USP перемещена в модуль отложенной загрузки; * улучшен экспорт водяных знаков в DOCX и XLSX; - исправлено поведение OpenAfterExport при экспорте в несколько файлов; - исправлена функция IsDigits в модуле frxExportXML; - исправлен экспорт RTF c нестандартными значениями ParagraphGap; - исправлен диалог PDF экспорта; [Other] * обновление языковых ресурсов на португальском языке; * обновление языковых ресурсов на японском языке; - исправлена ошибка, когда в GTK2 выключен PopUp у некоторых TabControl; [Preview] * отключена кнопка «Escape» для встроенного превью; - исправлены печать, сохранение и экспорт пустого отчёта; - исправлен ввод количества копий в диалоге печати; [Report object] + добавлена возможность редактирования водяных знаков из скрипта; + добавлена поддержка TfrxBarcodeLogo в скрипт; + в штрихкод PDF417 добавлена поддержка Macro; + добавлен новый вариант pdOneToOneNormalizeAutoRotation свойства DetailStretchMode в класс PDFView; + добавлена поддержка GS1 штрихкоду QR; + добавлены в IDE компоненты TfrxDBDialogControls, TfrxGaugeDialogControls; - исправлена ошибка в GTK2(Linux), когда у текста есть поворот (Rotation <> 0) и свойство WYSIWYG игнорируется; - исправлена ошибка HTMLView в Linux Lazarus. ### FastReport VCL: как 25 лет инноваций изменили подход к отчётности в VCL-приложениях URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-vcl-innovacii-25 Summary: Мы решили оглянуться назад, чтобы показать, как менялись технологии отчетности, а также проследить ключевые этапы развития FastReport VCL в каждой версии. Мы решили оглянуться назад, чтобы показать, как менялись технологии отчетности, а также проследить ключевые этапы развития FastReport VCL в каждой версии. FastReport VCL — это инструмент для генерации отчетов, который за более чем четверть века стал неотъемлемой частью арсенала разработчиков на платформе Delphi. С момента своего появления в конце 1990-х годов продукт эволюционировал от простого дизайнера шаблонов к комплексной системе с поддержкой интерактивных элементов, векторной графики и интеграции с современными IDE. Мы решили оглянуться назад, чтобы показать, как менялись технологии отчетности, а также проследить ключевые этапы развития продукта в каждой версии. FastReport VCL — это инструмент для генерации отчетов, который за более чем четверть века стал неотъемлемой частью арсенала разработчиков на платформе Delphi. С момента своего появления в конце 1990-х годов продукт эволюционировал от простого дизайнера шаблонов к комплексной системе с поддержкой интерактивных элементов, векторной графики и интеграции с современными IDE. Мы решили оглянуться назад, чтобы показать, как менялись технологии отчетности, а также проследить ключевые этапы развития продукта в каждой версии. FastReport VCL прошел долгий путь от базового генератора отчетов до универсального инструмента для современных приложений.  Зарождение идеи будущего продукта Необходимость написания собственного компонента для построения отчетов возникла в 1997 году, во время разработки системы учета заработной платы. Спецификой такой системы является большое количество форм отчетности, необходимость легкой настройки их внешнего вида. Существующие доступные системы построения отчетов не обладали нужными характеристиками, поэтому было принято решение о разработке собственного генератора отчетов. В самой первой версии генератора применялся только один бэнд — строка данных, это позволяло строить многоуровневые отчеты. Позже в 1998 году генератор отчетов оформляется в виде компонента (первоначально это был лишь набор подключаемых модулей). С этого момента продукт получает название «FastReport» и начинает стремительно наращивать функциональность.  Первая версия и признание клиентов Первый релиз продукта для Delphi 2–3 состоял из базового дизайнера отчетов со стандартной поддержкой источников данных и функцией печати. Сразу же была возможность построения отчетов из кода. Поддерживалось создание отчетов программно без дизайнера с последующей интеграцией в приложения Delphi. FastReport VCL имел высокую скорость работы и малый размер добавляемого кода (меньше 1 МБ), что было ключевым преимуществом для Delphi-разработчиков в конце 1990-х. С момента основания компании FastReport VCL стал основным продуктом во всей линейке и получил большое признание среди наших клиентов. Уже в 2001 году продукт занял 2-е место в опросе по популярности генераторов отчетов среди Delphi-разработчиков (Delphi Magazine). На смену этой версии пришла вторая, которая расширила возможности экспорта и совместимости. FastReport VCL 2.0: технологический скачок в развитии Вторая версия FastReport VCL принесла значительные улучшения в поддержку разработки. Среди них — интеграция с C++Builder 6, CLX и Kylix, а также усовершенствование CrossTab отчетов. Обновление 2.5 добавило важные функции: экспорт в формат XLS через OLE; экспорт в форматы изображений: BMP, JPEG и TIFF (цветные и черно-белые варианты); бета-версия поддержки RTF; программное редактирование страниц перед печатью. Также появились базовые скрипты отчета в виде обработчиков событий объектов, улучшения CrossTab и отключение подсветки синтаксиса. Позже, версия 2.3 FastReport VCL стала бесплатной под новым именем FreeReport и легла в основу LazReport. Вся серия продуктов получила признание сообщества. FastReport VCL стал победителем в номинации «Delphi-продукт 2002» как лучший генератор отчетов и занял второе место в опросе «Delphi Informant Magazine», получив 20% голосов. Это подчеркнуло вклад наших продуктов в развитие инструментов отчетности. В третьей версии акцент сместился на расширение возможностей отчетов, улучшение печати и интеграцию с другими компонентами, включая базы данных. Расширение компонентов и параметров экспортов в FastReport VCL 3 FastReport VCL 3 — это обновленный продукт с новой архитектурой. Формат отчета теперь XML, а поддержка юникода позволяет использовать продукт по всему миру. FastReport VCL 3 стал настолько большим, что включал в себя сразу несколько разных наборов компонентов. Именно из этой версии появился полнофункциональный скриптовый движок FastScript с возможностью отладки отчетов и поддержкой четырех скриптовых языков и построитель SQL-запросов FastQueryBuilder. Дизайнер отчетов стал удобнее. В нем появилась возможность масштабирования, сетка отчета и поддержка вложенных свойств в инспекторе объектов и многое другое. Самыми яркими и масштабными изменениями в FastReport VCL 3 было:  появление внутренних источников данных; полноценные диалоговые формы отчета; добавление поддержки TeeChart Pro;  расширенные параметры экспорта в PDF, HTML и RTF;  новые компоненты для создания полнофункционального WEB сервера отчетов, со всеми возможностями продукта. Эти обновления и новые серверные функции сделали FastReport мощным инструментом для быстрой генерации сложных документов. Некоторые отчеты этой версии могут быть открыты и в современных версиях FastReport. FastReport VCL 4: гибкость, производительность и новая эра отладки отчетов Выход FastReport VCL 4 стал логическим продолжением предыдущей версии. Продукт получил полноценную среду отладки, поддержку наследования отчетов и форматов ODF, ODT и XLS. В новой версии была улучшена совместимость с последними версиями RAD Studio, добавлена поддержка компонентов FireDAC. Также значительно улучшена печать на матричных принтерах и экспорт в PDF. В этот период появились новые компоненты для OLAP-решений, которые были интегрированы в FastReport. Эти нововведения сделали продукт невероятно гибким и производительным. Удобство использования также продолжало развиваться. Для внутренних источников появилась отдельная страница с возможностью создания блок-схем. Расширились кросс-таблицы, появился режим печати side by side и возможность использования объектов внутри ячеек. Отладка отчетов стала значительно удобнее: появились окно Watches и точки остановки. Для облегчения перехода с других генераторов отчетов были добавлены конвертеры из QuickReport, ReportBuilder и RaveReports. Движок отчетов получил поддержку наследования. Эта версия легла в основу отдельных продуктов FastReport FMX и FastReport for Lazarus. Последние обновления добавили полную поддержку юникодных сред разработки и x64-платформ. От QR-кодов до DOCX: как FastReport VCL 5 стал мощнее и удобнее С выходом пятой версии FastReport VCL продукт стал еще более интерактивным. В окне предпросмотра появилась возможность открывать вкладки с разными отчетами и были добавлены «детальные отчеты», позволяющие открывать детализацию из основного отчета в новой вкладке.  Набор объектов отчета расширился за счет 2D-штрихкодов (QR, DataMatrix, PDF417), линейных штрихкодов с автокодированием Code128 (GS1), EAN128 и нативной интеграцией с FireDAC. Фильтры экспорта теперь поддерживают форматы файлов, такие как DOCX, XLSX, HTML5 и PPTX, а также получили улучшения в существующих форматах, включая поддержку PDF/A. Клиент-серверные компоненты получили значительное обновление интерфейса. FastReport for Lazarus также обновился и получил поддержку возможностей FastReport VCL 5. Оптимизация печати на матричные принтеры и обновленный дизайн интерфейса сделали версию 5 самым гибким инструментом для Delphi, способным создавать сложные аналитические отчеты. Эти нововведения сократили размер PDF-файлов и ускорили работу серверных компонентов, обеспечивая высокую производительность для любых бизнес-задач. FastReport VCL 6 — не просто отчёты, а интерактивная аналитика в RAD Studio 10.4 Шестое поколение FastReport VCL открыло новую эру интерактивных отчетов. Пользователи смогли редактировать элементы прямо в окне предпросмотра с помощью встроенных редакторов. В этой версии появились новые объекты отчета: карты, поддерживающие загрузку геоданных из баз данных (OSM, ESRI), таблицы с динамическим построителем таблиц для сложных отчетов, компонент «Текст в ячейках» (CellularText), «Индикаторы» (Gauge) для форм отчетов и диалогов, а также «PageControl» для диалоговых форм. Релиз значительно расширил функциональность за счет интеграции с облачными хранилищами (Dropbox, Google Drive, OneDrive, Box). Теперь можно сохранять и загружать отчеты и экспорты в эти сервисы. Фильтры экспортов получили поддержку новых форматов: PostScript, ZPL, PPML. Особое внимание уделено WYSIWYG-экспорту и векторным форматам, включая PDF с поддержкой интерактивных форм и SVG. Движок отчетов получил новые возможности: механизм смещения и растягивания объектов, отложенную обработку выражений и зеркалирование элементов на странице. В редакторе SQL появилась настройка синтаксиса. Также добавлен пул отложенных команд, позволяющий отчетам перестраивать себя из скрипта. Эти улучшения, в сочетании с продвинутым отладчиком скриптов и поддержкой RAD Studio 10.4, сделали FastReport мощной аналитической платформой для современных кроссплатформенных приложений. Переход на подписочную модель и обновления в 2021 году С 2021 года распространение FastReport VCL осуществляется по подписке , что совпало с переходом к годовой нумерации версий. Основной акцент был сделан на модернизацию визуальных стандартов и повышение безопасности. Была реализована полноценная поддержка векторной графики SVG и добавлена возможность добавления цифровых подписей в PDF-документы. Для расширения функционала отчетности введён новый объект HTML View, позволяющий встраивать визуализацию веб-контента, а также поддержка специализированных медицинских штрихкодов Two-Track Pharmacode.  Значительные оптимизации затронули производительность при работе с большими объемами данных. Также появилась возможность вставки фрагментов PDF-документов в отчеты и загрузки данных из внешних источников по всем поддерживаемым протоколам. Усиление безопасности и интерактивности в 2022 году Версия FastReport VCL 2022 продолжила развитие в направлении безопасности и взаимодействия с пользователем. Была реализована поддержка множественных цифровых подписей в PDF, а также возможность заполнения интерактивных элементов (например, ListBox и ComboBox) непосредственно в отчёте.  Для упрощения дизайна включены инструменты контроля верстки: автоматические направляющие и подсветка пересечений объектов.  Среди ключевых нововведений — интеграция с облачными сервисами (Gmail, Outlook, Яндекс Диск) и внедрение пошагового отладчика скриптов. При этом сохранена и расширена поддержка современных технологий: FireDAC, геоданные, а также эталонная печать на матричные принтеры. 2023 год — единая экосистема и цифровые подписи Не останавливаясь на достигнутом, в релизах 2023 появились функции автоматизации и стилей. Добавилась стабильная поддержка Linux — прямой путь к кроссплатформенной разработке. Линейка FastReport VCL 2023 трансформировалась из продукта в единую экосистему с общей библиотекой Core. Была введена инновационная система стилевых таблиц, позволяющая мгновенно изменять внешний вид отчётов без их перестроения. Технологические улучшения включают поддержку продвинутых цифровых подписей (ГОСТ, CADES), многопоточную печать и интеллектуальное масштабирование текста под размеры объектов. Важным шагом стало прекращение поддержки Delphi 7 — теперь поддерживаются версии Delphi начиная с 2010 года. Акцент сместился на современные стандарты: интеграция с NextCloud, расширение криптографических функций и оптимизация размера PDF-файлов. Эти обновления упростили работу с актуальными версиями IDE, добавив новые инструменты безопасности и повысив гибкость настройки отчетов. Курс на кроссплатформенность начиная с 2024 года FastReport VCL 2024: новый уровень удобства разработки и поддержки современных сред, включая Embarcadero RAD Studio 12. Обновленный текстовый редактор с подсветкой синтаксиса и автоматическим контролем скобок. Появился инструмент для точной настройки полей данных без подключения к базе данных. Технологический стек расширился поддержкой облачного хранилища S3 (AWS) и высокопроизводительного компонента TfrTreeView для работы с большими объемами данных в VCL и Lazarus. Этот компонент успешно используется и внутри самого FastReport. FastReport VCL 2025–2026: продукт стал кроссплатформенным и интерактивным. Основные инновации включают внедрение RFID-меток (TfrxDeviceCommand), полноценный Online Designer и библиотеку FastGrid для профессиональной работы с данными в Delphi и Lazarus. Версии этого периода представили обновленный визуальный стиль, продвинутую систему водяных знаков и гибкий редактор для их настройки. Появилась возможность легко добавлять защитные надписи и изображения. Благодаря нативной поддержке TLS/XOAUTH в почтовых транспортах и интеграции с актуальной версией RAD Studio 12.3–13, FastReport предоставил разработчикам современный инструментарий для создания защищенных бизнес-приложений. Новые свершения FastReport VCL продолжает развиваться, адаптируясь к потребностям разработчиков. На данный момент в последние версии FastReport внедряется работа с полупрозрачными изображениями. Кроме того, мы не забываем о поддержке и улучшении старых компонентов. Например, количество языковых пакетов значительно увеличилось: теперь FastReport поддерживает более 30 языков. Экспорты становятся функциональнее: экспорт PDF теперь поддерживает несколько стандартов, которые добавляются по мере их появления. FastReport оперативно поддерживает новые версии Delphi и Lazarus, обычно в течение 1–2 месяцев с момента выхода обновления, а иногда и быстрее. Заключение FastReport VCL за 25 лет стал не просто инструментом для генерации отчётов, а полноценной платформой для разработки сложной, интерактивной и безопасной отчётности в экосистеме Delphi и Lazarus. Его эволюция от базового компонента с минимальным функционалом до современного решения с поддержкой векторной графики, облачных хранилищ, цифровых подписей и кроссплатформенной разработки отражает не только технический прогресс, но и глубокое понимание потребностей разработчиков. Каждая версия приносила значимые улучшения — от внедрения XML-формата и скриптового движка до поддержки современных стандартов безопасности и интеграции с облачными сервисами, что позволило продукту оставаться актуальным в условиях быстро меняющихся технологий. Сегодня FastReport VCL представляет собой зрелую, масштабируемую и гибкую систему, способную решать задачи любой сложности — от простых печатных форм до аналитических дашбордов с визуализацией геоданных и динамическими отчётами в реальном времени. Переход на подписочную модель и единое ядро Core способствовал формированию единой экосистемы, упрощающей сопровождение и развитие проектов. Продолжающаяся поддержка новых версий RAD Studio, оперативное внедрение инноваций и внимание к деталям — от точной верстки до многопоточной печати — подтверждают, что FastReport VCL остаётся лидером в своей нише, задавая стандарты качества и производительности для целых поколений разработчиков. Tags: Delphi, FastReport, Lazarus, VCL ### FastReport WCF Service Library URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/wcl-service-library-blog Summary: FastReport WCF Service Library FastReport WCF Service Library Сегодня я расскажу о новой библиотеке FastReport.Service.dll, которая появилась в FastReport.Net 2013.3. Данная библиотека представляет собой WCF Service Library и предназначена для использования в составе пользовательских приложений, выполняющих функции сервисов. В данный момент библиотека содержит следующие функции: читать дальше... ### FastReport WCF Service Library URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-wcf-service-library Сегодня я расскажу о новой библиотеке FastReport.Service.dll, которая появилась в FastReport.Net 2013.3. Данная библиотека представляет собой WCF Service Library и предназначена для использования в составе пользовательских приложений, выполняющих функции сервисов. В данный момент библиотека содержит следующие функции: ``` List GetReportsList(); List GetReportsListByPath(string path); List GetGearList(); Stream GetReport(ReportItem report, GearItem gear); ``` Остановимся подробнее на каждой. List< ReportItem> GetReportsList() – возвращает список доступных отчетов в виде элементов ReportItem. Отчеты хранятся на жестком диске, на сервере, где работает сервис.  Передаются список всех отчетов с учетом иерархии папок. Файлы отсортированы по алфавиту. List< ReportItem> GetReportsListByPath( string path) – возвращает список отчетов в виде элементов ReportItem из папки path. В список попадут все отчеты и подпапки.  Файлы отсортированы по алфавиту. List< GearItem> GetGearList()  - возвращает список доступных форматов, которые может сформировать сервис отчетов в виде элементов GearItem. Stream GetReport( ReportItem report, GearItem gear) – возвращает поток данных, который является результатом построения отчета report в формате gear. Параметры report и gear могут быть использованы из списков, полученных ранее, либо созданы новые объекты с необходимыми свойствами.  Возвращаемый поток не поддерживает позиционирование -  вы можете осуществлять из него только последовательное чтение. Подробнее об элементах списков. ReportItem ``` public class ReportItem { public string Path; public string Name; public string Description; public Dictionary Parameters; } ``` Path – путь к файлу отчета на сервере, относительно корня папки хранения отчетов. Расширение файла отчета может быть только *.frx. Данное свойство используется для идентификации конкретного отчета при дальнейших запросах. Name – имя отчета, берется из метаданных файла отчета. Если метаданные отчета содержат пустое название, то имя совпадает с именем файла отчета без расширения. Данное свойство может быть использовано для построения интерактивных списков доступных отчетов в вашем приложении (например, в ListBox). Description – описание отчета, берется из метаданных файла отчета. Dictionary Parameters – словарь параметров отчета. Может быть заполен параметрами, которые будут впоследствии переданы в отчет. Поддерживаются только строковые значения, что необходимо учесть при разработке шаблона отчета. GearItem ``` public class GearItem { public string Name; public Dictionary Properties; } ``` Name – название формата. Может содержать одно из следующих строковых значений: Name Описание PDF Файл Adobe Acrobat DOCX Файл Microsoft Word 2007 XLSX Файл Microsoft Excel 2007 PPTX Файл Microsoft PowerPoint 2007 RTF Файл Rich Text – поддерживается множеством текстовых редакторов ODS Файл Open Office Spreadsheet ODT Файл Open Office Text MHT Сжатый HTML файл вместе с изображениями, может быть открыт в Internet Explorer CSV Comma separated values - текстовая таблица со значениями, разделенными запятыми. DBF Файл базы данных dBase XML XML таблица Excel – изображения не поддерживаются TXT Текстовый файл FPX Формат готового отчета FastReport.Net, может быть загружен в программу Viewer.exe либо непосредственно в объект отчета из кода Report.LoadPrepared(stream) и показан на экране Report.ShowPrepared() Dictionary Properties – словарь параметров формирования отчета. Полный список поддерживаемых параметров со значениями по умолчанию  доступен при запросе списка форматов от сервера. При создании сервиса, использующего библиотеку FastReport.Service.dll нужно добавить настройки в файл App.config или Web.config вашего приложения. ``` ``` FastReport. ReportsPath – указывает путь к папке с файлами отчетов, список которых будет передаваться клиенту. FastReport. ConnectionStringName – имя строки подключения к базе данных, которое хранится в разделе файла конфигурации. Используется для замены внутренней строки подключения в шаблоне отчета. FastReport. Gear – список доступных форматов. Можно выбрать только нужные и изменить порядок следования названий. Схематичный вариант использования FastReport.Service: Если вы точно знаете, какой отчет и в каком формате вы хотите получить, то схема использования сервиса может быть такой (это сократит количество запросов к сервису): Важные моменты, которые необходимо учитывать при создании шаблонов отчетов для использования в сервисах: диалоги в отчетах не поддерживаются и будут пропущены при построении отчета; каждый отчет должен содержать внутренний DataConnection, строка подключения которого будет при построении отчета сервисом  заменена на строку из конфигурации. Примеры использования FastReport.Service.dll можно посмотреть в папках \Demos\C#\WCFWebService , \Demos\C#\WCFWindowsService , \Demos\C#\WCFWebClient , \Demos\C#\WCFClient. Пример файла конфигурации сервиса - FastReport.Service.dll.config. В следующей статье я расскажу подробнее о конкретных примерах использования FastReport.Service.dll. Продолжение следует. Tags: .NET, WCF, FastReport, .NET, WCF, FastReport ### FastReport включен в состав решения для разработчиков Firebird. IBPhoenix URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/firebird-IBPhoenix Summary: FastReport включен в состав решения для разработчиков Firebird. IBPhoenix FastReport включен в состав решения для разработчиков Firebird. IBPhoenix Мы рады сообщить что FastReport включен в состав решения для разработчиков одной из самых популярных баз данных с откртым кодом в мире – Firebird. IBPhoenix (www.ibphoenix.com), компания, которая стоит за разработкой Firebird, выпустила Firebird Developer Pack 2007: полноценное решение для разработки приложений баз данных Firebird. Важной частью этого решения является Fast Report Standard Firebird Edition. Используя возможности Firebird и FastReport, разработчики могут создавать быстрые, надежные и недорогие приложения, использующие богатую функциональность создания отчетов и бизнес-аналитики. ### FastReport для 64-битных платформ? URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-64-bit-platform Summary: FastReport для 64-битных платформ? FastReport для 64-битных платформ? Как использовать генераторы отчётов FastReport для 64-битных платформ? Всё чаще мы получаем такие вопросы. Специально для вас - новая статья в нашем блоге. И да - мы знаем и помним о 64-bit Delphi и C++Builder (который, по слухам, выйдет совсем скоро). FastReport VCL поддерживает их двумя руками. ### FastReport для Lazarus теперь доступен на Linux! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/trial-lazarus-linux-academic Summary: Обновление редакций для FastReport VCL и FastReport for Lazarus с установщиком на Linux через DEB или RPM. Обновление редакций для FastReport VCL и FastReport for Lazarus с установщиком на Linux через DEB или RPM. Если вы делаете программы делового назначения для бизнеса или государственных нужд, которые должны быть кросс-платформенными или же просто работать под Linux-системами, то в конце концов вам потребуется создавать и выводить электронные документы, квитанции на печать или же в какой-то формат (PDF, офис, HTML и т.д.). И мы с продуктом FastReport VCL с этим всем будем рады вам помочь! В FastReport VCL для Lazarus появилась Trial версия, которая поможет вам ознакомиться со всем функционалом продукта перед покупкой. Ранее мы могли выдавать лишь скомпилированные демонстрационные проекты. Сравнение редакций для Lazarus можно просмотреть по этой ссылке. Дополнительно появилась редакция FastReport for Lazarus Academic, предназначенная для учебных заведений. Её можно использовать для обучения студентов и преподавателей.  Узнайте больше об академической программе по этой ссылке. FastReport VCL для Lazarus теперь стало кросс-платформенным решением. Зарегистрированные пользователи теперь могут установить FastReport for Lazarus сразу на Linux, используя DEB или RPM. Подробнее об установке читайте в этой статье. ### FastReport запускает Open Source проект URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-goes-open-source Summary: FastReport запускает Open Source проект FastReport запускает Open Source проект Мы очень рады объявить о запуске Open Source проекта - FastReport Open Source. Мы надеемся развить сообщество разработчиков .Net Core, разделяющих наше стремление создать самый быстрый, мощный и удобный генератор отчетов для Windows, Windows Server, Linux and MacOS.  Присоединяйтесь к нашеу проекту на GitHub:  github.com/FastReports/FastReport ### FastReport лишится функции печати* URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/april-fool-2017 Summary: FastReport лишится функции печати* FastReport лишится функции печати* Новейшая серия генераторов отчетов FastReport Desktop Green Edition поставляется без функции печати. Пользователям больше никогда не придется сталкиваться с пустыми лотками бумаги, заправкой картриджей и складами бумаг. Узнайте все плюсы беспечатной отчетности!  *С  1 апреля! ### FastReport поддерживает .NET 10: новые возможности для бизнес‑разработки URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/support-net-10 Summary: Выпущен релиз, обеспечивающий полную поддержку платформы .NET 10 в генераторе отчётов FastReport .NET и библиотеках: Business Graphics .NET, FastCube .NET, FastScript .NET. Выпущен релиз, обеспечивающий полную поддержку платформы .NET 10 в генераторе отчётов FastReport .NET и библиотеках: Business Graphics .NET, FastCube .NET, FastScript .NET. Наша команда рада сообщить о важной вехе в развитии продукта: выпущен релиз, обеспечивающий полную поддержку платформы .NET 10 в генераторе отчётов FastReport .NET . Это обновление позволит вам использовать новейшие возможности фреймворка при создании сложных отчётов и расширить функционал решений. Среди ключевых нововведений .NET 10, особенно ценных для бизнес‑проектов, стоит выделить: 1. Улучшенную производительность JIT‑компилятора — сокращение времени запуска и выполнения приложений, критичное для высоконагруженных систем. 2. Расширенные возможности асинхронного программирования — упрощение работы с длительными операциями (запрос данных, экспорт отчётов) без блокировки интерфейса. 3. Обновлённый API для работы с JSON, ускорение сериализации/десериализации данных, часто используемых в интеграциях с корпоративными системами. 4. Повышенную безопасность через новые механизмы защиты от уязвимостей, важные для обработки конфиденциальной бизнес‑информации. Интеграция с .NET 10 в FastReport .NET открывает доступ к этим функциям прямо в процессе создания отчётов. Теперь можно: строить отчёты с использованием асинхронных источников данных; оптимизировать скорость генерации за счёт улучшенного JIT; легко интегрировать отчёты в микросервисные архитектуры с обменом данными в формате JSON. Поддержка .NET 10 была также добавлена в библиотеку для визуализации данных Business Graphics .NET , С#-библиотеку оперативного анализа данных FastCube .NET , и кроссплатформенную библиотеку для выполнения сложных скриптов на C# в средах без генерации кода — FastScript .NET .  В компании «Быстрые отчеты» мы неизменно придерживаемся принципа: оперативно и качественно внедрять поддержку новых технологий. Наша цель дать разработчикам инструменты, позволяющие создавать современные, производительные и безопасные бизнес‑решения. Поддержка .NET 10 — это очередной шаг в этом направлении, подтверждающий нашу приверженность инновациям и потребностям рынка. ### FastReport прекращает поддержку старой версии Delphi URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/discontinuing-support-older-delphi Summary: С последним релизом FastReport VCL 2023.2 больше не поддерживаются старые версии Delphi. Подробно рассказываем, почему. С последним релизом FastReport VCL 2023.2 больше не поддерживаются старые версии Delphi. Подробно рассказываем, почему. С последним релизом FastReport VCL 2023.2 больше не поддерживаются старые версии Delphi. Подробно рассказываем, почему. С последним релизом больше не поддерживаются старые версии Delphi. Рассказываем, почему.  Несмотря на то, что мы пользуемся Delphi ещё с 1995 года, он развивается и имеет неоспоримые преимущества в работе программистов. Так же и продукты FastReport для Delphi не стоят на месте и с каждым релизом мы стараемся привнести новые и более современные возможности для разработчиков. Важное обновление: FastReport VCL больше не поддерживает версии Delphi ранее 2010. И мы объясним почему. Вы можете задаться вопросом: зачем обновлять Delphi и какие преимущества у более современных версий? Главные из них - большое число новых возможностей, обеспечивающих большой рост производительности при создании высококлассных приложений. В этой статье мы попробуем показать, какие важнейшие изменения получил Delphi, начиная с 7 версии и ответим на возникающие в связи с прекращением поддержки старых версий Delphi вопросы. 1. Какие версии больше не поддерживаются в продукте FastReport VCL? Borland Delphi 7 Borland Delphi 8 Borland Delphi 2005 Borland Delphi 2006 CodeGear Delphi 2007 Delphi 2009 Гарантированная поддержка работоспособности FastReport VCL 2023.2 осуществляется только, начиная с версии Delphi 2010 .  2. Почему мы отказываемся от старых версий Delphi до Delphi 2010, и что является сдерживающим фактором в разработке для отказа? Важным этапом развития VCL направления генераторов отчетов стало прекращение поддержки устаревших неюникодных версий. Это поможет нам более интенсивно работать над улучшениями в FastReport и внедрять более современные возможности с каждым релизом. С релиза 2023.1 FastReport VCL поддерживает версии Delphi, начиная с 2010. Существует несколько факторов, которые повлияли на такое решение: Отсутствие в старых версиях нативной поддержки Unicode, что накладывает различные ограничения при локализации и работе со строками и текстом; Необходимость осуществлять поддержку очень многих функций, потребность в которых отпадает при использовании новых версий Delphi; Нет Generics и анонимных методов, что накладывает дополнительные расходы человеческих ресурсов для обеспечения поддержки функций, которые могли быть проще реализованы на стандартных модулях IDE; Нет возможности использовать новые компоненты VCL, самостоятельная реализация которых увеличивает время разработки, а также поддержка их работоспособности тоже требует ресурсов; 3. В чем преимущество перехода на версии Delphi выше 2010, и какие технологии это позволит потенциально использовать нам? Пространства имен для нескольких модулей, цикл for ... in ... do, директива inline для функций и другие возможности оптимизаций кода В Delphi компилятор позволяет процедурам и функциям иметь директиву inline, присутствие которой повышает производительность. Когда процедура или функция соответствует определенным условиям, компилятор вставляет код именно в точку вызова вместо того, чтобы генерировать обычный вызов. Метод “подстановки в строку” (inlining) может оптимизировать производительность и генерировать код, который будет исполняться быстрее, но ценой увеличения его размера. В этом случае двоичный файл, сгенерированный компилятором, будет больше. Директивы inline, как и другие директивы, используются для объявления и определения функций и процедур. Возможности быстрого рефакторинга кода (Refactoring code) Рефакторинг кода — это техника перераспределения и модификации существующего кода с сохранением функциональности. Рефакторинг может ускорить, упростить и улучшить быстродействие и читабельность кода приложения. Сервис рефакторинга в Delphi анализирует и выполняет операции по перераспределения кода. Сервис также отображает изменения в режиме предварительного просмотра и в панели рефакторинга в нижней части редактора кода. Кандидаты на рефакторинг отображаются в виде узлов дерева, которые можно открыть для просмотра дополнительных элементов, подлежащих рефакторингу. Предупреждения и ошибки также отображаются на этой панели. Доступ к сервису рефакторинга можно получить как через контекстное меню, так и через главное меню. Модульное тестирование (UNIT TESTING) В новых версия Delphi присутствует фреймворк тестирования DUnit с открытым исходным кодом для создания и запуска автоматизированных тестов. Данный фреймворк облегчает процесс создания тестов для классов и методов приложения. При использовании в сочетании с рефакторингом эта функция может существенно повысить стабильность вашего приложения. Благодаря своевременному запуску серии тестов при изменениях в исходного кода проекта можно находить и исправлять ошибки на ранних этапах разработки. Сквозная поддержка Unicode на уровне языка, библиотеки и среды разработки Unicode представляет собой стандарт, позволяющий получить компьютерное представление и работать с любой системой записи. - The Unicode Standard: Version 5.0. 5. ed. Addison-Wesley Professional, 2006. 1472 p Большое количество наборов символов в разных языках, например, азиатских вариантах, представимы при помощи Unicode. Наиболее часто употребимые кодировки – UTF (Unicode Transform Format) и UCS (Universal Character Set). Более подробная информация по Unicode, можно посмотреть по адресу: http://en.wikipedia.org/wiki/Unicode . Одним из важных изменений в новых версиях Delphi является то, что теперь строковые типы основаны на UNICODE. Такие типы данных как AnsiString и WideString на основе стандарта ANSI и далее являются работоспособными, как и ранее с учетом размера строк в байтах. Список изменений для поддержки Unicode: String теперь означает UnicodeString, а не AnsiString. Char теперь означает WideChar (2 байта, а не 1), представляющий собой символ UTF-16. PChar означает PWideChar. AnsiString означает “старый” тип String. Нет изменений: AnsiString. WideString. AnsiChar, PAnsiChar. Short string содержит элементы AnsiChar. Неявное преобразование продолжает работать. Активная кодовая страница управляет режимом (ANSI или Unicode), так что строки ANSI по-прежнему поддерживаются. Операции, которые не зависят размера символа: Конкатенация строк. Стандартные функции для работы со строками. Например, Length, Copy, Pos и т.д. Операторы. Например, , CompareStr(), CompareText(), etc. FillChar (). Windows API. Многие компании распространяют свои приложения и/или обмениваются информацией со странами, где поддержка Unicode является критической. Generics "Generic" - термин, обозначающий общий тип. Он относится к использованию синтаксиса языка для предварительного определения типов данных в определенных типах контейнеров, таких как массивы или коллекции. Дженерики позволяют писать общий код, который работает с определенным типом данных, т.е. с классом или методом класса. Также можно указать тип во время выполнения программы. Поддержка Generics была введена, начиная с Delphi 2009. Delphi RTL включает готовые реализации коллекций (определенных в модуле “Generics.Collections”): TList TQueue TStack TDictionary TObjectList TObjectQueue TObjectDictionary TThreadedQueue Анонимные методы Анонимный метод — это процедура или функция, не имеющая связанного с ней имени. Анонимные методы — это части кода, которые могут быть связаны с переменными или использоваться в качестве параметров для других методов. Помимо того, анонимные методы могут использовать переменные в том контексте, в котором они определены. Объявление и использование анонимных методов не требует сложного синтаксиса. Синтаксис похож на конструкции замыканий (closures) в других языках программирования. Новые компоненты VCL (Custom Hints, Ribbon Controls и т.д.) Поддержка Direct-2D Direct2D API - программный интерфейс предназначен для взаимодействия с GDI, GDI+ и Direct3D. Direct2D перенаправляет все операции рисования в GPU (Graphic Processing Unit) вместо CPU, а это дает больше ресурсов приложению. Начиная с Microsoft Windows 7 добавили возможность использовать Direct2D: API для 2D графического вывода с аппаратным ускорением, что позволяет обеспечить повышенную производительность при отображении двухмерных объектов, растровых изображений и текста. В новых версиях Delphi поддержка Direct2D добавлена на уровне IDE. IDE Insight, Source Code Formatter (сервис форматирования исходного кода), Search task bar Добавленный новый сервис IDE Insight позволяет ввести имя и выбрать параметры проекта и предпочтения разработчика из списка подходящих вариантов. Поля ввода IDE Insight включают в себя параметры команд, файлов, компонентов и проектов, среди многих категорий. Среда Delphi предоставляет возможность форматирования кода по шаблонам по умолчанию. Также IDE теперь предлагают полностью настраиваемую службу форматирования кода, которая активируется нажатием клавиш CTRL+D. Это гарантирует, что модули будут отформатированы в соответствии с заранее заданными настройками. Кроме того, можно отформатировать все модули, входящие в проект, используя менеджер проектов. Фоновая компиляция (BACKGROUND COMPILATION) В Delphi 2010 компиляция может выполняться в фоновом режиме. Таким образом, можно запустить процесс компиляции в отдельном или параллельном потоке и продолжать работу в IDE во время компиляции проекта. Например, во время компиляции можно редактировать определенные файлы, устанавливать или изменять точки останова. Расширенная RTTI Динамическая идентификация типа данных (англ. run-time type information, run-time type identification, RTTI) предоставляет информацию об объектах, позволяя им взаимодействовать внутри приложения. IDE Delphi при использовании инспектора объектов, редактора кода и инструментов моделирования, является еще одним хорошим примером использования RTTI. В других языках программирования при их эволюции и развитии изменилось то, как мы программируем, и приложения, созданные на Java и .NET, хорошо иллюстрируют эти инновации, поскольку современные языки программирования предлагают новые уровни динамического взаимодействия. Delphi 2010, благодаря широкой поддержке RTTI в Delphi для Win32, теперь обладает всей мощью .NET и Java. Новая система RTTI (RTTI.pas) является полностью объектно-ориентированной и позволяет создавать и реализовывать взаимодействия между объектами более динамичным способом. Перегрузка операторов В новых версиях Delphi существует возможность перегружать некоторые функции или "операторы" в объявлениях записей (records). Имена функций-операндов соответствуют символьному представлению в исходном коде. “Помощники” классов (Class Helpers) “Помощник” — это тип класса, который вводит дополнительные методы и свойства, связывая их с другим классом. Данные методы и свойства могут использоваться в контексте ассоциированного (или производного) класса. “Помощники” классов — это способ расширения класса без его наследования. “Помощник” класс вводит дополнительную область видимости только тогда, когда компилятор окончательно определяет имя идентификатора. Strict Private и Strict Protected В новых версиях Delphi есть две опции, которые определяют видимость атрибутов класса: strict private и strict protected. Strict private: атрибуты класса являются видимыми только внутри класса, в котором они декларированы. Эти атрибуты не видны из методов, декларированных в том же модуле, или тех, которые не являются частью класса. Strict protected: определяет, что атрибуты класса доступны в потомках. Точки останова в потоках, «заморозка/разморозка» потоков Новый менеджер памяти и новые функции RTL Были улучшены некоторые функции RTL для повышения производительности. Новый менеджер памяти FASTMM для Win32-приложений позволяет приложениям Delphi 2006 работать лучше и обнаруживать утечки памяти, просто объявив ReportMemoryLikeonShudown := True в любой части программного кода. Начиная с Delphi 2006, помимо возможности обнаруживать утечки памяти, скорость работы приложений также значительно улучшилась. Классы для объектно-ориентированного ввода/вывода в файлы и директории Начиная с Delphi 2010 добавили новый модуль IOUtils, включающий три статических класса: TDirectory, TPath и TFile. В свою очередь данные классы раскрывают ряд статических методов, полезных для задач ввода-вывода. Большинство методов совместимы по функциям и подписи с классами .NET System.IO.Directory, System.IO.Path и System.IO.File. 4. Что делать тем кто хочет FastReport VCL с поддержкой Delphi 7-2009 (будет ли возможность скачать FastReport VCL до версии 2023.2, где и как скачать если будет)? По запросу в техническую поддержку вы можете получить последнюю версию FastReport VCL, которая была с поддержкой Delphi 7-2009. 5. Как будет осуществляться техническая поддержка для FastReport VCL с поддержкой Delphi 7-2009 (ее не будет или будет платной, будет ли переходной период)? Так как теперь мы не гарантируем работоспособность в версиях IDE до Delphi 2010, техническая поддержка по данным вопросам, связанным этими версиями, будет прекращена. Критические баги, которые приводят к полной неработоспособности FastReport VCL с поддержкой Delphi 7-2009, по запросу могут быть исправлены по усмотрению разработчика. Отказ от устаревших версий Delphi 7 - Delphi 2009 позволит нам перераспределить ресурсы команды разработчиков для более эффективной разработки, и уменьшить время реализации новой функциональности, а также уделить больше времени найденным неисправностям в FastReport VCL, что в свою очередь приведет к более стабильной работе программного продукта. Наша цель - создать мощный и быстрый генератор отчетов для всех разработчиков, и мы уверены, что это шаг поможет нам сделать наш продукт еще лучше. Tags: Delphi, FastReport, VCL ### FastReport.Net WCF - простой пример URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/net-wcl-simple-example Сегодня мы рассмотрим простейший способ использования библиотеки FastReport.Service.dll в качестве WCF сервиса. Данный способ не потребует программирования и предназначен для проверки работоспособности библиотеки и файла конфигурации. Для выполнения задачи мы используем программу WcfSvcHost.exe, которая идет в составе Visual Studio: Создаем папку для наших экспериментов где-либо на диске, например C:\WCF\FastReport Копируем в созданную папку файлы FastReport.Service.dll, FastReport.Service.dll.config, FastReport.dll, FastReport.Bars.dll. Создаем две подпапки Data и Reports В папку Data копируем файл базы из примеров \FastReport.Net\Demos\Reports\nwind.xml В папку Reports копируем содержимое папки \FastReports\FastReport.Net\Demos\WCF – она содержит тестовые отчеты со встроенными подключениями к базе данных, что является необходимым требованием при их использовании с библиотекой FastReport.Service.dll Открываем файл конфигурации FastReport.Service.dll.config в любом текстовом редакторе. Изменяем путь к папке с отчетами в секции ``` ``` В секции  меняем строку подключения к нашей базе: ``` ``` Создаем файл service.bat со следующей строкой: ``` "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\WcfSvcHost.exe" /service:C:\WCF\FastReport\FastReport.Service.dll /config:C:\WCF\FastReport\FastReport.Service.dll.config ``` Запускаем service.bat из проводника с правами администратора (Run as administrator). В трее появится иконка WCF Service Host. По двойному клику по ней должно открыться окно со следующим содержимым: Откроем браузер и перейдем по адресу: http://localhost:8732/FastReportService/ Номер порта сервиса можно настроить в файле конфигурации в строке ``` ``` Подключиться к сервису можно из примера \FastReport.Net\Demos\C#\WCFClient Открываем WCFServiceClient.csproj в Visual Studio В дереве Solution Explorer кликаем правой кнопкой на  Service References – ReportService и выбираем в меню Configure Service Reference В открывшемся окне уточняем адрес нашего сервиса. В конце адреса нужно добавить строку “/mex” (metadata exchange) Компилируем и запускаем пример. Продолжение следует. Tags: .NET, WCF, FastReport, .NET, WCF, FastReport ### FastScript URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-script Summary: Библиотека для выполнения скриптов Delphi 2010-XE8, C++Builder 2010-XE8, Embarcadero RAD Studio 13 и Lazarus Библиотека для выполнения скриптов Delphi 2010-XE8, C++Builder 2010-XE8, Embarcadero RAD Studio 13 и Lazarus Библиотека для выполнения скриптов Delphi, C++Builder, Embarcadero RAD Studio и Lazarus для PascalScript, C++Script, JScript и BasicScript. FastScript Библиотека для выполнения скриптов Delphi 2010-XE8, C++Builder 2010-XE8, Embarcadero RAD Studio 13 и Lazarus Попробовать Документация ## FastScript — библиотека для выполнения скриптов. Она будет полезна разработчикам, желающим добавить возможности исполнения скриптовых программ в свои проекты. Delphi 2010-XE8, C++Builder 2010-XE8, Embarcadero RAD Studio 11 и Lazarus Узнать больше Нестандартные вычисления С помощью скриптов можно обрабатывать данные, а также выполнять расчет стандартных показателей и фильтров. Поддержка событий FastScript поддерживает обработку событий в скрипте. В отличие от обработчиков событий в Delphi, в скрипте обработчики не являются методами объекта. Доступ к любому объекту вашего приложения Используются стандартные библиотеки для доступа к базовым классам, контролам, формам и БД. FastScript имеет легко расширяемую архитектуру. Исходный код Эта библиотека включает в себя полные исходные коды. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Мультиязычная архитектура Вы можете использовать множество языков PascalScript, C++Script, JScript, BasicScript, либо добавлять любые другие процедурно-ориентированные языки в XML-формате. Доступная документация Воспользуйтесь нашей документацией, бесплатными видео-уроками и многочисленными статьям для каждого сценария использования нашего продукта в ваших проектах, чтобы добиться значимых результатов в кратчайшие сроки. Ultimate VCL Узнать больше о Ultimate Да, совместим без использования fsGlobalUnit. Подробное описание можно найти на[ **47-й странице руководства**](https://быстрыеотчеты.рф/public_download/docs/FRVCL/FSVCLDeveloperManual-ru.pdf). Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### FastScript .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/fast-script-net Summary: Кроссплатформенная библиотека для выполнения сложных скриптов на C# в средах без генерации кода (Native AOT, WASM, iOS) Кроссплатформенная библиотека для выполнения сложных скриптов на C# в средах без генерации кода (Native AOT, WASM, iOS) Кроссплатформенная библиотека для выполнения сложных скриптов на C# в средах без генерации кода (Native AOT, WASM, iOS). FastScript .NET Кроссплатформенная библиотека для выполнения сложных скриптов на C# в средах без генерации кода (Native AOT, WASM, iOS) Попробовать Документация Узнать больше Встраиваемость в проекты Установите необходимый пакет из NuGet репозитория, либо загрузите пакет с нашего сайта и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Уникальная разработка Интерпретатор FastScript .NET не использует платформы CodeDOM и Roslyn. Это позволяет библиотеке скриптов без проблем работать в средах без генерации кода Native AOT, WASM, iOS. Широкие возможности Поддерживает скрипты, соответствующие спецификации C# 1.0 (с некоторыми ограничениями и дополнениями), такие как: создание классов, структур, событий, делегатов и т.д. Поддерживаемые особенности FastScript .NET поддерживает следующие особенности языка C# (наиболее полно поддерживается спецификация C# 1.0, с добавлением многих особенностей более поздних версий языка): C# 1.0: ●    Классы (Classes) ●    Структуры (Structs) ●    Перечисления (Enums) ●    Интерфейсы (Interfaces) ●    События (Events) ●    Перегрузка операторов (Operator overloading) ●    Пользовательские операторы конверсии типов (User-defined conversion operators) ●    Свойства (Properties) ●    Индексные свойства (Indexers) ●    Выходные параметры методов (Output parameters - out, ref) ●    Массив параметров (params arrays) ●    Делегаты (Delegates) ●    Операторы и выражения (Operators and expressions) ●    Буквальный идентификатор "@" (Verbatim identifier) C# 2.0: ●    Обобщенные типы (Generics) ●    Частичные типы (Partial types) ●    Nullable типы (Nullable value types) ●    Разные модификаторы доступа у getter/setter (Getter/setter separate accessibility) ●    Статические классы (Static classes) C# 3.0: ●    Авто-свойства (Auto-implemented properties) ●    Методы расширения (Extension methods) ●    Объявление переменных без указания типа (Implicitly typed local variables) C# 4.0: ●    Значения параметров по умолчанию (Optional arguments) C# 6.0: ●    Инициализаторы для авто-свойств (Auto-property initializers) ●    Свойства и методы, возвращающие выражение "=>" (Expression bodied members) ●    Оператор проверки на null "?." (Null propagator) C# 7.0: ●    Выходные переменные (Out variables) ●    Локальные функции (Local functions) C# 8.0: ●    Модификатор "readonly" для полей (Readonly members) ●    Статические локальные функции (Static local functions) ●    Операторы объединения null "??" и "??=" (Null-coalescing operators) C# 9.0: ●    Инструкции верхнего уровня (Top-level statements) Неподдерживаемые особенности Следующие особенности C# 1.0 не поддерживаются: ●    Директивы препроцессора (Preprocessor directives - #if, #region, etc) ●    Атрибуты (Attributes) ●    Неуправляемый код (Unmanaged code: pointers, unsafe keyword, P/Invoke) ●    Инструкции checked, unchecked (checked, unchecked statements) ●    Инструкция goto (goto statement) Ограниченная поддержка Термины, используемые ниже: "хост" означает ваше .net приложение; "скрипт" означает нечто, определенное в коде скрипта. Наследование классов Классы, определенные в скрипте, можно наследовать от других скриптовых классов либо от System.Object: class MyScriptClass: OtherScriptClass // ok class MyScriptClass: Object // ok class MyScriptClass // ok, same as Object class MyScriptClass: ArrayList // error Структуры Структура в FastScript представляет собой обычный класс. FastScript добавляет специальные методы для копирования структуры, когда ее значение передается в метод или в другую переменную. Объявление переменной, имеющей тип структуры, не создает экземпляр структуры автоматически: MyStruct s; // s is null s = new MyStruct(); // and must be initialized before use Взаимодействие с хостом Класс, определенный в скрипте, виден хосту как экземпляр FastScript.Runtime.DataContext.  Вы можете переопределять следующие методы в скриптовом классе: ●    ToString ●    Equals ●    GetHashCode Переопределенные методы будут также использоваться хостом. Скриптовый класс может реализовать интерфейсы, определенные в хосте, но это будет иметь значение только в скрипте. Хост не сможет работать с экземпляром такого класса, как с реализующим интерфейс. Nullable типы Nullable типы могут использовать только типы хоста.  Обобщенные типы и методы В скрипте можно использовать только обобщенные типы и методы хоста. Вы не можете определять обобщенный тип или метод в скрипте. Type forwarding Если тип хоста обозначен как "forwarded", его нужно явно использовать в хосте, чтобы была возможность его использования в скрипте. Например: var list = new System.ComponentModel.BindingList (); // error, BindingList does not exist Если добавить следующую строку кода в ваше приложение, скрипт будет скомпилирован без ошибок: new System.ComponentModel.BindingList (); Делегаты Вы можете создавать делегаты на основе любых методов (определенных в скрипте или хосте). Передача делегатов хост не поддерживается. Также не поддерживается создание делегатов Action<> и Func<>. Конверсии типов (implicit, explicit) Конверсия типов, определенная пользователем (в коде скрипта или в хосте), ограничена теми типами, которые определены явно. Пример: если определена конверсия T->int, вы можете ее использовать. Но вы не сможете использовать конверсию T->float, если она явно не определена. var m = new My(); ​ int intValue = m; // ok float floatValue = m; // error ​ int explicitIntValue = (int)m; // ok: explicit is not defined, but we have implicit one float explicitFloatValue = (float)m; // error ​ floatValue = (int)m; // use this way ​ public class My {   private object _value;   public static implicit operator int(My m) => (int)m._value; } Использование FastScript в Native AOT В скрипте можно использовать только типы, доступные в хосте. Приложение, скомпилированное в режиме Native AOT, может не содержать некоторые типы (или члены типов), которые вы бы хотели использовать в скрипте, потому что тип/член был исключен из сборки (trimmed). Другая проблема - использование обобщенных типов/методов. В Native AOT, вы можете использовать те обобщенные типы, которые доступны в хосте. Например, хост использует класс List , но не пользуется классом List . Первый можно будет использовать в скрипте, но при попытке создать тип List будет выдана ошибка. Таким образом, ваша задача будет состоять в том, чтобы сделать типы (и члены типов) статически доступными в вашем приложении, чтобы их можно было использовать в скрипте. Это можно сделать различными способами (создание экземпляров типов, использование атрибутов): [DynamicDependency(DynamicallyAccessedMemberTypes.All, typeof(List<>))] public void EnsureAOTVisible() {   var list = new List (); } Если в хосте статически доступен обобщенный тип, то поддерживается его использование с параметрами, представляющими reference type. Например, если доступен тип List<>, то можно создавать типы List , List , List и т.п. Экономия памяти При каждой компиляции скрипта FastScript .NET не создает отдельные dll сборки, а сохраняет информацию в кэше. Это сэкономит память вашего устройства. Безопасность FastScript .NET позволяет ограничить использование небезопасного API: операции с файловой системой или сетью. Вы можете ограничить использование целых сборок, пространств имен или отдельных типов. Компактность Небольшой размер библиотеки (всего 300 КБ) делает её удобной для использования даже в проектах с ограниченными ресурсами, не перегружая систему. Как купить FastScript .NET? Узнать больше об Ultimate .NET Как из FastReport .NET экспортировать отчет в DXF DXF (Drawing Exchange Format) — это открытый формат обмена графическими данными, разработанный компанией Autodesk для хранения и передачи двумерных и трехмерных чертежей. Благодаря широкой поддержке со стороны различных CAD-систем, DXF стал одним из наиболее распространенных форматов для обмена инженерной и технической документацией между приложениями. В этой статье рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Как из FastReport .NET экспортировать отчет в PostScript FastReport .NET поддерживает экспорт отчетов во множество популярных форматов, таких как PDF, Excel, Word и другие. Однако для задач профессиональной полиграфии, работы с плоттерами или специализированным печатным оборудованием часто требуется формат PostScript (.ps). В этой статье мы на примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. В этой статье мы на простом примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. Как настроить Content Security Policy для отчетов FastReport .NET WEB Content Security Policy (CSP) — ключевой инструмент защиты веб‑приложений от XSS‑атак, но его интеграция с отчётными системами нередко сопряжена со сложностями. В новых версиях FastReport .NET WEB архитектура клиентской части существенно переработана — это упрощает соблюдение строгой CSP без потери функциональности отчётов. В статье разберём, как грамотно настроить CSP для отчётов FastReport и учесть типичные риски. Узнайте, как настроить Content Security Policy для отчётов FastReport .NET WEB: обзор директив и значений CSP, изменения в архитектуре FastReport, типичные сценарии обхода и способы защиты. Остались вопросы? Связаться с менеджером ### FastScript 1.0 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.0 Summary: FastScript объединяет в себе кросс-платформенность, быстрое выполнение кода, компактность, богатый выбор возможностей и великолепную масштабируемость FastScript объединяет в себе кросс-платформенность, быстрое выполнение кода, компактность, богатый выбор возможностей и великолепную масштабируемость FastScript VCL объединяет в себе кросс-платформенность, быстрое выполнение кода, компактность, богатый выбор возможностей и великолепную масштабируемость. Сделайте ваши приложения максимально гибкими и мощными с FastScript уже сейчас! ### FastScript 1.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.1 Summary: FastScript 1.1 FastScript 1.1 + добавлены операторы 'new' и 'delete' в C++Script - исправлена ошибка в индексных св-вах и св-вах по умолчанию - исправлена ошибка в перечислениях - исправлена ошибка в операторе 'with' - исправлена ошибка в 'is' ### FastScript 1.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.2 Summary: FastScript 1.2 FastScript 1.2 - исправлена ошибка 'eventhandler = nil' - исправлена ошибка в множествах - исправлена ошибка в индексных св-вах и св-вах по умолчанию (повторно :) - исправлена ошибка оператора 'not' + добавлены методы TfsScript.GetILCode и TfsScript.SetILCode. Это позволяет сохранять и загружать уже прекомпилированный код. * изменилось поведение 'uses'. Теперь FastScript возвращает больше информации об ошибках в используемом модуле. Каждый используемый модуль долен содержать секцию begin..end подобно главному модулю. Модули не должны содержать дублирующиеся имена переменных/методов. ### FastScript 1.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.3 Summary: FastScript 1.3 FastScript 1.3 Всё еще ожидаете от FastScript поддержки Basic и JavaScript? Не надо ждать - пора использовать! + Добавлены BasicScript и JScript + Автоопределение языка по сигнатуре + возможность создания и исполнения мультиязычных скриптов (как внутри одного скрипта так и при подключении модулей с разными скриптовыми языками) * изменения в парсере и объявлениях языка * улучшенная грамматика C++Script * оптимизация скорости - исправлена ошибка в методе SetILCode К вашим услугам самый быстрый на сегодня по скорости работы с объектами и большими объёмами данных скриптовый интерпретатор. А ведь именно это требуется в реальной повседневной работе от подобного инструмента! ### FastScript 1.4 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.4 Summary: FastScript 1.4 FastScript 1.4 В один из первых весенних дней позвольте порадовать вас новой версией нашего "Script studio"! + добавлена поддержка OLE + добавлены variant массивы + добавлен метод TfsScript.Terminate + добавлен метод TfsScript.IsExecutableLine + добавлено свойство TfsScript.IsRunning + добавлена функция VarToStr + добавлен метод TfsScript.AddForm * описания языков разделены на компоненты TfsPascal, TfsCPP, TfsJScript, TfsBasic для уже существующих проектов необходимо на форму с компонентой TfsScript добавить компоненту с необходимым языком * изменено описание события OnRunLine было: procedure fsScript1RunLine(Sender: TfsScript; const SourcePos: Integer); стало: procedure fsScript1RunLine(Sender: TfsScript; const UnitName, SourcePos: String); * изменен тип TfsScript.ErrorPos и метод fsPosToPoint * сообщения об ошибках перемещены в файл fs_iconst.pas - исправлена ошибка инициализации переменных - исправлена ошибка в TList rtti - исправлены ошибки в описании грамматик JS и VB ### FastScript 1.5 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.5 Summary: FastScript 1.5 FastScript 1.5 + добавлен тип TBorderStyle + добавлены события TComboBox.OnChange, OnDropDown, OnCloseUp + добавлен метод TfsScript.AddComponent (аналогичен методу AddForm), потому что метод AddForm не может быть использован в среде C++Builder (конфликт имен) + добавлено событие TfsScript.OnGetUnit + теперь возможны перекрестные ссылки между модулями, процедурами и функциями + добавленаы константы VK_xxx и TCursor - исправлена ошибка с отрицательными параметрами по умолчанию - исправлена ошибка с нестандартными обработчиками событий с параметрами типа var string - исправлена ошибка с индексными свойствами типа Variant - исправлена ошибка объединения строк вида str := const + str - исправлена ошибка OLE (доступ к индексным свойствам) ### FastScript 1.6 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.6 Summary: FastScript 1.6 FastScript 1.6 + добавлена поддержка динамических массивов + добавлены функции MessageDlg, InputBox, InputQuery - исправлена ошибка в функции StrToDateTime - исправлено неправильное поведение 'Exit' - исправления для совместимости Linux CRLF - исправлена синтаксическая ошибка при использовании cross-language модулей - исправлена ошибка при пустом 'case' - исправлена ошибка объявления 'var ar, ar1: array' ### FastScript 1.7 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.7 Summary: FastScript 1.7 FastScript 1.7 + добавлена функция VarType + добавлен класс TApplication - исправлена ошибка с параметрами типа Char - исправлена ошибка при работе с функцией DayOfWeek - исправлена ошибка с параметрами типа "open array" - исправлена ошибка при работе с директивой 'uses' ### FastScript 1.8 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.8 Summary: FastScript 1.8 FastScript 1.8 + добавлена поддержка Delphi2005 + поддержка массивов в функции Length + добавлено свойство TfsScript.ExtendedCharset (русские буквы в идентификаторах) - исправлена ошибка в функии SetLength (для динамических массивов) - исправлена ошибка с __StringHelper (доступ к строковым элементам) ### Foreach в C sharp URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/foreach-c-sharp Сегодння хотелось бы поговорить о том, как же работает цикл foreach внутри. Все мы знаем, что такое цикл foreach - цикл, который перебирает все элементы коллекции. Его прелесть в простоте использования - нам не нужно заботиться о том сколько элементов в коллекции. Однако, многие не знают, что это всего лишь синтаксический сахар, который облегчает труд программиста. Поэтому, мы просто обязаны знать во что же в итоге компилятор его преобразует. Цикл foreach рфботает по разному, в зависимости от коллекции, которую нужно перебирать. 1) Если он имеет дело с банальным массивом, то мы всегда можем узнать его длину. Поэтому foreach в конечном итоге будет преобразован в цикл for. Вот, например: ``` int[] array = new int[]{1, 2, 3, 4, 5, 6}; foreach (int item in array) { Console.WriteLine(item); } ``` Компилятор преобразует цикл в такую конструкцию: ``` int[] temp; int[] array = new int[]{1, 2, 3, 4, 5, 6}; temp = array; for (int i = 0; i < temp.Length; i++) { int item = temp[i]; Console.WriteLine(item); } ``` 2) Однако, многие коллекции не поддерживают индексированный доступ к элементам, например: Dictionary, Queue, Stack. В этом случае будет использован шаблон итератор. Этот шаблон основан на интерфейсах System.Collections.Generic.IEnumerator и nongeneric System.Collections.IEnumerator, которые позволяют осуществлять итерацию элементов в наборе. IEnumerator содержит: Метод MoveNext() - перемещает перечислитель на следующий элемент коллекции; Метод Reset() - перезапускает перечисление, устанавливает перечислитель в начальную позицию; Свойство Current - возвращает текущий элемент коллекции. IEnumirator наследуется от двух интерфейсов - IEnumirator и IDisposable. Он содержит перегрузку свойства Current предоставляя его реализацию по типу. Раз уж мы упомянули интерфейс IDisposable, то уделим пару слов и ему. Он содержит единственный метод Dispose(), который нужен для освобождения ресурсов. Каждый раз, по завершении цикла или при выходе из него по другим причинам IEnumirator очищает ресурсы. Давайте посмотрим на такой цикл: ``` System.Collections.Generic.Queue < int > queue = new System.Collections.Generic.Queue< int >(); queue.Enqueue(1); queue.Enqueue(2); queue.Enqueue(3); foreach (int item in queue) { Console.WriteLine(item); } ``` Компилятор преобразует его в подобный код: ``` System.Collections.Generic.Queue< int > queue = new System.Collections.Generic.Queue< int >(); queue.Enqueue(1); queue.Enqueue(2); queue.Enqueue(3); int num; while (queue.MoveNext()) { num = queue.Current; Console.WriteLine(num); } ``` В этом примере MoveNext заменяет необходимость подсчета элементов во время цикла. Когда он не получит очередной элемент, то вернет fasle и цикл завершится. Но, все же этот код лишь приближен к тому что действительно выдаст компилятор. Проблема в том, что если у вас два и более пересекающихся циклов, работающих с одной коллекцией, то каждый вызов MoveNext будет влиять на все циклы. Такой ход событий не никого не устроит. И поэтому придумали второй интерфейс IEnumirator. Он содержит единственный метод GetEnumerator(), который возвращает перечислитель. Таким образом IEnumerable и его обобщенная версия IEnumerable позволяют вынести логику перечисления элементов из класса коллекции. Обычно это вложенный класс, который имеет доступ к элементам коллекции и поддерживает IEnumerator. Имея каждый свой перечислитель, разные потребители не будут мешать друг другу, выполняя перечисление коллекции одновременно. Таким образом, наш пример выше должен учитывать два момента - получение перечислителя и освобождение ресурсов. Вот как в действительности компилятор преобразует код цикла foreach: ``` System.Collections.Generic.Queue< int > queue = new System.Collections.Generic.Queue< int >(); System.Collections.Generic.Queue< int >.Enumerator enumirator; IDisposable disposable; enumirator = queue.GetEnumerator(); queue.Enqueue(1); queue.Enqueue(2); queue.Enqueue(3); try { int num; while (enumirator.MoveNext()) { num = enumirator.Current; Console.WriteLine(num); } } finally { disposable = (IDisposable)enumirator; disposable.Dispose(); } ``` Наверное, вы думаете, что для итерации коллекции необходимо реализовать интерфейсы IEnumerable и IEnumerable. Однако это не совсем так. Для компиляции foreach вам достаточно, чтобы объект реализовывал метод GetEnumerator(), который вернет другой объект со свойством Current и методом MoveNext(). Здесь применяется утиная типизация - известный подход: "Если что-то ходит, как утка, и крякает, как утка, то это утка". То есть, если есть объект с методом GetEnumerator(), который возвращает объект с методом MoveNext() и свойством Current, то это и есть перечислитель. В противном случае, если нужные объекты, с нужными методами не найдены, будут искаться интерфейсы IEnumerable и IEnumerable. Таким образом foreach является действительно универсальным циклом, который отлично работает как с массивами, так и с коллекциями. Я использую его постоянно. Однако, несть один минус у foreach - он позволяет только читать элементы, и не позволяет их изменять. Поэтому старый добрый for никогда не пропадет из нашего кода. Tags: .NET, C#, .NET, C# ### FreeReport 2.32 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/freereport-2.32 Summary: FreeReport 2.32 FreeReport 2.32 Вышел FreeReport 2.32 (основан на ядре FastReport 2.32). Что нового во FreeReport 2.32? - Скриптовый язык  - Подсветка синтаксиса в скриптовом языке - Поддержка Interbase Express (IBX), IBObjects, ActiveX Data Objects (ADO) - Cross-tab отчеты - Поддержка стилей линий - BarCode - RTF 2.0 - Компонент TfrPreview для создания собственного окна предварительного просмотра - TfrRoundRectObject - Фильтры экспорта: txt, htm, csv, rtf - 8 поддерживаемых языков - документация. ### FreeReport 2.32-1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/freereport-2.32-1 Summary: FreeReport 2.32-1 FreeReport 2.32-1 Список исправлений: - Исправлена ошибка конвертации отчетов FreeReport 2.2.1.7 (by Sergey Vlasov) + Добавлен файл пакета (package) для Borland C++ Builder 5 + Добавлена поддержка для датасетов в фреймах и в датамодулях D6 (by Alexander Tzyganenko) ### FreeReport 2.33 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/freereport-2.33 Summary: FreeReport 2.33 FreeReport 2.33 - добавленна поддержка Delphi 6-7, 2005, C++Builder 4-6 - добавлена поддержка формата FastReport 3 (*.fr3) при сохранении шаблонов отчетов в дизайнере - улучшен предварительный просмотр отчета - исправлены ошибки ### Intelligent Mail штрих-код URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/intelligent-mail-barcode Summary: Стандарт Intelligent Mail использует символику, основанную на высоте штрихов. Посмотрите, как использовать его в FastReport. Стандарт Intelligent Mail использует символику, основанную на высоте штрихов. Посмотрите, как использовать его в FastReport. Стандарт Intelligent Mail использует символику, основанную на высоте штрихов. Посмотрите, как использовать его в FastReport. До недавнего времени в США использовали два стандарта символики штрих кодов для почты: POSTNET и PLANET. Эти стандарты позволяют кодировать почтовые индексы и служат, главным образом, для сортировки и отслеживания почты. POSTNET способен кодировать пятизначный почтовый индекс, 4-значный плюс-код и 2-значный код точки доставки. Штрих-коды POSTNET (Postal Numeric Encoding Technique) и PLANET (Postal Alphanumeric Encoding Technique) используются Почтовой службой США. Штрих-коды POSTNET имеют переменную длину от 32 до 62 штриха, а PLANET - 62 или 72 штриха. Они модулированы по высоте (вертикальные столбцы имеют разную длину) и 2-состояния (имеются два разных типа баров, короткие и высокие). Каждая цифра закодированных данных представлена группой из пяти полос. У штрих-кодов POSTNET есть ровно два полных штриха в каждой группе из пяти, а у штрих-кода PLANET - три. Как отмечалось выше, на основе POSTNET и PLANET был создан новый стандарт Intelligent Mail, который также использует символику, основанную на высоте штрихов. IMb (Intelligent Mail barcode) (USPS OneCode) - это модулированный по высоте штрих-код, который кодирует до 31 цифры данных почтового отправления в 65 вертикальных баров, используя символику с 4 состояниями. Эта символика использует четыре разных состояния «баров», что позволяет кодировать больше информации в одном штрих-коде. Технология IMb эффективно сочетает в себе возможности PLANET и POSTNET в одном штрих-коде. Он позволяет почтовым пользователям использовать один штрих-код для одновременного участия в нескольких почтовых службах, расширяет возможности почтовых пользователей для отслеживания отдельных почтовых отправлений и обеспечивает большую видимость потока почты. Использование этого штрих-кода позволяет Почтовой службе предоставлять несколько услуг для индустрии рассылки и дополнительные функции отслеживания почты, а также отслеживать производительность почты и сокращать расходы. Как и POSTNET IMb имеет контрольную сумму для проверки целостности кода и возможного восстановления поврежденного кода. По сравнению с POSTNET IMb имеет гораздо большую емкость данных (31 символ против 11). В дополнение к коду маршрутизации штрих-код Intelligent Mail включает в себя четыре дополнительных поля: идентификатор штрих-кода, идентификатор типа услуги (STID), идентификатор почтовой программы (MID) и серийный номер. Эти дополнительные поля позволяют почтовым пользователям определять класс почты, идентифицировать сервисы, которые они хотят закупать (например, отслеживание и исправление адреса), а также позволяют почтовым клиентам однозначно идентифицировать почтовые отправления. К недостаткам можно отнести достаточно большую длину кода и возможность кодировать только числа. Intelligent Mail позволяет кодировать следующую информацию: 1)      Идентификатор штрих-кода (2 символа) - присваивается почтовой службой Соединенных Штатов Америки; 2)      Идентификатор типа услуги (3 символа) – класс почты или другой сервис; 3)      Идентификатор отправителя (6 или 9 символов) - идентификатор конкретной компании, присвоенный почтовой службой Соединенных Штатов Америки; 4)      Серийный номер (6 или 9 символов) - почтовому отправителю назначается номер, для идентификации конкретного получателя или домашнего хозяйства; 5)      Почтовый индекс точки доставки (11 символов) – не обязательное поле. Распределение кодируемой информации следующее: Идентификатор штрих-кода (2 символа) Идентификатор типа услуги (3 символа) Идентификатор отправителя (6 символов) Серийный номер (9 символов) Почтовый индекс точки доставки (0, 5, 9 или 11 символов) Или: Идентификатор штрих-кода (2 символа) Идентификатор типа услуги (3 символа) Идентификатор отправителя (9 символов) Серийный номер (6 символов) Почтовый индекс точки доставки (0, 5, 9 или 11 символов)  FastReport.Net, начиная с версии 2017.03.01 поддерживает штрих-коды стандарта Intelligent Mail. Давайте посмотрим, как он выглядит: Штрихи имеют различную высоту, направление (вверх, вниз), толщину. В FastReport минимальная длина кода 20 символов. Это обусловлено тем, что с 21го символа начинается Почтовый индекс точки доставки, который не обязателен. Изменение всего одной цифры полностью меняет штрих-код: Такой код может быть напечатан не только на конверте, но и прямо на документе, и в дальнейшем будет считываться через специальное прозрачное окно конверта. Tags: .NET, FastReport, Штрихкод, .NET, FastReport, Штрихкод ### ISDEF 2015 в Москве URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/isdef-moscow-2015 Summary: ISDEF 2015 в Москве ISDEF 2015 в Москве 24-27 сентября 2015 в Москве пройдет 14-я конференция независимых разработчиков программного обеспечения "ISDEF 2015".  Конференция, организованная форумом независимых производителей и продавцов программного обеспечения, открыта для всех, кто создает или только начинает создавать программные продукты, приложения или сервисы. Она объединяет владельцев и топ-менеджеров IT-бизнесов с целью максимально эффективного формального и неформального взаимодействия. На ней можно будет встретиться с разработчиками Fast Reports, включая генерального директора компании Михаила Филиппенко. Участники смогут задать вопросы по FastReport разных направлений, а также получить самую актуальную информацию по импортозамещению ПО. Подробная информация о спикерах, темах докладов, участниках, а также регистрация -  на сайте ### Kylix FAQ on fast-report.com URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/faq-kylix-fastreport-clx Summary: Kylix F.A.Q. on fast-report.com Kylix F.A.Q. on fast-report.com Так уж получилось, что FastReport CLX - единственный реально работающий генератор отчётов для Kylix. Потому к нам часто обращаются с вопросами и по Kylix. Более того, при ближайшем рассмотрении оказывается, что работа с, собственно, FastReport CLX не вызывает проблем (см. список вопросов), а имеет место быть ограничение именно Kylix. Мы составили список наиболее часто задаваемых вопросов по Kylix и ответов на них, поскольку нигде в интернете полных ответов на эти вопросы не нашли. Напоминаем, что мы оказываем техническую поддержку только наших продуктов, обращайтесь по вопросам технической поддержки Kylix к компании-производителю. ### llPDFLib (c экспортом FR->PDF) от llionsoft URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/llPDFLib-export-llionsoft Summary: llPDFLib (c экспортом FR->PDF) от llionsoft llPDFLib (c экспортом FR->PDF) от llionsoft llPDFLib библиотека, написанная на Object Pascal для создания PDF. Не использует DLL или каких-либо программ третьих фирм для генерации PDF. Содержит компонент TPDFDocument, по свойствам и методам подобный TPrinter в Delphi, но предназначенный для генерации PDF. Но самое главное - встроенный фильтр для экспорта из формата FastReport в PDF. ### Low-code разработка отчетов теперь на Linux URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/desktop-for-linux Summary: С 17 февраля продукт «МоиОтчеты Десктоп» в редакции Проф стал доступен в обновлённой версии с поддержкой Windows и Linux. С 17 февраля продукт «МоиОтчеты Десктоп» в редакции Проф стал доступен в обновлённой версии с поддержкой Windows и Linux. С 17 февраля продукт « МоиОтчеты Десктоп » в редакции Проф стал доступен в обновлённой версии с поддержкой Windows и Linux. Теперь вы можете использовать кроссплатформенные компоненты для автоматизации формирования и отправки отчётов на любой из этих операционных систем. Теперь, покупая МоиОтчеты Десктоп Проф, вы одновременно получаете компоненты для Windows и Linux:  Визуальный дизайнер для создания и редактирования отчетов. Построитель в виде консольной утилиты для построения и обработки отчетов. Конфигуратор для создания задач построителя. Удобный планировщик для выполнения задач по расписанию. Viewer для отображения и печати готовых отчетов. Цена на редакцию МоиОтчеты Десктоп Проф остаётся без изменений. Все действующие клиенты автоматически получили доступ к новым возможностям — переоформление лицензии не требуется. Для установки программного обеспечения МоиОтчеты Десктоп необходимо скачать установочный пакет в личном кабинете. Доступны следующие варианты пакетов: deb и rpm, для архитектуры x64 и arm64. Подробная инструкция по установке доступна по этой ссылке. Лицензия МоиОтчеты Десктоп Стандарт содержит в себе только Windows компоненты и осталась без изменений.  При возникновении вопросов пишите нам на почту sales@fastreport.ru . Скачать демо ### MAPI-фильтр экспорта FastReport VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/mapi-filter-fastreport-vcl Summary: MAPI-фильтр экспорта FastReport VCL MAPI-фильтр экспорта FastReport VCL Мы готовим релиз FastReport VCL 4.13. Для самых нетерпеливых клиентов - обновление фильтра e-mail экспорта MAPI уже есть в ежедневных сборках (это далеко не единственное изменение). Подробнее про MAPI e-mail экспорт читайте (и оставляйте отзывы) в нашем блоге. ### Master/Detail из пользовательского датасета в Visual Basic 6 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/master-detail-dataset-vb6 Доброго времени суток. Признаюсь, до работы в компании Fast Reports, никогда не писал на Visual Basic. Не могу сказать, что в настоящее время познал этот язык, однако, по работе часто приходится отвечать на вопросы программистов, использующих VB6 для разработки программ и использующих Fast Report для генерации отчётов. Ниже показан небольшой пример кода, который эмулирует Master/Detail функциональность при помощи пользовательского датасета (TfrxUserDataSet). Код ``` Dim frx As TfrxReport Dim master_index As Integer Dim detail_index As Integer Dim mas(1 To 3, 1 To 20) As Integer Dim WithEvents master_dataset As TfrxUserDataSet Dim WithEvents detail_dataset As TfrxUserDataSet     Private Sub Command1_Click() frx.ShowReport End Sub   Rem ***** MASTER DATASET ***** Private Sub master_dataset_OnCheckEOF(IsEOF As Boolean) If master_index = 20 Then IsEOF = True Else IsEOF = False End If End Sub   Private Sub master_dataset_OnFirst() master_index = 1 End Sub   Private Sub master_dataset_OnGetValue(ByVal VarName As Variant, Value As Variant) If VarName = "Field1" Then Value = mas(1, master_index) ElseIf VarName = "Field2" Then Value = mas(2, master_index) ElseIf VarName = "Field3" Then Value = mas(3, master_index) End If End Sub   Private Sub master_dataset_OnNext() master_index = master_index + 1 End Sub   Private Sub master_dataset_OnPrior() master_index = master_index - 1 End Sub   Rem ***** DEATIL DATASET ***** Private Sub detail_dataset_OnCheckEOF(IsEOF As Boolean) If detail_index = 20 Then IsEOF = True Else IsEOF = False End If End Sub   Private Sub detail_dataset_OnFirst() detail_index = 1 End Sub   Private Sub detail_dataset_OnGetValue(ByVal VarName As Variant, Value As Variant) If VarName = "Detail_1" Then Value = "Master is " + Str(master_index) ElseIf VarName = "Detail_2" Then Value = mas(2, detail_index) ElseIf VarName = "Detail_3" Then Value = mas(3, detail_index) End If End Sub   Private Sub detail_dataset_OnNext() detail_index = detail_index + 1 End Sub   Private Sub detail_dataset_OnPrior() detail_index = detail_index - 1 End Sub     Private Sub Design_Click() Dim designer As TfrxDesigner Set designer = CreateObject("FastReport.TfrxDesigner") Rem It would be better to keep commented the following line 'designer.Standalone = True frx.DesignReport Set designer = Nothing End Sub   Private Sub Form_Load() Dim i As Integer Dim j As Integer Set frx = CreateObject("FastReport.TfrxReport") Set master_dataset = CreateObject("FastReport.TfrxUserDataSet") Set detail_dataset = CreateObject("FastReport.TfrxUserDataSet") frx.EngineOptions.SilentMode = simMessageBoxes   Rem Fill data with random values Randomize Timer For i = 1 To 3 Step 1 For j = 1 To 20 Step 1 mas(i, j) = Round(Rnd(1000) * 1000) Next j Next i master_dataset.Name = "MyDataSet" master_dataset.Fields = "Field1" + Chr(13) + Chr(10) + "Field2" + Chr(13) + Chr(10) + "Field3"   detail_dataset.Name = "DetailDataSet" detail_dataset.Fields = "Detail_1" + Chr(13) + Chr(10) + "Detail_2" + Chr(13) + Chr(10) + "Detail_3"   frx.LoadReportFromFile ("UserDataSet.fr3") master_index = 1 detail_index = 1 frx.SelectDataset True, master_dataset frx.SelectDataset True, detail_dataset   End Sub   Private Sub Form_Unload(Cancel As Integer) frx.SelectDataset False, master_dataset frx.SelectDataset False, detail_dataset Set detail_dataset = Nothing Set master_dataset = Nothing Set frx = Nothing End Sub ``` Основная "фишка" примера находится в подпрограмме (кажется, это так называется в Бейсике?) detail_dataset_OnGetValue. При возвращении значения следует учитывать индекс текущей записи родительского бэнда. Другой важный момент, на который стоит обратить внимание, это анализ EOF в подпрограмме detail_dataset_OnGetValue. Для простоты этот пример подразумевает, что любая мастер запись содержит 20 детализированных записей. Разумеется, в реальной программе анализ количества детализированных записей должен также основываться на проверке индекса текущей записи родительского бэнда. К сожалению, этот пример не будет корректно работать в среде VB6. Генерация событий, используемых в этом примере, возможна лишь при создании исполняемого (EXE) файла. Tags: .NET, FastReport, Visual Basic, .NET, FastReport, Visual Basic ### MaxiCode URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/barcode-maxicode-net Summary: Рассказываем, что такое MaxiCode и как использовать его в FastReport .NET. Рассказываем, что такое MaxiCode и как использовать его в FastReport .NET. Рассказываем, что такое MaxiCode и как использовать его в FastReport .NET. MaxiCode впервые был запатентован в 1992 году как код для высокоскоростной конвейерной сортировки. Первоначальное название было Dense Code, который позже был изменен на UPS. Последним установившемся названием стало MaxiCode. Maxicode - это двумерная символика штрих-кода, которая используется United Parcel Service на упаковочных листах для международной адресации и сортировки пакетов. Вместо того, чтобы использовать полосы, MaxiCode использует точки, расположенные в гексагональной сетке или сотовой структуре, состоящей из 888 несущих информацию ячеек. Ячейки окружают «цель» или «бычий глаз» в центре, что позволяет сканеру или камере находить символ. Хотя MaxiCode ограничены примерно одним квадратным дюймом, они могут быть связаны между собой до восьми раз для более длинного сообщения, называемого «составным тегом». Штрихкоды Maxicode имеют фиксированный размер 1,11 x 1,054 дюйма и позволяют хранить до 93 символов данных. Кроме того, есть возможность исправления ошибок, поэтому штрих-код можно прочитать при повреждении. Встроенная коррекция ошибок основана на коде Рида-Соломона. Поскольку большинство таких штрих-кодов находятся на упаковках, они должны быть устойчивы к повреждениям. Коррекция ошибок допускает повреждение кода до 1/8 части. Каждый штрих-код Maxicode включает в себя два основных сообщения: первичное и вторичное. Первичное сообщение включает почтовый индекс, код страны и класс, а вторичное сообщение содержит данные адреса. Для считывания штрих-кода Maxicode требуется 2D-сканер штрих-кода, предпочтительно тот, который выполняет эмуляцию клавиатуры и получает питание от USB-порта, поэтому внешний источник питания не требуется. Важным применением MaxiCode является маркировка пакетов, поддонов и т. Д. В этом применении MaxiCode может быть переносным файлом данных, который перемещается вместе с пакетом. Он обеспечивает наличие критически важной информации в любой момент, когда груз обрабатывается. MaxiCode был разработан для включения в существующий манифест систем доставки. Компактный размер означает MaxiCode позволяет избежать полного или частичного редизайна этикетки. В конечном счете, MaxiCode можно использовать для замены символов меньшей плотности, таких как линейные штрих-коды. Одна из ключевых особенностей MaxiCode - то, что она может быть расположена и читаться на больших скоростях в большом поле зрения. Это означает, что MaxiCode следует рассматривать для интеграции в автоматизированные системы обработки материалов. Начиная с версии 2017.03.01 FastReport.Net предоставляет штрихкод MaxiCode. Давайте посмотрим, как он выглядит: В центре кода специальная круговая метка в виде мишени, для распознавания сканером центра штрихкода. Как вы помните, код может содержать текстовые данные: Вся прелесть этого кода в том, что он позволяет кодировать достаточно длинные циферно-буквенные данные и обеспечивает высокую скорость считывания. Это делает его использование очень перспективным во многих отраслях. Tags: .NET, FastReport, Штрихкод, .NET, FastReport, Штрихкод ### Mono URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/mono Summary: Кроссплатформенный набор компонентов для создания отчетов и шаблонов из ваших данных на основе Mono Framework Кроссплатформенный набор компонентов для создания отчетов и шаблонов из ваших данных на основе Mono Framework Кроссплатформенная библиотека для создания отчетов и документов из ваших данных с возможностью печати на основе Mono Framework FastReport .NET Mono Кроссплатформенный набор компонентов для создания отчетов и шаблонов из ваших данных на основе Mono Framework Купить Попробовать Документация Узнать больше Перейти в магазин Встраиваемость в проекты Установите необходимый пакет из NuGet репозитория, либо загрузите пакет с нашего сайта на компьютер и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Надежность Наши компоненты регулярно тестируются, улучшаются и совершенствуются, продолжая радовать вас стабильной работой уже более 10 лет. System.Drawing (GDI) Для создания графических элементов, отрисовки текста и управления графических изображений используется уже привычный System.Drawing с графическими функциями GDI+. Множество компонентов Для построения отчетов в дизайнере доступны разнообразные элементы: от текста и изображений до математических формул и 3D-диаграмм. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Совместимость и интеграция Mono является частью единой экосистемы FastReport на C#. Отчёты, созданные в других продуктах, будут работать в Mono и наоборот. Ultimate .NET Подробности Узнать больше Закончилась эпоха WinForms, началась FastReport.Core.Skia Новый графический движок SkiaSharp для создания качественных отчётов и корректного экспорта в разные форматы доступен в FastReport .NET. Новый графический движок SkiaSharp для создания качественных отчётов и корректного экспорта в разные форматы доступен в FastReport .NET. Функция проверки отчетов в FastReport .NET и Mono Протестируйте наш новый валидатор отчётов для проверки конфигураций объекта в дизайнере FastReport .NET и FastReport Mono. Протестируйте наш новый валидатор отчётов для проверки конфигураций объекта в дизайнере FastReport .NET и FastReport Mono. Как импортировать отчет из StimulSoft в FastReport .NET В FastReport .NET был добавлен плагин импорта отчётов из StimulSoft, который автоматически преобразует ваши документы в формат .frx. В FastReport .NET был добавлен плагин импорта отчётов из StimulSoft, который автоматически преобразует ваши документы в формат .frx. Остались вопросы? Связаться с менеджером ### Newsgroups (в режиме только для чтения) URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/support%2Fnewsgroup Summary: Мы предоставляем наши группы новостей для технической поддержки пользователей в использовании наших продуктов сообществом клиентов Fast Reports. Мы предоставляем наши группы новостей для технической поддержки пользователей в использовании наших продуктов сообществом клиентов Fast Reports. Мы предоставляем наши  группы новостей  для технической поддержки наших пользователей, обмена информацией и технологиями в использовании наших продуктов сообществом клиентов Fast Reports.  Мы поощряем участников этого сообщества помогать друг другу в технических вопросах. Перечень групп Это русскоязычные группы новостей. Смотрите список англоязычных групп на английской версии сайта. fast-reports.ru.public.fastcube - Технические вопросы по FastCube fast-reports.ru.public.fastreport.4  - Технические вопросы по FastReport 4. fast-reports.ru.public.fastreport.net  - Технические вопросы по FastReport .NET fast-reports.ru.public.fastreport.studio  - Технические вопросы по FastReport Studio fast-reports.ru.public.fastreport.vcl  - Технические вопросы по FastReport2.x VCL. fast-reports.ru.public.fastreport.clx  - Технические вопросы по FastReport CLX. fast-reports.ru.public.fastscript  - Технические вопросы по FastScript. fast-reports.ru.public.freereport  - Технические вопросы по FreeReport. fast-reports.ru.public.fastexperts  - Технические вопросы по FastExperts. fast-reports.ru.public.openquerybuilder  - Технические вопросы по OpenQueryBuilder. fast-reports.ru.public.non-technical  - Нетехнические вопросы по продуктам fast-reports.ru.public.binaries  - Для отсылки прикрепляемых исходников, скриншотов, поясняющих суть проблемы. ### Nexign и «Быстрые отчеты» объявили о технологическом партнерстве URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/partnership-fastreport-nexign Summary: Компания Nexign и "Быстрые отчеты" подписали соглашение о технологическом сотрудничестве, где Nexign становится участником ОЕМ-программы. Компания Nexign и "Быстрые отчеты" подписали соглашение о технологическом сотрудничестве, где Nexign становится участником ОЕМ-программы. Компания Nexign и компания по разработке программного обеспечения для формирования отчетов «Быстрые отчеты» подписали соглашение о технологическом сотрудничестве. В рамках данного соглашения компания Nexign становится участником ОЕМ-программы и приобретает статус «Технологический партнер». Программа «FastReport OEM» — опция, расширяющая стандартную лицензию разработчика и позволяющая встраивать отдельные защищенные компоненты генератора отчетов FastReport в многопользовательские и многофункциональные приложения делового назначения. Основной целью технологического партнерства является дальнейшее совместное развитие продуктов компаний. Программное обеспечение компании «Быстрые отчеты» позволяет создавать в специальном редакторе шаблоны документов и формировать документы в различных графических форматах на их основе. Этот механизм используется в разработках Nexign и помогает решать такие задачи как выставление счетов клиентам по результатам биллинга, формирование документов по обращению клиентов и их передача во внешние системы ЭДО. «Мы используем технологии FastReport для формирования документов уже более 20 лет. Как показала практика, данное программное обеспечение позволяет решать специфические задачи BSS/OSS вендора. С развитием технологий мы продолжили использовать новые движки FastReport в наших решениях, например, в Nexign Revenue Management и IoT Connectivity Platform. Миллионы электронных документов формируются ежемесячно и предоставляются клиентам как внутри России, так и за ее пределами. Сегодня мы рады объявить об официальном заключении сотрудничества с компанией «Быстрые отчеты», которое особенно актуально в условиях импортозамещения», — комментирует Михаил Матюшин, технический директор Nexign. «Мы искренне рады заключению партнерского соглашения с Nexign. Мы начали наше сотрудничество как поставщик и клиент, и рады видеть, как эти отношения развились и переросли в партнерство. Расширенное лицензирование в рамках OEM-программы позволит Nexign использовать наработки и компоненты FastReport для еще большей адаптации и кастомизации генераторов отчетов под нужды конечных пользователей. Лицензирование такого рода позволяет разработчикам сделать их программные продукты более гибкими и лучше отвечать требованиям заказчика», — комментирует Светлана Кострыкина, генеральный директор компании «Быстрые отчеты». О компании Nexign: Накопленный за 30 лет опыт позволил Nexign создать обширный пакет предложений для поддержки цифровой трансформации компаний по всему миру. Продуктовая линейка Nexign включает в себя как конвергентные BSS-решения для управления ключевыми процессами телеком-операторов, так и передовые системы для улучшения взаимодействия сотрудников внутри компании и создания цифровых экосистем. Мы стремимся укреплять партнерские отношения с нашими клиентами, предлагая им инновационные продукты, основанные на современных технологиях и обширном опыте в области информационных технологий и телекоммуникаций. Следите за новостями компании на сайте:  https://nexign.com/ru . Контакты пресс-службы Nexign: PR_Group@nexign.com О компании «Быстрые отчеты»: ООО «Быстрые отчеты» (до 30 сентября 2022 — "Фаст Репортс") работает на рынке информационных технологий с 1998 года и является одним из ведущих российских разработчиков программного обеспечения. Передовыми решениями компании являются программные библиотеки и компоненты для наиболее популярных сред разработки, позволяющие реализовать функционал создания документов и генерации отчетов. С 1998 года по настоящее время наши решения были внедрены более чем в l0 000 организациях по всей России, как в коммерческих разработках, так и в госсекторе. Решения Fast Reports включают в себя самые передовые и уникальные, для российского рынка, решения для разработки программного обеспечения. Компания первой разрабатывает и внедряет технологии, которые потом становятся де-факто отраслевыми стандартами. ### Online Designer URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/online-designer Summary: Визуальный дизайнер шаблонов и отчетов прямо в вашем браузере Визуальный дизайнер шаблонов и отчетов прямо в вашем браузере Мощный продукт с адаптивным интерфейсом для разработки отчетности на любом устройстве прямо в браузере. FastReport Online Designer Визуальный дизайнер шаблонов и отчетов прямо в вашем браузере Купить Попробовать Документация Узнать больше Простота использования Всё, что вам нужно сделать — это подключить данные, перетащить их на страницу шаблона, настроить отображение и сохранить документ. Кроссплатформенность Online Designer можно запускать на платформах Android, iOS, MacOS, Linux и Windows в любом современном браузере из компьютера, планшета, коммуникатора или ТВ. Поддержка .NET и VCL платформ Создавайте отчёты или открывайте готовые шаблоны .fr3 и .frx расширений. Online Designer можно собрать под один из форматов с соответствующим набором компонентов. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Drag-and-Drop Перетаскивая элементы мышью, вы сможете легко добавлять и настраивать их при разработке шаблонов. К примеру можно переносить поля из источников данных в компоненты. Валидатор отчета Инструмент для анализа отчета на ошибки, который работает в процессе его создания или после завершения. Валидатор отчета показывает все найденные замечания и ошибки в панели “Сообщения”. Корпоративные стили В Online Designer есть поддержка стилей для отчётов. Создавайте свои собственные стили, а затем применяйте их в шаблонах на любых компонентах. Готовые стили можно собрать в коллекцию стилей и сохранить для будущих проектов. Богатый выбор компонентов В вашем распоряжении есть более 40 компонентов для .NET и VCL платформ: простые фигуры, текст, изображения, сложные таблицы, графики и бэнды. Online Designer поддерживает множество штрих-кодов, вложенные отчёты, RichText, карты и цифровую подпись. Подключение к данным и экспорты При использовании WebReport из FastReport .NET или FastReport VCL вам становится доступным: подключение к базам Oracle, PostgreSQL, MS SQL, MongoDB, CSV, JSON, коннектор ADO (VCL), экспорты в различные форматы. Перейти в магазин Единый дизайнер в составе Ultimate для всех платформ Ultimate .NET Ultimate VCL Узнать больше Установка FastReport Online Designer В статье рассказывается, как установить FastReport Online Designer — инструмент для создания и редактирования отчётов. Пошаговая инструкция поможет вам быстро приступить к работе с этой системой. В статье рассказывается, как установить FastReport Online Designer — инструмент для создания и редактирования отчётов. Настройка API для сборки FastReport Online Designer Рассказываем об автоматизации процесса сборки FastReport Online Designer Builder через API при изменении версии продукта. Рассказываем об автоматизации процесса сборки FastReport Online Designer Builder через API при изменении версии продукта. 5 функций для работы с отчётами в FastReport Online Designer В FastReport Online Designer появились нововведения, повышающие удобство использования и упрощающие создание отчетов. В FastReport Online Designer появились нововведения, повышающие удобство использования и упрощающие создание отчетов. Остались вопросы? Связаться с менеджером ### Online Designer и новая версия FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2015.4 Summary: Online Designer и новая версия FastReport .NET Online Designer и новая версия FastReport .NET Отличные новости! FastReport Online Designer стал самостоятельным продуктом. Ранее бета версия дизайнера отчетов была доступна только в FastReport.NET в редакции Professional. Теперь FastReport Online Designer можно приобрести отдельно или в составе редакции Enterprise продукта FastReport .NET. Оставьте свой отзыв о работе дизайнера здесь. Авторам самых информативных отзывов мы подарим бесплатную лицензию на FastReport Online Designer, FastReport.NET Enterprise или планшет! Также вышла новая версия FastReport 2015.4 Среди главных изменений - глобальные работы по оптимизации скорости исполнения и потребления памяти. Добавлен импорт шаблонов из DevExpress. Остальные изменения включают: * новый инсталл * изменения в демонстрационном проекте Main и демонстрационных отчетах (\Demos\C#\Main) [Core] * увеличена скорость построения отчета * уменьшено потребление памяти * расширенная информация при возникновении исключения при вызове события из скрипта [Designer] + добавлена возможность конвертировать отчет DevExpress [Exports] + добавлен экспорт в FastReport Cloud + добавлен парсинг тега цвета текста в RTF экспорте + добавлено свойство Excel2007Export.Seamless для экспорта неразрывных таблиц + добавлены экспорты в PPML (Personalized Print Markup Language) и PostScript - (классы PPMLExport, PSExport) + добавлено свойство EmbedPictures(изображения, встроенные в файл) в HTML экспорт * переделано сохранение в форматы Excel 2007, Word 2007, Power Point 2007, XPS * оптимизировано потребление памяти в табличных экспортах * увеличена скорость экспорта в Excel 2007 - исправлена ошибка с экспортом тени в табличных экспортах [WebReport] + добавлено свойство WebReport.XlsxSeamless для экспорта неразрывных таблиц в формат Excel 2007 + добавлено свойство WebReport.EmbedPictures (внедрение картинок в HTML) + добавлено свойство WebReport.DesignerLocale (установка языка интерфейса для Online Report Designer) - исправлена ошибка с отображением отчета с включенным свойством WebReport.SinglePage - исправлена ошибка со значениями параметров по умолчанию - исправлена ошибка с отображением картинок с включенным свойством WebReport.SinglePage - исправлена ошибка с многострочным TextBox - исправлена ошибка с Azure cookies [Online Report Designer] + добавлен манифест html5 для оффлайновой работы (без iframe) + добавлен диалоговые контролы TextBox, RadioButton, Label, CheckBox, ButtonControl + добавлена поддержка диалоговых форм + добавлена поддержка двойного тапа для мобильных устройств + добавлена подсказка по горячим клавишам по нажатию на клавишу "h" * оптимизирован парсер отчетов * изменен алгоритм выделения нескольких объектов - исправлена ошибка с префиксами подключений - исправлена ошибка с изменением имени системной переменной - исправлена ошибка с изменением размера шрифта для TextObject - исправлена ошибка с отображением Padding после загрузки - исправлена ошибка с дублированием Dictionary в готовом отчете - исправлена ошибка с копированием объектов - исправлена ошибка, из-за которой нельзя было двигать компонент через горячие клавиши - исправлена ошибка с потерей connections в отчете при предварительном просмотре ### Open QueryBuilder 4.01 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/open-querybuilder-4.01 Summary: Open QueryBuilder 4.01 Open QueryBuilder 4.01 Компания Fast Reports, Inc., по соглашению с автором оригинальной версии Open QBuilder, объявляет об адаптации этого open source продукта к новейшим версиям Delphi и C++Builder и дальнейшем его развитии. Open QBuilder (OQBuilder) это простой "визуальный строитель запросов". Вы можете использовать OQBuilder в ваших приложениях на Borland Delphi и Borland C++Builder для более простой генерации SQL-запросов. OQBuilder позволяет вам упростить работу с локальными и серверными базами данных через BDE,IBObjects, FIBPlus, ADO, IBX и DB Express (DBX). Все версии Open QBuilder доступны как freeware с полным исходным кодом и примерами. Первая версия QBuidler для Delphi 1&2 была опубликованна в 1996 году. Автор: c 1996-2003 Сергей Орлик. ### Optimum VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/optimum-vcl Summary: Расширенный набор компонентов для построения отчетов с мгновенной обработкой массивов данных Расширенный набор компонентов для построения отчетов с мгновенной обработкой массивов данных Расширенный набор компонентов для построения отчетов с мгновенной обработкой массивов данных Optimum VCL содержит ядро генератора отчетов для VCL с дополнительными возможностями для анализа и экспорта данных в любые форматы Optimum VCL Расширенный набор компонентов для построения отчетов с мгновенной обработкой массивов данных Купить Попробовать Документация Узнать больше Перейти в магазин Транспорты Сохраняйте построенные отчёты в облачные хранилища Google Drive, Next Cloud, Mail, Dropbox всего за пару кликов для удобной доставки документов вашим клиентам. OLAP анализ полученных данных Optimum VCL поставляется с FastCube VCL: библиотекой для оперативного анализа. Позволяет получить сводные таблицы (срезы данных), построить отчеты и графики. Совместимость и интеграция Ultimate VCL позволяет построить экосистему FastReport на Delphi. Отчеты, созданные во всех продуктах в рамках пакета Ultimate, практически полностью совместимы между собой. Полное управление разработкой Этот набор компонентов включает в себя исходные коды FastReport и FastCube. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Плавный переход из других решений Наш генератор отчетов мгновенно преобразует ваши отчеты из Quick Report, Report Builder, Rave Reports в формат FastReport. Отчеты вне шаблонов Огромный выбор объектов для создания любых типов документов: штрих-коды, карты, таблицы, текст и многие другие. Клиент-серверные компоненты Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### PDF документ в отчете - использование нового объекта TfrxPDFView URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/pdf-document-in-report-vcl Summary: С релизом FastReport VCL 2021.3 добавился новый объект TfrxPDFView, который позволяет отображать PDF документов внутри отчета. С релизом FastReport VCL 2021.3 добавился новый объект TfrxPDFView, который позволяет отображать PDF документов внутри отчета. С релизом FastReport VCL 2021.3 добавился новый объект TfrxPDFView, который позволяет отображать PDF документов внутри отчета. FastReport VCL прежде всего – это генератор документов. Основываясь на этом, можно сделать предположение, что отображение или встраивание в отчет документов других форматов – излишне. Но запросы наших пользователей говорят об обратном. Многим приходится сталкиваться с задачей интеграции старых систем с новыми, и такая система может содержать уже готовые документы, которые необходимо подключить к новым отчетам. Проще говоря, встроить и отображать документ другого формата внутри отчета, добавляя к нему новые страницы или поля.  Для таких задач, в FastReport VCL 2021.3 мы добавили новый объект отчета TfrxPDFView. Данный объект использует библиотеку с открытым исходным кодом Pdfium и предназначен для отображения PDF документов внутри отчета. Вы можете собрать библиотеку самостоятельно или использовать готовые сборки из нашего инсталляционного пакета (frx_pdfium.dll и frx_pdfium_64.dll в папке Bin). При самостоятельной сборке необходимо переименовать библиотеку в frx_pdfium.dll для 32-х разрядной системы и в frx_pdfium_64.dll для 64-х разрядной системы. Для компиляции библиотеки вручную понадобится: Visual Studio и Google depot_tools. Более подробно можно посмотреть здесь  и здесь . Как было написано выше, собирать самостоятельно Pdfium не требуется, достаточно использовать уже готовые библиотеки из FastReport VCL, но, если ограничения безопасности в вашей компании требуют сборку всех исходных кодов на вашей стороне, вы можете использовать приведённые выше ссылки. TfrxPDFView может отображать документ как на одной, так и на нескольких страницах, используя возможности движка для разрыва данных. Рассмотрим подробней, как использовать данный объект и какие возможности он имеет. После установки последней версии FastReport VCL 2021.3 данный компонент должен появиться на палитре компонентов Delphi в разделе FastReport VCL. Просто добавьте компонент TfrxPDFObject на форму приложения, чтобы использовать TfrxPDFView в Run-time. Если вы создали новый проект, добавьте компонент TfrxReport и двойным щелчком вызовите дизайнер отчетов. Кликните на PDF Object в панели инструментов дизайнера и создайте объект на бэнде в отчете, как и любой другой объект отчета. Объект создан. После этого должен появиться редактор, в который можно загрузить PDF документ. TfrxPDFView позволяет выводить и многостраничные документы. Для этого у объекта есть специальные настройки. Свойство DetailStretchMode отвечает за отображение содержимого внутри контейнера объекта и может принимать следующие значения: pdOneToOneStrongStretch – страница всегда растягивается, используя размеры объекта. Пропорции не соблюдаются. pdOneToOneNormalize - страница всегда растягивается с соблюдением пропорций оригинальной страницы в PDF документе. pdManyToOneNormalize – позволяет вместить несколько страниц в область объекта, соблюдая пропорции страниц в PDF документе. Отображение многостраничного PDF документа FastReport VCL позволяет выводить PDF документ в виде: одна страница PDF документа – одна страница в отчете, для каждой страницы в PDF документе. Мы уже создали и загрузили PDF документ на бэнд заголовок отчета. Растянем его на всю страницу шаблона отчета, чтобы она выглядела примерно следующим образом: Если сейчас нажать на просмотр отчета, то мы увидим только одну страницу, хотя, загружен многостраничный документ. Для вывода всех страниц в отчете нам нужно выполнить ряд действий. Шаг 1. Включить свойства AllowSplit и Stretched в True, у бэнда на котором располагается объект TfrxPDFView. Чтобы бэнд растягивался и разрывался. Шаг 2. Установить у объекта TfrxPDFView свойство StretchMode в smActualHeight или smMaxHeight, чтобы объект мог растягиваться. Теперь можно запустить построение отчёта и взглянуть на результат. FastReport VCL вывел все страницы PDF документа на страницах отчета. Объект TfrxPDFView имеет и другие свойства. Свойство “Password“ устанавливает пароль, который используется PDF документом. А флаги свойства “DrawOptions” позволяют управлять отображением документа. Дополнительно можно использовать имя файла в качестве источника для объекта TfrxPDFView используя свойство FileLink. И это ещё не всё! С помощью свойства DataLink документы можно загружать даже через http и https протоколы. Теперь FastReport VCL умеет не только генерировать PDF документы, но и отображать их внутри отчета! Tags: VCL, Lazarus, FastReport, PDF, Отчет, Delphi, VCL, Lazarus, FastReport, PDF, Отчет, Delphi ### PDF/X, PDF/A, PDF/E: В чем разница и зачем так много форматов? URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/comparison-pdf-formats Summary: Попробуем разобраться в многообразии PDF форматов, сравниваем плюсы и минусы стандартов для различных отраслей и их потребностей. Попробуем разобраться в многообразии PDF форматов, сравниваем плюсы и минусы стандартов для различных отраслей и их потребностей. Попробуем разобраться в многообразии PDF форматов, сравниваем плюсы и минусы стандартов для различных отраслей и их потребностей. PDF – это универсальный формат файлов, который позволяет пользователям представлять и обмениваться документами независимо от программного обеспечения, оборудования или операционной системы. С течением времени было создано несколько подвидов PDF для удовлетворения различных потребностей разных отраслей. Рассмотрим некоторые из наиболее популярных форматов: PDF/X, PDF/A и PDF/E. 1. PDF/X PDF/X является профессиональным стандартом для обмена графическими данными, который оптимизирован для обеспечения стабильности и предсказуемости при печати. В отличие от обычного PDF, который может содержать любой контент, включая интерактивные элементы и медиафайлы, PDF/X ограничен определенными типами данных, что делает его особенно подходящим для обмена готовыми к печати файлами. Основные характеристики PDF/X: Цветовая модель. Все цвета в документе должны быть определены в заранее известных цветовых пространствах, как правило, в CMYK или спот-цветах. Это устраняет неопределенности, связанные с интерпретацией цветов при печати. Встроенные ресурсы. Все необходимые ресурсы, такие как шрифты и изображения, должны быть встроены в файл. Это обеспечивает, что документ будет выглядеть одинаково на любом оборудовании. Нет интерактивных элементов. Исключены интерактивные элементы такие как комментарии, поля форм, видео и JavaScript. Заданный формат вывода. Документ должен содержать информацию о том, как он будет выглядеть при печати, что включает в себя определенные требования к размещению и прокладке страниц. Подвиды PDF/X: PDF/X-1a: Основан на стандарте PDF 1.3. Цвета определены только как CMYK или спот-цвета. Не поддерживает использование ICC-профилей. PDF/X-3: Поддерживает CMYK, спот-цвета и ICC-профили. Позволяет использовать разные цветовые пространства в одном документе. PDF/X-4: Включает поддержку слоев, прозрачности и других новых функций, доступных в PDF 1.6 и выше. Поддерживает множественные цветовые пространства. 2. PDF/A PDF/A — это подмножество формата PDF, разработанное с учетом потребностей в долгосрочном хранении электронных документов. В отличие от стандартного PDF, PDF/A устраняет компоненты, которые могут вызвать проблемы с изменением вида документа в течение времени, делая его идеальным для архивации. Основные характеристики PDF/A : Встроенные ресурсы . Все ресурсы, необходимые для корректного отображения документа (например, шрифты, изображения), должны быть встроены в файл. Отсутствие интерактивности . Запрещены интерактивные элементы, такие как JavaScript, аудио, видео и исполняемые файлы. Стабильность цвета . В документе должна использоваться стабильная цветовая модель для обеспечения долгосрочной консистентности отображения. Запрет на внешние зависимости . Не допускается ссылаться на внешние ресурсы, которые могут измениться или исчезнуть со временем. Подвиды PDF/A : PDF/A-1: Основан на стандарте PDF 1.4. Подразделяется на две части: PDF/A-1a для полного соответствия, включая структурные теги для доступности и PDF/A-1b для базового соответствия визуальному воспроизведению. PDF/A-2: Основан на стандарте PDF 1.7. Включает улучшенную поддержку встроенных аннотаций, слоев, прозрачности и сжатия. Также имеет разделения на уровни соответствия: PDF/A-2a, PDF/A-2b, PDF/A-2u. PDF/A-3: Расширяет PDF/A-2, позволяя встроить файлы любого формата (включая, например, XML, CSV или CAD-файлы). Также имеет разделения на уровни соответствия: PDF/A-3a, PDF/A-3b, PDF/A-3u. 3. PDF/E PDF/E — это подмножество формата PDF, созданное специально для профессионалов в области инженерии, архитектуры и строительства. Этот стандарт призван удовлетворить потребности в обмене, просмотре и печати динамических технических документов, включая схемы, чертежи и 3D-графику. Основные характеристики PDF/E : Поддержка сложной графики . Включая слои, прозрачность, трехмерные модели и интерактивные элементы. Метаданные . Расширенные метаданные для улучшенного поиска и управления содержимым документа. Точная геометрия . Для точного воспроизведения геометрических объектов, таких как линии, кривые и поверхности. Встроенные файлы . Возможность включать связанные или исходные файлы, такие как спецификации или CAD-данные. Зачем так много форматов? Различные отрасли имеют разные потребности. Создание специализированных подвидов PDF позволяет удовлетворять эти потребности без необходимости создания полностью нового стандарта. Эти профили обеспечивают стандартизацию, предсказуемость и надежность для конкретных применений. Есть ли эти форматы в FastReport .NET? FastReport .NET имеет большинство форматов экспорта, отсутствует только PDF/E. Данные форматы можно использовать как в дизайнере, так и в коде приложения. Для того, чтобы выбрать нужный формат в дизайнере, вам необходимо нажать “Сохранить” и кликнуть на “PDF формат”. После заходим во вкладку “Настройки” и выбираем нужный нам формат. На выходе мы получим необходимый нам файл с нужным форматом. Для того, чтобы экспортировать в определенный формат, необходимо создать приложение, подключить пакет FastReport и написать нужный нам код. Ниже приведен пример, как сохранить PDF в формате PDF/A. ``` Report report = new Report(); report.Load("ПутьКВашемуОтчету.frx"); // Настройка экспорта в PDF PDFExport pdfExport = new PDFExport(); // Для экспорта в формат PDF/A pdfExport.PdfCompliance=PDFExport.PdfStandard.PdfA_2a; // Вы можете выбрать нужный уровень соответствия report.Prepare(); report.Export(pdfExport, "ВыходнойПуть.pdf"); ``` Заключение Хотя существует множество подвидов PDF, каждый из них был разработан с определенной целью и для удовлетворения потребностей определенной отрасли. Выбор исключительно за вами, какой формат и под какие цели вам нужен. Tags: .NET, Экспорты, FastReport, PDF ### Pharmacode в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/barcode-pharmacode-net Summary: Pharmacode - вид штрих-кода, который может быть напечатан разными цветами. Используя FastReport .NET можно создавать их в своих отчетах. Посмотрите, как это сделать. Pharmacode - вид штрих-кода, который может быть напечатан разными цветами. Используя FastReport .NET можно создавать их в своих отчетах. Посмотрите, как это сделать. Pharmacode - вид штрих-кода, который может быть напечатан разными цветами. Используя FastReport .NET можно создавать их в своих отчетах. Посмотрите, как это сделать. В FastReport.Net появился новый вид штрих-кода – Pharmacode. Из названия можно догадаться, что он имеет отношение к фармацевтике. Pharmacode -  двоичный код, который был разработан немецкой компанией LAETUS GMBH специально для фармацевтических упаковок. Этот код широко применяется фармацевтической промышленности как система контроля упаковки продукции. В рамках автоматизированной системы упаковки, Pharmacode позволяет легко сканировать и регистрировать фармацевтические поставки с использованием универсальных идентификаторов. Также, с помощью сканеров легко определить была ли партия препаратов перемешана с другой. Штрих-код Pharmacode используется в фармацевтической промышленности в качестве части их системы управления упаковкой и разработан специально для гарантии прочтения, несмотря на возможные опечатки. Также, для гарантии, что остальная часть упаковки, кроме кода, напечатана правильно, Pharmacode могут быть напечатаны в нескольких цветах, в отличие от штрих-кодов, предназначенных для чтения с помощью лазера или эмуляции лазера. Это возможно потому, что Pharmacode сканируется специальными сканерами белого цвета LAETUS. Это делает Pharmacode очень практичным форматом для печати на упаковке или документах, не содержащих черных чернил. Как выше было отмечено, Pharmacode может быть напечатан разными цветами. Причем и сам код, и цвет фона могут быть отличными от белого и черного. Существует специальные спецификации сочетаний цвета кода и фона, применяемые в зависимости от типа сканера для чтения. Например, стандартные черно-белые сканеры воспринимают только контрастные код и фон, а специальные сканеры, распознающие цвет, не имеют жестких ограничений. В отличие от других 1D штрих-кодов, Pharmacode хранит данные в двоичной системе, а не десятичной. Кроме того, Pharmacode может представлять только единичные целые числа от 3 до 131070. Минимальное количество линий равно 2 для числа 3, а максимальное значение равно 16 для 131070.  Pharmacode читается справа налево, что делает Pharmacode уникальным среди других линейных штрих-кодов, которые имеют старт, стоп символ. Если читать код слева направо получится совсем другая последовательность чисел. Стандарт Pharmacode регламентируется разработчиком LAETUS и описан в документе PharmaCode Guide. Вот пример Pharmacode: FastReport.Net позволяет вам создавать такие коды в своих отчетах. Вы можете разработать дизайн упаковки в генераторе сразу же со штрих-кодом. Чтобы добавить код в свой отчет используем боковую панель инструментов. А именно компонент Barcode: Размещаем штрих-код на странице отчета. Для его редактирования необходимо сделать двойной клик по добавленному компоненту: В качестве значения кода можно ввести числовую последовательность, задать функцию, переменную отчета, значение из базы данных. В свойствах штрих-кода можно изменить промежуток между линиями (WideBarRatio), высоту кода (Height), отображение цифр (ShowText). Но самое главное – вы можете задать цвет кода и цвет фона. Чтобы задать цвет фона кода используйте свойство Fill -> Color, а для изменения цвета кода – Barcode -> Color: Таким образом можно установить любое сочетание цвета фона и цвета кода. Однако, следует все-таки придерживаться стандарта сочетания цветов для Pharmacode: Таким образом, количество доступных в FastReport.Net форматов штрих-кодов увеличилось до 25. Что охватывает все современные виды штрих-кодов и расширяет возможности применения генератора отчетов в фармацевтической отрасли. Tags: .NET, FastReport, Штрихкод, .NET, FastReport, Штрихкод ### Postgres Professional подтвердили совместимость с продуктами Фаст Репортс URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-postgresprofessional Summary: С 4 мая последние версии всех продуктов линейки FastReport публично совместимы с системой управления базами данных Postgres Professionak С 4 мая последние версии всех продуктов линейки FastReport публично совместимы с системой управления базами данных Postgres Professionak 4 мая были завершены испытания совместимости с системой управления базами данных Postgres Professional . Пройденное тестирование прошло успешно. Postgres Professional была основана в 2015 г. и на данный момент является важным российским разработчиком СУБД. Компания развивает линейку коммерческих продуктов, созданных на основе открытой свободной СУБД PostgreSQL. Наиболее распространенным в мире зарубежным решением того же класса, что и PostgreSQL с его производными, выступает СУБД Oracle Database. Продукты Postgres Professional включены в реестр российского ПО при Минцифры. В условиях срочной необходимости замены СУБД и средств создания отчётности по базам важна уверенность во вводимых решениях и их полной совместимости. Поэтому последние версии продуктов FastReport .NET , FastReport Mono , FastReport Open Source , FastReport Core, FastReport for DBA, МоиОтчеты Облако и МоиОтчеты Корпоративный сервер официально совместимы с Postgres Pro. ### PowerPack для FastReport 2.47 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/powerpack-fastreport-2.47 Summary: PowerPack для FastReport 2.47 PowerPack для FastReport 2.47 Дополнительные компоненты для FastReport. Могут быть установлены в Delphi 5-7, CB4-6. Включают: !!! Импорт из MS Word, MS Excel, QR DB engines for IBO, ADO, Advantage, NativeDB, Sybase, DAO, DBISAM, DOA, FlashFiler, FreeIB, IB_Objects, Oracle (OCI), SQLDirect  Add-on components for FastReport designer and report engine Экспорт в RTF, XLS, HTM, BMP, JPG, GIF ### QR код с рисунком URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/create-qr-code-picture Summary: Чтобы акцентировать внимание клиента, порой нужен QR код, украшенный логотипом компании. Ведь такой код с рисунком воспринимается совсем по-другому. Чтобы акцентировать внимание клиента, порой нужен QR код, украшенный логотипом компании. Ведь такой код с рисунком воспринимается совсем по-другому. Чтобы акцентировать внимание клиента, порой нужен QR код, украшенный логотипом компании. Ведь такой код с рисунком воспринимается совсем по-другому. Ни для кого уже не в новинку увидеть на упаковке товара пиксельный QR штрих-код. Хоть он и сложнее обычного штрих-кода с полосками, но несомненно более надежный. В технологию QR кодов заложена избыточность (дублирование информации) и контрольная сумма. Поэтому, даже при 30 процентном повреждении кода, он может быть прочитан. А контрольная сумма гарантирует, что он прочитан правильно. Такой запас надежности кода позволяет считывать его различным мобильным устройствам, с камерами низкого разрешения или при плохом освещении (падающие тени). В связи с тем, что разрешение современных камер на мобильных устройствах достаточно высоко, избыточность кода уже не так актуальна, поэтому в моду вошло размещение изображения внутри кода. Как правило это логотип компании. Но это может быть и небольшой текст. Например, URL сайта, зашифрованный в этом коде. Это позволит узнать содержимое кода, без сканера (смартфона). Обычно изображения или текст размещают в центре кода, для акцентирования внимания. QR код, украшенный логотипом воспринимается совсем по-другому. Он привлекает внимание. Картинка не включается в состав кода, ее накладывают сверху уже после формирования. Главное условие – изображение может перекрывать до 30% кода, не более. FastReport .NET обладает широким ассортиментов штрих-кодов. Конечно, среди них есть и QR код. Давайте рассмотрим пример. Создадим пустой отчет и добавим на страницу отчета компонент Barcode(Штрих-код) типа QR Code. Значение кода: www.fast-report.com . А теперь создадим объект Picture и загрузим в него картинку с логотипом: Уменьшим его размер и поместим в центр QR кода: Попробуем прочитать этот код сканером на смартфоне. Ничего не выходит. Но почему, ведь изображение не перекрывает код более чем на 30%? Дело в том, что QR код имеет настройку коррекции ошибок – это степень избыточности кода. По умолчанию она установлена в минимальное значение. Выберите значение H для этого параметра. Код изменился. Также изменился и размер кода. Поэтому нужно отцентрировать изображение логотипа на нем. Если у вас не получается поместить изображение точно в центр с помощью мыши, попробуйте зажать клавишу Ctrl и стрелками на клавиатуре переместите его в нужном направлении. Попробуем теперь прочитать код сканером: Теперь код прочитался моментально. А вот пример с текстом поверх QR кода: И он тоже работает без проблем. Хотя брендирование QR кодов ухудшает устойчивость к повреждению, это направление все больше и больше набирает популярность. Ведь это стильно и привлекательно. Более подробную информацию об использовании QR кода в FastReport.Net вы можете получить в статье. Tags: .NET, FastReport, Штрихкод, QR код ### RAD Studio Reporting и FastReport URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/webinar-rad-studio-2012 Summary: RAD Studio Reporting и FastReport RAD Studio Reporting и FastReport Присоединяйтесь к нашему вебинару!  Обсуждаемые темы:  • FastReport RAD Edition - что это такое и как его использовать;  • Миграция отчетов из QuickReport и Rave Reports в FastReport;  • Введение в анализ данных и презентация FastCube.  Все зарегистрированные пользователи Delphi, C + + Builder и RAD Studio XE2, которые примут участие в вебинаре, получат бесплатную копию FastCube Embarcadero Edition! (если вы не получили её ранее). Вебинар будет проводиться на английском языке.  Дата проведения:  7  февраля, 2012 в  18:00 ,  23:00  и  8  февраля в  5:00  утра (MSK). ### Reporting FMX URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/reporting-fmx Summary: Кроссплатформенный набор FMX-компонентов для создания документов на базе Embarcadero FireMonkey Кроссплатформенный набор FMX-компонентов для создания документов на базе Embarcadero FireMonkey Кроссплатформенный набор FMX-компонентов для создания отчётов и документов на базе среды разработки Embarcadero FireMonkey Reporting FMX Кроссплатформенный набор FMX-компонентов для создания документов на базе Embarcadero FireMonkey Купить Попробовать Документация Узнать больше Перейти в магазин Множество компонентов Для построения отчетов в дизайнере доступны разнообразные элементы: от текста и изображений до математических формул и 3D-диаграмм. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Безопасность Защита ваших шаблонов и отчётов с помощью надежного шифрования данных. Адаптируйте все исходные коды под свои решения. Исходный код Этот набор компонентов включает в себя исходные коды FastReport. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Гибкая и открытая архитектура Если функционала FastReport для вас недостаточно, вы можете улучшить его, создав и подключив собственные объекты (фильтры экспорта, базы данных) к своим отчетам. Графическое ядро Для создания графических элементов, отрисовки текста и управления графических изображений могут быть использованы GDI+, D2D и конечно же Quarz. Ultimate VCL Узнать больше о Ultimate Отчет с двумя уровнями данных (master-detail) в Delphi/Lazarus на примере FastReport VCL / FMX Мощная возможность FastReport "Многоуровневые отчёты" позволяет собирать отчёты из нескольких таблиц. Мощная возможность FastReport "Многоуровневые отчёты" позволяет собирать отчёты из нескольких таблиц. FastReport поддерживает вложенность до 6 уровней, используя объект "Вложенный отчет" Установка и использование FastReport FMX 2.8 для FmxLinux Как установить и использовать FastReport FMX 2 под Linux. Как установить и использовать FastReport FMX 2 под Linux. Быстрое начало работы. Семейство генераторов отчетов FastReport - быстрый обзор Рассказываем про FastReport .NET, его возможности и преимущества. Рассказываем про FastReport .NET, его возможности и преимущества. Остались вопросы? Связаться с менеджером ### Reporting FMX (FastReport FMX) URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/faqs/reporting-fmx Summary: Узнайте все о Reporting FMX, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Узнайте все о Reporting FMX, его функциональных возможностях и способах оптимизации ваших решений для создания отчетов. Совместим ли продукт с фреймворком UniGUI? Да наш продукт совместим с фреймворком UniGUI. Есть ли поддержка macOS? Да, есть поддержка Windows, macOS и Linux Какие версии IDE поддерживает продукт FastReport FMX? Начиная с версии Delphi XE2 до актуальной версии. Есть ли поддержка Linux? Поддержка есть c фреймворком FMXLinux. Подробнее смотрите статью **[Установка и использование FastReport FMX 2.8 для FmxLinux](/blogs/install-fmx-linux/)** Есть ли поддержка Lazarus? Фреймворк FMX не поддерживает Lazarus. Если вам необходимо создавать отчеты в Lazarus, то наш продукт FastReport VCL в виде пака **[Reporting Lazarus](/products/reporting-lazarus)** вам идеально подойдёт. Совместим ли продукт с фреймворком FMXLinux? Продукт FastReport FMX поддерживает фреймворк FMXLinux. Подробнее смотрите статью: **[Установка и использование FastReport FMX 2.8 для FmxLinux](/blogs/install-fmx-linux/)** ### Reporting Lazarus URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/reporting-lazarus Summary: Универсальный LCL-набор компонентов с исходными кодами для генерации отчетов и документов на Lazarus для Linux и Windows Универсальный LCL-набор компонентов с исходными кодами для генерации отчетов и документов на Lazarus для Linux и Windows Универсальный LCL-набор компонентов с исходными кодами для генерации отчетов и документов на Lazarus для Linux и Windows Reporting Lazarus Универсальный LCL-набор компонентов с исходными кодами для генерации отчетов и документов на Lazarus для Linux и Windows Купить Попробовать Документация Узнать больше Перейти в магазин Множество компонентов Для построения отчетов в дизайнере доступны разнообразные элементы: от текста и изображений до таблиц и интерактивных карт. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Безопасность Защита ваших шаблонов и отчётов с помощью надежного шифрования данных. Адаптируйте все исходные коды под свои решения. Гибкая и открытая архитектура Если функционала FastReport для вас недостаточно, вы можете улучшить его, создав и подключив собственные объекты (фильтры экспорта, базы данных) к своим отчетам. Графическое ядро Для создания графических элементов, отрисовки текста и управления графических изображений используются GDI и GTK. Исходный код Этот набор компонентов включает в себя исходные коды FastReport. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Ultimate VCL Узнать больше о Ultimate FastReport VCL: как 25 лет инноваций изменили подход к отчётности в VCL-приложениях FastReport VCL — это инструмент для генерации отчетов, который за более чем четверть века стал неотъемлемой частью арсенала разработчиков на платформе Delphi. С момента своего появления в конце 1990-х годов продукт эволюционировал от простого дизайнера шаблонов к комплексной системе с поддержкой интерактивных элементов, векторной графики и интеграции с современными IDE. Мы решили оглянуться назад, чтобы показать, как менялись технологии отчетности, а также проследить ключевые этапы развития продукта в каждой версии. Мы решили оглянуться назад, чтобы показать, как менялись технологии отчетности, а также проследить ключевые этапы развития FastReport VCL в каждой версии. Локализация и смена языков в FastReport VCL В FastReport VCL начиная с версии 2023.2 был значительно улучшен механизм локализации – теперь для перевода FastReport на другие языки – больше не требуется перекомпиляция. FastReport VCL поддерживает 40 языков для локализации интерфейса и позволяет изменять язык на лету через меню или код, без перекомпиляции. Как настроить WSL 2 для работы с FastReport и FastCube В этой статье вы узнаете, как использовать возможности WSL в связке с FastReport и FastCube для оптимизации работы с данными и создания эффективных отчётов. В этой статье попробуем вместе разобраться, как настроить WSL 2 для работы с компонентами FastReport и FastCube в Lazarus для Linux. Остались вопросы? Связаться с менеджером ### Reporting VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/reporting-vcl Summary: Набор VCL-компонентов с полными исходными кодами для создания отчётов и документов Набор VCL-компонентов с полными исходными кодами для создания отчётов и документов Набор VCL-компонентов с полными исходными кодами для создания отчётов из визуального дизайнера с экспортом в различные форматы данных Reporting VCL Набор VCL-компонентов с полными исходными кодами для создания отчётов и документов Купить Попробовать Документация Перейти в магазин Узнать больше Множество компонентов Для построения отчетов в дизайнере доступны разнообразные элементы: от текста и изображений до математических формул и 3D-диаграмм. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Совместимость и интеграция Reporting VCL является частью единой экосистемы FastReport на Delphi. Отчёты, созданные в Lazarus решении, будут работать в Reporting VCL и наоборот. Плавный переход из других решений Наш генератор отчетов мгновенно преобразует ваши отчеты из Quick Report, Report Builder, Rave Reports в формат FastReport. Гибкая и открытая архитектура Если функционала FastReport для вас недостаточно, вы можете улучшить его, создав и подключив собственные объекты (фильтры экспорта, базы данных) к своим отчетам. System.Drawing (GDI) Для создания графических элементов, отрисовки текста и управления графических изображений используется уже привычный System.Drawing с графическими функциями GDI. Ultimate VCL Узнать больше о Ultimate Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### Summing up. Rewarding our partners URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/summing-up-rewarding-our-partners Summary: We would also like to acknowledge sales growth in the UK of 52% and the Czech Republic of 69%. We would also like to acknowledge sales growth in the UK of 52% and the Czech Republic of 69%. Dear Friends! We are going to reward our best dealers and present them with personal certificates for their good work and special contributions in FastReport product promotion. The key results and awards given are:  Germany. We have awarded a certificate and "Partner of the Year" status to  Christian Haimerl  and  McLicense   for their active promotion of our products and high sales levels. Japan! This is exceptional! The  Ag-Tech  company has localized FastReport.Net and FastReport VCL to Japan, and sales have grown by 1973% Brazil. Very good performance. Growth is low at 8% but we thank  our dealers  from Brazil for the stable sales and technical support. Netherlands.  Growth is 73% for the year 2011. We would like to mention in a special way  Isah , our technical partner in Holland. Poland. Rising sales  of 73%. Moreover, we have opened a training center for FastReport customers. An award goes to  Softkey.pl  and  BSC Polska . China. Very good work by resellers in this country. We thank our partners for their hard work and marketing campaigns! Awards go to  Qast Software Group ,  Panyan Tehnology (Component CN) ,  Chongqing Huidu Technology (Evget) . Italy. Many thanks to  Andrea Urbani   for his work and product technical support. Andrea is our friend and very good partner. We would also like to acknowledge sales growth in the UK of 52% and the Czech Republic of 69%. We thank our partners from other countries and give them “Partners of Year 2011” status : Component Source  (UK and World),  Jan Kadlecek  (Czech Republic),  Olivier Pennec  (France),  Danysoft  (Spain),  Linksoft  (Taiwan). Michael Philippenko rewards Jan Kadlecek ### test URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/testpage Here you can learn how .NET products will be formed starting on June 1, 2024. Instead of the usual product and edition, we suggest choosing the set of components (pack) that is right for you.  Ultimate WEB Avalonia WinForms WPF Mono Open Source The composition of component sets Report Designer ✓ ✓ ✓ ✓ ✓ ✓ ✓ Report Viewer ✓ ✓ ✓ ✓ ✓ ✓ ✓ Saving and uploading templates to  FastReport Cloud ✓ ✓ ✓ ✓ ✓ ✓ ✓ Saving prepared reports to the cloud ✓ ✓ ✓ ✓ ✓ ✓ Report script ✓ ✓ ✓ ✓ ✓ ✓ ✓ Print support ✓ ✓ ✓ ✓ ✓ ✓ In-report data sources ✓ ✓ ✓ ✓ ✓ ✓ ✓ In-report dialogue forms ✓ ✓ ✓ ✓ ✓ ✓ Export the prepared report to other formats ✓ ✓ ✓ ✓ ✓ ✓ Partly* Advanced report objects : Table, Matrix, AdvMatrix, Barcode, Charts, Maps, RichText, Checkbox, Zip code, CellularText, Digital signature ✓ ✓ ✓ ✓ ✓ ✓ Partly** Report objects : Text, Picture, Shape, Line, Subreport ✓ ✓ ✓ ✓ ✓ ✓ ✓ System.Drawing (GDI) ✓ ✓ ✓ ✓ ✓ ✓ ✓ FastReport.Drawing (Skia) ✓ ✓ ✓ Blazor Server ✓ ✓ Blazor Webassembly (WASM) ✓ ✓ ASP.NET components (WebReport) ✓ ✓ ✓ WinForms components  ✓ ✓ WEB components ✓ ✓ ✓ Avalonia components ✓ ✓ WPF components ✓ ✓ Mono components ✓ ✓ OLAP components ✓ Business Graphics components ✓ Online designer  included ✓ ✓ Source code ✓ Operating systems Windows ✓ ✓ ✓ ✓ ✓ ✓ ✓ macOS ✓ ✓ ✓ ✓ Linux ✓ ✓ ✓ ✓ ✓ Pricing policy Single $ 1 499 $ 799 $ 599 $ 499 $ 499 $ 499 Team $ 4 499 $ 2 399 $ 1 799 $ 1 499 $ 1 499 $ 1 499 Site $ 22 499 $ 11 999 $ 8 999 $ 7 499 $ 7 499 $ 7 499 *Only PDFSimple, Images (Jpeg, PNG, BMP, GIF, TIFF, EMF), HTML, HTML5 (layered) are supported **Only Table, Matrix, Barcode, RichText, Checkbox, Zip code, CellularText are supported УПД Счет-фактура Товарная накладная УПД Счет-фактура Товарная накладная Демо для C# Демо для Angular Демо для Java Встречайте новый релиз 2025.2 для вариантов поставок FastReport .NET: WinForms, WPF, Avalonia, Mono, WEB, Ultimate. В этом обновлении вас ждёт поддержка .NET 9, библиотека для выполнения скриптов на языке C#, плагин импорта документов из Word, коннектор к Apache Ignite, улучшения дизайнера и экспортов, а также новые функции в WebReport. Не упустите возможность обновить FastReport .NET и расширить свой функционал! Читать статью Мы в социальных сетях Свяжитесь с нами sales@fastreport.ru 8-800-551-75-80 Полезные ссылки Форум Наш блог Видео уроки Написать нам Читать статью ### Ultimate .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/ultimate-net Summary: Набор инструментов для создания инфраструктуры отчетов для бизнес-приложений в .NET и для кроссплатформенной разработки. Набор инструментов для создания инфраструктуры отчетов для бизнес-приложений в .NET и для кроссплатформенной разработки. Набор инструментов для создания инфраструктуры отчетов в бизнес-приложениях в .NET Максимальный набор для создания инфраструктуры отчетов с дополнительными инструментами для онлайн дизайна шаблонов, анализа данных FastReport .NET Ultimate Набор инструментов для создания инфраструктуры отчетов для бизнес-приложений в .NET и для кроссплатформенной разработки. Купить Попробовать Документация Ultimate .NET - это универсальное решение для создания любых отчетов, которые необходимы для вашего бизнеса. Будь то финансовые отчеты, детализация продаж, каталоги продукции или меню ресторана - с Ultimate .NET вы легко справитесь с этой задачей. Благодаря гибким инструментам и простому в использовании визуальному редактору, вы сможете создавать отчеты любой сложности, добавлять в них графики, формулы, шаблоны и даже поддерживать цветовые профили для профессионального вида. Хотите сэкономить время? Используйте готовые шаблоны отчетов из нашего [**МоиОтчеты Магазина**](/products/store). В каталоге вы найдете шаблоны как в формате шаблонов, так и в PDF, что позволит вам быстро создать нужный отчет. Узнать больше Встраиваемость в проекты Установите необходимые пакеты из NuGet репозитория, либо загрузите пакеты с нашего сайта и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Высокая производительность Наши компоненты прошли множество этапов тестирования чтобы действительно стабильно работать с большими объемами данных. Многостраничный отчет будет обработан за пару мгновений. Полное управление разработкой Этот набор компонентов включает в себя исходные коды FastReport. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Совместимость и интеграция Ultimate .NET позволяет построить экосистему FastReport на C#. Отчеты, созданные во всех продуктах в рамках пакета Ultimate, полностью совместимы между собой. Плавный переход из других решений Наш генератор отчетов мгновенно преобразует ваши отчеты из List&Label, DevExpress, Microsoft Reporting Services (RDL, RDLC), Crystal Reports, StimulSoft, Jasper Library в формат FastReport. Кроссплатформенная разработка Отчеты прямо в браузере .NET Core демо Online Designer демо Blazor WASM демо Blazor Server демо Узнать больше Как из FastReport .NET экспортировать отчет в DXF DXF (Drawing Exchange Format) — это открытый формат обмена графическими данными, разработанный компанией Autodesk для хранения и передачи двумерных и трехмерных чертежей. Благодаря широкой поддержке со стороны различных CAD-систем, DXF стал одним из наиболее распространенных форматов для обмена инженерной и технической документацией между приложениями. В этой статье рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Как из FastReport .NET экспортировать отчет в PostScript FastReport .NET поддерживает экспорт отчетов во множество популярных форматов, таких как PDF, Excel, Word и другие. Однако для задач профессиональной полиграфии, работы с плоттерами или специализированным печатным оборудованием часто требуется формат PostScript (.ps). В этой статье мы на примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. В этой статье мы на простом примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. Как настроить Content Security Policy для отчетов FastReport .NET WEB Content Security Policy (CSP) — ключевой инструмент защиты веб‑приложений от XSS‑атак, но его интеграция с отчётными системами нередко сопряжена со сложностями. В новых версиях FastReport .NET WEB архитектура клиентской части существенно переработана — это упрощает соблюдение строгой CSP без потери функциональности отчётов. В статье разберём, как грамотно настроить CSP для отчётов FastReport и учесть типичные риски. Узнайте, как настроить Content Security Policy для отчётов FastReport .NET WEB: обзор директив и значений CSP, изменения в архитектуре FastReport, типичные сценарии обхода и способы защиты. Остались вопросы? Связаться с менеджером ### Ultimate VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/ultimate-vcl Summary: Набор инструментов для создания инфраструктуры отчетов для бизнес-приложений в Delphi и для кроссплатформенной разработки Набор инструментов для создания инфраструктуры отчетов для бизнес-приложений в Delphi и для кроссплатформенной разработки Кроссплатформенный набор инструментов для разработки отчетов в Delphi Максимальный набор для создания инфраструктуры отчетов с дополнительными инструментами для анализа данных «на лету» Ultimate VCL Набор инструментов для создания инфраструктуры отчетов для бизнес-приложений в Delphi и для кроссплатформенной разработки Купить Попробовать Документация Узнать больше Перейти в магазин Транспорты Сохраняйте построенные отчёты в облачные хранилища Google Drive, Next Cloud, Box, Dropbox всего за пару кликов для удобной доставки документов вашим клиентам. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Клиент-серверные компоненты Стройте отчеты прямо в WEB с использованием стандартных компонентов FastReport VCL без необходимости прямого подключения клиента к серверу базы данных. Гибкая и открытая архитектура Если функционала FastReport недостаточно, вы можете улучшить его, создав и подключив собственные объекты (фильтры экспорта, базы данных) к своим отчетам. Исходный код Этот набор компонентов включает в себя исходные коды FastReport. Максимальное удобство для компаний, желающих адаптировать код под свои нужды. Полезные дополнения В Ultimate входит система для многомерного анализа FastCube для VCL и FMX и плагин МоиОтчеты Конвертер для экспорта отчетов во все возможные форматы документов. Клиент-серверные компоненты Кроссплатформенная разработка Использование водяных знаков в FastReport VCL В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Подробный обзор возможностей библиотеки FastGrid Пользователи FastReport VCL Ultimate наверно уже заметили, что в инсталлере появились 2 новых пункта: FastEditors VCL и FastGrid VCL. Также, в Демоцентре появилось новое демо – FastGrid VCL Demo. Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье! Новая система валидации отчетов в FastReport VCL В технической поддержке нас часто просили добавить функционал для автоматической проверки отчетов, и вот в релизе 2026.2.0 мы это сделали. В меню «Файл» в дизайнере отчетов появились пункты «Валидировать» (Validate) и «Настройки правил валидации» (Validation Rule Settings). Теперь можно не только проверять отчеты, но и управлять набором правилам, включая собственные. В этой статье мы расскажем, как работает проверка отчетов, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями. Остались вопросы? Связаться с менеджером ### WEB URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/web Summary: Кроссплатформенный набор компонентов для генерации отчетов в браузере и их печати с помощью ASP.NET и .NET Core Кроссплатформенный набор компонентов для генерации отчетов в браузере и их печати с помощью ASP.NET и .NET Core Кроссплатформенный набор компонентов для генерации отчетов и документов в браузере и их печати с помощью ASP.NET и .NET Core FastReport .NET WEB Кроссплатформенный набор компонентов для генерации отчетов в браузере и их печати с помощью ASP.NET и .NET Core Купить Попробовать Документация FastReport .NET WEB это универсальный набор компонентов для работы с отчетами на различных платформах и операционных системах. Разрабатывайте свои документы прямо в браузере без установки дополнительного ПО в ваш компьютер. В состав набора входят все необходимые инструменты отчетности для лёгкой интеграции с вашим проектом на основе ASP.NET, ASP.NET MVC, .NET Core, Angular, React, Vue, Blazor Server, Blazor WASM. Узнать больше Встраиваемость в проекты Установите необходимые пакеты из NuGet репозитория, либо загрузите пакеты с нашего сайта и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Отчеты прямо в браузере При использовании модели размещения Blazor Server приложение выполняется на сервере из приложения ASP.NET Core. Стройте отчеты с помощью Blazor Server и получайте результат прямо в браузере. Экономия ресурсов сервера Приложения Blazor WebAssembly (WASM) запускаются на стороне клиента в интерфейсе браузера. А значит вам не придётся разворачивать целый сервер для своих клиентов. Высокая производительность Компоненты прошли множество этапов тестирования чтобы действительно стабильно работать с большими объемами данных. Ваш многостраничный отчет будет обработан за пару мгновений. Поддержка Razor Pages Razor Pages делает создание кодов сценариев для страниц проще и эффективнее чем с контроллерами и представлениями. Razor движок определяет интерфейс, а логика страниц обрабатывается на C#. Интерактивные отчеты В своих проектах вы можете использовать диалоговые формы, Drill-Down отчеты, наследовать шаблоны документов, создавать редактируемые PDF анкеты и многое другое. Ultimate .NET Узнать больше о Ultimate .NET Core Online Designer Blazor WASM Blazor Server Узнать больше Как из FastReport .NET экспортировать отчет в DXF DXF (Drawing Exchange Format) — это открытый формат обмена графическими данными, разработанный компанией Autodesk для хранения и передачи двумерных и трехмерных чертежей. Благодаря широкой поддержке со стороны различных CAD-систем, DXF стал одним из наиболее распространенных форматов для обмена инженерной и технической документацией между приложениями. В этой статье рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Как из FastReport .NET экспортировать отчет в PostScript FastReport .NET поддерживает экспорт отчетов во множество популярных форматов, таких как PDF, Excel, Word и другие. Однако для задач профессиональной полиграфии, работы с плоттерами или специализированным печатным оборудованием часто требуется формат PostScript (.ps). В этой статье мы на примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. В этой статье мы на простом примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. Как настроить Content Security Policy для отчетов FastReport .NET WEB Content Security Policy (CSP) — ключевой инструмент защиты веб‑приложений от XSS‑атак, но его интеграция с отчётными системами нередко сопряжена со сложностями. В новых версиях FastReport .NET WEB архитектура клиентской части существенно переработана — это упрощает соблюдение строгой CSP без потери функциональности отчётов. В статье разберём, как грамотно настроить CSP для отчётов FastReport и учесть типичные риски. Узнайте, как настроить Content Security Policy для отчётов FastReport .NET WEB: обзор директив и значений CSP, изменения в архитектуре FastReport, типичные сценарии обхода и способы защиты. Остались вопросы? Связаться с менеджером ### Web-репорты в Lazarus под Linux URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/web-reports-lazarus-linux Summary: Сегодня мы рады сообщить вам о выходе клиент-серверных компонентов для Lazarus . С их помощью можно создать и настроить под свои нужны сервер для удалённого построения и экспорта отчётов, а в роли клиента может выступать как ваша программа, так и Web-браузер. Сегодня мы рады сообщить вам о выходе клиент-серверных компонентов для Lazarus . С их помощью можно создать и настроить под свои нужны сервер для удалённого построения и экспорта отчётов, а в роли клиента может выступать как ваша программа, так и Web-браузер. Сегодня мы рады сообщить вам о выходе клиент-серверных компонентов для Lazarus . С их помощью можно создать и настроить под свои нужны сервер для удалённого построения и экспорта отчётов, а в роли клиента может выступать как ваша программа, так и Web-браузер. До недавнего времени задача генерации отчётов через Web из приложения, написанного на Lazarus, была, скажем так, очень творческой. Сегодня мы рады сообщить вам о выходе клиент-серверных компонентов для Lazarus в бета-тестирование. С их помощью можно создать и настроить под свои нужды сервер для удалённого построения и экспорта отчётов, а в роли клиента может выступать как ваша программа, так и Web-браузер. Клиент-серверные компоненты в VCL FastReport реализованы уже давно, но до этого они не были адаптированы для Lazarus и функционировали только в Rad Studio Delphi и C++Builder. Статья будет полезна не только тем, кто еще ни разу не пользовался ими, но и тем, кто захочет перенести свой FR-сервер в Linux, так как честно описывает как все преимущества, так и недостатки. Также мы встретили ошибку в самом Lazarus и нашли способ её решения. А теперь перейдём к технической стороне вопроса. Клиент-серверные компоненты для отчётности в Lazarus Клиент-серверные компоненты в Lazarus доступны под двумя ОС: Windows и Linux (только GTK2). Они реализованы в пакете « fr6CS_lazarus.lpk » в зависимостях которого указан пакет экспортов, следовательно до его установки требуется установить пакет экспортов, находящийся в папке  « Source/ExportPack ». После установки пакета клиент-серверных компонентов у вас появится новая вкладка «FastReport 6.0 Client/Server», где будет находится 4 компонента: 1. TfrxReportServer – это серверный компонент, сервер отчетов и HTTP-сервер “два в одном”. Самым важным его полем является ConfigFileName , где следует указать путь до xml-файла с настройками. В этом файле можно указать множество настроек, вот лишь самые важные из них: Настройки самого сервера, такие как порт и время ожидания; Настройки движка FR, такие, как например отключение выполнения скриптов; Огромные настройки экспортов; Настройки кэша, такие как время жизни кэш-файлов, место его хранения или его можно вообще отключить; Настройки системы логирования; Настройки подключения к БД. 2. TfrxServerConnection – клиентский компонент, содержащий информацию для удаленного подключения к TfrxReportServer, такую как: хост, порт, количество попыток при ошибке, таймаут и прочее. 3. TfrxReportClient - клиентский компонент, аналог TfrxReport , выполняет запрос отчета на сервере и отображение его на клиенте. Для получения информации о сервере он использует упомянутый компонент TfrxServerConnection. Может получить от сервера построенный отчёт и отобразить или экспортировать его своими силами (на машине клиента). 4. TfrxHTTPClient – клиентский компонент, предназначенный для получения произвольных файлов по протоколу HTTP. Например, он может запросить у сервера уже экспортированные отчёты. Также мы предоставляем 3 демонстрационных приложения: - 1 сервер - сразу вместе с отчётами и базами данных; - 2 клиента - простой и “продвинутый”. “Продвинутым” клиентом вы можете провести нагрузочное многопоточное тестирование нажав кнопку Start: Также хотелось-бы напомнить, что клиентом может быть обычный браузер и генерацию сайта для веб-клиента тоже можно настроить на свой вкус, а демонстрационный сервер уже настроен для веб клиента. “Бутылочное горлышко” GTK2 Lazarus это кроссплатформенная IDE с открытым исходным кодом. Но в этой “бочке меда”, к сожалению, есть и “ложка дёгтя”. Начнём мы с самого неприятного, а именно с Linux сервера. GTK2 имеет одно крайне неприятное свойство: однопоточность . Это означает, что даже если 2 программы будут в бесконечном цикле рисовать фигурки на своих BitMap, то GTK2 будет сужать всё до 1 потока. Следовательно, в сумме эти 2 программы нарисуют меньше фигур, чем рисовала-бы одна программа, ибо часть времени будет потрачена на синхронизацию. Но в данном случае синхронизация организуется без нашего участия. А теперь возьмем, к примеру ситуацию, когда фигурки рисует 1 программа в нескольких потоках (у каждого потока свой локальный BitMap). В данном случае вам придётся создать в коде систему блокировок, ибо мы помним про однопоточность данной библиотеки. Но это должны быть не обычные критические секции, а глобальные критические секции уровня GTK2. И когда один из потоков входит в эту критическую функцию, то даже основная форма зависает, пока он из неё не выйдет. Многопоточность с картинками можно организовать только, найдя аналогичный компонент, реализующий рисование, который независим от GTK2 (для данного примера с изображениями подойдёт, например, Cairo), в нашем же случае другой компонент не подходит. Поэтому часть операций на сервере сужается до 1 потока . И из-за данной особенности, в частности, лучше не использовать диалоги, ибо пока 1 клиент отвечает на диалог, то построение отчётов для других клиентов будет стоять на паузе. Может возникнуть вопрос: «а зачем-же тогда вообще нужен однопоточный сервер?» и будете частично правы, так как это похоже на проблему «бутылочного горлышка» на дорогах, где общая пропускная способность дороги равна пропускной способности дороги в самом её узком месте. Но будете правы лишь отчасти. До одного потока сужается лишь 3 большие операции: загрузка отчётов, построение и экспорт. Приём и передача осуществляется параллельно, а благодаря системе кеширования построенных отчётов в ряде случаев повторное построение и не понадобится. И данное обстоятельство в сумме с мощным сервером сделает эту проблему намного менее заметной. К тому-же это проблема только для Linux (GTK2) ведь в Windows данная проблема отсутствует, а с выходом GTK3 (которая уже поддерживает многопоточность ) в Lazarus она и вовсе исчезнет. Остальные проблемы в разы меньше и по сравнению с этой даже крошечные. Что осталось “за кадром” Небольшая часть функционала была вырезана при портировании, а именно CGI и система авторизации. Как скоро мы их реализуем зависит от реальных запросов на них от наших клиентов. Экспорт в HTML для Lazarus еще далёк от совершенства, пользоваться веб клиентом можно и нужно, ведь это удобно, но отчёты он будет отображать не совсем идеально. Впрочем, вы можете настроить систему так, чтобы веб клиент получал экспортированные не в HTML отчёты, а допустим в PDF. Ведь большинство современных браузеров отлично могут отображать PDF файлы. Данный формат экспорта у нас реализован весьма качественно, в чем вы можете убедиться лично. Исправление ошибки в очереди сообщений Lazarus 2.0.10  Также для желающих использовать наши новые компоненты в Linux, стоит упомянуть одну важную вещь: мы столкнулись с ошибкой в блокировке очереди сообщений и не могли её обойти. Нам удалось связаться с программистами в Lazarus, они эту проблему уже исправили и в следующей версии Lazarus всё будет стабильно работать. Пока что в версии 2.0.10 и ниже эту ошибку придётся исправлять локально. Это не займет много сил и времени, нужно лишь дописать 3 строчки в один из файлов Lazarus и пересобрать его, а именно: 1. Откройте папку, где расположен Lazarus (на Ubuntu, например, "/usr/share/lazarus/2.0.10" ) 2. Откройте в неё файл ~/lcl/interfaces/gtk2/gtk2msgqueue.pp 3. Найдите процедуру: procedure TGtkMessageQueue.Lock; 4. В этой процедуре найдите строчку: g_main_context_acquire(FMainContext); Данный код не учитывает того, что функция g_main_context_acquire может завершиться безуспешно. Поэтому замените её на: ``` repeat until g_main_context_acquire(FMainContext); ``` То есть вызываем g_main_context_acquire в цикле, пока она не вернет True (не завершится успешно). Предлагаем вам опробовать наши новые компоненты для Lazarus, но хотим напомнить, что это бета-версия и она будет улучшаться по вашим запросам. В случае возникновения ошибок обязательно пишите нам в поддержку. Tags: Delphi, FastReport, Lazarus, Linux, VCL, WebReport ### WinForms URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/winforms Summary: Классический набор компонентов для генерации отчетов и документов в Windows Forms приложениях Классический набор компонентов для генерации отчетов и документов в Windows Forms приложениях Классический набор компонентов для генерации отчетов и документов в Windows Forms приложениях с последующим экспортом данных FastReport .NET WinForms Классический набор компонентов для генерации отчетов и документов в Windows Forms приложениях Купить Попробовать Документация FastReport .NET WinForms – это инструмент для создания отчетов, который позволяет преобразовать любые данные в понятные и привлекательные визуальные материалы. Хотите ли вы создать профессионально оформленную счет-фактуру, подробный финансовый отчет, каталог продукции с богатой цветовой гаммой, меню ресторана, детализацию продаж, анкету с удобными электронными формами, счет за коммунальные услуги, авиабилет или отчет о предоставляемых услугах – FastReport .NET WinForms справится с задачей. Используйте готовые шаблоны унифицированных форм, доступные в формате шаблонов или PDF в нашем каталоге [**МоиОтчеты Магазин**](/products/store), чтобы быстро приступить к работе. FastReport .NET WinForms – идеальное решение для тех, кто хочет превратить данные в информативные и визуально привлекательные отчеты. Узнать больше Встраиваемость в проекты Установите необходимый пакет из NuGet репозитория, либо загрузите пакет с нашего сайта на компьютер и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Множество компонентов Для построения отчетов в дизайнере доступны разнообразные элементы: от текста и изображений до математических формул и 3D-диаграмм. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Совместимость и интеграция WinForms является частью единой экосистемы FastReport на C#. Отчёты, созданные в других продуктах, будут работать в WinForms и наоборот. Плавный переход из других решений Наш генератор отчетов мгновенно преобразует ваши отчеты из List&Label, DevExpress, Microsoft Reporting Services (RDL, RDLC), Crystal Reports, StimulSoft, Jasper Library в формат FastReport. System.Drawing (GDI) Для создания графических элементов, отрисовки текста и управления графических изображений используется уже привычный System.Drawing с графическими функциями GDI+. Ultimate .NET Подробности .NET Core Online Designer Blazor WASM Blazor Server Узнать больше Как из FastReport .NET экспортировать отчет в DXF DXF (Drawing Exchange Format) — это открытый формат обмена графическими данными, разработанный компанией Autodesk для хранения и передачи двумерных и трехмерных чертежей. Благодаря широкой поддержке со стороны различных CAD-систем, DXF стал одним из наиболее распространенных форматов для обмена инженерной и технической документацией между приложениями. В этой статье рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Рассмотрим способы экспорта отчета в формат DXF, а также посмотрим, как выглядит полученный результат после открытия файла в CAD-приложении. Как из FastReport .NET экспортировать отчет в PostScript FastReport .NET поддерживает экспорт отчетов во множество популярных форматов, таких как PDF, Excel, Word и другие. Однако для задач профессиональной полиграфии, работы с плоттерами или специализированным печатным оборудованием часто требуется формат PostScript (.ps). В этой статье мы на примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. В этой статье мы на простом примере рассмотрим экспорт отчета FastReport .NET в формат PostScript, разобрав настройку параметров и программную реализацию. Как настроить Content Security Policy для отчетов FastReport .NET WEB Content Security Policy (CSP) — ключевой инструмент защиты веб‑приложений от XSS‑атак, но его интеграция с отчётными системами нередко сопряжена со сложностями. В новых версиях FastReport .NET WEB архитектура клиентской части существенно переработана — это упрощает соблюдение строгой CSP без потери функциональности отчётов. В статье разберём, как грамотно настроить CSP для отчётов FastReport и учесть типичные риски. Узнайте, как настроить Content Security Policy для отчётов FastReport .NET WEB: обзор директив и значений CSP, изменения в архитектуре FastReport, типичные сценарии обхода и способы защиты. Остались вопросы? Связаться с менеджером ### WPF URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/products/wpf Summary: Набор компонентов с высокой производительностью для создания отчетов и документов в WPF проектах Набор компонентов с высокой производительностью для создания отчетов и документов в WPF проектах Высокопроизводительная библиотека поможет в создании отчётов и документов на базе WPF для разработки бизнес-приложений FastReport .NET WPF Набор компонентов с высокой производительностью для создания отчетов и документов в WPF проектах Купить Попробовать Документация С помощью FastReport .NET WPF вы можете легко создавать разнообразные отчеты, начиная от простых счет-фактур и финансовых отчетов до сложных каталогов продуктов с поддержкой цветовых профилей, меню ресторанов, детализированных отчетов о продажах, анкет с электронными формами, счетов за коммунальные услуги, авиабилетов, отчетов об услугах и многого другого. Если у вас есть данные, которые необходимо представить в удобном и наглядном виде, FastReport .NET WPF станет вашим незаменимым инструментом. Воспользуйтесь готовыми шаблонами унифицированных форм, доступными для скачивания в формате шаблонов или PDF в нашем каталоге [**МоиОтчеты Магазин**](/products/store), и приступайте к работе без лишних усилий. Узнать больше Встраиваемость в проекты Установите необходимый пакет из NuGet репозитория, либо загрузите пакет с нашего сайта на компьютер и добавьте в проект необходимые библиотеки. Никаких дополнительных модулей и специальных расширений не требуется. Высокая производительность Наши компоненты прошли множество этапов тестирования чтобы действительно стабильно работать с большими объемами данных. Ваш многостраничный отчет будет обработан за пару мгновений. Быстрый доступ к отчету и структуре данных Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями. Совместимость и интеграция WPF является частью единой экосистемы FastReport на C#. Отчёты, созданные в других продуктах, будут работать в WPF и наоборот. Плавный переход из других решений Наш генератор отчетов мгновенно преобразует ваши отчеты из List&Label, DevExpress, Microsoft Reporting Services (RDL, RDLC), Crystal Reports, StimulSoft, Jasper Library в формат FastReport. Доступная документация Воспользуйтесь нашей документацией, бесплатными видео-уроками и статьям для быстрого внедрения нашего продукта в ваши проекты. Ultimate .NET Подробности Online Designer Узнать больше Как подключить FastReport используя приложение WPF Подробная инструкция по подключению FastReport в WPF приложение без использования WinForms компонентов из FastReport .NET. Подробная инструкция по подключению FastReport в WPF приложение без использования WinForms компонентов из FastReport .NET. Сравнение технологий WinForms и WPF Сравниваем 2 графические системы, используемые в разработке .NET приложений с помощью FastReport .NET и FastReport WPF продуктов. Сравниваем 2 графические системы, используемые в разработке .NET приложений с помощью FastReport .NET и FastReport WPF продуктов. Как сделать чек из программы WPF В статье описывается, как создать квитанцию с FastReport .NET и показать ее в пользовательском приложении WPF. В статье описывается, как создать квитанцию с FastReport .NET и показать ее в пользовательском приложении WPF. Остались вопросы? Связаться с менеджером ### «Быстрые отчеты» на форуме «Космос и технологии» URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/forum-kosmos-rostov Summary: 30 октября в МАОУ Школе №60 г. Ростов-на-Дону прошёл Всероссийский образовательный форум «Космос и технологии», на котором присутствовали сотрудники "Быстрые отчеты" 30 октября в МАОУ Школе №60 г. Ростов-на-Дону прошёл Всероссийский образовательный форум «Космос и технологии», на котором присутствовали сотрудники "Быстрые отчеты" 30 октября в МАОУ Школе №60 г. Ростов-на-Дону прошёл Всероссийский образовательный форум «Космос и технологии», организованный Управлением образования, Госкорпорацией Роскосмос и Фонд развития Физтех школ, который собрал школьников, педагогов, инженеров, учёных, компании и наставников со всей страны. Форум «Космос и технологии» стал не просто событием, а настоящим шагом в будущее. Представители нашей компании в лице генерального директора Шлюпкиной Аллы и менеджера образовательной программы Захаровой Анастасии стали почетными гостями форума. В рамках форума состоялось двухстороннее подписание Соглашения о сотрудничестве: ООО Быстрые отчеты и МАОУ Школа №60, а так же намечены планы работы над совместными проектами. ### «Быстрые отчеты» поздравили первокурсников с началом учебного года URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/studenty-iubip-2025 Summary: Команда "Быстрых отчетов" побывала на встрече в Южном университете управления, бизнеса и права, где мы рассказали ребятам о их перспективах в IT, узнали их планы и поделились своим опытом. Команда "Быстрых отчетов" побывала на встрече в Южном университете управления, бизнеса и права, где мы рассказали ребятам о их перспективах в IT, узнали их планы и поделились своим опытом. 1 сентября стартовал новый учебный год! Наша компания на протяжении многих лет посещает учебные заведения города и поздравляет первокурсников с началом нового этапа в их жизни. 2025 год не стал исключением! Наша команда побывала на встрече в Южном университете управления, бизнеса и права , где мы рассказали ребятам о их перспективах в IT, узнали их планы и поделились своим опытом. Поддержка образования является одним из важных направлений работы в ООО «Быстрые отчеты», и мы от всей души поздравляем наших партнеров и друзей с новым учебным годом. Дорогие преподаватели, студенты и сотрудники учебных заведений! Мы готовы поддерживать вас в любых инициативах и проектах, помогая вам достигать новых высот. Пусть этот учебный год станет временем роста, развития и успеха! С уважением и наилучшими пожеланиями ООО «Быстрые отчеты». ### «Быстрые отчеты» получили статус участника «Сколково» URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/uchastnik-skolkovo Summary: «Быстрые отчеты» получили статус участника «Сколково» — это открывает новые возможности для роста: доступ к экосистеме, экспертизе, партнёрам и инструментам масштабирования. «Быстрые отчеты» получили статус участника «Сколково» — это открывает новые возможности для роста: доступ к экосистеме, экспертизе, партнёрам и инструментам масштабирования. Прошлый год завершили важным этапом для компании. Мы стали участником программы «Сколково» .  Участие в «Сколково» — результат системной работы команды над продуктом, технологиями, экспертизой и долгосрочной стратегией. Статус участника открывает новые возможности для роста: доступ к экосистеме, экспертизе, партнёрам и инструментам масштабирования. Наши разработки получили признание не только со стороны клиентов, но и от независимой экспертной комиссии фонда "Сколково". Для нас это показатель того, что создаваемые решения имеют практическую ценность и потенциал устойчивого развития на рынке России. Мы считаем этот результат командным достижением и точкой опоры для следующего этапа. Впереди больше работы, больше задач и более высокий темп развития. ### «Быстрые отчеты» празднуют день рождения — дарим скидку 20% URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/birthday-2026 Summary: В честь дня рождения компании до 25 августа мы дарим скидку 20% на все библиотеки отчетности FastReport VCL и FastReport .NET и МоиОтчеты Десктоп. В честь дня рождения компании до 25 августа мы дарим скидку 20% на все библиотеки отчетности FastReport VCL и FastReport .NET и МоиОтчеты Десктоп. Каждый год для нас – это новые продукты, тысячи реализованных проектов и миллионы созданных отчетов. Но главное достижение «Быстрых отчетов» – это сообщество клиентов и партнеров, которые доверяют нам автоматизацию своей отчетности. Спасибо, что выбираете наши продукты и развиваетесь вместе с нами. В честь дня рождения компании мы дарим скидку 20% на все библиотеки отчетности FastReport VCL и FastReport .NET , а также на МоиОтчеты Десктоп . Акция действует с 10 по 25 августа включительно. Если вы давно планировали приобрести новый продукт, обновить лицензию или расширить набор инструментов – сейчас самое подходящее время сделать это на выгодных условиях. Мы рады быть частью ваших проектов и продолжим развивать наши продукты, чтобы создавать отчеты было еще проще и эффективнее.  ### «Быстрые отчеты» с докладом на Firebird Conf 2026 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/announcement-firebird-2026 Summary: Александр Сырых, ведущий программист компании ООО «Быстрые отчеты», на Firebird Conf 2026 выступит с докладом «Автоматизация конвейера подготовки отчетов: интеграция Firebird и n8n». Александр Сырых, ведущий программист компании ООО «Быстрые отчеты», на Firebird Conf 2026 выступит с докладом «Автоматизация конвейера подготовки отчетов: интеграция Firebird и n8n». Александр Сырых, ведущий программист отдела перспективных разработок компании ООО «Быстрые отчеты», на Firebird Conf 2026 выступит с докладом «Автоматизация конвейера подготовки отчетов: интеграция Firebird и n8n». Ключевые тезисы выступления: - Оркестрация процессов через n8n без прямого доступа к базе данных. - Генерация документов с помощью сервиса « МоиОтчеты Публикатор ». - Безопасный доступ к данным (API-first) и расширяемая интеграция через MCP. - Внедрение AI-предобработки данных прямо в pipeline. Также Александр подготовил демонстрацию полного цикла от получения исходных данных до генерации готового PDF-отчета. Из выступления вы узнаете, как сократить подготовку документов с нескольких часов до минут, минимизировать ошибки и сделать систему масштабируемой. Присоединяйтесь к докладу и узнайте как эффективно модернизировать инфраструктуру данных одним из первых!  ### «Ланит Омни» и «Быстрые отчеты» развивают технологическое партнерство URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/partnership-fastreport-lanit-omni Summary: «Ланит Омни» и «Быстрые отчеты» развивают технологическое партнерство, что откроет новые перспективы для дальнейшего развития цифровых продуктов. «Ланит Омни» и «Быстрые отчеты» развивают технологическое партнерство, что откроет новые перспективы для дальнейшего развития цифровых продуктов. Low-code платформа BPMSoft от «Ланит Омни» (входит в группу ЛАНИТ) пополнилась инструментами и библиотеками генерации документов, созданными экспертами компании «Быстрые отчеты». Партнерство позволит расширить возможности BPMSoft и предложить российскому бизнесу больший набор сервисов для автоматизации и управления процессами предприятий. Инновационные компоненты упростят и ускорят для пользователей BPMSoft разработку отчетов и документов. Если раньше для их создания был нужен полностью кастомный код, требующий значительных ИТ-ресурсов и временных затрат, то теперь пользователям BPMSoft стал доступен универсальный дизайнер отчетов. С его помощью существенно снижается объем необходимой разработки. Кроме этого, теперь можно сделать еще более информативной и насыщенной аналитику за счет целого набора настраиваемых элементов (в том числе штрих- и QR-кодов и разнообразных диаграмм). Светлана Кострыкина, генеральный директор ООО «Быстрые отчеты»: «Применяя наши разработки и инновационные идеи, «Ланит Омни» сможет предложить своим клиентам новый уровень производительности и удобства в автоматизации отчетности и документооборота. Сотрудничество откроет новые перспективы для дальнейшего развития используемых систем и создания уникальных цифровых продуктов». Владимир Чанышев, директор департамента партнерских продаж «Ланит Омни»: «Одну из ключевых ролей в экосистеме BPMSoft играют именно технологические партнеры. Они не только успешно интегрируют свои решения в нашу платформу, но и помогают существенно улучшить ее функционал. Компоненты компании «Быстрые отчеты» оптимизируют ежедневные рутинные процессы наших клиентов и обеспечивают их надежными и мощными инструментами для генерации нужных в работе документов». Источник ЛАНИТ ### «РЕД СОФТ» и «Быстрые отчеты» подтвердили совместимость своих продуктов URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/red-soft-compatibility Summary: Компании получили сертификаты о совместимости FastReport .NET Mono, FastReport .NET Avalonia и FastReport VCL с операционной системой РЕД ОС 8. Компании получили сертификаты о совместимости FastReport .NET Mono, FastReport .NET Avalonia и FastReport VCL с операционной системой РЕД ОС 8. На основании проведённых испытаний компании ООО «Быстрые отчеты» и ООО «РЕД СОФТ» получили сертификаты о совместимости программных продуктов FastReport .NET Mono , FastReport .NET Avalonia и FastReport VCL с операционной системой РЕД ОС 8. По итогам тестирования была подтверждена совместимость и корректность работы продуктов компаний. РЕД СОФТ — российский разработчик и поставщик решений для ИТ-инфраструктуры государственного и коммерческого сектора. Оказывает услуги по разработке, внедрению и сопровождению прикладного и общесистемного программного обеспечения. Технологическое партнёрство с РЕД СОФТ позволяет предложить рынку надёжные импортонезависимые решения, а также стимулирует развитие инноваций и исследований в этой области. Это открывает новые перспективы для развития наших компаний и укрепления технологического потенциала России. Надеемся на дальнейшее плодотворное сотрудничество! ### Айдентика URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/identity Summary: Подробное руководство по использованию бренда, логотип и шрифт компании ООО "Быстрые отчеты". Айдентика Здесь можно скачать руководство по использованию бренда, логотип и шрифт. Логотип Логотип компании, скачать в PNG + SVG. Горизонтальный логотип компании, скачать в PNG + SVG. Вертикальный логотип компании, скачать в PNG + SVG. Лого компании, цветной, скачать в PNG + SVG. Лого компании, белый монохром, скачать в PNG + SVG. Лого компании, черный монохром, скачать в PNG + SVG. Скачать все Типографика Используем шрифт Inter для шрифтовой части логотипа и в айдентике компании. info@fastreport.ru Отдел продаж sales@fastreport.ru +7 (800) 551-75-80 +7 (863) 227-07-40 Офис Ростов-на-Дону, Россия ул. Обороны 24, офис 311, 344082 Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Реестр ПО ВБЦ СОУТ Декларация Реквизиты Согласие с обработкой ПД Политика конфиденциальности Не является публичной офертой Не является публичной офертой © 1998-2026 ООО «Быстрые отчеты» Ссылка успешно скопирована ### Актуальная версия FastReport: обновление со скидкой 50% URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/promotion-march-2026 Summary: С 23 марта по 6 апреля 2026 года действует специальное предложение для клиентов с истёкшими лицензиями FastReport. С 23 марта по 6 апреля 2026 года действует специальное предложение для клиентов с истёкшими лицензиями FastReport. С 23 марта по 6 апреля 2026 года действует специальное предложение для клиентов с истёкшими лицензиями FastReport. В этот период можно приобрести актуальные версии генераторов отчётов FastReport .NET и FastReport VCL со скидкой 50%. Акция распространяется на FastReport .NET в вариантах поставки Ultimate, WEB, Avalonia, WPF, WinForms, Mono, а также на FastReport VCL в вариантах поставки Ultimate, Optimum, Reporting VCL, Reporting FMX, Reporting Lazarus, Analysis VCL.  Предложение действует для лицензий Single, Team и Site и позволяет обновиться до текущих версий продуктов на специальных условиях, даже если срок действия лицензии закончился давно. Обновление открывает доступ к последним возможностям FastReport: новым функциям, обновлённому дизайнеру отчётов, технической поддержке и улучшенной производительности. В ближайшие месяцы также запланированы релизы с дополнительным функционалом, доступным только владельцам актуальных лицензий. После завершения акции стоимость можно зафиксировать ещё на 7 дней. Чтобы воспользоваться предложением или получить дополнительную информацию, свяжитесь с командой продаж по адресу sales@fastreport.ru . ### Анонс тура RAD Studio под Android URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/rad-studio-android-2013 Summary: Анонс тура RAD Studio под Android Анонс тура RAD Studio под Android Уважаемые разработчики! Приглашаем вас принять участие в запуске новой версии RAD Studio, который состоится  11 сентября в Санкт-Петербурге, 18 сентября в Астане,  24 сентября в Москве. Мы расскажем и покажем, как создавать приложения не только под Windows, Mac OS X , iOS, но и под Android. Теперь все эти платформы – ваши. Вы можете быть опытным корпоративным разработчиком с многолетним стажем или начинающим студентом с новыми яркими прорывными идеями – чем больше платформ, тем лучше. Быстрое прототипирование, мгновенный старт от задумки до реализации, причём для нескольких платформ одновременно. Вас ждет встреча  и мастер классы от  команды разработчиков Embarcadero,  вы также сможете задать свои вопросы Евгениею Крюкову, создателю и архитектору  Fire Monkey. В ходе мероприятия вы узнаете: - сколько и какие платформы доступны вам на базе единого исходного кода; - методы и практики использования нового релиза Delphi и RAD Studio; - планирование, прототипирование и реализация мобильных приложений на Android; - новый компонентный состав и особенности их эффективного применения; - … и много другое! В конце мероприятия  вас ждёт расширенная сессия вопросов и ответов с российской командой разработчиков Embarcadero. Участие в мероприятии БЕСПЛАТНОЕ! Предварительная регистрация для участия в семинаре является обязательной! Регистрация и Дополнительная информация доступна на  сайте мероприятия  ### Асинхронное программирование в C sharp. Вступление. URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/asynchronous-programming-c Summary: Асинхронное программирование станет для вас выходом в решении некоторых задач. При таком подходе, вы сможете использовать несколько потоков, передающих управление то одной, то другой задаче. Асинхронное программирование станет для вас выходом в решении некоторых задач. При таком подходе, вы сможете использовать несколько потоков, передающих управление то одной, то другой задаче. Асинхронное программирование станет для вас выходом в решении некоторых задач. При таком подходе, вы сможете использовать несколько потоков, передающих управление то одной, то другой задаче. Многие слышали об этом, но не многие используют его в своем коде. Между тем, никакие более-менее серьезные программы с клиент-серверной архитектурой не обойдутся без асинхронного программирования. Обмен данными с базой, взаимодействие клиента и сервера - это требует времени, которое можно занять другими процессами вместо ожидания. При синхронном выполнения операции, поток блокируется другим. И приходится ждать выполнения этого второго процесса, чтобы вернуть управление первому. Это вызывает не нужную трату ресурсов, ведь поток с единственной задачей может достаточно долго ожидать ответ. От базы данных, например, или веб-сервиса. И если временные ресурсы может сберечь многопоточность (благо современные процессоры это позволяют), то ресурсы памяти это не спасет. Ведь по сути, многопоточность - это тоже синхронное выполнение операций. Просто их несколько. Настоящим выходом будет использование асинхронной обработки. При таком подходе, мы можем использовать несколько потоков передающих управление то одной, то другой задаче. То есть, ожидая ответа от другой задачи, текущая не блокирует поток, а предоставляет его другой задаче. Давайте посмотрим на рисунок: В этом случае используется однопоточный асинхронный подход. А здесь многопоточный асинхронный поток. Каждый поток выполняет множество задач. Когда одна из задач останавливается в ожидании, берется другая. Таким образом задачи перетекают от одного потока к другому, в зависимости от того, который освободился первым. Из рисунка видно, что Task 1 начала выполняться в первом потоке, а закончила во втором. Рассмотрим еще один рисунок - диаграмма последовательности: Диаграмма описывает поведение потоков для клиент-серверного приложения. Клиент отправляет запрос данных от сервера, и, вместо того чтобы "зависнуть" ожидая ответ (как в синхронном подходе) продолжает работать, предоставляя пользователю другой функционал приложения. Так что, если вы веб разработчик, то без асинхронности - никуда. Давайте немного разберемся в теории. Всего можно выделить три шаблона асинхронного программирования: Asynchronous Programming Model (APM); Event-based Asynchronous Pattern (EAP); Task-based Asynchronous Pattern(TAP). Asynchronous Programming Model появился еще в первой версии .Net Framework. APM позволил создавать асинхронные версии синхронных методов посредством двух методов - Begin MethodName и End MethodName. Итак, всего два метода: ``` public IAsyncResult Begin{MethodName}(TIn[] args, AsyncCallback callback, object userState =null) { ... } ``` И: ``` public TResult End{MethodName}(IAsyncResult result) { ... } ``` Метод Begin{MethodName} начинает асинхронную операцию. Он принимает параметры args, callback - делегат на метод, вызываемый после выполнения асинхронного метода, объект userState, который используется для передачи информации о состоянии конкретного приложения в метод, вызываемый при завершении асинхронной операции. Метод возвращает объект типа IAsyncResult который хранит информацию об асинхронной операции. Метод End{MethodName} завершает асинхронную операцию. Он принимает на вход объект, типа IAsyncResult, а возвращает TResult, который на самом деле вернет тип, определенный в синхронной копии этого метода. Давайте посмотрим, как используется этот шаблон на упрощенном примере: ``` public void Button_Click (...) { WebRequest request = WebRequest.Create(url); request.BeginGetResponse(Callback , request); } public void Callback(IAsyncResult ar) { WebRequest request = (WebRequest) ar.AsyncState; try { var response = request.EndGetResponse(ar); // Code does something with successful response } catch (WebException e) { // Error handling code } } ``` Мы вызвали метод Begin в обработчике события нажатия кнопки. В качестве параметра передаем callback в этот метод. И, уже в самом callback-е вызываем парный метод - End. К недостаткам асинхронной модели программирования можно отнести: Необходимо создавать функцию обратного вызова; Нет возможности прервать операцию. Нет возможности отказаться от вызова метода обратного вызова, если он был передан при начале операции. Нет оповещения о прогрессе операции или о промежуточных результатах. Event - based Asynchronous Pattern Этот шаблон асинхронного программирования появился во второй версии фреймворка .Net. Он основан на событиях и асинхронных методах. Класс, реализующий этот шаблон будет содержать методы MethodNameAsync и MethodNameAsyncCancel (если нужна обработка отмены операции), и событие MethodNameCompleted. В этом же классе можно разместить синхронные версии методов, работающие с тем же потоком. Чаще всего этот шаблон используют при работе с веб сервисами. Например, ajax реализует Event-based Asynchronous Pattern. Получить результат асинхронной операции и обработать ошибки можно только в обработчике события MethodNameCompleted. Шаблон асинхронного программирования, основанный на событиях решил некоторые проблемы предшественника: Объявление метода для получения результата асинхронной операции; Не предусмотрен механизм оповещения о прогрессе операции. Однако, данный шаблон все равно имеет ряд недостатков: Нет возможности передать контекст вызова операции (пользовательские данные) в метод обработки результата; Не все операции можно прерывать. Методы, поддерживающие только одну операцию в очереди невозможно прервать; Невозможно задать, в контексте какого потока будут вызываться методы обратного вызова. Task-based Asynchronous Pattern (TAP) Третий шаблон асинхронного программирования появился в .Net Framework 4.0. Из названия понятно, что он базируется на использовании задач. Основа TAP - два типа System.Threading.Tasks.Task и System.Threading.Tasks.Task TResult . TAP позволяет разработчикам определять асинхронные функции в рамках одного метода. Теперь нет необходимости создавать функции начала и конца асинхронной операции, а потом еще и обратного вызова. Это конечно облегчает труд программиста, уменьшает порог вхождения в технологию, и просто делает программирование приятным. TAP использует задачи для выполнения операций. Для каждой задачи используется отдельный поток, который берется из пула потоков. После выполнения задачи, поток возвращается в пул. Модификатор "async" - этот модификатор применяется к методу или лямбда-выражению, или анонимному методу - он указывает, что метод является асинхронным и сигнализирует о возможности одного или нескольких вхождений оператора ожидания в этот метод. Давайте посмотрим на пример определения метода: ``` public async Task< int >MyProcessAsync() { ... Var Overtime = await new ERP().ProcessOvertime(emp); ... } ``` Обратите внимание на ключевые слова async и await. Именно эти операторы сигнализируют, что используется Task-based Asynchronous Pattern. Модификатор async указывает, что метод асинхронный. А оператор await может быть вызван внутри метода один или несколько раз. Он приостанавливает выполнение задачи до получения результата, в то время как поток продолжает свою работу. А вот пример исползования TAP из жизни. Вызов веб службы: ``` static async Task< string > SendMessageAsync() { var client = new MyServiceClient(); var task = Task.Factory.StartNew(() = > client.SendMessageAsync("Message")); var result = await task; return result; } ``` А вот другой способ вызова, еще более простой и понятный: ``` static async Task< string > SendMessageAsyncNew() { var client = new MyServiceClient(); var result = await client.SendMessageAsync("Message"); return result; } ``` Этот "облегченный" вариант использования await стал доступен в .Net Framework 4.5. Асинхронный подход на основе задач решил большинство проблем предыдущих шаблонов. Тут вам и возможность прервать асинхронную операцию, и простая реализация одним методом, возможность отслеживать прогресс выполнения операции. На текущий момент Microsoft рекомендует использовать именно этот шаблон для реализации асинхронных вызовов при разработке компонентов. Что же касается целесообразности использования этого шаблона. Использование TAP увеличит пропускную способность сервера. Однако, расходы на создание асинхронного процесса могут нивелировать преимущества, если у вас интенсивность обмена (например, клиент-сервера) небольшая. В этом случае синхронный подход будет работать быстрее. Я понимаю, что мы лишь "пробежались по верхушкам", и этой информации недостаточно для хорошего понимания принципа работы разных подходов к асинхронному программированию. И поэтому, мы рассмотрим детально каждый шаблон отдельно, в последующих статьях. Tags: C#, Asynchronous programming, C#, Asynchronous programming ### Безопасность скрипта отчёта URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/report-script-security Summary: Рассказываем о специальных средствах защиты вашего скрипта на FastReport .NET, FastReport .NET Core, FastReport Mono и FastReport Open Source Рассказываем о специальных средствах защиты вашего скрипта на FastReport .NET, FastReport .NET Core, FastReport Mono и FastReport Open Source Рассказываем о специальных средствах защиты вашего скрипта на FastReport .NET, FastReport .NET Core, FastReport Mono и FastReport Open Source FastReport .NET  поддерживает вычисление выражений для отображения значений в нужном виде, либо каких-либо условий видимости того или иного объекта. Также есть возможность обработки событий для каждого объекта отчёта, например, перед его печатью. Обработчики событий помещаются в скрипт отчёта, который поддерживает языки C# и VB.NET. Кроме обработки событий в скрипте могут быть практически любые вычисления или действия, которые могут сформировать нужные данные или изменить поведение отчёта, как это требуется разработчику шаблона отчёта. Генератор отчётов перед построением учитывает все выражения, функции, обращения к параметрам в отчёте и строит программу на языке скрипта отчёта. Затем программа объединяется с тем скриптом, который мог написать разработчик шаблона отчёта. Полученный скрипт компилируется и загружается в виде библиотеки в приложение, которое работает с генератором отчётов. При запуске отчётов в веб-приложениях есть возможность их редактирования с помощью Online Designer . Редактирование отчётов осуществляется с помощью браузера, отредактированный отчёт отправляется на сервер и затем там может быть построен. Пока отчёты редактируются доверенными разработчиками и исполняются в изолированной среде, возможности применения скриптов в отчётах дают свободу и практически неограниченные возможности при обработке и визуализации данных. Их редактирование и исполнение находится под контролем. Как только появляется возможность всеобщего доступа к редактированию отчётов посредством браузера и Online Designer, возникает вопрос безопасности построения отчётов на сервере. Становится возможным внедрение вредоносного кода в скрипт и выражения отчёта. Чтобы предотвратить выполнение вредоносного кода в скрипте и выражениях отчёта при работе их в вебе, в версии FastReport .NET 2020.3.22 были добавлены специальные средства безопасности. Изменения касаются FastReport .NET, FastReport .NET Core, FastReport Mono и FastReport Open Source. Средства безопасности активны по умолчанию, но разработчики могут их изменить или отключить при необходимости в своих приложениях. Новые свойства и методы: bool FastReport.Utils.Config. EnableScriptSecurity – включает или отключает проверку скрипта отчёта. Работает только при работе отчётов в веб-приложениях (FastReport.Utils.Config.WebMode == true). Значение по умолчанию – true (включено). event FastReport.Utils.Config. OnEnableScriptSecurityChanged – событие вызывается, когда EnableScriptSecurity был изменён. Может быть использовано для дополнительного контроля безопасности. FastReport.Web.WebReport. SetScriptSecurity (IScriptChecker scriptChecker) - устанавливает пользовательскую реализацию метода проверки, которая перекрывает встроенные методы контроля безопасности. ScriptSecurityProperties FastReport.Utils.Config. ScriptSecurityProps - параметры для настройки проверки безопасности скрипта. Содержит значение NULL если исполняется не веб-приложение (FastReport.Utils.Config.WebMode == false). bool FastReport.Utils.Config.ScriptSecurityProps. AddStubClasses – включает или отключает добавление классов заглушек для скрипта. Значение по умолчанию – true (включено). Не перекрывается установкой собственного обработчика SetScriptSecurity (см. выше). event FastReport.Utils.Config.ScriptSecurityProps. OnStopListChanged – событие вызывается, когда StopList был изменён. Может быть использовано для дополнительного контроля безопасности. string[] FastReport.Utils.Config.ScriptSecurityProps. StopList - список ключевых слов, которые не должны быть использованы в скрипте отчёта. Содержит список слов по умолчанию. FastReport.Utils.Config.ScriptSecurityProps. SetDefaultStopList() - устанавливает значение списка StopList по умолчанию (сбрасывает изменения). Разработанный комплекс защиты скрипта отчёта позволяет минимизировать угрозу внедрения вредоносного кода и его исполнения на стороне сервера. Нужно помнить, что даже применение встроенных средств контроля безопасности скрипта отчёта не даёт стопроцентной защиты от внедрения вредоносного кода в сохраняемые шаблоны. Поэтому настоятельно рекомендуем вести журналы доступа в веб-приложениях и разрешать редактирование шаблонов отчётов ограниченному кругу привилегированных пользователей. Tags: Core, .NET, Open Source, Script ### Бесплатные шаблоны отчетов в МоиОтчеты Магазин URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-fastreport-store Summary: МоиОтчеты Магазин - это каталог бесплатных шаблонов унифицированных форм для генераторов отчетов FastReport .NET и VCL, а также в PDF МоиОтчеты Магазин - это каталог бесплатных шаблонов унифицированных форм для генераторов отчетов FastReport .NET и VCL, а также в PDF Мы рады объявить о запуске каталога бесплатных шаблонов отчетов МоиОтчеты Магазин ! Он позволит разработчикам экономить время на дизайн шаблонов будущих документов. В нем можно найти самые популярные унифицированные формы в форматах генераторов отчетов FastReport .NET и VCL, а также PDF.  МоиОтчеты Магазин содержит более 50 бесплатных образцов документов.  Чтобы воспользоваться шаблонами, необходимо скачать их в нужном формате, создать подключения к источникам данных и выбрать желаемый способ доставки готового документа. Более подробно ознакомиться с работой Магазина можно в нашем обучающем видео . ### Бесплатный вебинар «Современные системы разработки отчётов для программистов» URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/free-webinar-2009 Summary: Бесплатный вебинар «Современные системы разработки отчётов для программистов» Бесплатный вебинар «Современные системы разработки отчётов для программистов» Интернет-супермаркет ПО Softkey и компания Fast Reports Inc. приглашают принять участие в онлайн-семинаре для программистов, руководителей групп разработчиков ПО, руководителей IT-подразделений, специалистов по ведению и разработке баз данных. Дата:  21 декабря 2009 года. Время:  с 11 до 12 часов. Тема:  "Современные системы разработки отчётов для программистов". Докладчики:  Сергей Пухов, разработчик продукции Fast Reports. Зарегистрироваться на вебинар можно  здесь . Само мероприятие состоится на специальной площадке  Softkey .  В программе вебинара: На вебинаре речь пойдет о системах генерации отчётов, способных встраиваться в другие приложения с целью подготовки отчетностей в любом печатном формате.  FastReport.VCL - отчётность для Delphi FastCube - настольные ОЛАПы для Delphi FastReport.NET - отчёты для .NET Примечание. Для корректного воспроизведения звука и изображения на вашем компьютере должны быть: доступ в Интернет; программа Adobe Flash Player 8 или более новой версии; наушники или колонки; микрофон (по возможности); также необходимо открыть порт TCP 1935 на файерволе. Более подробную информацию о вебинаре вы можете найти на  сайте Softkey  или получить у нашего специалиста. Анна Негляд-Лукьянова, PR-менеджер, тел.: +7 (495) 980-72-50 (доб. 3216), e-mail:  nl@softkey.ru ### Благодарим за участие в конкурсе URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/user-request-successful Summary: You succesfully applied your contest project! Thanks for being a part of it. We will notify you about your status change via email You succesfully applied your contest project! Thanks for being a part of it. We will notify you about your status change via email Ваша заявка на участие принята. Мы уведомим вас о смене статуса через email  ### Будущее генерации отчетов с помощью Blazor WebAssembly URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/blazor-webassembly-manual Summary: Пошаговая инструкция по созданию демо приложения на .NET 6 и 7 прямо в браузере с помощью Blazor WebAssembly в FastReport .NET. Пошаговая инструкция по созданию демо приложения на .NET 6 и 7 прямо в браузере с помощью Blazor WebAssembly в FastReport .NET. Пошаговая инструкция по созданию демо приложения на .NET 6 и 7 прямо в браузере с помощью Blazor WebAssembly в FastReport .NET. Компания Microsoft уже давно представила фреймворк для создания интерактивного веб-интерфейса при помощи языка C#, а также HTML и CSS. Он существует в двух вариантах: Server-side (Blazor Server) и Client-side (Blazor WebAssembly). Особенность работы WebAssembly в том, что она исполняется прямо в браузере пользователя, обращаясь к удаленному серверу только за библиотеками, которые нужны для исполнения кода. FastReport .NET уже поддерживает технологию Blazor в составе пакета FastReport.Web ( подробнее ). Однако, вплоть до текущего момента, мы поддерживали только Server-side rendering (Blazor Server). Мы долго шли к возможности работы FastReport .NET прямо в браузере пользователя, ведь для нормальной работы требовалась поддержка Skia . Начиная с версии 2023.2 мы рады сообщить вам о поддержке Blazor WebAssembly в составе пакета FastReport.Blazor.Wasm. Данный пакет доступен в составе подписки FastReport .NET Enterprise и выше (в том числе Ultimate). Внимание! На данный момент поддержка Blazor WebAssembly осуществляется в бета-режиме. Некоторые отчёты и функционал могут не работать. Внимательно ознакомьтесь с документацией и ограничениями перед использованием. Создание демо приложения Давайте же создадим тестовое демо приложение, чтобы оценить работу FastReport в WebAssembly. Сначала необходимо установить WebAssembly Build Tools для сборки проекта с WebAssembly. Если он еще не установлен, то выполните в командной строке следующие команды, в зависимости от TargetFramework вашего приложения: Для .NET 6: ``` dotnet workload install wasm-tools-net6 ``` Для .NET 7: ``` dotnet workload install wasm-tools ``` Теперь создадим простой демонстрационный проект с Blazor WebAssembly из шаблона. Можно это сделать с помощью Microsoft Visual Studio 2022 или dotnet CLI.  Для простоты воспользуемся командой: ``` dotnet new blazorwasm -n BlazorWasmDemo ``` Отредактируем csproj нашего проекта, добавим пакет FastReport.Blazor.Wasm последней версии: ``` ``` На данный момент если вы хотите подготовить ваш отчёт в браузере (.frx), необходимо отключить Trimming, так как он мешает работе компиляции скрипта отчёта. Сделать это можно следующим способом: ``` false ``` Теперь добавляем нативные библиотеки SkiaSharp как часть нашего приложения, в зависимости от TargetFramework необходимо добавить: Для .NET 6: ``` ``` Для .NET 7: ``` ``` В файле _Imports.razor, аналогично с компонентами для Blazor Server, добавляем необходимые namespace для видимости компонентов FastReport: ``` @using FastReport.Web @using FastReport.Web.Blazor.Components ``` Регистрируем сервисы FastReport в нашем DI контейнере (файл Program.cs): ``` builder.Services.AddScoped(_ => new HttpClient{ BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) }); builder.Services.AddFastReport(); ``` Обратите внимание, для работы FastReport в WebAssembly, вы должны иметь настроенный HttpClient в DI контейнере, который может обращаться в root для загрузки необходимых dll сборок. Если вам необходимо переопределить HttpClient для собственного использования, можете просто задать отдельный HttpClient только для нужд FastReport: ``` builder.Services.AddFastReport(options => options.HttpClient = new HttpClient{ BaseAddress = new Uri(builder.HostEnvironment.BaseAddress)}); ``` Мы почти закончили наш долгий путь подготовки к использованию FastReport в WebAssembly, осталось всего несколько мелочей. В стандартном wwwroot\index.html файле нам необходимо добавить загрузку js скриптов для корректной работы FastReport: ``` ``` Регистрация шрифтов Так как FastReport работает с отчетами, а шрифт - неотъемлемая часть любого отчёта, который содержит текст, то FastReport должен взаимодействовать со шрифтами пользователя. Так и происходит, когда генератор отчётов работает на Windows или Linux, однако, когда FastReport работает в браузере, информация об установленных шрифтах на компьютере пользователя становится недоступна. Следовательно, наше приложение должно зарегистрировать шрифты, которые мы будем использовать в собственных отчетах. В нашем приложении мы будем использовать шрифт, который заранее встроим в нашу библиотеку как внедренный ресурс (EmbeddedResource). Для этого, в нашем проекте (.csproj) укажем: ``` Fonts\%(RecursiveDir)%(Filename)%(Extension) ``` Положим в папку Fonts все необходимые нам шрифты и зарегистрируем их в нашем Program.cs. Создадим такой метод и сразу же его вызовем: ``` static void AddFonts() { var resources = Assembly.GetExecutingAssembly().GetManifestResourceNames(); foreach (var resource in resources) { using var font = Assembly.GetExecutingAssembly().GetManifestResourceStream(resource); FastReport.Utils.Config.PrivateFontCollection.AddFontFromStream(font); } }   AddFonts(); ``` Регистрация данных С этим всё непросто. Мало какой коннектор к базе данных может работать прямо из браузера пользователя. Поэтому этот пункт мы оставляем на усмотрение наших пользователей. К примеру, вы можете запрашивать данные с какого-то стороннего ресурса по HTTP и после регистрировать эти данные в отчёте перед его подготовкой. В нашем же приложении, для демонстрации, мы используем данные из xml файла, которые положим в wwwroot вместе с отчетом. Внимание! Не используйте этот способ при итоговой публикации проекта, так как. злоумышленники могут легко похитить ваши данные. Использование компонента WebReportContainer Наконец изменим файл Index.razor для использования нашего компонента WebReportContainer. Для этого потребуется следующий код: ``` @page "/" @using FastReport @using System.Data; @inject HttpClient HttpClient   @if (isReady) { }   @code{ WebReport myWebReport; private bool isReady = false;   protected async override Task OnParametersSetAsync() { // Получаем отчёт var reportBytes = await HttpClient.GetByteArrayAsync("Simple List.frx"); var reportStream = new MemoryStream(reportBytes); var report = Report.FromStream(reportStream);   // Получаем xml базу данных и регистрируем её var dataBytes = await HttpClient.GetByteArrayAsync("nwind.xml"); var dataSet = new DataSet(); dataSet.ReadXml(new MemoryStream(dataBytes)); report.RegisterData(dataSet, "NorthWind");   // Создаём WebReport и присваиваем ему отчёт myWebReport = new WebReport() { Report = report, EmbedPictures = true }; isReady = true; } } ``` Если мы увидели наш отчёт в браузере, значит всё прошло успешно: У вас есть доступ движку отчётов, вы можете строить отчёты и просматривать уже готовые. В будущем добавится поддержка онлайн дизайнера. В целях безопасности - подключения к базам данных внутри отчётов отключены, вы должны будете сами подключить данные из вашего приложения. Мы активно работаем над улучшением нашего WebAssembly-компонента. По всем возникающим вопросам пишите в нашу поддержку support@fastreport.ru . Tags: .NET, FastReport, WebReport, Blazor ### Быстрая отправка на печать отчетов в MVC URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/sending-print-reports-mvc Summary: Чтобы не отключать панель инструментов объекта WebReport, вы можете создать специальную кнопку для вызова диалогового окна печати. Посмотрите, как вызвать диалог печати в веб проекте MVC. Чтобы не отключать панель инструментов объекта WebReport, вы можете создать специальную кнопку для вызова диалогового окна печати. Посмотрите, как вызвать диалог печати в веб проекте MVC. Чтобы не отключать панель инструментов объекта WebReport, вы можете создать специальную кнопку для вызова диалогового окна печати. Посмотрите, как вызвать диалог печати в веб проекте MVC. Чтобы веб отчет гармонировал со стилистикой веб страницы, многие отключают панель инструментов объекта WebReport. Таким образом пользователь лишается опций по экспорту и печати отчета. Но, если вы все же хотите дать пользователю возможность распечатать отчет из браузера, вы можете создать специальную кнопку для печати. Нажав на нее, пользователь получит диалоговое окно печати. Сейчас я покажу как вызвать диалог печати в веб проекте MVC. Для начала, добавим кнопку во view. Я разместил ее на домашней странице моего демонстрационного веб приложения. Находим в обозревателе решения файл Index.cshtml: Добавим в желаемое место кнопку: ``` @using (Html.BeginForm("Print", "Home")) { } ``` Здесь Print - имя обработчика в контроллере. А Home - имя контроллера. Переходим к папке Controllers. Файл HomeController.cs: В код класса добавляем вот такой метод: ``` public void Print() { WebReport webReport = new WebReport(); System.Data.DataSet dataSet = new System.Data.DataSet(); dataSet.ReadXml("C://Program Files (x86)//FastReports//FastReport.Net//Demos//Reports//nwind.xml"); webReport.Report.RegisterData(dataSet, "NorthWind"); webReport.Report.Load("C://Program Files (x86)//FastReports//FastReport.Net//Demos//Reports//Simple List.frx"); webReport.EmbedPictures = true; webReport.PrintHtml(); } ``` Как вы видите метод называется Print, как и в кнопке, которую мы добавили. Давайте рассмотрим подробнее этот код. В первой строке мы создали экземпляр объекта WebReport. Затем, мы создали DataSet для работы с данными. DataSet умеет работать с xml базами данных. Собственно в третьей строке я указываю путь к этой базе данных. С помощью метода RegisterData мы регистрируем источник данных в объекте отчета. Затем, загружаем шаблон отчета в объект отчета. Он расположен в той же папке, что и база данных. Свойство EmbedPictures позволяет встроить картинки в html файл отчета. И, наконец, последняя строка запускает печать отчета в браузере. Если вы хотите сохранить отчет в формате PDF, то достаточно заменить последнюю строку на: ``` webReport.PrintPdf(); ``` При этом можно воспользоваться опциями для форматирования файла pdf. Например: ``` webReport.PdfPrintOptimized = true; ``` Эта опция даст лучшее качество изображений для печати. Теперь необходимо добавить обработчик в Web.config: ``` ``` Теперь запустим приложение. Вот так выглядит кнопка на веб странице: Нажимаем ее. И получаем страницу с отчетом и диалогом печати: А так выглядит сохранение в PDF: Таким образом можно вызывать диалог печати при помощи пользовательской кнопки, а не из панели инструментов объекта WebReport. Это может быть полезно, когда вы встраиваете элементы управления отчетом в дизайн веб страницы. В рассмотренном примере мы не добавляли объект веб отчета на веб страницу. Отчет строится в отдельной странице непосредственно перед печатью. Это удобно, если нет необходимости выводить отчет на веб странице. Tags: .NET, FastReport, ASP.NET, MVC, WebReport, Печать, .NET, FastReport, ASP.NET, MVC, WebReport, Печать ### Быстрые отчеты запускает NuGet-сервер URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-nuget-server Summary: Запуск нашего NuGet-сервера, который позволит намного удобнее и быстрее доставлять наши продукты пользователям. Запуск нашего NuGet-сервера, который позволит намного удобнее и быстрее доставлять наши продукты пользователям. Мы рады сообщить о запуске нашего NuGet-сервера. Это важная часть нашей инфраструктуры, которая позволит намного удобнее и быстрее доставлять наши продукты пользователям. Теперь вы можете автоматизировать сборку ваших продуктов с использованием лицензионных пакетов "Быстрые отчеты", без необходимости ручной загрузки и установки их с официального сайта через установщик. Также, благодаря появлению NuGet-сервера, стало намного проще использовать кроссплатформенные продукты на операционных системах семейства Linux и MacOS. Для доступа вам необходимо всего лишь иметь аккаунт "ID Быстрые отчеты". На этом сервере доступны NuGet-пакеты разных продуктов линейки .NET: FastReport .NET (в том числе Core, CoreWin), FastCube .NET, Fast Reports Business Graphics .NET и др. Подробнее о работе NuGet-сервера мы рассказали в нашей статье. ### Быстрые отчеты на Kazan Digital Week 2025 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/2025-kazan-digital-week Summary: С 17 по 19 сентября в Казани команда Быстрых отчетов с гордостью представила свои решения на Международном форуме Kazan Digital Week 2025. С 17 по 19 сентября в Казани команда Быстрых отчетов с гордостью представила свои решения на Международном форуме Kazan Digital Week 2025. С 17 по 19 сентября в Казани прошёл Международный форум Kazan Digital Week 2025 , объединивший более 25 тысяч участников из более чем 60 стран-производителей и пользователей цифровых технологий, программного обеспечения и высокотехнологичной продукции. Форум стал площадкой для обсуждения ключевых тенденций и вызовов цифровой трансформации государства и общества. Особое внимание было уделено опыту и перспективам развития ИТ-отрасли. Команда Быстрых отчетов приняла участие в деловой программе форума, и в экспозиции, где представила свои решения гостям и партнерам мероприятия. Посетители стенда смогли познакомиться с нашими продуктами, обсудить новые идеи для развития цифровых сервисов и задать вопросы экспертам компании. Благодарим гостей форума за проявленный интерес к нашей компании. Форум стал важной площадкой для диалогов, что послужит основой для новых проектов и развития партнерских отношений. ### Быстрые отчеты приняли участие в "ContestSFedU-2023" URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/contestsfedu-2023 Summary: Быстрые отчеты стали спонсорами XVII Олимпиады Южного федерального университета по программированию "ContestSFedU-2023". Быстрые отчеты стали спонсорами XVII Олимпиады Южного федерального университета по программированию "ContestSFedU-2023". С 13 марта по 23 апреля 2023 г. Институт компьютерных технологий и информационной безопасности (ИКТИБ) ЮФУ провел крупнейший на Юге России форум программирования и современных информационных технологий: VII Открытый Чемпионат Юга России – XVII Олимпиаду ЮФУ по программированию " ContestSFedU-2023 ", посвященную 50-летию кафедры математического обеспечения и применения ЭВМ. Чемпионат "ContestSFedU" – крупнейшее событие в области программирования на Юге России. В соревновательную программу Чемпионата вошли индивидуальные и командные турниры по спортивному программированию.  Во время финального тура олимпиады "ContestSFedU-2023"  Быстрые отчеты приняли участие на "Весеннем IT-митапе", в рамках которой представители компаний-спонсоров читали тематические лекции, показывали мастер-классы, а также проводили круглые столы. ### Быстрые отчеты приняли участие во Всероссийском научном Форуме URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/digital-edu-2023 Summary: С 15 по 15 февраля эксперт компании ООО "Быстрые отчеты" принял участие во Всероссийском научном форуме с мастер-классом и докладом. С 15 по 15 февраля эксперт компании ООО "Быстрые отчеты" принял участие во Всероссийском научном форуме с мастер-классом и докладом. 15-16 февраля был проведен Всероссийский научный Форум «DIGITAL EDU. ЦИФРОВЫЕ КОМПЕТЕНЦИИ В ОБРАЗОВАНИИ» с международным участием представителей ИТ-отрасли. Компанию ООО "Быстрые отчеты" на данном форуме представляла Шлюпкина Алла. В рамках мероприятия было представлено два выступления: 1. Мастер-классы по цифровым компетенциям: "От студента до сотрудника компании" - Подготовка студентов работодателями в рамках формирования цифровых компетенций. 2. Доклад : «Перспективы привлечения работников IT-сферы к преподаванию в учебном заведении». В форуме приняли участие более 400 представителей образовательных учреждений и представителей ИТ- отросли, в том числе представители других стран: Белорусия, Казахстан, Турция, Кипр. ### Бэнды FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-net-bands Summary: С первого взгляда использование бэндов в FastReport .NET кажется лишним и неудобным. Посмотрите всю прелесть использования бэндов и для чего они нужны. С первого взгляда использование бэндов в FastReport .NET кажется лишним и неудобным. Посмотрите всю прелесть использования бэндов и для чего они нужны. С первого взгляда использование бэндов в FastReport .NET кажется лишним и неудобным. Посмотрите всю прелесть использования бэндов и для чего они нужны. Страница отчета в FastReport.Net обязательно должна содержать хотя бы один бэнд – контейнер для объектов. Признаюсь, при первом знакомстве с FastReport мне показался этот механизм надуманным. Почему бы не размещать объекты прямо на страницы без дополнительных контейнеров? Но осознав всю прелесть применения бэндов, я не представлял, как бы это работало иначе. Контейнеры четко разделены по функциональности и порядку отображения. Заголовки всегда будут вверху, данные посредине, а итоги внизу. Мы можем как угодно выстроить данные в бэнде и это не потребует создания таблиц специального вида. Для того, чтобы научиться работать в FastReport.Net вам нужно изучить бэнды. Это основа основ. Итак, в этой статье мы рассмотрим какие в FR.Net есть бэнды, их назначение, порядок вывода при построении, особенности поведения. Приведем список всех доступных бэндов: Заголовок отчета – выводится один раз в самом начале отчета, однако есть возможность выводить его после Заголовка страницы. Не знаю правда зачем это; Подвал отчета - выводится в самом конце отчета, но перед подвалом страницы; Заголовок страницы – выводится в начале каждой страницы; Подвал страницы – выводится в конце каждой страницы; Заголовок колонки – выводится вверху каждой колонки; Подвал колонки – выводится в конце каждой колонки; Данные – самый главный бэнд, на мой взгляд. Потому что он умеет выводить все данные из источника. То есть он выводится для каждой строчки данных в источнике, к которому он подключен. Бэнд «Данные» выводится после всех заголовочных бэндов; Заголовок данных – выводится один раз перед бэндом «Данные», к которому он привязан (ведь может быть много бэндов «Данные» и для каждого можно добавить заголвок данных); Подвал данных – выводится один раз непосредственно после бэнда «Данные», к которому он привязан; Заголовок группы – выводится после заголовка страницы или заголовка колонки, но перед бэндом «Данные»; Подвал группы – выводится после бэнда «Данные»; Дочерний – может быть создан для любого бэнда. Он наследует тип родительского бэнда; Фоновый – просто фон для каждой страницы отчета. Вот так бэнды выстроены в дизайнере на странице отчета: Вот такой слоеный пирог страница отчета. Данные выводятся примерно посредине. Но это всего лишь шаблон. В построенном отчете все выглядит иначе, потому что многие бэнды выводятся по нескольку раз, важно лишь понять порядок, что за чем будет отображаться, тогда не возникнет вопросов при создании отчета. С заголовочными бэндами все более-менее понятно. Они предназначены для отображения заголовков отчета и заголовков колонок таблиц: Подвальные бэнды используют для вывода итоговой суммы по данным, количества строк или номера страницы. Наиболее интересен бэнд «Данные» . Как я отметил раньше, он подключается к источнику данных: И отображает данные только из выбранной таблицы. Если вам нужно выводить данные из нескольких таблиц, придется создать другие бэнды «Данные». Из рисунка видно, что помимо выбора источника данных, доступна сортировка и фильтрация. Это очень удобно и избавляет нас от необходимости сортировать и фильтровать данные при создании источника. К тому же, условие фильтрации может содержать параметр, значение которого мы передадим из диалоговой формы или через URL (для веб отчетов). А теперь об удобстве использования контейнеров-бэндов. Мы можем вывести данные из таблицы так: Или вот так: В первом случае мы вывели традиционный список. А во втором скомпоновали поля в карточку сотрудника. В обоих случаях это всего лишь одна строка данных. Бэнд позволяет там свободно размещать объекты внутри себя. Давайте обратим внимание на простой список: Как вы видите, часть данных перенесена на другую строку, но сверху выводится следующая строка. Вы можете установить для бэнда свойство «Может расти»: Такое же свойство включите для текстовых объектов, чьи данные не отображаются полностью: Теперь данные выводятся в полном объеме. Бэнд сам подбирает высоту в зависимости от размера объектов, расположенных внутри. У объектов есть множество других свойств, отвечающих за отображение, но это тема для отдельной статьи. В контексте бэнда «Данные» хочу рассказать о « Дочернем » бэнде. Обычно дочерний бэнд используется в паре именно с бэндом «Данные». Такая связка применяется для отчетов типа «Главный – Подчиненный». При этом используются связанные таблицы: Как видно из шаблона, бэнд «Данные» имеет подчиненный бэнд «Данные». Таким образом обеспечивается отображение подчиненного бэнда «Данные» каждый раз после главного. Для каждой записи таблицы Categories будет выведены соответствующие ключевому полю записи таблицы Products. Вот так выглядит рассмотренная связка при отображении: Если вы будете выводить таблицу Products не в дочернем бэнде «Данные», а в отдельном, то получите такую картину: То есть сначала будут отображены все бэнды таблицы Categories, а затем все бэнды таблицы Products. Теперь пара слов о колонках. Бэнд «Данные» можно настроить на отображение данных по колонкам. При этом будут использоваться бэнды «Заголовок колонки» и «Подвал колонки». Например, выставим в свойствах страницы отчета количество колонок 2: И посмотрим на результат: Количество колонок не ограничено. У страницы отчета есть еще 2 интересных свойства: «Бесконечная ширина» и «Бесконечная высота» отчета. Бесконечная ширина актуальна для растущих вширь матриц. В принципе матрицы и в высоту растут. Так, что включаем оба этих свойства и получаем гигантскую матрицу: Чтобы разглядеть данные, придется распечатывать ее на плоттере. Похоже именно для печати на крупном формате и придумали эти свойства. Переходим к бэндам «Заголовок группы» и «Подвал группы» . Обычно они используются парно. Когда вы добавляете «Заголовок группы», автоматически добавляется и подвал, а между ними бэнд «Данные». Как вы поняли из названия бэндов, они формируют группы. Для группировки данных тлебуется задать условие: В данном случае группировка будет проводиться по первой букве названия продукта. Подвал группы может содержать итоговую сумму для данных или количество: Да, вы, наверное, уже устали читать, но осталось совсем немного. Фоновый бэнд. Используется для отображения фоновой картинки, заливки или градиента. Выводится на каждой странице отчета. Впрочем, есть возможность настройки страниц, для которых он должен отображаться: Высота закрашиваемой части страницы настраивается растягиваем бэнда. На этом, пожалуй, все. Мы рассмотрели основные моменты применения бэндов в FastReport.Net. Надеюсь, эта информация была понятна и полезна для вас.  Tags: .NET, FastReport, Фильтрация, .NET, FastReport, Фильтрация ### ВАЖНО: Фаст Репортс меняет название на “Быстрые отчеты” URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreports-rebrending Summary: Компания Фаст Репортс сменила название на “Быстрые отчеты”. Изменения в реквизитах затронут только название организации. Компания Фаст Репортс сменила название на “Быстрые отчеты”. Изменения в реквизитах затронут только название организации. С 30 сентября 2022 года ООО “Фаст Репортс” оперирует под новым названием - “Быстрые отчеты”.  Новое название позволяет быть ближе и понятнее российским разработчикам программного обеспечения. Оно так же является результатом обновлённой стратегии компании: библиотеки и программные продукты компании теперь создаются не только для программистов, но и для крупных корпоративных клиентов. ООО "Быстрые отчеты" продолжит выполнять все обязательства ООО "Фаст Репортс", изменения в реквизитах затронут только название организации, вся остальная информация остается прежней. Сайт компании будет обновлен в ближайшее время.  Продукты "Фаст Репортс" стали лидерами в области импортозамещения и новое название лучше отражает роль программных продуктов в отечественных ИТ-структурах. "Быстрые отчеты" занимаются созданием библиотек, инструментов для генерации отчетов и документов из баз данных с 1998 года. Наши программные решения одними из первых вошли в реестр отечественных ПО в 2016 году после формирования курса импортозамещения правительством РФ. Возникшие вопросы вы можете задать в чате на сайте, написав нам на info@fastreport.ru или позвонив по номеру +7(800)551-75-80. Если вам необходимы реквизиты с новым названием, вы можете запросить их по указанному email адресу.  ### Варианты представления табличных данных при экспорте в Excel URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/representation-tabular-excel Summary: Посмотрите, сколько интересных опций экспорта отчета в формат в Excel предоставляет FastReport .NET. Посмотрите, сколько интересных опций экспорта отчета в формат в Excel предоставляет FastReport .NET. Посмотрите, сколько интересных опций экспорта отчета в формат в Excel предоставляет FastReport .NET. Одним из наиболее востребованных форматов экспорта отчетов является Excel. В бухгалтерской отчетности это самый популярный формат. Вы можете в дальнейшем редактировать отчет средствами Excel. FastReport .Net предоставляет ряд очень интересных опций экспорта отчета в формат в Excel. Рассмотрим окно настроек экспорта отчета в формат Excel 2007: Итак, мы имеем возможность экспортировать: все страницы, текущую, выборочно. Теперь рассмотрим опции экспорта: Wysiwyg - точное расположение объектов после экспорта, по умолчанию true. Если выключить, то границы будут сильно “округляться”. Пустые строки и колонки будут исключены. Все это значительно изменяет внешний вид отчета. Вы можете отключить данную опцию, если к оформлению отчета не предъявляется серьезных требований. Рассмотрим на примере. Опция Wysiwyg: А теперь с отключенной опцией: Как видим, пустые строки между рисунками пропали. Распределение рисунков по колонкам таблицы также изменилось. Page breaks – разрыв страниц при печати в соответствии со страницами отчета, по умолчанию включено. Рассмотрим на примере. В первом случае показана страница документа excel при печати с включенной опцией Page breaks: Во втором случае показан документ с отключенной опцией Page breaks: Data only - инициирует экспорт только бэнда данных, по умолчанию отключено. Посмотрим, как выгляди документ с выключенным свойством Data only: Отчет выглядит также, как и при построении в дизайнере. А теперь сделаем экспорт со включенной опцией Data only: Как видим, отображаются только бэнды с данными. Нет ни заголовков, ни подвалов. Seamless table – позволяет убрать из экспорта бэнды типа footer (подвал) и следующий за ним заголовочный бэнд. Это сделано, чтобы таблица в excel отображалась как единая, без разрывов на страницы. На рисунке ниже показана таблица, прерванная бэндом footer. Согласитесь, для документа excel это не очень удобно. А теперь посмотрим, как выглядит таблица, если при экспорте включить опцию Seamless table: Хочется сказать еще пару слов о разработке отчетов. Отчет имеет послойную структуру, а файл Excel - табличную. При экспорте в Excel производится преобразование слоёв в таблицу. Если в отчете есть пересечения ячеек, то алгоритм преобразования может сработать неправильно. Проверьте шаблон на пересечение ячеек и зазоры между ними, если вам нужен корректный экспорт в Excel. Tags: .NET, Экспорты, FastReport, Excel, .NET, Экспорты, FastReport, Excel ### Веб-отчётность на Linux, Windows из FastReport Mono URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/web-reporting-mono Summary: Веб-отчётность на Linux, Windows, MacOS X, BSD из FastReport Mono Веб-отчётность на Linux, Windows, MacOS X, BSD из FastReport Mono Новая статья в нашем блоге о новой функциональности в одном из наших мультиплатформенных генераторов отчётов. Как создавать интернет/интранет отчёты в FastReport Mono. ### Вебинар Embarcadero о новой технологии AnyDAC URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/webinar-embarcadero-anydac Summary: Вебинар Embarcadero о новой технологии AnyDAC Вебинар Embarcadero о новой технологии AnyDAC 15 февраля, с 12:00 состоится вебинар компании Embarcadero на тему «Новые возможности доступа к данным на основе AnyDAC» 5 февраля компания Embarcadero объявила о приобретении технологии AnyDAC у компании DA-SOFT. В вебинаре принимает участие Дмитрий Арефьев, генеральный директор компании DA-SOFT, а также архитектор и разработчик AnyDAC. В ходе вебинара Дмитрий расскажет о дизайне и эволюции своей лидирующей технологии, о её конкурентных преимуществах. Особое внимание будет уделено технологическим особенностям и методам использования в проектах Delphi/C++Builder. Дмитрий ответит на вопросы аудитории в контексте применения созданной им библиотеке в составе Delphi как для новых, так и существующих разработках. Зарегистрировать на вебинар можно по следующей ссылке: http://forms.embarcadero.com/forms/EM13Q1RUWebinarAnyDac ### Вебинар FastReport для FireMonkey 16го ноября URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/webinar-firemonkey-2012 Summary: Вебинар FastReport для FireMonkey 16го ноября Вебинар FastReport для FireMonkey 16го ноября Завтра, 16 ноября в полдень (12:00) компания Embarcadero совместно с Fast Reports проводит вебинар: Система отчетов FastReport для Fire Monkey 2.0 в Delphi XE3  На русском языке. Регистрируемся ### Вебинар о FastReport VCL и FMX на Astra Linux 21 марта URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/webinar-delphi-2024 Summary: Денис Зубов проведёт совместный вебинар с компанией Embarcadero на тему «Отчеты в Delphi на Astra Linux c FastReport». Денис Зубов проведёт совместный вебинар с компанией Embarcadero на тему «Отчеты в Delphi на Astra Linux c FastReport». 21 марта, с 15:00 состоится совместный вебинар с компанией Embarcadero на тему «Отчеты в Delphi на Astra Linux c FastReport».  Наш спикер, Денис Зубов расскажет про варианты использования разных версий FastReport VCL и FMX на Astra Linux. Разберет нюансы запуска FastReport на Linux. Построит простое серверное решение и запустит его на Astra Linux. Также, сравнит решения в связке VCL + Wine и FMX + FmxLinux, чтобы найти оптимальный путь миграции приложения с FastReport на Linux. Зарегистрироваться на вебинар можно по следующей ссылке. Запись вебинара на YouTube  ### Вебинар: Создание приложения на Альт Рабочая Станция 10 с FastReport Avalonia URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/avalonia-vebinar Summary: Запись вебинара, где наш спикер рассказал и показал, как создавать приложения на Альт Рабочая Станция 10 с FastReport Avalonia и VSCodium Запись вебинара, где наш спикер рассказал и показал, как создавать приложения на Альт Рабочая Станция 10 с FastReport Avalonia и VSCodium 8 мая в 16:00 прошел вебинар, где наш спикер - Александр Сырых рассмотрел разработку приложения Avalonia (.NET 8) с FastReport Avalonia для дизайна шаблонов и генерации отчетов на российской операционной системе Альт Рабочая станция 10 с помощью редактора кода VSCodium. На лекции также было рассказано о том, как работать с дизайнером FastReport Avalonia для создания и настройки шаблона отчета. С записью лекции можно ознакомиться  здесь . Хорошего просмотра! ### Векторная графика в FastReport .NET 2019.4 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/vector-graphics Summary: FastReport.Net 2019 - наконец появились кривые Безье – а значит, векторная графика. Теперь на вкладке Home есть раздел Polygon, где мы можем создавать ломаные, изменять искривление отрезка. FastReport.Net 2019 - наконец появились кривые Безье – а значит, векторная графика. Теперь на вкладке Home есть раздел Polygon, где мы можем создавать ломаные, изменять искривление отрезка. FastReport .NET 2019 - наконец появились кривые Безье – а значит, векторная графика. Теперь на вкладке Home есть раздел Polygon, где мы можем создавать ломаные, изменять искривление отрезка. Еще в FastReport .NET 2018 в отчетах появилась векторная графика начального уровня. Это были полигоны и кривые. Можно было строить сложные фигуры, но все кривые были прямыми. В версии 2019, наконец появились кривые Безье – а значит, и полноценная векторная графика. Теперь мы можем создавать любые фигуры. Давайте рассмотрим обновления детально. Прежде всего вы заметите отличие от предыдущих версий на верхней панели свойств. На вкладке Home появился раздел Polygon. Раньше нам был доступен набор действий с полигоном/ломаной, который появлялся над фигурой при ее выделении: Эти элементы управления позволяли: перемещать точки, добавлять линию в начало, добавлять линию в конец, добавлять точки. С появлением кривых Безье пришлось переработать концепцию редактирования векторного объекта. Каждая точка на кривой теперь имеет векторы, задающие искривление. Если это ломаная, а не фигура, то крайние точки имеют по одному вектору, все остальные – по два, чтобы настраивать искривление до и после точки. Но, вернемся к новой панели инструментов Polygons. Рассмотрим его элементы:  - перемещение фигуры;   - редактирование фигуры;  - добавление точек;  - редактирование векторов искривления, инициализация точек;  - удаление точек. Рассмотрим, как использовать эти элементы управления на примерах создания ломаной   и полигона   . Ломаная изначально задается точками, не имеющими векторов искривления: Если раньше вы могли добавлять линии только в начало или конец, то сейчас достаточно выбрать в режиме редактирования  нужную точку на кривой, затем перейти в режим добавления точек   и вам сразу же будет предложен вариант добавления точки и прямых, соединяющих ее с выбранной точкой и ближайшей к курсору мыши соседней точкой: Если же вы захотели сделать ломаную кривой Безье, то необходимо перейти в режим  .  Находясь в этом режиме, вы можете инициализировать кривую Безье, выбрав точку на ломаной и изменив направление вектора искривления для нее: Чтобы изменить искривление отрезка , проведенного в выделенную точку, наводим курсор мыши на синюю точку вектора исходящего из выделенной точки в сторону предыдущей точки. Вы можете изменять не только угол наклона вектора, но и его длину, это также будет влиять на искривление отрезка. Аналогично задается искривление для отрезка проведенного из выделенной точки. После этого, в любом режиме редактирования фигуры, измененная точка будет отображаться с векторами искривления. Если вы захотите избавиться от кривой Безье в своей ломаной, то придется удалить эту точку в режиме удаления   , а затем заново добавить ее  . Для удаления точки переходим в режим  и, просто выбираем курсором мыши точку, которую нужно удалить. При этом, отрезки, подходящие к этой точке, будут также удалены, а соседние с удаленной точки будут соединены новым отрезком. В ситуации с полигоном все ровно то же самое.  То есть изначально все точки на фигуре не имеют настроек искривления отрезка. Для создания полигона кривыми Безье, переходим в режим   и поочередно выбираем точки на фигуре, изменяя положение векторов искривления отрезков. Если вы изменили положение вектора настройки искривления для точки, то с этого момента в любом режиме редактирования эти настройки будут доступны. То есть, чтобы вернуть отрезок к изначальному режиму прямой линии, точку придется удалить и добавить заново. Стоит отметить, что рисовать кривыми без должной практики довольно долгое занятие. Даже создавая такую простую фигуру: Поэтому, в следующей статье мы рассмотрим, как создавать векторные объекты в отчете из кода приложения, или скрипта отчета. Tags: .NET, FastReport, SVG, .NET, FastReport, SVG ### Векторная графика в FastReport .NET 2019.4. Скрипт URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/vector-graphics-script В первой части статьи мы рассмотрели нововведения FastReport .NET 2019.4 по части векторной графики. Теперь кривые и полигоны можно строить кривыми Безье. В этой статье мы рассмотрим возможность создания кривых с помощью скрипта отчета. На данный момент существует два способа создать кривые из кода: использовать объект PolyLineObject или загрузить полигон из SVG. Как вы знаете любой объект отчета доступен в скрипте отчета, поэтому мы можем использовать PolyLineObject чтобы задать точки и соединить их для создания фигуры. Выполнить код следует перед отображением объекта, а значит нужно создать обработчик события BeforePrint для объекта Polygon. Давайте рассмотрим на реальном примере. Добавляем объект Polygon на страницу отчета. Чтобы не создавать ключевые точки фигуры просто нажмите Esc. В инспекторе свойств объекта выбираем События. Создаем обработчик события BeforePrint: В обработчике напишем следующий код: ``` private void Polygon4_BeforePrint(object sender, EventArgs e) { //Создаем фигуру звезда int spikes = 5; //Количество вершин PolyLineObject obj = sender as PolyLineObject; PolyLineObject.PolyPointCollection points = obj.Points; points.Clear(); const float outerRadius = 70; //Внешний радиум const float innerRadius = 30; //Внутренний радиус float rot = (float)(Math.PI / 2 * 3); //Угол наклона const float cx = 0; const float cy = 0; float x = cx; float y = cy; float step = (float)(Math.PI / spikes); //Шаг создания вершин obj.Width = 100; obj.Height = 100; obj.CenterX = 50; obj.CenterY = 50; points.Add(new PolyLineObject.PolyPoint(cx, cy - outerRadius)); //Добавляем точки for (int i = 0; i < spikes; i++) { //Координаты внутренних точек x = cx + (float)Math.Cos(rot) * outerRadius; y = cy + (float)Math.Sin(rot) * outerRadius; points.Add(new PolyLineObject.PolyPoint(x, y)); rot += step; //Переход к следующей точке //Координаты внешних точек x = cx + (float)Math.Cos(rot) * innerRadius; y = cy + (float)Math.Sin(rot) * innerRadius; points.Add(new PolyLineObject.PolyPoint(x, y)); rot += step; } } ``` В результате мы получим звезду: В приведенном примере мы производили расчет координат для построения фигуры, но если у вас уже есть список координат, то просто добавляем их в коллекцию точек:  points.Add(new PolyLineObject.PolyPoint(x, y)); Но что если фигура гораздо сложнее приведенного примера? Количество кода для ее создания будет очень велико. В этом случае можно воспользоваться объектом SVG. Например, его свойством path. Мы можем конвертировать набор элементов пути svg изображения в точки и построить по ним полигон. Важно учитывать кривые Безье. Как это сделать, вы увидите ниже в коде: ``` private void PolyLine2_BeforePrint(object sender, EventArgs e) { PolyLineObject obj = sender as PolyLineObject; PolyLineObject.PolyPointCollection points = obj.Points; points.Clear (); //Построитель SVG по пути SvgPathBuilder builder = new SvgPathBuilder (); //Загружаем список сегментов из строки SvgPathSegmentList list = builder.ConvertFromString ("M91.734 10.5L66.6384 59.025 10.5 66.8258l40.643 37.749-9.5696 53.327 50.2094-25.1932 50.234 25.1582-9.6124-53.321 40.6154-37.778-56.1505-7.76z") as SvgPathSegmentList; GraphicsPath _path = new GraphicsPath (); foreach (SvgPathSegment segment in list) { segment.AddToPath (_path); } PolyLineObject.PolyPoint point = null; for (int i = 0; i < _path.PointCount; i++) { PointF pnt = _path.PathPoints[i]; byte type = _path.PathTypes[i]; //Если кривая, то считать три точки подряд и задать направляющие искривления if (type == 3) { PointF pnt1 = _path.PathPoints[i]; PointF pnt2 = _path.PathPoints[i + 1]; PointF pnt3 = _path.PathPoints[i + 2]; i += 2; //Искривление вправо point.RightCurve = new PolyLineObject.PolyPoint (pnt1.X - point.X, pnt1.Y - point.Y); //Точка point = new PolyLineObject.PolyPoint (pnt3.X, pnt3.Y); //Искривление влево point.LeftCurve = new PolyLineObject.PolyPoint (pnt2.X - point.X, pnt2.Y - point.Y); } else { //Обычная точка point = new PolyLineObject.PolyPoint (pnt.X, pnt.Y); } //Добавляем точки points.Add (point); } obj.CenterX = 0; obj.CenterY = 0; obj.RecalculateBounds (); obj.Top = 0; obj.Left = 0; } } ``` Этот код отобразит нам звезду такого вида: В список типа SvgPathSegmentList мы помещаем элементы из тега path SVG файла. Затем, получаем координаты точек и добавляем их в объект PolyLine. В этом примере мы отобразили объект прямыми отрезками, но вы также можете использовать кривые, например: …       SvgPathSegmentList list = builder.ConvertFromString ("m101.87775,57.26873c31.12829,-82.10042 153.08994,0 0,105.55768c-153.08994,-105.55768 -31.12829,-187.65809 0,-105.55768z") as SvgPathSegmentList;      … В результате получим: Нужно учитывать, что координатная плоскость – это бэнд, на котором расположен объект Кривая или Полигон. Поэтому не важно в каком месте на бэнде вы расположили объект. Отображаться он будет согласно заданным координатам. Используя второй рассмотренный нами способ создания полигона из скрипта, вы сможете отображать уже созданные ранее векторные рисунки. Нет необходимости тратить уйму времени на ручное создание полигона. Tags: .NET, FastReport, SVG, Script, .NET, FastReport, SVG, Script ### Векторные штрих коды и SVG в экспортах PDF, HTML и SVG URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/vector-barcodes-exports В FastReport 2018.2 появилась поддержка векторной графики в экспортах. Теперь некоторые штрих-коды и SVG изображения экспортируются в векторном виде. Это касается экспорта в PDF, HTML и SVG. По поводу штрих кодов нужно дать пояснение - только линейные штрих коды могут быть экспортированы как векторные изображения. В текущей версии 2018.2.22 в окне настроек PDF экспорта добавлена специальная вкладка установок для векторных изображений - "Векторная графика". Здесь нам доступно два типа настроек - качество градиентов и кривые. Качество градиентов влияет на плавность перехода, т.е. количество оттенков. А интерполяция градиента определяет размерность градиента в точках. Интерполяция кривых позволяет строить кривые заданным количеством отрезков. Вернее, задаем мы количество точек, которые будут использованы для создания отрезков. Интерполяция делает кривую более округлой. Чем выше интерполяция, тем более округлая кривая получается. Некоторые PDF ридеры старых версий имели проблемы с отображением векторной графики. Поэтому FastReport разработал свой построитель кривых. Если отключить опцию интерполяции, то PDF ридер сам будет выбирать как строить кривую. Давайте рассмотрим настройки градиента. Градиенты в PDF генерируются по сетке градиентов, т.е. генерируется сетка, на узлах сетки вычисляются цвета, и далее создаётся сложный градиент. Качество градиента влияет на размер сетки которая будет генерироваться. Чем выше качество градиента, тем более точно будет генерироваться эта сетка. Однако, при этом пострадает скорость создания изображения. Интерполяция градиента показывает какого размера сетка будет использоваться в PDF, чем выше значение, тем красивее, но больше места будет занимать на диске. Вот так выглядит градиент, если задать низкое качество и интерполяцию 256: А теперь, высокое качество и интерполяция 256. Разница практически не заметна глазу, но она есть. Эту разницу лучше видно на сложных градиентах. Например, низкое качество: Высокое качество: Тут все вопросы отпадают сами собой. А вот если изменить значение интерполяции градиента на минимальное, разница сразу заметна и с обычным линейным градиентом. К примеру, значение интерполяции 2: И значение интерполяции 16: Теперь рассмотрим, как работает интерполяция кривых . Например, у нас есть SVG изображение - круг. Которое реализуется с помощью тега < circle / >: И мы хотим, чтобы он отрисовывался с помощью 8 отрезков. Выставляем значение 8 для интерполяции кривых: Чем больше значение интерполяции, тем более округлую кривую мы получим. Например, при сильном приближении круга можно увидеть такое: Видно, что круг вовсе не идеально круглый, он состоит из множества отрезков. Что же касается интерполяции текста ? Здесь ситуация ровно так же, что и с кривыми. Ведь символы тоже состоят из кривых. Значит, чем больше значение интерполяции текста - тем более "качественно" он выглядит. И тут вы можете спросить: "Зачем вообще нужны эти настройки? Очевидно, что нужно использовать максимальные настройки для получения качественного изображения". Да, это так. Но высокие настройки заметно увеличивают размер итогового файла. Если вам не нужно максимальное качество градиентов и кривых, можно пожертвовать ими ради уменьшения размера документа и увеличения скорости его создания. На первый взгляд новые опции кажутся мало полезными для обычных пользователей, но их оценят те, кто работает с векторной графикой. FastReport предложил свой отрисовщик SVG изображений, потому что некоторые PDF просмотрщики некорректно отображают их. Приятно, что производитель заботится о нас, стремясь предусмотреть все возможные проблемы. Tags: .NET, FastReport, SVG, PDF, HTML, .NET, FastReport, SVG, PDF, HTML ### Версия 2026.2 уже доступна для FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2026.2 Summary: В версии 2026.2 для FastReport .NET добавлено 9 вариантов форм модулей QR‑кода, плагин для подключения к Google Sheets, опция внедрения шрифтов при экспорте в MS Word. В версии 2026.2 для FastReport .NET добавлено 9 вариантов форм модулей QR‑кода, плагин для подключения к Google Sheets, опция внедрения шрифтов при экспорте в MS Word. В версии 2026.2 для FastReport .NET появилась поддержка .NET 10 для всех библиотек. Среди ключевых новшеств: возможность настраивать форму (9 вариантов) и угол поворота модулей QR‑кода, перемещение бэндов в дизайнере перетаскиванием, плагин для подключения к Google Sheets, опция внедрения шрифтов при экспорте в MS Word и улучшенный экспорт в PDF (с поддержкой ZUGFeRD) и в MS Excel. Также была оптимизирована архитектура WebReport. Новые возможности Поддержка .NET 10 Добавлена поддержка .NET 10 для FastReport .NET, FastReport.Core, FastReport.Core.Skia, FastReport.WPF, FastReport.Avalonia, а также FastReport.Web, FastReport.Web.Skia и FastReport.Blazor.Wasm. Эта платформа повышает производительность приложений и добавляет множество новых возможностей для ваших проектов. Ознакомиться с изменениями можно в нашей статье. Читать статью Изменение формы модулей QR-кода QR-код состоит из точек, которые называются модулями. По стандарту, они имеют форму квадрата. Начиная с версии 2026.2, форму модулей можно изменять и настраивать. Кроме квадрата, теперь доступны девять новых форм модулей: круг, ромб, скругленный квадрат, горизонтальная капсула, вертикальная капсула, плюс, шестиугольник, звезда и снежинка. Кроме формы модулей, теперь можно задать угол их поворота (свойство Angle). А также, сделать QR-код менее плотным уменьшив каждый модуль с помощью свойства UseThinModules. Последнее свойство не затрагивает поисковые паттерны (большие квадраты в углах QR-кода), так как они помогают сканерам определять границы и размеры кода. Стандартный QR-код выглядит так: А это, код с модулями в форме круга: Несмотря на то, что новые модули, позволяют делать коды более разнообразными и интересными, важно учитывать, что не все сканеры одинаково хорошо могут считывать такие QR-коды. Подробнее о новых свойствах и их использовании читайте в нашей статье. Читать статью Перемещение бэндов в дизайнере В наших отчетах может быть множество типов бэндов, у которых разное назначение. Например, заголовок отчет всегда находится в начале отчета. Другой пример, подвал страницы находится внизу каждой страницы. Положение таких бэндов относительно друг друга, изменять нельзя. Но есть типы бэндов, которых может быть несколько и их взаимное положение может меняться. Например, в отчете может быть три бэнда данных. Раньше их положение можно было менять только в специальном окне настроек бэндов: Теперь бэнды можно перемещать прямо в дизайнере, просто перетаскивая их: Подробнее об особенностях и ограничениях этого нового механизма перемещения можно узнать в статье. Читать статью Подключение к Google Sheets С этим обновлением был добавлен новый плагин, который позволяет использовать информацию из Google Таблиц в качестве источника данных для отчета. Google Таблицы — это облачное приложение для работы с электронными таблицами. Данный плагин позволяет напрямую подключать отчеты к указанным таблицам, обеспечивая удобный доступ к необходимым данным.  Google Таблицы (как и любые таблицы в принципе) прекрасно переносятся на концепцию построения наших отчетов. Однако, это веб приложение, и имеет ряд особенностей в отличие от десктопных решений. Как подключить этот новый плагин читайте в нашей статье. Читать статью Улучшения экспортов Внедрение шрифтов при экспорте в Microsoft Word В нашем экспорте отчетов в документы Microsoft Word, появилась новая опция «Внедренные шрифты»: Опция позволяет включить или выключить внедрение шрифтов при сохранении готового отчета в файл формата DOCX. При этом все шрифты, использованные в отчете, будут сохранены в готовый файл. Это гарантирует, что документ будет выглядеть одинаково на любом компьютере, даже если на нем отсутствуют нужные шрифты. Однако стоит учитывать, что размер файла при использовании этой опции будет больше, чем при обычном экспорте. Улучшенная поддержка ZUGFeRD при экспорте в PDF Значительно переработан и улучшен экспорт PDF-файлов с поддержкой ZUGFeRD. Теперь файлы соответствуют актуальной версии ZUGFeRD и успешно проходят валидацию. Было исправлено множество ошибок при экспорте таких файлов. Глобальное улучшение экспортов Microsoft Word и Microsoft Excel Код экспортов в документы форматов DOCX и XLSX подвергся оптимизации и улучшению. Теперь экспорты работают быстрее и открываются большинством приложений, не только Microsoft, но и сторонними офисными приложениями. Изменения в WebReport Улучшена архитектура клиентской части WebReport В рамках улучшений WebReport был проведён рефакторинг клиентской части: CSS и JavaScript переведены в статичные файлы, что позволило полностью отказаться от инлайн-скриптов. Теперь для работы WebReport не требуется разрешать инлайн-скрипты в Content Security Policy (CSP), что повышает безопасность продукта. Из названий CSS-классов удалены идентификаторы отчётов — это сделало WebReport более гибким и удобным для кастомизации. Скрипты собраны в бандлы, что значительно ускоряет загрузку страниц. Полный список изменений [Engine] + добавлен новый режим для свойства TextObject.AutoShrink - FitText; + добавлены дополнительные свойства, необходимые для подключения сторонних сервисов к данным в формате JSON; + добавлены свойства линейных штрихкодов - OneBarWidth, FitDevicePixels; + добавлена функция ToWords для китайского языка; - исправлена ошибка с фильтрацией данных в диалоговых контролах; - исправлена ошибка, из-за которой не удалялись временные файлы при использовании UseFileCache; - исправлено дублирование имени источника данных при создании JSON-подключения; - исправлена ошибка импорта DOCX документов; [Designer] + добавлена поддержка штрихового идентификатора "Почты России" для штрихкода Interleaved 2 of 5 (EN 801); + добавлена возможность изменять форму модулей QR-кода; + добавлена возможность перемещать бэнды в дизайнере; * теперь сообщение об ошибке более информативное при некорректных именах в SQL-запросе; * окно редактора связей теперь позволяет изменять размер; - исправлена ошибка видимости событий StartReport и FinishReport; - исправлена ошибка при добавлении компонента Report на форму; - исправлена ошибка при переключении на страницу FRX в дизайнере; - исправлена ошибка в редакторе свойства DataSource; - исправлена ошибка в окне Сообщения в дизайнере для платформы .NET 6.0 и выше; - исправлено наложение текста в конструкторе запросов; - исправлена ошибка именования полей в конструкторе запросов для Postgres; - исправлены цвета легенды для авто-серий в MSChart; - исправлено некорректное поведение drag-n-drop в объекте Матрица; [Preview] + добавлены иконки в меню экспортов для пунктов, которые раньше были без них; [Exports] + добавлена возможность улучшения качества изображения при экспорте в Microsoft Word; + улучшен экспорт PDF-файлов с поддержкой ZUGFeRD. Теперь файлы соответствуют актуальной версии ZUGFeRD и успешно проходят валидацию; + улучшена совместимость экспортов в DOCS и XLSX со сторонними офисными приложениями; + добавлена возможность экспорта страниц с альбомной ориентацией в ZPL; + улучшен экспорт изображений в XLSX-формат, перекрытых другими объектами; + добавлена возможность внедрять шрифты при экспорте в Microsoft Word; - исправлена проблема с открытием некоторых файлов при экспорте в Microsoft Excel; - исправлена ошибка с шириной полей при экспорте в Microsoft Word; - исправлено исключение System.NullReferenceException при экспорте в Microsoft Word в режимах ParagraphBased и MatrixBased; - исправлен размер шрифта по умолчанию при экспорте в XLSX; - исправлен экспорт полигонов в табличные форматы; - исправлена ошибка экспорта нескольких колонтитулов в Microsoft Word; - исправлены проблемы с цветом некоторых объектов при открытии DOCX-документов в OpenOffice; - исправлена ошибка с пропадающими картинками, если отключено свойство WYSIWYG при экспорте; - исправлены лишние пробелы в DOCX-экспорте при использовании рендеринга HtmlTags; - исправлена ошибка в PDF-экспорте, при которой файл создавался в неправильной папке; [WebReport] + добавлена опция CentredAndWrapPages в WebReport; - исправлена высота WebReport для .NET Framework; [Common] + добавлено поле свойств начального/конечного символа в Codabar; - исправлены ошибки перетаскивания бэндов в Avalonia и WPF; - исправлена схема привязки БД JSON; [Demos] + обновлены иконки демоцентра; - исправлены ошибки с запуском демо-приложений в демоцентре; [Extras] + добавлен плагин Apache Ignite для платформ Avalonia, Core, OpenSource и WPF; + добавлено подключение к Google Sheets; - исправлена ошибка в подключении к базам данных JSON. ### Взгляд на облачное создание отчетов в МоиОтчеты Облако URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/closer-look-cloud-reporting Summary: Небольшой обзор на новый продукт МоиОтчеты Облако, являющийся кросс-платформенным решением и не требующем установки на ваше устройство. Небольшой обзор на новый продукт МоиОтчеты Облако, являющийся кросс-платформенным решением и не требующем установки на ваше устройство. Небольшой обзор на новый продукт МоиОтчеты Облако, являющийся кросс-платформенным решением и не требующем установки на ваше устройство. МоиОтчеты Облако  — это набор инструментов для построения документов. Сервис позволяет формировать отчеты и документы на основе заранее составленных шаблонов, хранящихся облаке. Предыстория МоиОтчеты Облако В основе МоиОтчеты Облако лежит библиотека FastReport .NET , которая вышла в релиз ещё в марте 2009 и развивается до сих пор. Переход в облако - это самый логичный путь развития для семейства продуктов компании. Прежде всего, это приносит пользователям полную кросс-платформенность и упрощает процесс внедрения. Теперь ничего не нужно будет устанавливать, достаточно ввести логин и пароль. Отчёты в нашей жизни Любой бизнес собирает и накапливает данные в каком-либо виде. Например, в базе данных или просто в файле на жестком диске. Как правило, такой вид удобен для хранения, но не удобен для представления, получения важной информации, принятия решения человеком. Наши инструменты, решения и библиотеки позволяют именно делать данные информативными. Это могут быть документы или таблицы - структурированные так, как это нужно и удобно пользователям для их специфических задач. Работает прямо в браузере МоиОтчеты Облако позволяет создавать и настраивать шаблоны, подключать к ним данные из удаленных источников и экспортировать в множество форматов прямо в браузере. Все эти файлы хранятся в облаке, а значит - для работы нужен только доступ в интернет. Процесс построения документов, который может оказаться весьма требовательным при больших объемах данных, также перенесен в облако. Это позволяет перенаправить ресурсы (как вычислительные, так и человеческие) на более приоритетные задачи. Доступ к результату этого построения можно получить откуда угодно. Online Designer В МоиОтчеты Облако встроен онлайн дизайнер. Благодаря этому пользователи могут: Менять свойства всех объектов на отчёте, добавлять новые, убирать старые. Конфигурировать бэнды. Подключать к отчёту источники данных из подписки или создавать новые (на данный момент поддерживаются JSON, CSV, XML, MS SQL, PostgreSQL, MySQL, Oracle DB). Редактировать скрипты шаблонов. Использовать предпросмотр. Онлайн дизайнер поддерживает различные объекты, среди которых есть: Текст. Таблица. Изображение. Штрих-код (как строчный, так и двухмерный). Матрица. Цифровая подпись. Шкала. RichText (текст с более широкими возможностями форматирования). Чекбоксы. Геометрические фигуры. Вложенный отчёт (причём вложенность не ограничена, у вложенного отчёта может быть свой вложенный отчёт и так множество раз). Простота внедрения в пользовательские приложения Мы создали инструменты (SDK) для работы с нашим API для множества языков программирования, включая C#, Java, JavaScript, Python, Golang, Haskell и C++. Это упростит использование МоиОтчеты Облако из приложений пользователей. Весь функционал нашего API используется прямо из кода независимо от платформы или операционной системы. Примеры использования этих SDK можно посмотреть здесь . Работа в команде Облачное хранение и гибкая настройка прав позволяют делиться созданными документами со всеми членами вашей организации. Дополнительно можно настроить права так, чтобы доступ к конфиденциальным данным получила только определённая группа лиц. Сами права распространяются на группы пользователей и сгруппированы по виду. Каждое отдельное право дает доступ к конкретному действию. При этом создатель или владелец файла тоже является группой, хоть в ней и всего 1 человек. Для всех новых файлов применяются права по умолчанию. При желании их тоже можно настроить. Если нужно сделать исключение, то уполномоченный пользователь может назначить собственное распределение прав, которое перезапишет права по умолчанию. Планирование документов и их хранение Все документы в МоиОтчеты Облако хранятся в папках. По умолчанию в каждой подписке есть 3 корневые папки для каждого типа документов. При просмотре каталогов с документами можно производить сортировку и поиск. Выбрав файл или папку, пользователь может перемещать или копировать свои данные, даже в папку другой подписки, если у пользователя есть соответствующие права. В пользовательском интерфейсе можно работать с несколькими файлами одновременно, однотипные действия не нужно повторять отдельно для каждого документа. Безопасность Сервис авторизации поддерживает двухфакторную аутентификацию через Microsoft Authenticator или Google Authenticator. Мы настоятельно рекомендуем включить двухфакторную аутентификацию , чтобы злоумышленники не смогли получить доступ к вашим ресурсам, даже если им будут известны данные для входа под вашей учетной записью. Использование МоиОтчеты Облако для бизнес-решений Приведем пару примеров использования: У клиента есть веб-приложение, которое по запросу возвращает данные в формате JSON. Эта информация в дальнейшем будет применена различных PDF документах. Для решения такой задачи достаточно создать источник данных, указать ему http адрес, по которому можно найти этот JSON и подключить этот источник данных к шаблону. С этого момента создание PDF документа с актуальными данными - дело одного клика. Другой же случай описывает формирование прайс-листа с ежедневной выгрузкой по расписанию. Сперва создаётся шаблон в дизайнере и указывается источник данных. Затем настраиваем выгрузку на FTP в определённое время каждого дня с помощью нашего планировщика. Дополнительно настраивается рассылка готовых данных на электронную почту. Заключение Переход в облако подарил семейству продуктов компании полную кросс-платформенность и возможность работать из любой точки на планете. Главное, что устанавливать ничего не нужно. Порог входа для новых пользователей стал заметно ниже, а гибкость сценариев использования только возросла. Tags: Облако, FastReport ### Виды решений для создания отчетов и документов URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/ Summary: Быстрые отчеты — создают библиотеки и инструменты для генерации отчетов и документов. Используйте генератор отчетов FastReport для создания качественных и быстрых отчетов. Легко и эффективно создавайте всю необходимую документацию с нашими инструментами. Виды решений для создания отчетов и документов FastReport .NET Наборы компонентов, позволяющие автоматизировать и упростить процесс создания отчетов и документов на C# для различных технологий. Ultimate .NET WinForms WPF WEB Mono Avalonia FastScript .NET FastReport VCL Наборы VCL, FMX и Lazarus компонентов с полными исходными кодами для создания отчётов и документов на Delphi/Pascal. Ultimate VCL Optimum VCL Reporting VCL Reporting FMX Reporting Lazarus FastQueryBuilder FastScript FastGrid FastEditors WEB отчетность Компоненты для кроссплатформенных проектов, чтобы разрабатывать, строить, отображать, печатать, экспортировать отчеты прямо в браузере. Online Designer Решения для конечных пользователей Самостоятельные программные продукты для дизайна, построения, конвертации, и просмотра готовых отчётов на вашем компьютере. МоиОтчеты Десктоп МоиОтчеты Конвертер МоиОтчеты Вьювер OLAP и Business Graphics Инструменты представления и аналитической обработки больших данных для получения сводных таблиц с последующей визуализацией на основе Business Graphics. Business Graphics .NET Analysis VCL FastCube .NET Сервисные решения Готовые сервисы и клиент-серверные системы для быстрой визуализации данных и автоматического выполнения задач для обработки информации. МоиОтчеты Облако МоиОтчеты Магазин МоиОтчеты Публикатор МоиОтчеты Корпоративный Сервер Новости 10 августа 2026 «Быстрые отчеты» празднуют день рождения — дарим скидку 20% Каждый год для нас – это новые продукты, тысячи реализованных проектов и миллионы созданных отчетов. Но главное достижение «Быстрых отчетов» – это сообщество клиентов и партнеров, которые доверяют... Читать 16 июля 2026 Подтверждена совместимость СУБД FTData с семействами решений FastReport .NET и МоиОтчеты Компания «Современные системы» подтвердила совместимость своей СУБД FTData с семейством продуктов FastReport .NET: WinForms, WEB, WPF, Avalonia, и МоиОтчеты: Корпоративный Сервер, Облако,... Читать 9 июня 2026 Подтверждена совместимость «АльтерОС» с решениями «Быстрые отчеты» Компании «АЛМИ Партнер» и «Быстрые отчеты» успешно завершили комплексное тестирование совместимости своих продуктов: операционной системы «АльтерОС» и инструментов для генерации отчетов, документов... Читать Все новости Статьи 8 сентября 2026 Ответы на популярные вопросы о формате FP3 Формат FP3 нередко становится источником вопросов — особенно у пользователей, которым нужно оперативно открыть, просмотреть или конвертировать готовый отчёт, не углубляясь в тонкости разработки.... Читать 4 сентября 2026 Как из FastReport .NET экспортировать отчет в DXF DXF (Drawing Exchange Format) — это открытый формат обмена графическими данными, разработанный компанией Autodesk для хранения и передачи двумерных и трехмерных чертежей. Благодаря широкой... Читать 30 июля 2026 Как из FastReport .NET экспортировать отчет в PostScript FastReport .NET поддерживает экспорт отчетов во множество популярных форматов, таких как PDF, Excel, Word и другие. Однако для задач профессиональной полиграфии, работы с плоттерами или... Читать Все статьи Популярные вопросы Зачем нужны генераторы отчетов и OLAP-инструменты аналитики? Любая бизнес-система собирает и накапливает данные в каком-то виде. К сожалению, этот вид удобен для хранения, но не удобен для представления, получения важной информации, принятия решения человеком. Наши инструменты, решения и библиотеки позволяют именно делать данные информативными. Это могут быть документы или таблицы - структурированные так, как это нужно и удобно пользователям для их специфических задач. Что делает компания ООО «Быстрые отчеты»? Мы создаем генераторы отчетов и другие инструменты для программистов, разработчиков бизнес-приложений. Что такое генератор отчетов? Генераторы отчётов - это библиотеки или самостоятельные приложения, которые связывают шаблон отчета с источником данных и формируют готовые документы на основании актуальных данных. В дальнейшем их можно экспортировать в различные форматы (PDF, DOCX, HTML, JPG и т.д.) или отправить на печать или хранение. Генератор отчётов делает из данных информацию (документ). Нам доверяют info@fastreport.ru Отдел продаж sales@fastreport.ru +7 (800) 551-75-80 +7 (863) 227-07-40 Офис Ростов-на-Дону, Россия ул. Обороны 24, офис 311, 344082 Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Реестр ПО ВБЦ СОУТ Декларация Реквизиты Согласие с обработкой ПД Политика конфиденциальности Не является публичной офертой Не является публичной офертой © 1998-2026 ООО «Быстрые отчеты» Ссылка успешно скопирована ### Внимание: новое поведение объектов URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/new-objects-behavior Summary: Внимание: новое поведение объектов Внимание: новое поведение объектов Это наконец-то произошло! По вашим просьбам мы изменили поведение наших объектов так, что ваши отчеты выглядели более живыми и реалистичными Внимание: это тестовая версия! Скачайте и наблюдйате, как оживают ваши старые привычные отчёты, сделанные в FastReport .NET! ### Возможности FastReport FMX URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/fast-report-fmx-comparison Summary: Возможности FastReport FMX Возможности FastReport FMX Возможности Embarcadero Windows macOS Linux Бэнды ✓ ✓ ✓ ✓ Встроенные датасеты ADO ✓ Встроенные датасеты BDE Встроенные датасеты IBX ✓ ✓ ✓ Встроенные датасеты DBX ✓ ✓ ✓ Объект фигура ✓ ✓ ✓ ✓ Текстовый объект ✓ ✓ ✓ ✓ Объект подотчёт ✓ ✓ ✓ ✓ Объект картинка ✓ ✓ ✓ ✓ Системный текст ✓ ✓ ✓ ✓ Диаграммы ✓ ✓ ✓ ✓ Баркоды ✓ ✓ ✓ Двумерные баркоды ✓ ✓ ✓ OLE-объект Объект Rich Text Градиент ✓ ✓ ✓ Кросс-таб ✓ ✓ ✓ Чекбокс ✓ ✓ ✓ Веб-компоненты Расширенные режимы печати Наследование отчётов ✓ ✓ ✓ ✓ Drill-downs ✓ ✓ ✓ ✓ HTML-теги в текстовых объектах ✓ ✓ ✓ ✓ Компонент предварительного просмотра ✓ ✓ ✓ ✓ Предварительный просмотр ✓ ✓ ✓ ✓ Дизайнер (для пользователя) ✓ ✓ ✓ Дизайнер (для разработчика) ✓ ✓ ✓ ✓ Диалоги ✓ ✓ ✓ Скрипт ✓ ✓ ✓ Экспорт в PDF  ✓ печать системы ✓ Экспорт в PNG, GIF, TIFF, JPEG, BMP ✓ ✓ ✓ без GIF/TIFF Экспорт в RTF ✓ ✓ ✓ Экспорт в XLS (OLE) Экспорт в XLS (XML) ✓ ✓ ✓ Экспорт в XLS (BIFF) Экспорт по Email Экспорт в CSV ✓ ✓ ✓ Экспорт в TXT ✓ ✓ ✓ Экспорт в ODS ✓ ✓ Экспорт в ODT ✓ ✓ ### Возможности Roslyn в Visual Studio 2015 Preview URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/new-blog-entry Summary: Новая запись в блоге: "Возможности Roslyn в Visual Studio 2015 Preview". Roslyn это платформа со своим API, доступная на GitHub. Новая запись в блоге: "Возможности Roslyn в Visual Studio 2015 Preview". Roslyn это платформа со своим API, доступная на GitHub. Выпуск Visual Studio 2015 Preview содержит новую версию компиляторов C# и VB. NET под названием “Roslyn”. Roslyn представляет собой полностью переписанные компиляторы C# и VB. NET; если раньше они были написаны на C++, то теперь компилятор C# написан на C#, а компилятор VB. NET, соответственно, на VB. NET. Также Roslyn полностью открыт, и его исходники доступны на GitHub. Используя прошлый компилятор, разработчик подавал исходные коды на вход, а на выходе получал IL, и повлиять на этот процесс не представлялось возможным. Новый компилятор следует идее Compiler-as-a-Service: теперь это целая платформа со своим API, позволяющая разработчику принять непосредственное участие в процессе компиляции. ### Возможности Roslyn в Visual Studio 2015 Preview URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/roslyn-features-visual-studio Введение Выпуск Visual Studio 2015 Preview содержит новую версию компиляторов C# и VB.NET под названием “Roslyn”. Roslyn представляет собой полностью переписанные компиляторы C# и VB.NET; если раньше они были написаны на C++, то теперь компилятор C# написан на C#, а компилятор VB.NET, соответственно, на VB.NET. Также Roslyn полностью открыт, и его исходники доступны на GitHub. Используя прошлый компилятор, разработчик подавал исходные коды на вход, а на выходе получал IL, и повлиять на этот процесс не представлялось возможным. Новый компилятор следует идее Compiler-as-a-Service: теперь это целая платформа со своим API, позволяющая разработчику принять непосредственное участие в процессе компиляции. Преимущества Теперь рефакторинг кода становится намного проще. Разработчики расширений Visual Studio могут использовать инфраструктуру Roslyn, чтобы не тратить время на написание своих парсеров и анализаторов. Roslyn может быть использован в .NET приложениях для компиляции и выполнения динамически сгенерированного кода. Roslyn может сильно помочь при переводе C# кода на другой язык программирования. Новые возможности основанные на Roslyn в VS 2015 Неиспользуемые директивы using отмечаются серым цветом.  Ctrl+. теперь содержит окно предпросмотра, позволяющее разработчику оценить результат выполнения команды. В меню Ctrl+. собраны новые команды для решения проблем с кодом и возможности для рефакторинга. Добавлены новые команды для рефакторинга: Inline temporary variable и Introduce local . В интерфейсе переименования доступен предпросмотр и показываются сообщения о возможных ошибках. Tags: Visual Studio, Visual Studio ### Вопросы после Российского вебинара и конференции "Кросс-Платформа". URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/russian-webinar Друзья! Я хотел бы поблагодарить всех, кто участвовал в вебинаре по кросс-платформенным отчётам, проводимом Embarcadero Tecnologies, а также участников первой конференции "кросс-платформа" в Москве 5 июня. Дэвид Интерсимоне и Денис Зубов обсудили FastReport for FireMonkey Вот здесь, можно ознакомиться со слайдами презентации, кроме того, огромное спасибо за множество вопросов, ответы на которые, как и обещал, я выкладываю тут. Q: Возможна ли "безболезненная" конвертация из Rave в Fast A: Нет, данные продукты слишком сильно различаются. Полная конвертация не возможна. Q: Имеется ли в объектах DataMatrix баркод ? A: Будет в новой версии. Q: поддерживается ли экспорт кириллицы ? A: Практически все экспорты на данный момент используют юникод. У нас есть отчёт с юникодом, можете посмотреть, к примеру, как экспортируется он не только штатными возможностями, но и встроенным PDF-экспортом MacOS (из окошка печати). Q: Чтобы Вы порекомендовали для начинающих разработчиков? Есть ли мануалы на русском языке? A: Да, конечно, все руководства у нас доступны бесплатно на сайте. В том числе и на русском, т.к. бОльшая часть наших разработчиков - русскоязычные. Q: Ну т.е. VCL-версия будет всегда на шаг дальше? A: VCL и FMX - варианты делает одна команда. Q: х64 версия? A: Есть начиная с осени 2011 года. Тогда же, когда появилась такая возможность в Delphi Q: В таком случае не совсем понятно, как редакции FastReport коррелируются с редакциями Delphi. Получается, что пользователи Delphi Architect используют FastReport Basic... A: Никак. Это редакция (Embarcadero Edition) по которой компании Embarcadero Technologies и Fast Reports достигли соглашения. Старшие редакции FastReport VCL идут отдельно. Q: Когда планируется выход релиза? A: FastReport FMX - этим летом. Q: Очень не плохо было бы в фичах добавить HTML тэг перенос строки
A: Зачем ? Мемо поддерживает переводы строки. Q: имеется БОЛЬШОЙ проект 8 летней давности с версией FR 2.4, есть какие нибудь упрощенные методы пересбора проекта под новую версию FR4, или проект пересобирать ручками и больше никак? A: В основном ручками, отчеты можно частично сконвертировать. Q: когда программист начинает зарабатывать деньги, он всегда приобретет лицензию на продукт, которым пользуется A: trial-версии FastReport позволяют сделать "прототип" проекта, а затем уже, к коммерческой версии, приобрести полную версию. Q: А Вы не рассматривали возможность поддерживать FastReport на Free Pascal ? A: В вебинаре Embarcadero - без комментариев. Q: Полное совместимость нового FR с С++ Builder или версия для Builder имеет какие-то ограничения? A: Версия для Builder идентична версии для Delphi. Q: А как обстоят дела непосредственно с дизайнером отчетов под FMX ? A: Дизайнер будет отличатся от версии VCL. Q: Может вопрос не в тему, но все таки. Как вы боретесь и боретесь ли вообще с ломаными версиями фастрепортса (или так называемые фуллсурс), которые выкладывают на торрентах. Ведь многие программисты предпочитают качать именно фуллсурс и пользоваться ими, чем платить. Это русский менталитет A: Full Sources - у нас две редакции (FastReport VCL Professional и FastReport Enterprise) лицензируются с полными исходными кодами. Нужно понимать, что эти версии ломаными не являются. Нельзя получить читаемый исходник из скомпилированной демки, например. То есть это полная версия (ну, ежели, конечно, это FastReport, а не какой-нибудь добрый троян или троян "в довесок"), лицензию на которую приобрела какая-то организация/человек, и которая появилась в открытом доступе. Раз вы его нашли, то и наша служба безопасности его находит, достаточно несложно выяснить, кто именно приобрёл, а потом нарушил лицензионное соглашение. После чего к нарушителю применяются законные меры. Не подставляйте, пожалуйста, ваших работодателей, коллег, себя. И я бы не стал возводить воровство в ранг особенностей русского менталитета. В самом начале мая я помогал группе из немецкого университета Saarbrugge подготовиться по курсу кросс-культурных коммуникаций. Они изучали особенности культуры, как вести бизнес в России. Опытнейший немецкий профессор на коррупцию как культурную особенность России (коррупция же - тоже вид воровства?) сказал, что не надо путать культурные особенности со стратегическими. Сегодня для западного крупного бизнеса вхождение на Российский рынок сопряжено с коррупцией на государственном уровне. Пример с IKEA в Самаре - свеж. Но это вопросы - не культурные. Вот, скажите, у вас в культуре (да - именно у вас лично!) есть такая особенность, как СВОРОВАТЬ что-нибудь? Эти особенности - не от хорошей жизни, более того - любой программист с огромной радостью будет пользоваться именно законно приобретённым софтом. Некоторый нигилизм, бунтарство, свободолюбие - да, это есть. Поэтому, к примеру, всякие акции по принуждению к оплате софта (а зачастую - безальтернативного - типа софта для подачи деклараций в налоговую) - несомненно вызывают протест. Но воровство - нет уж! Q: это так задумано в общем или в будущем все таки планируется встроить компонент дизайнера в палитру компонентов фрирепортс A: Если мы уже о FreeReport - то там дизайнер есть. Если о FastReport Embarcadero Edition - там есть дизайнер для разработчиков. А дизайнер отчётов для конечных пользователей есть в редакции Standard и выше. Q: Тот фастрепортс, который идет в комплекте с рад студио я так понял он обрезан? По крайней мере там отсутствует компонент дизайнер. Т.е. в саму программу нельзя встроить дизайнер, дабы из под самой программы редактировать отчеты. A: Достаточно приобрести лицензию FastReport VCL Standard или выше, в которых такие возможности предоставляются. Q: А каждый видит только свои вопросы? Или можно увидеть все заданные? A: Вот здесь можно. Q: Fast Reports давно ведет разработку Fast Report 5 для VCL и на конференции (в Ростове на Дону) были анонсированы многие новшества. Скажите, Fast Report for Fire Monkey построен уже на базе этих новшеств либо он дублирует все возможности/архитектуру Fast Report 4 VCL ? Ну и больной вопрос - Fast Report 5 VCL , когда ? A: Планируем переключится обратно к разработке 5 -й версии сразу после выхода FMX версии. Q: Как будет распространяться FR для FireMonkey? Войдет-ли в состав Delphi? Будет-ли идти бонусом для покупателей полных версий FR или нужно будет покупать отдельно? A: Скидки на FastReport FMX для наших пользователей будут. Q: При переходе на 5-ю версию, можно ли будет рассчитывать на выпуск FreeReport на основе 3-й версии? A: Нет Q: Здравствуйте! Как сделать в случае, когда GroupFooter переноситься на новую страницу без записей MasterData, присоединить к GroupFooter хотя бы последнюю запись из MasterData? A: Для GroupFooter такого функционала нет, можно только держать всю группу вместе. Q: FastReport.FMX и FastReport.VCL будут распространяться как два разных продукта или будет редакция, включающая и FMX, и VCL? A: Да, это всё-таки два разных продукта. Q: Есть в вашем докладе "минусы" (нереализованные возможности) FastReport FMX относительно FastReport VCL. В частности, OLE, RTF. Планируется ли подтягивать эту функциональность? A: OLE на Mac OSX? Нет. На докладе я не только рассказываю что-то и отвечаю на вопросы, но и сам задаю вопросы. Авторы самых интересных ответов (и вопросов) из зала награждаются. Tags: FMX, FastReport ### Вручение наград регионального хакатона IT Tech 2022 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/IT-Tech-hackathon-2022 Summary: Подведены итоги регионального хакатона системы среднего профессионального образования Ростовской области «IT Tech 2022». Подведены итоги регионального хакатона системы среднего профессионального образования Ростовской области «IT Tech 2022». С 16 по 18 декабря в Ростовской области, на базе Ростовского-на-Дону колледжа связи и информатики, прошёл хакатон «IT TECH 2022», в котором приняли участие 127 студентов колледжей и техникумов, а также учащиеся общеобразовательных организаций Дона (всего 36 команд). В этом году впервые приняли участие школьники, навязав серьёзную конкуренцию старшим участникам. В последнее время, именно хакатон становится всё более популярным форматом проведения мероприятий в ИТ-среде. Он позволяет придумывать и воплощать новые идеи и проекты, способные совершить в будущем цифровой прорыв. Компания «Быстрые отчеты» является постоянным организационным спонсором этого яркого мероприятия. Наши эксперты оценили работу участников в номинации «Прикладные решения для бизнеса». Победила команда «KOSTILL TEAM»: Скуратов Михаил, Назарько Николай (ГБПОУ РО «РКСИ»), которая представила очень качественное и современное решение. Поздравляем всех победителей и участников хакатона! ### Встречайте Хэллоуин с FastReport Business Graphics.NET! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/halloween-2022 Summary: Мы подготовили для вас праздничную версию FastReport Business Graphics .NET с самыми жуткими данными. Счастливого Хэллоуина! Мы подготовили для вас праздничную версию FastReport Business Graphics .NET с самыми жуткими данными. Счастливого Хэллоуина! Что может быть хуже, чем работа с нечитабельными данными? Наверное, самое противное - это неинформативные сведения. Для того чтобы вы не столкнулись с такими данными, мы подготовили для вас праздничную версию FastReport Business Graphics .NET ! Тематические цвета и новый дизайн придадут вашим данным новый вид в нашей красочной Хэллоуинской версии. Успейте протестировать наше демо-приложение для Хэллоуина! Посмотрите на примеры данных с праздничной атмосферой: Получить Хэллоуин-версию FastReport Business Graphics .NET можно здесь . Если у вас остались вопросы, то вы можете задать их нашим менеджерам . ### Вторая неделя мастер-классов с Фаст Репортс на 8 недельном хакатоне URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/hackathon-2022-2 Summary: Представители Фаст Репортс выступили с докладами на 8 недельном хакатоне в ЮФУ при поддержке Фонда развития IT-образования Ростовской области. Представители Фаст Репортс выступили с докладами на 8 недельном хакатоне в ЮФУ при поддержке Фонда развития IT-образования Ростовской области. 16 апреля состоялся второй поток лекций 8 недельного хакатона. На форуме выступали 2 наших представителя: Руслан Абдуллоев, продакт-менеджер, с докладом о генерации документов с помощью FastReport .NET, а также Алла Шлюпкина, менеджер образовательной программы, с мастер-классом "Как собрать ИТ-команду для реализации проектов". Подробнее о хакатоне в группе  ВКонтакте . ### Вторая российская конференция по Firebird и InterBase URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/seminar-warsaw-2007 Summary: Вторая российская конференция по Firebird и InterBase Вторая российская конференция по Firebird и InterBase 23 ноября 2007 года в Москве, в гостинице Измайлово Гамма-Дельта, пройдет вторая российская конференция по Firebird и InterBase. В конференции примут участие ведущие разработчики Firebird Дмитрий Еманов, Владислав Хорсун и Алексей Пешков, руководитель компании iBase Дмитрий Кузьменко, менеджер по продуктам CodeGear Borland Алексей Ковязин, Михаил Филиппенко (Fast Reports), Сергей Востриков (FIBPlus), а также другие известные разработчики и профессионалы из мира Firebird и InterBase.  Свои доклады также представят ведущие производители инструментов и программного обеспечения, а создатели успешных проектов на основе Firebird поделятся опытом своих решений.  Вторая конференция по Firebird и InterBase проводится в рамках всемирной серии событий, посвященных Firebird при поддержке и участии Fast Reports:  http://firebirdsql.org/en/news/ Конференция платная, стоимость включает в себя конференционный пакет с материалами, а также кофе-брейки и обед. Продолжительность конференции 1 день.  ### Вывод заданного количества записей на странице отчета URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/display-estimated-number-records Summary: Для вывода максимального количества записей на странице с помощью скрипта отчета существует скрипт. Посмотрите, как его использовать Для вывода максимального количества записей на странице с помощью скрипта отчета существует скрипт. Посмотрите, как его использовать Для вывода максимального количества записей на странице с помощью скрипта отчета существует скрипт. Посмотрите, как его использовать Функция ограничение количества выводимых строк часто вызывает затруднение у пользователей FastReport.Net, несмотря на то, что она является достаточно простой. В данной статье будет представлен вариант  вывода максимального количества записей на странице с помощью скрипта отчета. Необходимо отметить, что скрипт является достаточно простым в работе при наличии базовых знаний программирования. Итак, для наглядности, рассмотрим демонстрационный отчет: Список будет формироваться при помощи системной переменной [#Row]. В свойствах бэнда «Данные» устанавливаем значение «RowCount» в 25. Теперь данный список будет состоять из 25 строк. Рассмотрим нижеприведенный отчет: Поставленная задача - выводить по 5 строк на страницу. Для бэнда «Данные» задаем событие «BeforePrint». Теперь, перейдем к редактору скрипта отчета.  Пишем следующий код: ``` public class ReportScript { int counter = 0;   private void Data1_BeforePrint(object sender, EventArgs e) { if (counter >= 5) { Engine.StartNewPage(); counter = 0; } counter++; } } ``` Обратите внимание, что переменная «counter» объявлена глобально. Как видно на примере перед каждым отображением данных проверяется счетчик «counter». По достижении 5 строк, создается новая страница отчета, а счетчик обнуляется. Таким образом, можно получить 5 страниц со списками из 5 строк. Так как на странице будет список, состоящий всего из 5 строк, устанавливаем автоматическую высоту страницы отчета: Свойство «UnlimitedHeight» позволит уменьшить высоту страницы в нашем случае. Теперь запустим отчет: Скрипт отчета является действительно гибким инструментом. Добавив всего 5 строчек кода, был достигнут желаемый результат. Tags: .NET, FastReport, .NET, FastReport ### Выделение текста цветом по клику мышью URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/highlight-text-clicking Summary: Если вам хочется выделить некоторые строки цветом,просматривая свои электронные отчеты. Существуют 2 способа, как это сделать по клику мыши. Если вам хочется выделить некоторые строки цветом,просматривая свои электронные отчеты. Существуют 2 способа, как это сделать по клику мыши. Если вам хочется выделить некоторые строки цветом,просматривая свои электронные отчеты. Существуют 2 способа, как это сделать по клику мыши. Зачастую, просматривая свои электронные отчеты, вам хочется выделить некоторые строки цветом, как вы бы сделали это с бумажным вариантом при помощи выделителя. Ну что же, это действительно возможно. В режиме предварительного просмотра отчета можно выделять нужные текстовые поля с помощью клика мыши. То есть, вы кликаете на текстовое поле и его цвет изменяется. При повторном нажатии выделение цветом исчезает. Я покажу вам два способа как это сделать, и оба они подразумевают использование скрипта отчета. Способ 1. Суть этого способа заключается в использовании sender (объекта, который вызвал событие) для присвоения нового цвета в обработчике события OnCklick.  При этом, нужно обновить страницу отчета в кэше, т.к. режим предварительного просмотра отображает отчет из него. Итак, создадим простейший отчет со списком товаров: Допустим, мы хотим выделять цветом одно из полей при нажатии мышью. А также убирать выделение при повторном нажатии на него. Для текстового объекта, в котором выводится поле Products.ProductName, создаем событие Click. ``` private void Text1_Click(object sender, EventArgs e) { if (sender is TextObject) { //Определяем sender как TextObject TextObject obj = sender as TextObject; //Метод перекрашивания объекта цветом SwitchColor(obj); if(Report.Preview != null) { //Обновить текущую страницу отчета в кэше, если отчет просматривается на десктопе Report.PreparedPages.ModifyPage(Report.Preview.PageNo - 1, obj.Page as ReportPage); //Перерисовать превью Report.Preview.Refresh(); } } }   private void SwitchColor(TextObject obj) { //Проверяем имеет ли объект желтую заливку if (obj.Fill is SolidFill && (obj.Fill as SolidFill).Color != Color.Yellow) //Заливаем желтым obj.Fill = new SolidFill(Color.Yellow); //Очищаем заливку else obj.Fill = new SolidFill(Color.Transparent); }   ``` Как вы видим, из события нажатия мы берем объект sender, определяем его как текстовый объект и изменяем его заливку. Затем, перерисовываем страницу отчета в кэше. В случае, если у нас веб отчет, мы просто изменяем заливку объекта, без перерисовывания страницы отчета. Рассмотрим альтернативный способ. Способ 2. Суть этого способа заключается в определении координат объекта, который мы будем заливать цветом. Затем мы обновляем страницу отчета в кэше, как и в первом способе. ``` private void Text1_Click(object sender, EventArgs e) { if (sender is TextObject) { // Получаем номер текущей страницы int pageNo = Report.Preview.PageNo - 1; // Получаем саму страницу по номеру ReportPage page = Report.PreparedPages.GetPage(pageNo); // Определяем sender как TextObject – это фантомный объект, нам же нужен оригинальный объект из страницы предварительного просмотра TextObject obj = sender as TextObject; // Ищем оригинальный объект на странице предварительного просмотра foreach(ReportComponentBase b in page.AllObjects) // Нужно идентифицировать объект по имени и координатам if (b.Name == obj.Name && b.AbsTop == obj.AbsTop && b.AbsLeft == obj.AbsLeft) { // Получаем оригинальный объект obj = b as TextObject; break; } // Задаем заливку объекта if (obj.Fill is SolidFill && (obj.Fill as SolidFill).Color != Color.Yellow) obj.Fill = new SolidFill(Color.Yellow); else obj.Fill = new SolidFill(Color.Transparent);   // Обновляем страницу отчета в кэше Report.PreparedPages.ModifyPage(pageNo, page); // перерисовываем превью Report.Preview.Refresh(); } }   ``` Продемонстрируем работу этого кода: Этот способ объективно сложнее, и работает только для режима предварительного просмотра. Однако, в нем есть свои преимущества. Допустим вы хотите выделить цветом не только текстовый объект, на который вы нажали, но и всю строку в таблице. Тогда добавляем еще один текстовый объект поверх того, на который мы будем кликать. Растягиваем его на всю ширину строки. Тут важно, чтобы левая граница добавляемого текстового объекта совпадала с левой границей текстового объекта, для которого мы создали событие Click. Делаем правый клик по нему. И выбираем из меню: Тем самым передвигаем этот объект на задний план, чтобы он не перекрывал другие текстовые поля. Модифицируем немного наш предыдущий код: ``` if (b.AbsTop == obj.AbsTop && b.AbsLeft == obj.AbsLeft) { // Получаем оригинальный объект obj = b as TextObject; break; }   ``` Из условия я убрал сравнение по имени и оставил лишь сравнение по координатам начала поля. А теперь запустим отчет и нажмем на название какого-нибудь продукта: Таким образом, оба способа жизнеспособны. Первый – проще, но позволяет выделять только конкретный объект, который мы получаем в sender. Второй – сложнее, но позволяет выделять цветом не только объект из sender, но и другие. Нужно лишь указать их координаты. В веб отчете вы сможете использовать только первый способ. Конечно же вы можете не только изменять цвет фона, но и цвет, стиль или шрифт самого текста. Кроме того, все подобные модификации отчета сохранятся при экспорте в любой из поддерживаемых форматов, например в PDF. Надеюсь вам пригодятся этот небольшой лайфхак. Tags: .NET, FastReport, Интерактивность, .NET, FastReport, Интерактивность ### Выделение четных строк цветом фона URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/highlighting-even-rows-reports Очень часто для удобства просмотра табличных данных прибегают к выделению цветом фона четных строк таблицы. Если отчет предполагается в дальнейшем печатать на бумаге или выгружать в Excel, то не всегда отображение располосицы в таблице будет уместным. Есть способы управлять отображением располосицы в процессе построения отчета. Способ №1 Открываем дизайнер отчетов и создаем располосицу в нужном нам отчете: заходим в редактор стилей в верхнем меню Report-Styles, там добавляем стиль с именем EvenRows и задаем ему нужный цвет фона. Затем нужно указать в свойствах  бэнда EvenStyle = EvenRows. Нужно задать параметр, который будет управлять выключением полосок. В дереве данных в дизайнере отчетов есть пункт Parameters. Нужно добавить новый параметр, к примеру, с именем EvenOff типа bool, а в Expression написать значение по умолчанию - false. В инспекторе объектов выбираем Report и кликаем на кнопку событий. Там делаем даблклик на пустое поле события StartReport - попадаем в редактор кода скрипта отчета. Добавляем следующий код: private void _StartReport(object sender, EventArgs e)     {        if ((Boolean)Report.GetParameterValue("EvenOff"))         Data1.EvenStyle = "";       else         Data1.EvenStyle = "EvenRows";     } Теперь можно управлять извне включением располосицы. Перед подготовкой отчета в методе экспорта в файл Excel нужно добавить строку: ...             webReport.Report. SetParameterValue("EvenOff", true);             webReport.Report.Prepare();             Stream stream = new MemoryStream();             webReport.Report.Export(new Excel2007Export(), stream); ... Способ №2 Существует также и другой способ изменения цвета фона при просмотре, который потребует создания дополнительных объектов в отчете. У всех объектов есть свойства Printable и Exportable, которые по умолчанию установлены в true и указывают будет ли наш объект выводиться на печать или экспортироваться в какой-либо формат. Можно создать текстовый объект с пустым содержимым и установить эти свойства как нам нужно. Далее необходимо назначить ему нужный цвет фона или стиль, как рассказано выше. Затем нужно расположить этот объект позади подсвечиваемых объектов. Для этого кликаем правой кнопкой мыши на нужный объект и выбраем нижний пункт меню "Send To Back". Помните о том, что подсвечиваемые объекты должны иметь прозрачный фон. Tags: .NET, FastReport, .NET, FastReport ### Выпуск FastCube .NET 2020.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-net-2020.2 Summary: Выпуск FastCube .NET 2020.2 Выпуск FastCube .NET 2020.2 Новые возможности уже ожидают в обновлении: - Добавлена поддержка платформы Mono. Начиная с этой версии мы добавляем поддержку Mono. - Значительные изменения: * До этого релиза мы поставляли пакет FastCube.Olap с зависимостью от библиотеки FastReport. Сейчас мы вынесли эту зависимость и собственно интеграцию с FastReport в отдельный пакет FastReport.Olap.Report для пдатформы .Net и FastReport.Olap.ReportMono для платформы Mono. Другие изменения: * Редактор выражений теперь показывает имена измерений/показателей/полей вместо их заголовков. Решены ошибки: - Ошибки в выражениях не вызывают Exception; - Ошибки в выражении ExpressionHighlight не вызывают Exception; - Ошибка добавления элемента в группу; - Ошибка отображения значений на диаграммах в некоторых локалях; - Поправлен расчет агрегата "List of values"; - Поправлен расчет агрегата "Median"; ### Выпуск FastCube VCL 2021.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-2021.1 Summary: Поддержка новой Rad Studio 11 Alexandria. Кроме этого мы улучшили работу с интерфейсом - появились новые пункты в контекстных меню, улучшили возможности поиска значений. Поддержка новой Rad Studio 11 Alexandria. Кроме этого мы улучшили работу с интерфейсом - появились новые пункты в контекстных меню, улучшили возможности поиска значений. Новые возможности Поддержка новой Rad Studio 11 Alexandria. Кроме этого мы улучшили работу с интерфейсом - появились новые пункты в контекстных меню, улучшили возможности поиска значений. Также обновлены языковые ресурсы и исправлены ошибки. Переход на подписочную модель Начиная с версии 2021.1, все редакции FastCube распространяются по подписке. Это обеспечит доступ ко всем возможностям самых актуальных версий, пока ваша подписка действительна. Добавлена поддержка Embarcadero Rad Studio 11 Sydney Начиная с этой версии мы добавляем поддержку Embarcadero Rad Studio 11 Alexandria. Изменения в SliceGrid Добавлен пункт "Копировать" в контекстное меню оси, который копирует в буфер обмена значение измерения. Добавлена возможность позиционирования в оси на значение выбранное по двойному клику в выпадающем списке значений. Добавлен поиск в выпадающем списке значений по вставке из буфера обмена. Изменения в отчетах Добавлены свойства PreviewOptions, ReportOptions, PrintOptions в класс TfcxpSliceGridReport. Другие изменения Изменен шрифт некоторых форм с "MS Sans Serif" на "Tahoma". Обновлены ресурсы Чешской локали. Обновлены ресурсы Греческой локали. Ошибки Исправлена отрисовка в выпадающем списке значений при измененном стиле. Замена отрисовки заголовка (D10.4 bug). Access violation при двойном клике на редакторе функции в настройках изменения. Stack overflow при выпадении длинного списка. ### Выпуск FastReport VCL 5.0 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-5-released Summary: Расскажем, что нового в FastReport VCL 5 - следующем поколении генераторов отчетов Расскажем, что нового в FastReport VCL 5 - следующем поколении генераторов отчетов Классы: - Новые типы заливки у объекта "Текст": Градиент и Стекло. - Объект «Текст» может иметь несколько условий выделения. Они включают в себя настройки рамки, шрифта, заливки и видимость объекта. Вы можете включать и выключать каждую настройку. - У объекта «Текст» теперь есть несколько настроек форматирования. Когда в тексте содержится несколько выражений, можно указать формат для каждого из них.  - Добавлено свойство Filter у датабэндов. Можно отфильтровать строки данных без использования скрипта. - Изменения в формате отчета: наборы данных, переменные, форматы, условное выделение хранятся в виде вложенных свойств и стали более удобочитаемыми. - В объекты отчета добавлены события мыши: MouseEnter, MouseLeave. - Добавлено свойство Visibility (vsPreview, vsPrint, vsExport) у объектов отчета. Новые объекты: - Новые 2D штрихкоды - PDF417, DataMatrix и QR-code. - Новые штрихкоды - Code128, EAN128 с автоматической кодировкой. Интерактивность: - Новые интерактивные типы отчета: детальный отчет и детальная страница. При клике на интерактивный объект, новый отчет создается и отображается в отдельной вкладке окна предпросмотра. - Добавлена интерактивность в объект Chart. Детальный отчет можно вызвать через клик по объекту Chart. Экспорты: - В PDF-экспорт улучшено встраивание шрифтов: вместо целого шрифта встраивается только используемое в отчёте подмножество символов шрифтов. Это позволяет значительно сократить размер файла - Новые экспорты: HTML5 (div), DOCX, XLSX, PPTX. - Улучшение в форматах экспорта RTF, XLS, XML, HTML, ODF: поддержка разных типов линий рамки в объекте "Текст". GUI: - Новые иконки в окне предпросмотра и в Дизайнере отчетов. - Улучшен внешний вид дерева данных. Новые иконки для различных типов полей. - Новые/улучшенные диалоги: условное выделение, граница, заливка, редактор гиперссылок. Клиент/Сервер: - Новый навигационный тулбар с поддержкой сенсорных экранов - Взаимодействие с сервером по технологии AJAX - Оптимизирован протокол обмена браузера с сервером - Уменьшено время отклика сервера ### Выпуск журнала "The InterBase and Firebird Developer Magazine" URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/firebird-developer-magazine-2005 Summary: Вышел первый номер журнала "The InterBase and Firebird Developer Magazine". Это бесплатный электронный журнал на английском языке Вышел первый номер журнала "The InterBase and Firebird Developer Magazine". Это бесплатный электронный журнал на английском языке Вышел первый номер журнала "The InterBase and Firebird Developer Magazine". Это бесплатный электронный журнал на английском языке, посвященный разработке баз данных InterBase/Fiebird. Скачать первый номер можно с сайта  www.ibdeveloper.com ### Выпуск новой версии FastCube .NET 2025.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-net-2025.1 Summary: Встречайте новый релиз FastCube .NET 2025.1 — перезапуск продукта с множеством ключевых изменений. Встречайте новый релиз FastCube .NET 2025.1 — перезапуск продукта с множеством ключевых изменений. Встречайте новый релиз FastCube .NET 2025.1 — перезапуск продукта с множеством ключевых изменений. Это мажорное обновление включает важные улучшения в архитектуре, поддержку новых платформ и расширение возможностей для разработчиков OLAP-компонентов.    Убрана зависимость от библиотеки System.Drawing.Common в FastCube.Core Одним из ключевых изменений в релизе FastCube .NET 2025.1 стало полное удаление зависимости от библиотеки System.Drawing.Common в модуле FastCube.Core . Этот шаг был предпринят с целью повышения совместимости библиотеки с различными платформами и улучшения производительности. Графические возможности, которые раньше реализовывались через System.Drawing.Common , были переработаны. Теперь FastCube .NET использует более современные и кросс-платформенные подходы для работы с визуализацией данных и другими элементами интерфейса. В частности, работа с чартами и визуальными компонентами была вынесена в отдельные библиотеки. Это даёт больше гибкости в управлении зависимостями и использовании графики в отчётах. В новой версии для указания шрифта в стилях FastCube .NET необходимо использовать класс FastFont вместо Font . Новая реализация шрифта не содержит какой-либо логики, и является только контейнером для данных. Движок OLAP вынесен в библиотеку FastCube.Core Одним из самых значительных изменений в релизе FastCube .NET 2025.1 стало полное выделение OLAP-движка в отдельную библиотеку — FastCube.Core . Если вам не нужны визуальные компоненты, то вы можете добавлять в свои проекты только библиотеку FastCube.Core, не подключая другие части FastCube. Это упрощает настройку и уменьшает количество подключаемых библиотек. Теперь FastCube имеет модульную архитектуру, где каждый компонент выполняет свою специфическую задачу. OLAP-движок, визуальные компоненты, работа с диаграммами и другие части библиотеки находятся в отдельных модулях. Для существующих проектов, где были подключены визуальные компоненты, никаких дополнительных действий делать не потребуется. Добавлена поддержка Linux и MacOS для FastCube.Core.Web В релизе FastCube .NET 2025.1 впервые добавлена полноценная поддержка Linux и MacOS для веб-решений с использованием FastCube.Core.Web . Это важное расширение платформенной совместимости, которое позволяет запускать OLAP-приложения на серверах под управлением разных операционных систем. Доступна кросс-платформенная разработка. Теперь FastCube.Core.Web можно использовать не только на Windows, но и на Linux и MacOS. Это открывает возможность разрабатывать веб-приложения с OLAP-функциональностью на любом сервере. Поддержка Linux и MacOS позволяет легко интегрировать FastCube в контейнеры (например, Docker), что важно для масштабируемых веб-приложений и облачных решений. Вы сможете создавать универсальные веб-приложения, которые работают одинаково стабильно на разных операционных системах. Поддержка ARM (64 bit) для веб-компонентов В релизе FastCube .NET 2025.1 добавлена поддержка архитектуры ARM64 для веб-компонентов. Это расширение совместимости позволяет вам запускать веб-приложения с использованием FastCube на устройствах с процессорами ARM64, таких как Raspberry Pi, серверы и облачные решения на ARM64-архитектуре. Поддержка ARM64 также делает возможным использование FastCube в сценариях с низким энергопотреблением. Вынесение библиотек для работы с диаграммами и зависимостей от FastReport.DataVisualization В релизе FastCube .NET 2025.1 библиотеки, отвечающие за работу с диаграммами, и зависимости от FastReport.DataVisualization были вынесены в отдельные библиотеки FastCube.Mono.Chart и FastCube.WinForms.Chart . Это упрощает управление зависимостями и повышает гибкость при разработке приложений. Ранее функционал для построения диаграмм был встроен в основной пакет FastCube, что делало его обязательным даже для проектов, где диаграммы не использовались. Замена устаревшего IHostingEnvironment В релизе FastCube .NET 2025.1 был заменен устаревший интерфейс IHostingEnvironment на более современный IHostEnvironment . Это позволяет платформе адаптироваться к текущим требованиям разработки и подготовиться к будущим обновлениям .NET 9. XML-документация для всех исходных кодов В релизе FastCube .NET 2025.1 все исходные коды теперь сопровождаются XML-документацией, что существенно улучшает процесс разработки и интеграции компонентов библиотеки. Мы стремимся повысить удобство работы разработчиков и улучшить понимание кода. Онлайн документация Изменение скриптового движка В релизе FastCube .NET 2025.1 был обновлён скриптовый движок. Это изменение значительно улучшает работу со скриптами и повышает стабильность системы. Скриптовой движок для .NET 6 теперь основан на Roslyn. С новым свойством ReferencedAssemblies в статическом классе FastReport.Olap.Utils.Config можно контролировать список подключаемых сборок к скрипту. Другие критические изменения В новом релизе из-за переработки архитектуры движка часть методов и типов устарели, они не относятся к OLAP функционалу и были удалены. Подробный список изменённых методов и типов можно найти по ссылке ниже. Полный список Полный список изменений + добавлено новое демонстрационное приложение, показывающее возможность сохранить и загрузить куб в WEB;  + добавлена xml документация для пакета FastCube.WinForms; + добавлена xml документация для пакета FastCube.Mono; + добавлена xml документация для пакета FastCube.Core.Web; + добавлена xml документация для пакета FastCube.Core; + добавлена xml документация для пакета FastCube.WinForms.Chart; + добавлена xml документация для пакета FastCube.Mono.Chart; + добавлена xml документация для пакета FastCube.Mono.Report; + добавлена xml документация для пакета FastCube.WinForms.BusinessGraphics; + добавлена xml документация для пакета FastCube.WinForms.Report; + добавлена XML документация для пакета FastCube.Core.Web; + добавлена статья с описанием минимальных системных требований; + добавлена статья с описанием пакетов; + добавлена библиотека совместимости с FastReport.DataVisualization для отображения диаграмм срезов FastCube.Winforms; + добавлена библиотека совместимости с FastReport.DataVisualization для отображения диаграмм срезов FastCube.Mono; + добавлено демо-приложение для докер-контейнера Linux; + добавлена поддержка Linux для пакета FastCube.Core.Web; * обновлены скрипты сборки; * изменён способ регистрации плагинов, теперь плагины не могут быть загружены дважды автоматически; * теперь FastCube.WinForms и FastCube.Mono не самостоятельные пакеты, ядро OLAP компонента полностью вынесено в FastCube.Core; * изменены скрипты в трёх кубах для совместимости с .NET 8 и .NET 9; * изменена структура документации, некоторые разделы перенесены в корень; * папка Extras, которая хранит исходники пакетов совместимости, теперь доступна только в версии продукта с исходниками; * обновлено пользовательское соглашение; & обновлен конструктор скриптов для работы с .NET 6 и выше, это критическое изменение (breaking change) для всех новых пакетов FastCube .NET, если вы использовали Variant, то вместо строгой типизации в скрипте вам необходимо использовать только название самого класса Variant, так как в некоторых скриптах возникает конфликт между FastReport .NET и FastCube .NET, в скрипте включен по умолчанию только минимальный набор библиотек; & исправления безопасности в коде всех демонстрационных приложений; & исправления безопасности в коде компонента диаграммы для FastCube.WinForms; & исправления безопасности в коде компонента диаграммы для FastCube.Mono; - исправлен список подгружаемых dll в скрипт; - исправлены модификаторы доступа членов класса в FastCube.Core.Web; - исправлена зависимость от устаревшего IHostingEnvironment в FastCube.Core.Web; - класс Config и его методы библиотеки FastCube.Core.Web помечены как устаревшие, они больше не используются и не влияют на работоспособность компонента; - исправлен заголовок документации; - убран экспорт в BIFF8 в пакете FastCube.Core так как для этого экспорта необходим графический контекст; - убрана зависимость System.Drawing в пакете FastCube.Core, теперь пакет может быть использован для работы под Linux и MacOS. ### Выпуск новой версии FastReport .NET 2022.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2022.1 Summary: Состоялся выход версии 2022.1 в FastReport .NET. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.1 в FastReport .NET. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.1 в FastReport .NET. Было внесено большое количество новых возможностей и изменений. Новые возможности Добавлен новый объект "Улучшенная матрица": Вот список ключевых особенностей матрицы: заголовки строк и колонок могут содержать группы и простые элементы в произвольном порядке, что позволяет строить асимметричные отчеты; кнопки сворачивания позволяют интерактивно управлять видимостью отдельных элементов; кнопки сортировки позволяют интерактивно сортировать матрицу по выбранным значениям, в том числе по значениям итогов; группировка Top N позволяет отобразить N значений в заголовке, а остальные значения сгруппировать в отдельный элемент с возможностью разворачивания; вывод заголовков матрицы в ступенчатом виде; сортировка заголовков по значениям итогов; широкий набор агрегатных функций; поддержка пользовательских агрегатных функций; широкий набор специальных функций, позволяющих получить значения итогов, соседних ячеек, а также функции для расчета процентов; поддержка объектов "Искрографик" и "Индикатор прогресса" в ячейках данных. Подробнее о возможностях объекта смотрите в документации. Добавлены штрих-коды GS1 DataBar : Limited, Omnidirectional, Stacked и Stacked Omnidirectional. Новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных. Config.CompilerSetting.Placeholder - строковая переменная, которая используется для замены выражений с несуществующими именами. По умолчанию, значение этой переменной - пустая строка. Config.CompilerSetting.ExceptionBehaviour может иметь следующие значения: ExceptionBehaviour.Default - стандартное поведение, как и было ранее. При наличии ошибок с некорректными именами, выводится сообщение об ошибке. Подготовка отчета прерывается. ExceptionBehaviour.ReplaceExpressionWithExceptionMessage - некорректные выражения заменяются на текст сообщения об исключении. Ошибки при этом не выводятся. Подготовка отчета не прерывается. ExceptionBehaviour.ShowExceptionMessage - появляется сообщение с текстом исключения, после нажатия кнопки OK, подготовка отчета продолжается. При этом, неправильные выражения заменяются на значение переменной Placeholder. ExceptionBehaviour.ReplaceExpressionWithPlaceholder - некорректные выражения просто заменяются на Placeholder. Сообщений об ошибках нет. Подготовка отчета не прерывается. Пример при значениях переменных: ExceptionBehaviour = ExceptionBehaviour.ReplaceExpressionWithPlaceholder Placeholder = "НЕТ ДАННЫХ!" Здесь видно, что в таблице есть поле с именем FirstName, однако в выражении оно указано некорректно. А это результат подготовки такого отчета. Ранее его подготовить было бы невозможно из-за ошибок. Повышено качество трансляции RTF в объекты отчета. Преобразование RTF в объекты отчета оптимизировано. Добавлена трансляция RTF в ячейках таблиц. А также исправлено много ошибок. Улучшения экспорта Реализован экспорт водяных знаков в Word и RTF. Добавлено масштабирование SVG изображений в матрице экспорта. Это позволяет повысить качество экспортируемых изображений при экспорте в Word и Excel. Однако, при этом размер выходного файла увеличивается. Для использования этой возможности, необходимо включить опцию "Для печати" при экспорте. Реализован экспорт групп на отдельные листы в Excel 2007. В Excel 2007 добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте. Теперь можно определить как будет вести себя изображение в ячейке при изменении ее положения и размера. При этом изображение может: перемещаться и изменять свой размер вместе с ячейкой; перемещаться вместе с ячейкой, но не изменять свой размер; не перемещаться и не изменять размер; Реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97. В HTML-экспорте добавлена опция "Не поворачивать альбомные страницы при печати". Ранее мы принудительно поворачивали страницы с альбомной ориентацией при печати. Необходимо это было по причине того, что браузеры не умеют корректно печатать отчеты со страницами как в книжной, так и в альбомной ориентации. При печати таких документов, страницы с альбомной ориентацией обрезаются по ширине страниц с книжной ориентацией. Теперь, можно настроить, поворачивать страницы с альбомной ориентацией или нет. Кроме того, исправлена ошибка, при которой страницы с альбомной ориентацией поворачивались всегда, даже когда нет страниц с книжной ориентацией. Поддержка .NET 6 Добавлена поддержка .NET 6 для FastReport.Core и FastReport.CoreWin. Улучшения WebReport for Core и Blazor Server Настройки экспортов Добавлены возможности по настройке экспорта отчёта в необходимый формат из WebReport. При активации свойства webReport.Toolbar.Exports.EnableSettings рядом с кнопкой необходимого экспорта появится иконка настройки. При нажатии на эту кнопку отобразится окно со списком возможных настроек (экспортируемые страницы, свойства и др.). Окно настроек экспорта можно кастомизировать, используя свойства webReport.Toolbar.Exports.Color и webReport.Toolbar.Exports.FontSettings. Разделение разных страниц отчёта в закладки. Добавлена возможность открыть разные страницы отчёта (ReportPage) в разных вкладках WebReport. Для активации этой возможности, необходимо включить опцию webReport.SplitReportPagesInTabs. Статические стили в WebReport. Для возможности переопределить стандартные стили тулбара, outline и других элементов для собственной кастомизации были добавлены статические имена классов. К ним относятся: fr-toolbar, fr-toolbar-item, fr-toolbar-narrow, fr-toolbar-dropdown-content, fr-toolbar-zoom-selected, fr-toolbar-pointer, fr-toolbar-notbutton, fr-toolbar-slash. Полный список изменений [Engine] + добавлен новый объект AdvMatrixObject; + добавлены штрих-коды GS1 Databar: Limited, Omnidirectional, Stacked и Stacked Omnidirectional; + добавлены новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных; + добавлена трансляция RichObject внутри TableCell; * переработана трансляция RichObject в объекты отчёта; - исправлен ShiftMode транслированных из RTF текста объектов; - исправлена ошибка с двумя параметрами с одним именем приводящая к исключению System.ArgumentException; - исправлена ошибка с вложенным отчетом содержащим многоколоночный Databand; - исправлена ошибка с неверным расчетом высоты бэнда; - исправлена ошибка с отображением гиперссылок при конвертации RTF в объекты отчета; - исправлена трансляция RichObject если документ назначается из скрипта; - исправлена ошибка с шрифтами, добавляемыми в Config.PrivateFontCollection; [.NET Core] + добавлена поддержка .NET 6; - исправлен некорректный поиск Bold-Italic шрифтов; [Designer] + добавлена проверка вводимых данных в окне редактирования QR-кода СберБанка; - исправлена ошибка с переносом строки в редакторе текстового объекта; - исправлена ошибка конвертации отчетов rdl, содержащих матрицы внутри ячеек таблицы; - исправлена ошибка с направляющими линиями в дизайнере; - исправлена ошибка с окном "Дерево отчета"; - исправлена ошибка приводящая к System.NullReferenceException и падению дизайнера во время его запуска при включенной опции Авто-направляющие; [Preview] - исправлена ошибка со сдвигом позиции объектов при переключении вида бэндов во время редактировании подготовленной страницы; [Exports] + реализован экспорт водяных знаков в Word; + реализован экспорт водяных знаков в RTF; + добавлена опция "Не поворачивать альбомные страницы при печати" при экспорте в HTML; + добавлена возможность изменять имя прикрепляемого файла при отправке по Email; + добавлено масштабирование SVG изображений в матрице экспорта; + добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте в Excel 2007; + реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97; + реализован экспорт групп на отдельные листы в Excel; + реализован экспорт уровня прозрачности изображений водяных знаков в Word; + реализован экспорт размера изображения водяного знака в RTF; - исправлена ошибка, приводившая к System.NullReferenceException при экспорте в текст, таблиц с количеством строк меньше одной; - исправлен некорректный левый отступ таблиц при экспорте в Word; - исправлена ошибка со шрифтом Wingdings в тегах HTML при экспорте в HTML; - исправлен баг с экспортом шрифтов Wingdings и Webdings в HTML; - исправлена ошибка с шириной фреймов при экспорте в PowerPoint; - исправлена ошибка экспорта объектов с прозрачной заливкой в RTF; - исправлена ошибка экспорта объектов с прозрачной заливкой в Word; - исправлена ошибка, приводящая к System.OutOfMemoryException при экспорте в PDF; - исправлено неправильное отображение переноса строки при экспорте в HTML; - исправлено переполнение памяти при экспорте в PDF; - исправлены ошибки в PDF-экспорте на системах, отличных от Windows; - исправлена ошибка с экспортом таблиц с количеством столбцов больше 63 в Word 2007; - исправлена ошибка приводящая к утечке памяти и исключению System.OutOfMemoryException в PDF-экспорте при включенной опции "Текст в кривых"; - исправлена ошибка с разрывом строки при экспорте в HTML; [WebReport] - исправлена ошибка с символом новой строки при использовании шрифта Wingdings; [WebReport Core/Blazor Server] + добавлены возможности настраивать свойства экспорта отчёта из WebReport. При активации свойства webReport.Toolbar.Exports.EnableSettings рядом с кнопкой необходимого экспорта появится иконка настройки; + добавлено свойство webReport.SplitReportPagesInTabs, которое позволяет разделить разные страницы отчёта (ReportPage) в разных вкладках WebReport; + добавлены статические имена классов для возможности переопределить стандартные стили тулбара, outline и других элементов; - исправлено обновление WebReport при вводе значения с клавиатуры в поле DateTimePicker; - исправлена ширина табов (tabs) при нестандартных размерах страницы отчёта; [Demos] + добавлена демо использования WebReport Core для .NET 5; + добавлена демо использования WebReport Core для Angular; + добавлена демо использования WebReport Blazor для Blazor Server; ### Выпуск новой версии FastReport .NET 2022.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2022.2 Summary: Состоялся выход версии 2022.2 в FastReport .NET. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.2 в FastReport .NET. Было внесено большое количество новых возможностей и изменений. Fast Reports NuGet-сервер Недавно мы запустили собственный NuGet-сервер - хранилище лицензионных продуктов Fast Reports для пользователей. Теперь вы можете удобно загружать последние версии наших компонентов на любой операционной системе. Подробнее читайте в статье . Добавлена поддержка интерактивности объекта "Улучшенная матрица" в WebReport: Во всех WebReport (.NET Framework, .NET Core, Blazor Server) появилась поддержка интерактивности для новой Улучшенной матрицы. Теперь в браузере корректно работают кнопки сворачивания и сортировки. Возможность сохранить отчет со случайными данными В меню файл в дизайнере отчетов появился новый пункт "Сохранить со случайными данными...". При таком сохранении отчета все источники данных будут сохранены в отчете и данные в них будут заменены на случайные. Подсветка пересекающихся объектов в дизайнере Теперь при размещении объектов на странице отчета выделяются цветом пересекающиеся объекты и объекты, выходящие за пределы бэндов и страницы. В корректном отчете не должно быть таких объектов. Несоблюдение этой рекомендации, может приводить к ряду проблем при подготовке и экспорте отчетов. По умолчанию эта опция отключена. Включить ее можно в настройках дизайнера Файл->Настройки (File->Options). Демонстрация работы подсветки ниже. Линейка с направляющими в редакторе RichObject Новый инструмент позволяет удобно настраивать отступы и позиции табуляции при редактировании RichObject. Подробнее читайте в статье . Добавлена консольная утилита конвертации RTF С её помощью можно удобно конвертировать RTF-файлы в шаблоны отчета. Возможность использовать файлы XLSX в качестве источников данных Теперь из файлов Excel 2007 можно получить данные как из базы данных и использовать их в отчете. Подробнее читайте в статье . Улучшения экспортов Опция "Закрепить ячейки" при экспорте в Excel 2007 Эта возможность, позволяет определить область листа, которая всегда будет видимой при прокрутке. Закрепить можно: первую строку, первый столбец, определенное количество строки и столбцов. Настройки выглядят так: А работает эта опция так: Поддержка ZPL II при экспорте в ZPL. Опция "Высокое качество SVG" в HTML-экспорте. При включении этой настройки качество изображений в формате SVG будет значительно выше при экспорте. Однако, нужно учитывать, что объем занимаемой памяти так же будет выше. Добавлен экспорт закладок и внутренних ссылок в Word. Реализован экспорт ширины символов табуляции в PDF, Word, HTML и RTF. Новое свойство PrefixStyle в SVG-экспорте. Это свойство позволяет задать префикс для всех стилей при экспорте в SVG. Добавлен экспорт формата чисел и дат в Excel 97. Экспорта ширины символов табуляции в PDF, Word, HTML и RTF. Полный список изменений [Engine] + добавлена возможность сохранить отчет со случайными данными; * в методе ExportBand теперь используется аргумент BandBase вместо Base; - исправлены ошибки с двойным вызовом событий AfterData, BeforePrint и AfterPrint объекта ContainerObject; - исправлена ошибка, приводящая к System.NullReferenceException при запуске отчетов с диалоговыми формами; - исправлена ошибка, из-за которой не работало свойство VisibleExpression у подотчетов и страниц; - исправлен баг со сдвигом по вертикали непересекающихся объектов при конвертации RTF; - исправлена ошибка с правым якорем на страницах с бесконечной шириной и альбомной ориентацией; - исправлена трансляция списков при конвертации RTF; - исправлена ошибка, из-за которой не работало свойство RichObject.AllowExpressions; - исправлена ошибка, приводящая к System.OverflowException при отрисовке неподготовленной бесконечной страницы; [Designer] + добавлена подсветка пересекающихся объектов; + добавлена линейка с направляющими в редакторе RichObject; + заменены символы пароля на точки в инспекторе объектов; + добавлено предупреждение о возможном переполнении стека при расположении Matrix или AdvMatrix на повторяющиеся бэнд; - удалено сообщение об ошибке, если текст штрих-кода содержит выражение; - исправлена ошибка с опцией отключения горячих клавиш; - исправлено выпадающее меню при нажатии на кнопку LineStyle и LineWidth; - исправлено отображение данных в дизайнере; - исправлены ошибки, приводящие к System.NullReferenceException при перетаскивании объектов на AdvMatrix; - исправлена ошибка с некорректным отображением настроек тени в редакторе границ; [Preview] - исправлена ошибка, приводящая к System.NullReferenceException, при щелчке по редактируемому текстовому объекту; - исправлена ошибка с неработающими гиперссылками в отчетах с многоколоночными бэндами; - исправлена ошибка, когда экспорт отчета, приводил к сохранению подготовленного отчета; - исправлена ошибка с настройкой списков доступных экспортов и экспортов в облака в PreviewControl; [Exports] + добавлен экспорт в ZPL II; + добавлена опция "Высокое качество SVG" в HTML-экспорте; + добавлена опция "Закрепить ячейки" при экспорте в Excel 2007; + добавлена возможность масштабирования печати при экспорте в Excel 2007; + добавлен экспорт закладок и внутренних ссылок в Word; + добавлен экспорт формата чисел и дат в Excel 97; + добавлено шифрование персональных данных пользователя в Email-экспорте; + добавлен экспорт отступа RichObject в RTF; + добавлен экспорт переноса строки RichObject в RTF; + добавлен экспорт отступа TextObject в Word; + добавлен экспорт ширины символов табуляции в PDF, Word, HTML и RTF; + добавлено свойство PrefixStyle в SVG-экспорте, которое позволяет задать префикс для всех стилей; * улучшен экспорт RichObject в Excel 2007; * удалены экспорты FastReport Cloud и XMPP; - исправлен некорректный поворот альбомной ориентации страниц при HTML-печати, если на них использовались стили с предыдущих страниц; - исправлена ошибка с масштабом шрифта при экспорте в PDF; - исправлена утечка памяти при экспорте SVG объектов в HTML с опцией "Высокое качество SVG"; - исправлена ошибка при встраивании шрифтов, для которых запрещена упаковка, в PDF-экспорте; - исправлена ошибка с экспортом символов табуляции в Word; - исправлена заливка фона изображения и свойство line-height в HTML-экспорте; - исправлена ошибка экспорта пользовательской пунктирной линии SVGObject в PDF; - исправлена ошибка с экспортом границ соединенных ячеек в SVG; [WebReport] + добавлена интерактивность расширенной матрицы в WebReport; - исправлена обработка отмены закрытия веб-диалога в событии OnFormClosing; [.NET Core] - исправлена ошибка с неработающей опцией "открыть после экспорта"; [WebReport Core] - теперь иконка DatePicker выглядит одинаково во всех браузерах; [Demos] + добавлено новое демо для Blazor, демонстрирующее работу с двумя отчетами; - исправлена ошибка, из-за которой не менялся курсор при наведении на ссылки в новом демо; - исправлена ошибка с AdvMatrix в новом демо; [Plugins] + добавлено подключение к Excel; - исправлен SQLite коннектор для FastReport.Core, FastReport.CoreWin и FastReport.OpenSource; - исправлена строка подключения к Firebird; [Extras] + добавлена утилита для конвертации RTF документов в шаблоны отчетов. (\Extras\Misc\rtf2frx). ### Выпуск новой версии FastReport .NET 2022.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2022.3 Summary: Поддержка Skia, валидатор отчёта, редактор FRX формата, конвертация отчетов из StimulSoft, улучшения экспортов с плагинами и многое другое. Поддержка Skia, валидатор отчёта, редактор FRX формата, конвертация отчетов из StimulSoft, улучшения экспортов с плагинами и многое другое. Встречайте новые возможности для ваших проектов! Была добавлена поддержка библиотеки SkiaSharp, проверка шаблона отчёта через валидатор, редактор FRX формата, конвертация отчетов из StimulSoft, улучшения экспортов с плагинами и многое другое. Поддержка Skia: Теперь FastReport.Core поддерживает отрисовку графики и текста с помощью библиотеки SkiaSharp, которая используется вместо System.Drawing.Common + libgdiplus на Linux системах (но также работает и на других операционных системах). Для этого используются пакеты с суффиксом .Skia: FastReport.Core.Skia FastReport.Web.Skia Эта версия ограниченно поддерживает .NET Framework и, в основном, рассчитана на .NET Core/.NET проекты. Для использования в вашем приложении достаточно сменить название пакета FastReport.Core -> FastReport.Core.Skia, а также добавить следующие пакеты для работы на Linux (на Windows и macOS необходимые пакеты добавляются автоматически): SkiaSharp.NativeAssets.Linux HarfBuzzSharp.NativeAssets.Linux Подробнее о поддержке Skia читайте в следующей статье. Валидатор отчета: В дизайнере отчета добавлена вкладка "Проверка" (справа, рядом с вкладками "Данные" и "Дерево отчета"). Здесь можно проверить шаблон отчета и получить список ошибок и предупреждений. Все это выводится в виде таблицы, в которой указано имя объекта (если оно есть) и описание ошибки. Если выделить строку в таблице, то в дизайнере будет выделен соответствующий объект. Ошибки и предупреждения могут быть следующих типов: объект без имени, объекты с одинаковым именем, пересекающиеся объекты, объекты с нулевой высотой или шириной, а также объекты, частично или полностью находящиеся за пределами родительского объекта. Объекты без имени и объекты с одинаковыми именами, являются критическими ошибками. Они могут приводить к различным ошибкам и даже падению приложения при подготовке отчета. К тому же, без валидатора эти ошибки очень сложно найти. Пересекающиеся объекты не являются серьезной ошибкой. В некоторых случаях могут быть полезными и использоваться целенаправленно (например, линии или прямоугольники). Пересекающиеся текстовые объекты, в большинстве случаев могут приводить к некорректным экспортам. Особенно в табличных экспортах, например Excel. В результате экспорта будет много лишних ячеек и так далее. С такими объектами надо быть осторожными. Объекты, частично выходящие за границы родительского объекта (например бэнда или страницы), тоже могут быть полезными в редких ситуациях. Но в большинстве случаев, приводят к ошибкам при подготовке и экспорте отчета. Объекты, полностью находящиеся за пределами родительского - ошибка серьезная. Найти такие объекты без валидатора, тоже очень трудно. Пересекающиеся объекты и выходящие за пределы родительских могут выделяться цветом (который теперь можно выбирать), если включена соответствующая настройка в меню Файл -> Настройки. Использовать проверку отчёта совсем не обязательно. Но это может быть полезным, когда ваш отчет работает или выглядит не так как хотелось бы. Подробнее о валидаторе отчёта читайте по следующей ссылке.  Редактор FRX Иногда возникает необходимость редактировать содержимое FRX-файла с помощью сторонних текстовых редакторов. Теперь вы можете это делать непосредственно в дизайнере отчета. Для этого был добавлен редактор FRX формата. По умолчанию он отключен. Чтобы включить редактор перейдите в меню «Файл -> Настройки». В дизайнере отчета, слева от вкладки Code появится вкладка FRX. Внесенные здесь изменения, будут сразу применяться к отчету и отображаться на его страницах. Подробнее о редакторе FRX читайте в следующей статье.  Конвертор отчетов из StimulSoft Добавлена возможность конвертировать шаблоны отчетов из StimulSoft в шаблоны FastReport .NET. В отчетах StimulSoft могут присутствовать объекты реализации, которые не поддерживаются дизайнером FastReport. Эти объекты не будут экспортироваться, либо будут заменены другими таким образом, чтобы построенный отчет был максимально похож на созданный в StimulSoft. Важно отметить, что импорт кросс-бэндов реализован выносом их содержимого в родительский бэнд. Подробнее о конвертации отчётов читайте в статье по следующей ссылке. Копирование диалоговых страниц Добавлена возможность копировать диалоговые страницы. Как с помощью контекстного меню диалоговой страницы, так и с помощью кнопки «Отчет -> Копировать страницу отчета». При копировании создается копия диалоговой страницы с уникальным именем. У всех дочерних объектов тоже будут уникальные имена. Однако обработчики событий у объектов будут те же, что и у исходной страницы. При необходимости нужно создать новые обработчики. Также теперь диалоговые страницы можно удалять не только с помощью кнопки «Отчет -> Удалить страницу», но и через контекстное меню в редакторе формы и дереве отчета. Отключение последних настроек форматирования При создании объекта в дизайнере его настройки будут применены к следующему созданному объекту того же типа. Например, если создать текстовый объект, настроить у него размер шрифта, границы, цвет заливки, то следующий текстовый объект будет создан с такими же настройками. Это удобно, когда нужно создавать несколько объектов с такими же или похожими настройками. В ситуациях, когда такое поведение дизайнера не нужно его можно отключить в меню «Файл -> Настройки». При этом объекты будут создаваться с настройками по умолчанию. Экспорт всех вкладок При просмотре интерактивных отчетов можно открывать детальные отчеты в новых вкладках. Здесь видно три открытые вкладки. Раньше экспортировалась только активная вкладка. Теперь можно экспортировать все вкладки в один файл с помощью новой опции "Экспорт всех вкладок". Подробное описание связанных сборок и установленных плагинов Теперь при наведении курсора мыши на dll в списке плагинов (Файл -> Настройки -> Плагины) и в списке ссылок на сборки (Отчет -> Свойства -> Скрипт), выводится подробная информация с описанием, версией, размером, датой создания и т.д. Улучшения экспортов Улучшения в экспорте в PDF: Linux версия: ­поддержка комплексных языков (арабский, иврит и пр.) в версии Skia. Все версии: поддержка Font Fallback (механизм автоматического выбора шрифта для вывода символов, которые не поддерживаются текущим шрифтом; точное позиционирование специальных символов, таких как огласовки и знаки ударения. Свойство UseFileStream в PDF-экспорте Добавлена новая опция UseFileStream для PDF-экспорта. Ее можно использовать только при экспорте из кода в файл. Эта опция полезна при экспорте отчетов с большим количеством страниц (несколько десятков тысяч) в нескольких потоках. Тем самым это позволит избежать ошибок с нехваткой памяти. В остальных случаях использование особого смысла не имеет. Пример: ``` Report report = new Report(); PDFExport export = new PDFExport(); export.UseFileStream = true; report.Export(export, "report.pdf"); ``` Выбор языка при экспорте в Word, PowerPoint, Rich Text, OpenOffice Write и OpenOffice Calc  Теперь в этих экспортах можно выбирать язык документа. По умолчанию используется язык, выбранный в дизайнере. Также добавлена опция "Показать линии сетки" в Excel 2007 экспорте. Полный список изменений [Engine] + добавлен конвертор отчетов из StimulSoft; + добавлено изменение имени источника данных JSON в выражениях при его переименовании; + добавлена конвертация свойства PaperSize при конвертации отчетов из StimulSoft; + добавлена проверка существования связанных сборок при конвертации отчетов из StimulSoft; + добавлено свойство PrintOnParent у объектов Table и Matrix; + добавлена загрузка параметров отчета при конвертации отчетов из RDL; + добавлена загрузка вложенных отчетов при конвертации отчетов из RDL; + улучшено быстродействие в отчетах, содержащих большое количество объектов; + добавлена возможность сохранить данные JSON подключения с помощью свойства StoreData; * изменен текст исключения при вычислении и форматировании выражения, если e.InnerException null; * при загрузке отчетов RDL, ширина страницы будет равна ширине секции только в случае, если ширины страницы нет; - исправлено вычисление длины кодировки DataMatrix C40 и текста; - обработано исключение System.ComponentModel.Win32Exception, при печати с отключенным "Диспетчером печати"; - исправлено скрытие границы изображения при печати с автоматическим размером; - исправлена ошибка переполнения стека при подготовке отчета с дочерним бэндом подвала страницы и включенной у него опцией начать новую страницу; - исправлен баг, при котором не передавался текущему отчету путь к базовому отчету на Unix ОС; - исправлена ошибка с созданием подотчета и страницы с одним именем при конвертации отчетов из StimulSoft; - исправлена ошибка с некорректными именами при конвертации отчетов из StimulSoft; - исправлена ошибка с TotalPages в Page.VisibleExpression, которая приводит к исключению при выключенном двойном проходе; - исправлена ошибка, при которой бэнд может расти за пределы страницы; - исправлена ошибка, при которой объекты могут расти за пределы бэнда или ContainerObject; - исправлена ошибка обратного отступа при трансляции RTF в объекты отчёта; - исправлен межстрочный интервал для текста транслированного из RichObject; - исправлена ошибка свойства ConnectionString в классе JsonDataSourceConnectionStringBuilder, когда информация приходила без заголовков запроса; [Designer] + добавлен валидатор отчета, который помогает находить некорректные объекты (повторяющиеся имена, отрицательные размеры и т.д.); + добавлен редактор для свойства RichObject.Text; + добавлен редактор FRX в дизайнере отчетов; + добавлено подробное описание связанных сборок и установленных плагинов; + добавлена возможность копировать диалоговые страницы; + добавлена возможность удалять диалоговые страницы через контекстное меню; + добавлена возможность отключить использование последних настроек форматирования при создании объектов; + добавлена интеграция с FastReport.Id; + добавлен вызов онлайн-документации в дизайнере отчетов; + добавлен мастер для визуализации контрольных идентификационных знаков; + добавлены всплывающие подсказки о правых и нижних отступах для направляющих и объектов в дизайнере; + добавлена возможность выбирать цвет подсветки пересекающихся объектов в дизайнере; + добавлена возможность подключения баз Access 2007; * изменен внешний вид формы редактора подключения к ElasticSearch; * изменены текстовые поля в CISWizardForm с единицами измерения на текстовые поля, поддерживающие только числа; - исправлена ошибка, приводящая к System.NullRefereceException при создании вычисляемого столбца для вложенной таблицы JSON; - исправлена ошибка, приводящая к System.FormatException при отрисовке подписей карт; - исправлена ошибка, приводящая к System.NullReferenceException, при нажатии кнопки "Вставить" в контекстном меню диалоговых страниц; - исправлена ошибка масштабирования элементов управления зумом дизайнера в режиме HiDPI при запуске из старого демонстрационного приложения; - исправлено открытие формы сохранения изменений после сохранения всего отчета; - исправлены не масштабируемые элементы в окне приветствия; - исправлена подсветка пересекающихся графиков; - исправлено исключение при переименовании таблицы JSON; - исправлен UpdateStatusBar в DialogWorkspace; - исправлена ошибка локализации кнопки "Учётная запись" в меню "Файл"; - исправлена потеря фокуса выбранного объекта при изменении его свойств; - исправлена ошибка, при которой не происходило переключение на страницу "Код" после добавления обработчика событий; [Preview] + реализован экспорт всех открытых вкладок; - исправлена ошибка, приводившая к System.NullReferenceExteption при подготовке отчета с RichObject в системе без принтеров; - исправлена ошибка в объекте MSChart в режиме HiDPI; [Exports] + добавлен вывод языка при экспортах в Word, PowerPoint, Rich Text, OpenOffice Write и OpenOffice Calc; + добавлено шифрование пароля сертификата цифровой подписи в PDF-экспорте при его сохранении; + добавлена опция "Показать линии сетки" при экспорте в Excel 2007; + добавлен экспорт типов данных в DBF; + добавлено новое свойство в экспорт SVG PrefixStyle, которое позволяет задать префикс для всех стилей внутри svg экспорта; + добавлена опция "Использовать системное форматирование данных" в Excel 2007 экспорте; + добавлено свойство PDFExport.UseFileStream, которое позволяет  экспортировать огромные отчеты на системах с небольшим объемом  оперативной памяти без System.OutOfMemoryException; * установлена UTF-8 в качестве кодировки по умолчанию для экспорта DBF; - исправлено неправильное масштабирование изображений в послойном HTML-экспорте при включенном высоком качестве svg и увеличении более 1; - исправлена ошибка, приводившая к System.IndexOutOfRangeException при экспорте шрифта без кернинга в PDF; - исправлена ошибка масштабирования изображений при послойном HTML-экспорте; - исправлена ошибка, приводящая к System.NullReferenceException при экспорте отчета с пустой страницей в Word 2007; - исправлена утечка памяти в экспорте PDF с некоторыми CJK шрифтами; - исправлен баг, при котором SVG картинка не поворачивалась на заданный угол в HTML/Blazor экспорте; - исправлен повторный рендеринг ячейки таблицы при экспорте в SVG; - исправлен некорректный стиль страницы при печати из браузера для табличного HTML экспорта; - исправлено исключение, которое возникало при экспорте объекта с отрицательными размерами в HTML формат; - исправлена ошибка экспорта в PDF при Compressed = false; - исправлена некорректная запись свойства border-collapse в табличном HTML-экспорте; - исправлена ошибка Excel-экспорта, при которой заливка в выходном файле не менялась с первого раза; - исправлена ошибка экспорта водяного знака в PostScript; - исправлена ошибка масштабирования шрифта при экспорте в PDF; - исправлена ошибка, при которой текстовый объект с HtmlTags, экспортированный в RTF, не изменялся тегами
, , ; [WebReport] * свойства OnlineDesginer перенесены в WebReport.Designer с сохранением обратной совместимости; - исправлен баг, когда событие "CheckedChanged" RadioButton не выполнялось; - исправлено некорректное масштабирование Dialog компонентов в Blazor; - исправлен баг с некорректным размером шрифта при экспорте в Excel; - исправлен баг в Blazor, при котором шрифт текстового объекта со свойством TextRenderType = HtmlParagraph всегда был стандартным; [.N ET Core] - исправлен некорректный поиск public-методов в скрипте отчёта; - исправлена проблема создания файла fontlist на Azure; [CoreWin] - для Visual Studio исправлено поведение компонентов WinForms в Toolbox (Design-Time); - исправлен некорректный запуск браузера при клике по ссылке в CoreWin; - для FastReport.CoreWin исправлены отчёты со скриптом, которые используют WinForms API; [Demos] + добавлена возможность сменить локализацию нового демо-приложения без его перезапуска; + добавлено демо-приложение на React с FastReport.Core; - исправлено положение одной из диаграмм в Chart.frx; [Plugins] + реализовано подключение к ЛИНТЕР; + реализовано подключение к Cassandra; - обновлён RPTImportPlugin; [Extras] - для пакетов FastReport.Net* добавлены библиотеки FastReport.Web (для .NET Framework) и FastReport.VSDesign; - добавлена возможность импортировать отчёты с помощью потоков; [Service] - исправлена некорректная версия FastReport.Compat в пакетах FastReport.Net. ### Выпуск новой версии FastReport for DBA 2022.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-dba-2022.2 Summary: Состоялся выход версии 2022.2 в FastReport for DBA. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.2 в FastReport for DBA. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.2 для FastReport for DBA, в которой мы добавили подсветку пересекающихся объектов в дизайнере, линейку в редакторе RichObject, исправили ошибки в форматах экспорта Excel 2007, RTF, XLSX и многое другое. Появилась возможность сохранить отчет со случайными данными В меню файл в дизайнере отчетов появился новый пункт "Сохранить со случайными данными...". При таком сохранении отчета все источники данных будут сохранены в отчете и данные в них будут заменены на случайные. Подсветка пересекающихся объектов в дизайнере Теперь при размещении объектов на странице отчета выделяются цветом пересекающиеся объекты и объекты, выходящие за пределы бэндов и страницы. В корректном отчете не должно быть таких объектов. Несоблюдение этой рекомендации, может приводить к ряду проблем при подготовке и экспорте отчетов. По умолчанию эта опция отключена. Включить ее можно в настройках дизайнера Файл->Настройки (File->Options). Линейка с направляющими в редакторе RichObject Новый инструмент позволяет удобно настраивать отступы и позиции табуляции при редактировании RichObject.  Подробнее читайте в статье . Добавлена консольная утилита конвертации RTF С её помощью можно удобно конвертировать RTF-файлы в шаблоны отчета. Появилась возможность использовать файлы XLSX в качестве источников данных Теперь из файлов Excel 2007 можно получить данные как из базы данных и использовать их в отчете.  Подробнее читайте в статье . Опция "Закрепить ячейки" при экспорте в Excel 2007 Эта возможность, позволяет определить область листа, которая всегда будет видимой при прокрутке. Закрепить можно: первую строку, первый столбец, определенное количество строки и столбцов. Также добавлен экспорт формата чисел и дат в формат Excel 97 (BIFF8). В HTML экспорте теперь есть опция "Высокое качество SVG" - при включении этой настройки качество SVG изображений будет значительно выше. Однако, нужно учитывать, что расход памяти будет выше. В Word документах добавлен экспорт закладок и внутренних ссылок. В PDF, Word, HTML и RTF теперь есть экспорт ширины символов табуляции. В SVG экспорте добавлено новое свойство PrefixStyle - оно позволяет задать префикс для всех стилей. Кроме того мы улучшили документацию и добавили возможность переключения локализации в настройках FastReport for DBA. Полный список изменений в версии 2022.2 [Engine] + добавлена возможность сохранить отчет со случайными данными; * в методе ExportBand теперь используется аргумент BandBase вместо Base; - исправлены ошибки с двойным вызовом событий AfterData, BeforePrint и AfterPrint объекта ContainerObject; - исправлена ошибка, приводящая к System.NullReferenceException при запуске отчетов с диалоговыми формами; - исправлена ошибка, из-за которой не работало свойство VisibleExpression у подотчетов и страниц; - исправлен баг со сдвигом по вертикали непересекающихся объектов при конвертации RTF; - исправлена ошибка с правым якорем на страницах с бесконечной шириной и альбомной ориентацией; - исправлена трансляция списков при конвертации RTF; - исправлена ошибка, из-за которой не работало свойство RichObject.AllowExpressions; - исправлена ошибка, приводящая к System.OverflowException при отрисовке неподготовленной бесконечной страницы; [Designer] + добавлена подсветка пересекающихся объектов; + добавлена линейка с направляющими в редакторе RichObject; + заменены символы пароля на точки в инспекторе объектов; + добавлено предупреждение о возможном переполнении стека при расположении Matrix или AdvMatrix на повторяющиеся бэнд; - удалено сообщение об ошибке, если текст штрих-кода содержит выражение; - исправлена ошибка с опцией отключения горячих клавиш; - исправлено выпадающее меню при нажатии на кнопку LineStyle и LineWidth; - исправлено отображение данных в дизайнере; - исправлены ошибки, приводящие к System.NullReferenceException при перетаскивании объектов на AdvMatrix; - исправлена ошибка с некорректным отображением настроек тени в редакторе границ; [Preview] - исправлена ошибка, приводящая к System.NullReferenceException, при щелчке по редактируемому текстовому объекту; - исправлена ошибка с неработающими гиперссылками в отчетах с многоколоночными бэндами; - исправлена ошибка, когда экспорт отчета, приводил к сохранению подготовленного отчета; - исправлена ошибка с настройкой списков доступных экспортов и экспортов в облака в PreviewControl; [Exports] + добавлен экспорт в ZPL II; + добавлена опция "Высокое качество SVG" в HTML-экспорте; + добавлена опция "Закрепить ячейки" при экспорте в Excel 2007; + добавлена возможность масштабирования печати при экспорте в Excel 2007; + добавлен экспорт закладок и внутренних ссылок в Word; + добавлен экспорт формата чисел и дат в Excel 97; + добавлено шифрование персональных данных пользователя в Email-экспорте; + добавлен экспорт отступа RichObject в RTF; + добавлен экспорт переноса строки RichObject в RTF; + добавлен экспорт отступа TextObject в Word; + добавлен экспорт ширины символов табуляции в PDF, Word, HTML и RTF; + добавлено свойство PrefixStyle в SVG-экспорте, которое позволяет задать префикс для всех стилей; * улучшен экспорт RichObject в Excel 2007; * удалены экспорты FastReport Cloud и XMPP; - исправлен некорректный поворот альбомной ориентации страниц при HTML-печати, если на них использовались стили с предыдущих страниц; - исправлена ошибка с масштабом шрифта при экспорте в PDF; - исправлена утечка памяти при экспорте SVG объектов в HTML с опцией "Высокое качество SVG"; - исправлена ошибка при встраивании шрифтов, для которых запрещена упаковка, в PDF-экспорте; - исправлена ошибка с экспортом символов табуляции в Word; - исправлена заливка фона изображения и свойство line-height в HTML-экспорте; - исправлена ошибка экспорта пользовательской пунктирной линии SVGObject в PDF; - исправлена ошибка с экспортом границ соединенных ячеек в SVG. ### Выпуск новой версии FastReport Mono 2022.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-mono-2022.1 Summary: Состоялся выход версии 2022.1 в FastReport Mono. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.1 в FastReport Mono. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.1 в FastReport Mono. Было внесено большое количество новых возможностей и изменений. Новые возможности Добавлен новый объект "Улучшенная матрица": Вот список ключевых особенностей матрицы: заголовки строк и колонок могут содержать группы и простые элементы в произвольном порядке, что позволяет строить асимметричные отчеты; кнопки сворачивания позволяют интерактивно управлять видимостью отдельных элементов; кнопки сортировки позволяют интерактивно сортировать матрицу по выбранным значениям, в том числе по значениям итогов; группировка Top N позволяет отобразить N значений в заголовке, а остальные значения сгруппировать в отдельный элемент с возможностью разворачивания; вывод заголовков матрицы в ступенчатом виде; сортировка заголовков по значениям итогов; широкий набор агрегатных функций; поддержка пользовательских агрегатных функций; широкий набор специальных функций, позволяющих получить значения итогов, соседних ячеек, а также функции для расчета процентов; поддержка объектов "Искрографик" и "Индикатор прогресса" в ячейках данных. Подробнее о возможностях объекта смотрите в документации. Добавлены штрих-коды GS1 DataBar : Limited, Omnidirectional, Stacked и Stacked Omnidirectional. Новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных. Config.CompilerSetting.Placeholder - строковая переменная, которая используется для замены выражений с несуществующими именами. По умолчанию, значение этой переменной - пустая строка. Config.CompilerSetting.ExceptionBehaviour может иметь следующие значения: ExceptionBehaviour.Default - стандартное поведение, как и было ранее. При наличии ошибок с некорректными именами, выводится сообщение об ошибке. Подготовка отчета прерывается. ExceptionBehaviour.ReplaceExpressionWithExceptionMessage - некорректные выражения заменяются на текст сообщения об исключении. Ошибки при этом не выводятся. Подготовка отчета не прерывается. ExceptionBehaviour.ShowExceptionMessage  - появляется сообщение с текстом исключения, после нажатия кнопки OK, подготовка отчета продолжается. При этом, неправильные выражения заменяются на значение переменной Placeholder. ExceptionBehaviour.ReplaceExpressionWithPlaceholder - некорректные выражения просто заменяются на Placeholder. Сообщений об ошибках нет. Подготовка отчета не прерывается. Пример при значениях переменных: ExceptionBehaviour = ExceptionBehaviour.ReplaceExpressionWithPlaceholder Placeholder = "НЕТ ДАННЫХ!" Здесь видно, что в таблице есть поле с именем FistName, однако в выражении оно указано некорректно. А это результат подготовки такого отчета. Ранее его подготовить было бы невозможно из-за ошибок. Повышено качество трансляции RTF в объекты отчета. Преобразование RTF в объекты отчета оптимизировано. Добавлена трансляция RTF в ячейках таблиц. А также исправлено много ошибок. Улучшения экспорта Реализован экспорт водяных знаков в Word и RTF . Добавлено масштабирование SVG изображений в матрице экспорта. Это позволяет повысить качество экспортируемых изображений при экспорте в Word и Excel. Однако, при этом размер выходного файла увеличивается. Для использования этой возможности, необходимо включить опцию "Для печати" при экспорте. Реализован экспорт групп на отдельные листы в Excel 2007. В Excel 2007 добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте. Теперь можно определить как будет вести себя изображение в ячейке при изменении ее положения и размера. При этом изображение может: перемещаться и изменять свой размер вместе с ячейкой; перемещаться вместе с ячейкой, но не изменять свой размер; не перемещаться и не изменять размер; Реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97. В HTML-экспорте добавлена опция "Не поворачивать альбомные страницы при печати". Ранее мы принудительно поворачивали страницы с альбомной ориентацией при печати. Необходимо это было по причине того, что браузеры не умеют корректно печатать отчеты со страницами как в книжной, так и в альбомной ориентации. При печати таких документов, страницы с альбомной ориентацией обрезаются по ширине страниц с книжной ориентацией. Теперь, можно настроить, поворачивать страницы с альбомной ориентацией или нет. Кроме того, исправлена ошибка, при которой страницы с альбомной ориентацией поворачивались всегда, даже когда нет страниц с книжной ориентацией. Полный список изменений [Engine] + добавлен новый объект AdvMatrixObject; + добавлены штрих-коды GS1 Databar: Limited, Omnidirectional, Stacked и Stacked Omnidirectional; + добавлены новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных; + добавлена трансляция RichObject внутри TableCell; * переработана трансляция RichObject в объекты отчёта; - исправлен ShiftMode транслированных из RTF текста объектов; - исправлена ошибка с двумя параметрами с одним именем приводящая к исключению System.ArgumentException; - исправлена ошибка с вложенным отчетом содержащим многоколоночный Databand; - исправлена ошибка с неверным расчетом высоты бэнда; - исправлена ошибка с отображением гиперссылок при конвертации RTF в объекты отчета; - исправлена трансляция RichObject если документ назначается из скрипта; - исправлена ошибка с шрифтами, добавляемыми в Config.PrivateFontCollection; [Designer] + добавлена проверка вводимых данных в окне редактирования QR-кода СберБанка; - исправлена ошибка с переносом строки в редакторе текстового объекта; - исправлена ошибка конвертации отчетов rdl, содержащих матрицы внутри ячеек таблицы; - исправлена ошибка с направляющими линиями в дизайнере; - исправлена ошибка с окном "Дерево отчета"; - исправлена ошибка приводящая к System.NullReferenceException и падению дизайнера во время его запуска при включенной опции Авто-направляющие; [Preview] - исправлена ошибка со сдвигом позиции объектов при переключении вида бэндов во время редактировании подготовленной страницы; [Exports] + реализован экспорт водяных знаков в Word; + реализован экспорт водяных знаков в RTF; + добавлена опция "Не поворачивать альбомные страницы при печати" при экспорте в HTML; + добавлена возможность изменять имя прикрепляемого файла при отправке по Email; + добавлено масштабирование SVG изображений в матрице экспорта; + добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте в Excel 2007; + реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97; + реализован экспорт групп на отдельные листы в Excel; + реализован экспорт уровня прозрачности изображений водяных знаков в Word; + реализован экспорт размера изображения водяного знака в RTF; - исправлена ошибка, приводившая к System.NullReferenceException при экспорте в текст, таблиц с количеством строк меньше одной; - исправлен некорректный левый отступ таблиц при экспорте в Word; - исправлена ошибка со шрифтом Wingdings в тегах HTML при экспорте в HTML; - исправлен баг с экспортом шрифтов Wingdings и Webdings в HTML; - исправлена ошибка с шириной фреймов при экспорте в PowerPoint; - исправлена ошибка экспорта объектов с прозрачной заливкой в RTF; - исправлена ошибка экспорта объектов с прозрачной заливкой в Word; - исправлена ошибка, приводящая к System.OutOfMemoryException при экспорте в PDF; - исправлено неправильное отображение переноса строки при экспорте в HTML; - исправлено переполнение памяти при экспорте в PDF; - исправлены ошибки в PDF-экспорте на системах, отличных от Windows; - исправлена ошибка с экспортом таблиц с количеством столбцов больше 63 в Word 2007; - исправлена ошибка приводящая к утечке памяти и исключению System.OutOfMemoryException в PDF-экспорте при включенной опции "Текст в кривых"; - исправлена ошибка с разрывом строки при экспорте в HTML; [WebReport] - исправлена ошибка с символом новой строки при использовании шрифта Wingdings; ### Выпуск новой версии FastReport Mono 2022.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-mono-2022.2 Summary: Состоялся выход версии 2022.2 в FastReport Mono. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.2 в FastReport Mono. Было внесено большое количество новых возможностей и изменений. Добавлена поддержка интерактивности объекта "Улучшенная матрица" в WebReport: Во всех WebReport (.NET Framework, .NET Core, Blazor Server) появилась поддержка интерактивности для новой Улучшенной матрицы. Теперь в браузере корректно работают кнопки сворачивания и сортировки. Возможность сохранить отчет со случайными данными В меню файл в дизайнере отчетов появился новый пункт "Сохранить со случайными данными...". При таком сохранении отчета все источники данных будут сохранены в отчете и данные в них будут заменены на случайные. Подсветка пересекающихся объектов в дизайнере Теперь при размещении объектов на странице отчета выделяются цветом пересекающиеся объекты и объекты, выходящие за пределы бэндов и страницы. В корректном отчете не должно быть таких объектов. Несоблюдение этой рекомендации, может приводить к ряду проблем при подготовке и экспорте отчетов. По умолчанию эта опция отключена. Включить ее можно в настройках дизайнера Файл->Настройки (View->Options). Демонстрация работы подсветки ниже. Улучшения экспортов Опция "Закрепить ячейки" при экспорте в Excel 2007 Эта возможность, позволяет определить область листа, которая всегда будет видимой при прокрутке. Закрепить можно: первую строку, первый столбец, определенное количество строки и столбцов. Настройки выглядят так: А работает эта опция так: Поддержка ZPL II при экспорте в ZPL. Опция "Высокое качество SVG" в HTML-экспорте. При включении этой настройки качество изображений в формате SVG будет значительно выше при экспорте. Однако, нужно учитывать, что объем занимаемой памяти так же будет выше. Добавлен экспорт закладок и внутренних ссылок в Word. Реализован экспорт ширины символов табуляции в PDF, Word, HTML и RTF. Новое свойство PrefixStyle в SVG-экспорте. Это свойство позволяет задать префикс для всех стилей при экспорте в SVG. Добавлен экспорт формата чисел и дат в Excel 97. Экспорта ширины символов табуляции в PDF, Word, HTML и RTF. Полный список изменений [Engine] + добавлена возможность сохранить отчет со случайными данными; * в методе ExportBand теперь используется аргумент BandBase вместо Base; - исправлены ошибки с двойным вызовом событий AfterData, BeforePrint и AfterPrint объекта ContainerObject; - исправлена ошибка, приводящая к System.NullReferenceException при запуске отчетов с диалоговыми формами; - исправлена ошибка, из-за которой не работало свойство VisibleExpression у подотчетов и страниц; - исправлен баг со сдвигом по вертикали непересекающихся объектов при конвертации RTF; - исправлена ошибка с правым якорем на страницах с бесконечной шириной и альбомной ориентацией; - исправлена трансляция списков при конвертации RTF; - исправлена ошибка, из-за которой не работало свойство RichObject.AllowExpressions; - исправлена ошибка, приводящая к System.OverflowException при отрисовке неподготовленной бесконечной страницы; [Designer] + добавлена подсветка пересекающихся объектов; - удалено сообщение об ошибке, если текст штрих-кода содержит выражение; - исправлена ошибка с опцией отключения горячих клавиш; - исправлено выпадающее меню при нажатии на кнопку LineStyle и LineWidth; - исправлено отображение данных в дизайнере; - исправлены ошибки, приводящие к System.NullReferenceException при перетаскивании объектов на AdvMatrix; [Preview] - исправлена ошибка, приводящая к System.NullReferenceException, при щелчке по редактируемому текстовому объекту; - исправлена ошибка с неработающими гиперссылками в отчетах с многоколоночными бэндами; - исправлена ошибка, когда экспорт отчета, приводил к сохранению подготовленного отчета; [Exports] + добавлен экспорт в ZPL II; + добавлена опция "Высокое качество SVG" в HTML-экспорте; + добавлена опция "Закрепить ячейки" при экспорте в Excel 2007; + добавлена возможность масштабирования печати при экспорте в Excel 2007; + добавлен экспорт закладок и внутренних ссылок в Word; + добавлен экспорт формата чисел и дат в Excel 97; + добавлено шифрование персональных данных пользователя в Email-экспорте; + добавлен экспорт отступа RichObject в RTF; + добавлен экспорт переноса строки RichObject в RTF; + добавлен экспорт отступа TextObject в Word; + добавлен экспорт ширины символов табуляции в PDF, Word, HTML и RTF; + добавлено свойство PrefixStyle в SVG-экспорте, которое позволяет задать префикс для всех стилей; * улучшен экспорт RichObject в Excel 2007; * удалены экспорты FastReport Cloud и XMPP; - исправлен некорректный поворот альбомной ориентации страниц при HTML-печати, если на них использовались стили с предыдущих страниц; - исправлена ошибка с масштабом шрифта при экспорте в PDF; - исправлена утечка памяти при экспорте SVG объектов в HTML с опцией "Высокое качество SVG"; - исправлена ошибка при встраивании шрифтов, для которых запрещена упаковка, в PDF-экспорте; - исправлена ошибка с экспортом символов табуляции в Word; - исправлена заливка фона изображения и свойство line-height в HTML-экспорте; - исправлена ошибка экспорта пользовательской пунктирной линии SVGObject в PDF; - исправлена ошибка с экспортом границ соединенных ячеек в SVG; [WebReport] + добавлена интерактивность расширенной матрицы в WebReport. ### Выпуск новой версии FastReport Mono 2022.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-mono-2022.3 Summary: Новые функции в FastReport Mono 2022.3: валидатор отчета, редактор FRX, конвертор отчетов из StimulSoft, копирование диалоговых страниц и т.д. Новые функции в FastReport Mono 2022.3: валидатор отчета, редактор FRX, конвертор отчетов из StimulSoft, копирование диалоговых страниц и т.д. В версии 2022.3 FastReport Mono мы подготовили для вас много новых функций: валидатор для проверки шаблона отчета и получения списка ошибок, редактор FRX формата, конвертор отчетов из StimulSoft, копирование диалоговых страниц и многое другое. Валидатор отчета: В дизайнере отчета добавлена вкладка "Проверка" (справа, рядом с вкладками "Данные" и "Дерево отчета"). Здесь можно проверить шаблон отчета, а также получить список ошибок и предупреждений. Все это выводится в виде таблицы, в которой указано имя объекта (если оно есть) и описание ошибки. Если выделить строку в таблице, то в дизайнере будет выделен соответствующий объект. Ошибки и предупреждения могут быть следующих типов: объект без имени, объекты с одинаковым именем, пересекающиеся объекты, объекты с нулевой высотой или шириной, а также объекты, частично или полностью находящиеся за пределами родительского объекта. Объекты без имени и объекты с одинаковыми именами, являются критическими ошибками. Они могут приводить к различным ошибкам и даже падению приложения при подготовке отчета. К тому же, без валидатора эти ошибки очень сложно найти. Пересекающиеся объекты не являются серьезной ошибкой. В некоторых случаях могут быть полезными и использоваться целенаправленно (например, линии или прямоугольники). Пересекающиеся текстовые объекты, в большинстве случаев могут приводить к некорректным экспортам. Особенно в табличных экспортах, например Excel. В результате экспорта будет много лишних ячеек и так далее. С такими объектами надо быть осторожными. Объекты, частично выходящие за границы родительского объекта (например бэнда или страницы), тоже могут быть полезными в редких ситуациях. Но в большинстве случаев, приводят к ошибкам при подготовке и экспорте отчета. Объекты, полностью находящиеся за пределами родительского - ошибка серьезная. Найти такие объекты без валидатора, тоже очень трудно. Пересекающиеся объекты и выходящие за пределы родительских могут выделяться цветом (который теперь можно выбирать), если включена соответствующая настройка в меню Файл -> Настройки. Использовать проверку отчёта совсем не обязательно. Но это может быть полезным, когда ваш отчет работает или выглядит не так как хотелось бы. Подробнее о валидаторе отчёта читайте по следующей ссылке.  Редактор FRX Иногда возникает необходимость редактировать содержимое FRX-файла с помощью сторонних текстовых редакторов. Теперь вы можете это делать непосредственно в дизайнере отчета. Для этого был добавлен редактор FRX формата. По умолчанию он отключен. Чтобы включить редактор перейдите в меню «Файл -> Настройки». В дизайнере отчета, слева от вкладки Code появится вкладка FRX. Внесенные здесь изменения, будут сразу применяться к отчету и отображаться на его страницах. Подробнее о редакторе FRX читайте в следующей статье.  Конвертор отчетов из StimulSoft Добавлена возможность конвертировать шаблоны отчетов из StimulSoft в шаблоны FastReport .NET. В отчетах StimulSoft могут присутствовать объекты реализации, которые не поддерживаются дизайнером FastReport. Эти объекты не будут экспортироваться, либо будут заменены другими таким образом, чтобы построенный отчет был максимально похож на созданный в StimulSoft. Важно отметить, что импорт кросс-бэндов реализован выносом их содержимого в родительский бэнд. Подробнее о конвертации отчётов читайте в статье по следующей ссылке. Копирование диалоговых страниц Добавлена возможность копировать диалоговые страницы. Как с помощью контекстного меню диалоговой страницы, так и с помощью кнопки «Отчет -> Копировать страницу отчета». При копировании создается копия диалоговой страницы с уникальным именем. У всех дочерних объектов тоже будут уникальные имена. Однако обработчики событий у объектов будут те же, что и у исходной страницы. При необходимости нужно создать новые обработчики. Также теперь диалоговые страницы можно удалять не только с помощью кнопки «Отчет -> Удалить страницу», но и через контекстное меню в редакторе формы и дереве отчета. Отключение последних настроек форматирования При создании объекта в дизайнере его настройки будут применены к следующему созданному объекту того же типа. Например, если создать текстовый объект, настроить у него размер шрифта, границы, цвет заливки, то следующий текстовый объект будет создан с такими же настройками. Это удобно, когда нужно создавать несколько объектов с такими же или похожими настройками. В ситуациях, когда такое поведение дизайнера не нужно его можно отключить в меню «Файл -> Настройки». При этом объекты будут создаваться с настройками по умолчанию. Экспорт всех вкладок При просмотре интерактивных отчетов можно открывать детальные отчеты в новых вкладках. Здесь видно три открытые вкладки. Раньше экспортировалась только активная вкладка. Теперь можно экспортировать все вкладки в один файл с помощью новой опции "Экспорт всех вкладок". Подробное описание связанных сборок и установленных плагинов Теперь при наведении курсора мыши на dll в списке плагинов (Файл -> Настройки -> Плагины) и в списке ссылок на сборки (Отчет -> Свойства -> Скрипт), выводится подробная информация с описанием, версией, размером, датой создания и т.д. Улучшения экспортов Свойство UseFileStream в PDF-экспорте Добавлена новая опция UseFileStream для PDF-экспорта. Ее можно использовать только при экспорте из кода в файл. Эта опция полезна при экспорте отчетов с большим количеством страниц (несколько десятков тысяч) в нескольких потоках. Тем самым это позволит избежать ошибок с нехваткой памяти. В остальных случаях использование особого смысла не имеет. Пример: ``` Report report = new Report(); PDFExport export = new PDFExport(); export.UseFileStream = true; report.Export(export, "report.pdf"); ``` Выбор языка при экспорте в Word, PowerPoint, Rich Text, OpenOffice Write и OpenOffice Calc  Теперь в этих экспортах можно выбирать язык документа. По умолчанию используется язык, выбранный в дизайнере. Также добавлена опция "Показать линии сетки" в Excel 2007 экспорте. Полный список изменений [Engine] + добавлен конвертор отчетов из StimulSoft; + добавлено изменение имени источника данных JSON в выражениях при его переименовании; + добавлена конвертация свойства PaperSize при конвертации отчетов из StimulSoft; + добавлена проверка существования связанных сборок при конвертации отчетов из StimulSoft; + добавлено свойство PrintOnParent у объектов Table и Matrix; + добавлена загрузка параметров отчета при конвертации отчетов из RDL; + добавлена загрузка вложенных отчетов при конвертации отчетов из RDL; + добавлена возможность сохранить данные JSON подключения с помощью свойства StoreData; + улучшено быстродействие в отчетах, содержащих большое количество объектов; * изменен текст исключения при вычислении и форматировании выражения, если e.InnerException null; * при загрузке RDL отчетов, ширина страницы будет равна ширине секции только в случае, если ширины страницы нет; - исправлено вычисление длины кодировки DataMatrix C40 и текста; - обработано исключение System.ComponentModel.Win32Exception, при печати с отключенным "Диспетчером печати"; - исправлено скрытие границы изображения при печати с автоматическим размером; - исправлена ошибка переполнения стека при подготовке отчета с дочерним бэндом подвала страницы и включенной у него опцией начать новую страницу; - исправлена ошибка, при которой не передавался текущему отчету путь к базовому отчету на Unix ОС; - исправлена ошибка с созданием подотчета и страницы с одним именем при конвертации отчетов из StimulSoft; - исправлена ошибка с некорректными именами при конвертации отчетов из StimulSoft; - исправлена ошибка с TotalPages в Page.VisibleExpression, которая приводит к исключению при выключенном двойном проходе; - исправлена ошибка, при которой бэнд может расти за пределы страницы; - исправлена ошибка, при которой объекты могут расти за пределы бэнда или ContainerObject; - исправлена ошибка обратного отступа при трансляции RTF в объекты отчёта; - исправлен межстрочный интервал для текста транслированного из RichObject; - исправлена ошибка свойства ConnectionString в классе JsonDataSourceConnectionStringBuilder, когда информация приходила без заголовков запроса; [Designer] + добавлен валидатор отчета, который помогает находить некорректные объекты (повторяющиеся имена, отрицательные размеры и т.д.); + добавлен редактор для свойства RichObject.Text; + добавлен редактор FRX в дизайнере отчетов; + добавлено подробное описание связанных сборок и установленных плагинов; + добавлена возможность копировать диалоговые страницы; + добавлена возможность удалять диалоговые страницы через контекстное меню; + добавлена возможность отключить использование последних настроек форматирования при создании объектов; + добавлена интеграция с FastReport.Id; + добавлен вызов онлайн-документации в дизайнере отчетов; + добавлен мастер для визуализации контрольных идентификационных знаков; + добавлены всплывающие подсказки о правых и нижних отступах для направляющих и объектов в дизайнере; + добавлена возможность выбирать цвет подсветки пересекающихся объектов в дизайнере; + добавлена возможность подключения баз Access 2007; * изменен внешний вид формы редактора подключения к ElasticSearch; * изменены текстовые поля в CISWizardForm с единицами измерения на текстовые поля, поддерживающие только числа; - исправлена ошибка, приводящая к System.NullRefereceException при создании вычисляемого столбца для вложенной таблицы JSON; - исправлена ошибка, приводящая к System.FormatException при отрисовке подписей карт; - исправлена ошибка, приводящая к System.NullReferenceException, при нажатии кнопки "Вставить" в контекстном меню диалоговых страниц; - исправлена ошибка масштабирования элементов управления зумом дизайнера в режиме HiDPI при запуске из старого демонстрационного приложения; - исправлено открытие формы сохранения изменений после сохранения всего отчета; - исправлены не масштабируемые элементы в окне приветствия; - исправлена подсветка пересекающихся графиков; - исправлено исключение при переименовании таблицы JSON; - исправлен UpdateStatusBar в DialogWorkspace; - исправлена ошибка локализации кнопки "Учётная запись" в меню "Файл"; - исправлена потеря фокуса выбранного объекта при изменении его свойств; - исправлена ошибка при которой не происходило переключение на страницу "Код" после добавления обработчика событий; [Preview] + реализован экспорт всех открытых вкладок; - исправлена ошибка, приводившая к System.NullReferenceExteption при подготовке отчета с RichObject в системе без принтеров; - исправлена ошибка в объекте MSChart в режиме HiDPI; [Mono] - исправлен баг при переименовании таблиц, приводящий к исключению; - исправлена ошибка при нажатии кнопки ViewData на Json подключении; [Exports] + добавлен экспорт локали в Word, PowerPoint, Rich Text, OpenOffice Write и OpenOffice Calc; + добавлено шифрование пароля сертификата цифровой подписи в PDF-экспорте при его сохранении; + добавлена опция "Показать линии сетки" при экспорте в Excel 2007; + добавлен экспорт типов данных в DBF; + добавлено новое свойство в экспорт SVG PrefixStyle, которое позволяет задать префикс для всех стилей внутри SVG экспорта; + добавлена опция "Использовать системное форматирование данных" в Excel 2007 экспорте; + добавлено свойство PDFExport.UseFileStream, которое позволяет экспортировать огромные отчеты на системах с небольшим объемом оперативной памяти без System.OutOfMemoryException; * установлена UTF-8 в качестве кодировки по умолчанию для экспорта DBF; - исправлено неправильное масштабирование изображений в послойном HTML-экспорте при включенном высоком качестве SVG и увеличении более 1; - исправлена ошибка, приводившая к System.IndexOutOfRangeException при экспорте шрифта без кернинга в PDF; - исправлена ошибка масштабирования изображений при послойном HTML-экспорте; - исправлена ошибка, приводящая к System.NullReferenceException при экспорте отчета с пустой страницей в Word 2007; - исправлена утечка памяти в экспорте PDF с некоторыми CJK шрифтами; - исправлен баг, при котором SVG картинка не поворачивалась на заданный угол в HTML экспорте; - исправлен повторный рендеринг ячейки таблицы при экспорте в SVG; - исправлен некорректный стиль страницы при печати из браузера для табличного HTML экспорта; - исправлено исключение, которое возникало при экспорте объекта с отрицательными размерами в HTML формат; - исправлена ошибка экспорта в PDF при Compressed = false; - исправлена некорректная запись свойства border-collapse в табличном HTML-экспорте; - исправлена ошибка Excel-экспорта, при которой заливка в выходном файле не менялась с первого раза; - исправлена ошибка экспорта водяного знака в PostScript; - исправлена ошибка масштабирования шрифта при экспорте в PDF; - исправлена ошибка, при которой текстовый объект с HtmlTags, экспортированный в RTF, не изменялся тегами
, , ; [WebReport] - исправлен баг, когда событие "CheckedChanged" RadioButton не выполнялось; - исправлен баг с некорректным размером шрифта при экспорте в Excel; [Demos] + добавлена возможность сменить локализацию нового демо-приложения без его перезапуска; - исправлено положение одной из диаграмм в Chart.frx; [Plugins] + реализовано подключение к ЛИНТЕР; + реализовано подключение к Cassandra; - обновлён RPTImportPlugin; [Extras] - добавлена возможность импортировать отчёты с помощью потоков. ### Выпуск обновления для FastCube .NET 2025.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-net-2025.2 Summary: В этом обновлении 2025.2 мы сосредоточились на ускорении вычислений, улучшении совместимости с .NET 9 и упрощении понимания изменений. В этом обновлении 2025.2 мы сосредоточились на ускорении вычислений, улучшении совместимости с .NET 9 и упрощении понимания изменений. В этом обновлении мы сосредоточились на ускорении вычислений, улучшении совместимости с .NET 9 и упрощении понимания изменений. Переход на инвариантную математику – до 2 раз быстрее! Одним из самых значительных улучшений стало отказ от типа "вариант" в пользу инвариантной математики. Это изменение привело к существенному ускорению построения и пересчета куба, в некоторых случаях – более чем в 2 раза! Кроме того, теперь куб работает корректно в различных локализациях, включая нестандартные (отличные от латиницы), что расширяет его применение для международных пользователей. Разделение изменений по продуктам Теперь обновления  FastCube .NET разделены на разные продукты (WinForms, Web, Mono и общий FastCube .NET). Это сделало процесс обновления более прозрачным – вы можете сразу понять, какие изменения затрагивают нужную версию. Исправлена ошибка считывания потока из сжатого файла Ранее в некоторых случаях происходила некорректная обработка сжатых файлов, из-за чего данные могли загружаться неправильно или вовсе не загружаться. Теперь этот баг устранён, и механизм работы со сжатыми файлами полностью исправлен. Это означает: Корректное чтение данных из архивных файлов. Более стабильная работа при загрузке больших файлов. Отсутствие ошибок в многопоточном режиме, что особенно важно для Web-приложений. Если ваш проект активно использует сжатие данных, рекомендуем обновиться до версии 2025.2, чтобы избежать возможные проблемы. Сигнатура файла для куба теперь неизменяемая (const вместо static) Ранее сигнатура файла была объявлена как static , что позволяло менять её в ходе выполнения программы. В ряде случаев это могло привести к ошибкам, связанным с изменением структуры данных или даже повреждению файла. В новой версии: - Сигнатура теперь объявлена как const , что делает её неизменяемой на уровне кода. - Гарантирована целостность структуры файла, независимо от изменений в коде программы. - Повышена стабильность работы с файлами куба в разных средах, включая Web и Mono. Это особенно важно для разработчиков, которые работают в многопользовательских и распределённых системах. Совместимость с .NET 9 Одним из ключевых улучшений стало добавление поддержки .NET 9. Теперь FastCube .NET полностью совместим с последней версией платформы, что позволяет использовать новые возможности и улучшения, предложенные Microsoft. Это важное обновление для разработчиков, которые переходят на .NET 9 или планируют использовать его в своих проектах.  Отдельно отметим, что поддержка новых версий позволяет обеспечить стабильность работы продукта и интеграцию с последними технологиями. Обновление поддерживаемых версий .NET Основной версией теперь считается .NET 8, что соответствует текущим стандартам для большинства корпоративных проектов. Тем не менее, сохранена поддержка .NET 6, которая представляет собой долгосрочную версию с расширенной поддержкой.  Кроме того, как уже было упомянуто, добавлена поддержка .NET 9, что даёт вам гибкость при выборе платформы для работы с FastCube .NET, будь то стабильность (через .NET 6) или новейшие возможности и улучшения производительности (.NET 9). Исправления и улучшения в демонстрационном примере В демонстрационном примере для формата  boolean была исправлена ошибка, из-за которой корректность отображения данных была нарушена. Теперь данный формат работает правильно и не вызывает ошибок, что улучшает опыт пользователей, работающих с демонстрационными примерами. В демонстрационном кубе "Sales by months" ранее возникали ситуации, когда заголовки отображались некорректно. Теперь эта ошибка устранена, и названия полей выводятся корректно, обеспечивая точность и удобство работы с данными. Улучшение сериализации данных Одним из важных улучшений является оптимизация процесса сериализация данных. Были добавлены новые методы и установлены свойства, благодаря чему значения по умолчанию теперь реже сериализуются.  Снижение объема сериализуемых данных уменьшает нагрузку на систему при сохранении и загрузке информации. Кроме того, эти изменения способствует улучшению производительности, что будет особенно заметно при работе с большими наборами данных. Список изменений FastCube .NET WinForms [Common] - исправлена ошибка, при которой поток из сжатого файла считывался некорректно; * сигнатура файла для куба теперь имеет модификатор const вместо static и не может быть изменена; FastCube .NET Web [Common] - исправлена ошибка, при которой поток из сжатого файла считывался некорректно; * сигнатура файла для куба теперь имеет модификатор const вместо static и не может быть изменена; FastCube .NET Mono [Common] - исправлена ошибка, при которой поток из сжатого файла считывался некорректно; * сигнатура файла для куба теперь имеет модификатор const вместо static и не может быть изменена; FastCube .NET [Common] + добавлена совместимость с .NET 9; + обновлены версии .NET, основной версией теперь считается .NET 8, а поддерживаемые целевые платформы включают .NET 6, .NET 8 и .NET 9; * скрыта часть свойств от пользователя в редакторе WinForms; * тип "вариант" был заменён на вариантную математику; * улучшена сериализация, добавлены методы и установлены свойства, благодаря чему значения по умолчанию реже сериализуются; - исправлено отображение названия поля в демонстрационном кубе "Sales by months"; - исправлена ошибка в демонстрационном примере для boolean format. Другие критические изменения Общие изменения для FastCube Web, FastCube WinForms и FastCube Mono Устаревшие делегаты. Были заменены на совместимые, т.к. был убран тип Variant теперь вместо него используется боксинг через Object : Нажмите сюда, чтобы развернуть FastReport.Olap.Slice.Value2Delegate(System.Int32, System.Int32, FastReport.Olap.Utils.Variant, FastReport.Olap.Utils.Variant, System.Int32) FastReport.Olap.Slice.ValueDelegate(System.Int32, System.Int32, FastReport.Olap.Utils.Variant, System.Int32) FastReport.Olap.Slice.SliceChartDataHandler(FastReport.Olap.Slice.Slice, FastReport.Olap.Slice.ChartParams, System.String[], System.String[], FastReport.Olap.Utils.Variant[], System.Int32) Устаревшие поля. Следующие поля были заменены на соответствующие свойства: Нажмите сюда, чтобы развернуть FastReport.Olap.Types.BoolValue -> public System.Boolean Value FastReport.Olap.Types.ByteValue -> public System.Byte Value FastReport.Olap.Types.DateTimeValue -> public System.DateTime Value FastReport.Olap.Types.DecimalValue -> public System.Decimal Value FastReport.Olap.Types.DoubleValue -> public System.Double Value FastReport.Olap.Types.FloatValue -> public System.Single Value FastReport.Olap.Types.IntValue -> public System.Int32 Value FastReport.Olap.Types.LongValue -> public System.Int64 Value FastReport.Olap.Types.SByteValue -> public System.SByte Value FastReport.Olap.Types.ShortValue -> public System.Int16 Value FastReport.Olap.Types.StringValue -> public System.String Value FastReport.Olap.Types.TimeSpanValue -> public System.TimeSpan Value FastReport.Olap.Types.UIntValue -> public System.UInt32 Value FastReport.Olap.Types.ULongValue -> public System.UInt64 Value FastReport.Olap.Types.UShortValue -> public System.UInt16 Value FastReport.Olap.Slice.MeasureCell -> public FastReport.Olap.Utils.Variant Value Устаревшие методы. Были заменены на совместимые методы, но вместо типа Variant теперь используется боксинг данных через Object что позволяет передавать не значения с копированием памяти а ссылку на объект. Нажмите сюда, чтобы развернуть FastReport.Olap.Types.BoolDTP -> public FastReport.Olap.Types.BoolValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.ByteDTP -> public FastReport.Olap.Types.ByteValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.CommonDataTypeProcessor``2 -> public System.Int32 AddNewVariantValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.CommonDataTypeProcessor``2 -> public T VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.DateTimeDTP -> public FastReport.Olap.Types.DateTimeValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.DecimalDTP -> public FastReport.Olap.Types.DecimalValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.DoubleDTP -> public FastReport.Olap.Types.DoubleValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.FloatDTP -> public FastReport.Olap.Types.FloatValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.IntDTP -> public FastReport.Olap.Types.IntValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.LongDTP -> public FastReport.Olap.Types.LongValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.Range -> public System.Boolean Match(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.Ranges -> public System.Boolean Match(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.SByteDTP -> public FastReport.Olap.Types.SByteValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.ShortDTP -> public FastReport.Olap.Types.ShortValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.StringDTP -> public FastReport.Olap.Types.StringValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.TimeSpanDTP -> public FastReport.Olap.Types.TimeSpanValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.UIntDTP -> public FastReport.Olap.Types.UIntValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.ULongDTP -> public FastReport.Olap.Types.ULongValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Types.UShortDTP -> public FastReport.Olap.Types.UShortValue VariantToValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Slice.AxisContainer -> public FastReport.Olap.Utils.Variant GetValue(System.Int32, System.Int32) FastReport.Olap.Slice.MeasuresContainer -> public FastReport.Olap.Utils.Variant GetMeasureValue(System.Int32, System.Int32, System.Int32, System.Int32, System.Int32) FastReport.Olap.Slice.MeasuresContainer -> public FastReport.Olap.Utils.Variant GetSecondAdditionalTotalMeasureValue(System.Int32, System.Int32, System.Int32, System.Int32, System.Int32, System.Int32) FastReport.Olap.Slice.Slice -> public System.Object Calc(FastReport.Olap.Types.Expression, FastReport.Olap.Utils.Variant) FastReport.Olap.Slice.Slice -> public FastReport.Olap.Utils.Variant CalcFuncForSelectedArea(FastReport.Olap.Types.AggregateFunction, FastReport.Olap.Types.Selection) FastReport.Olap.Slice.Slice -> public FastReport.Olap.Utils.Variant GetMeasureValue(System.Int32, System.Int32) FastReport.Olap.Slice.SliceField -> public FastReport.Olap.Utils.Variant GetUniqueValue(System.Int32) FastReport.Olap.Slice.SliceField -> public FastReport.Olap.Utils.Variant GetUniqueValueFromRecord(System.Int32) FastReport.Olap.Slice.SliceField -> public System.Int32 GetUniqueValueIdAndVariantFromRecord(System.Int32, FastReport.Olap.Utils.Variant&) FastReport.Olap.Slice.UniqueValuesFieldFilter -> public System.Void SetAllowedUniqueValueByValue(FastReport.Olap.Utils.Variant, System.Boolean) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 AddNewVariantValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 AddNewVariantValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 AddNewVariantValueFromParentValueByAppend(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 GetValueIdAtValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.CommonUniqueValues -> public FastReport.Olap.Utils.Variant GetVariantByOrder(System.Int32) FastReport.Olap.Cube.CommonUniqueValues -> public FastReport.Olap.Utils.Variant GetVariantByValueId(System.Int32) FastReport.Olap.Cube.Cube -> public FastReport.Olap.Utils.Variant GetSourceValue(System.Int32, System.Int32) FastReport.Olap.Cube.Cube -> public FastReport.Olap.Utils.Variant GetSourceValue(System.Int32, FastReport.Olap.Cube.CubeField) FastReport.Olap.Cube.Cube -> public System.Int32 GetSourceValueIdAndVariant(System.Int32, System.Int32, FastReport.Olap.Utils.Variant&) FastReport.Olap.Cube.Cube -> public System.Int32 GetSourceValueIdAndVariant(System.Int32, FastReport.Olap.Cube.CubeField, FastReport.Olap.Utils.Variant&) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean AddUniqueValue(System.Int32, FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean AddUniqueValue(FastReport.Olap.Cube.CubeField, FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean SetFieldValue(System.Int32, FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean SetFieldValue(FastReport.Olap.Cube.CubeField, FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.DatePartUniqueValues -> public System.DateTime GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.DayOfWeekPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.DayOfYearPartUniqueValues -> public System.Int16 GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.DayPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.HalfYearPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.HourPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.MillisecondPartUniqueValues -> public System.Int16 GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.MinutePartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.MonthPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.QuarterPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.SecondPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.TimePartUniqueValues -> public System.TimeSpan GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 AddNewVariantValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 AddNewVariantValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 AddNewVariantValueFromParentValueByAppend(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.UniqueValues``2 -> public T2 GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 GetValueIdAtValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.UniqueValues``2 -> public FastReport.Olap.Utils.Variant GetVariantByOrder(System.Int32) FastReport.Olap.Cube.UniqueValues``2 -> public FastReport.Olap.Utils.Variant GetVariantByValueId(System.Int32) FastReport.Olap.Cube.WeekNumberPartUniqueValues -> public System.Byte GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.YearMonthPartUniqueValues -> public System.Int32 GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Cube.YearPartUniqueValues -> public System.Int16 GetChildValueFromParentValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetColOffsetTotalValueForDims(System.Int32, System.String) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetColOffsetValue(System.Int32) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetColOffsetValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetColRowOffsetValue(System.Int32, System.Int32) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetColRowOffsetWithLevelValue(System.Int32, System.Int32, System.Int32, System.Int32) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetRowOffsetTotalValueForDims(System.Int32, System.String) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetRowOffsetValue(System.Int32) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetRowOffsetValue(FastReport.Olap.Utils.Variant) FastReport.Olap.Code.Measure -> public FastReport.Olap.Utils.Variant GetTotalValueForDims(System.String) FastReport.Olap.Code.Measures -> public FastReport.Olap.Utils.Variant GetDetailValue(System.Int32, System.String) Устаревшие свойства. Следующие свойства были заменены на использование боксинга вместо типа Variant : Нажмите сюда, чтобы развернуть FastReport.Olap.Types.BoolValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.ByteValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.DateTimeValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.DecimalValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.DoubleValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.FloatValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.IntValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.LongValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.Range -> FastReport.Olap.Utils.Variant HighRange { public get; public set; } FastReport.Olap.Types.Range -> FastReport.Olap.Utils.Variant LowRange { public get; public set; } FastReport.Olap.Types.SByteValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.ShortValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.StringValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.TimeSpanValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.UIntValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.ULongValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Types.UShortValue -> FastReport.Olap.Utils.Variant Variant { public get; public set; } FastReport.Olap.Slice.CalculateMeasureEventArgs -> FastReport.Olap.Utils.Variant Data { public get; public set; } FastReport.Olap.Slice.CalculateValueEventArgs -> FastReport.Olap.Utils.Variant Value { public get; public set; } FastReport.Olap.Slice.SliceField -> FastReport.Olap.Utils.Variant CurrentValue { public get; } FastReport.Olap.Code.ContainerFieldItem -> FastReport.Olap.Utils.Variant CurrentValue { public get; } FastReport.Olap.Code.Dimension -> FastReport.Olap.Utils.Variant CurrentValue { public get; } FastReport.Olap.Code.Dimensions -> FastReport.Olap.Utils.Variant DetailValue { public get; } FastReport.Olap.Code.Measure -> FastReport.Olap.Utils.Variant CurrentValue { public get; } Устаревшие типы. Следующие типы устарели и были целиком удалены, т.к. теперь они не используются. FastReport.Olap.Utils.Variant FastReport.Olap.Types.IVariantable FastReport.Olap.Types.UnAssigned Новые делегаты заменили старые, которые использовали тип Variant . FastReport.Olap.Slice.Value2Delegate(System.Int32, System.Int32, System.Object, System.Object, System.Int32) FastReport.Olap.Slice.ValueDelegate(System.Int32, System.Int32, System.Object, System.Int32) FastReport.Olap.Slice.SliceChartDataHandler(FastReport.Olap.Slice.Slice, FastReport.Olap.Slice.ChartParams, System.String[], System.String[], System.Object[], System.Int32) Новое поле заменило существующие, теперь вместо типа Variant  используется боксинг через Object . FastReport.Olap.Slice.MeasureCell -> public System.Object Value Новые методы заменили старые, где использовался тип Variant . Теперь вместо него используется боксинг и передача данных идёт по ссылке, а не по значению, что позволило значительно вырасти скорости. Нажмите сюда, чтобы развернуть FastReport.Olap.Types.Range -> public System.Boolean Match(System.Object) FastReport.Olap.Types.Ranges -> public System.Boolean Match(System.Object) FastReport.Olap.Slice.AxisContainer -> public System.Object GetValue(System.Int32, System.Int32) FastReport.Olap.Slice.MeasuresContainer -> public System.Object GetMeasureValue(System.Int32, System.Int32, System.Int32, System.Int32, System.Int32) FastReport.Olap.Slice.MeasuresContainer -> public System.Object GetSecondAdditionalTotalMeasureValue(System.Int32, System.Int32, System.Int32, System.Int32, System.Int32, System.Int32) FastReport.Olap.Slice.Slice -> public System.Object Calc(FastReport.Olap.Types.Expression, System.Object) FastReport.Olap.Slice.Slice -> public System.Object CalcFuncForSelectedArea(FastReport.Olap.Types.AggregateFunction, FastReport.Olap.Types.Selection) FastReport.Olap.Slice.Slice -> public System.Object GetMeasureValue(System.Int32, System.Int32) FastReport.Olap.Slice.SliceField -> public System.Object GetUniqueValue(System.Int32) FastReport.Olap.Slice.SliceField -> public System.Object GetUniqueValueFromRecord(System.Int32) FastReport.Olap.Slice.SliceField -> public System.Int32 GetUniqueValueIdAndVariantFromRecord(System.Int32, System.Object&) FastReport.Olap.Slice.UniqueValuesFieldFilter -> public System.Void SetAllowedUniqueValueByValue(System.Object, System.Boolean) FastReport.Olap.Cube.BaseDataReaderDataSet -> public System.Object GetValue(System.Int32) FastReport.Olap.Cube.BaseDataSet -> public System.Object GetValue(System.Int32) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 AddNewVariantValue(System.Object) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 AddNewVariantValueFromParentValue(System.Object) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 AddNewVariantValueFromParentValueByAppend(System.Object) FastReport.Olap.Cube.CommonUniqueValues -> public System.Int32 GetValueIdAtValue(System.Object) FastReport.Olap.Cube.CommonUniqueValues -> public System.Object GetVariantByOrder(System.Int32) FastReport.Olap.Cube.CommonUniqueValues -> public System.Object GetVariantByValueId(System.Int32) FastReport.Olap.Cube.Cube -> public System.Object GetSourceValue(System.Int32, System.Int32) FastReport.Olap.Cube.Cube -> public System.Object GetSourceValue(System.Int32, FastReport.Olap.Cube.CubeField) FastReport.Olap.Cube.Cube -> public System.Int32 GetSourceValueIdAndVariant(System.Int32, System.Int32, System.Object&) FastReport.Olap.Cube.Cube -> public System.Int32 GetSourceValueIdAndVariant(System.Int32, FastReport.Olap.Cube.CubeField, System.Object&) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean AddUniqueValue(System.Int32, System.Object) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean AddUniqueValue(FastReport.Olap.Cube.CubeField, System.Object) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean SetFieldValue(System.Int32, System.Object) FastReport.Olap.Cube.CubeManualLoadEventArgs -> public System.Boolean SetFieldValue(FastReport.Olap.Cube.CubeField, System.Object) FastReport.Olap.Cube.DatePartUniqueValues -> public System.DateTime GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.DayOfWeekPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.DayOfYearPartUniqueValues -> public System.Int16 GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.DayPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.HalfYearPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.HourPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.IBaseDataSet -> public System.Object GetValue(System.Int32) FastReport.Olap.Cube.MillisecondPartUniqueValues -> public System.Int16 GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.MinutePartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.MonthPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.QuarterPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.SecondPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.TimePartUniqueValues -> public System.TimeSpan GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 GetValueIdAtValue(System.Object) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 AddNewVariantValue(System.Object) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 AddNewVariantValueFromParentValue(System.Object) FastReport.Olap.Cube.UniqueValues``2 -> public System.Int32 AddNewVariantValueFromParentValueByAppend(System.Object) FastReport.Olap.Cube.UniqueValues``2 -> public T2 GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.UniqueValues``2 -> public System.Object GetVariantByOrder(System.Int32) FastReport.Olap.Cube.UniqueValues``2 -> public System.Object GetVariantByValueId(System.Int32) FastReport.Olap.Cube.WeekNumberPartUniqueValues -> public System.Byte GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.YearMonthPartUniqueValues -> public System.Int32 GetChildValueFromParentValue(System.Object) FastReport.Olap.Cube.YearPartUniqueValues -> public System.Int16 GetChildValueFromParentValue(System.Object) FastReport.Olap.Code.Measure -> public System.Object GetColOffsetTotalValueForDims(System.Int32, System.String) FastReport.Olap.Code.Measure -> public System.Object GetColOffsetValue(System.Int32) FastReport.Olap.Code.Measure -> public System.Object GetColOffsetValue(System.Object) FastReport.Olap.Code.Measure -> public System.Object GetColRowOffsetValue(System.Int32, System.Int32) FastReport.Olap.Code.Measure -> public System.Object GetColRowOffsetWithLevelValue(System.Int32, System.Int32, System.Int32, System.Int32) FastReport.Olap.Code.Measure -> public System.Object GetRowOffsetTotalValueForDims(System.Int32, System.String) FastReport.Olap.Code.Measure -> public System.Object GetRowOffsetValue(System.Int32) FastReport.Olap.Code.Measure -> public System.Object GetRowOffsetValue(System.Object) FastReport.Olap.Code.Measure -> public System.Object GetTotalValueForDims(System.String) FastReport.Olap.Code.Measures -> public System.Object GetDetailValue(System.Int32, System.String) Новые свойства заменили или дополнили устаревшие: Нажмите сюда, чтобы развернуть FastReport.Olap.Types.BoolValue -> System.Boolean Value { public get; public set; } FastReport.Olap.Types.ByteValue -> System.Byte Value { public get; public set; } FastReport.Olap.Types.DateTimeValue -> System.DateTime Value { public get; public set; } FastReport.Olap.Types.DecimalValue -> System.Decimal Value { public get; public set; } FastReport.Olap.Types.DoubleValue -> System.Double Value { public get; public set; } FastReport.Olap.Types.FloatValue -> System.Single Value { public get; public set; } FastReport.Olap.Types.IntValue -> System.Int32 Value { public get; public set; } FastReport.Olap.Types.LongValue -> System.Int64 Value { public get; public set; } FastReport.Olap.Types.Range -> System.Object HighRange { public get; public set; } FastReport.Olap.Types.Range -> System.Object LowRange { public get; public set; } FastReport.Olap.Types.SByteValue -> System.SByte Value { public get; public set; } FastReport.Olap.Types.ShortValue -> System.Int16 Value { public get; public set; } FastReport.Olap.Types.StringValue -> System.String Value { public get; public set; } FastReport.Olap.Types.TimeSpanValue -> System.TimeSpan Value { public get; public set; } FastReport.Olap.Types.UIntValue -> System.UInt32 Value { public get; public set; } FastReport.Olap.Types.ULongValue -> System.UInt64 Value { public get; public set; } FastReport.Olap.Types.UShortValue -> System.UInt16 Value { public get; public set; } FastReport.Olap.Slice.CalculateMeasureEventArgs -> System.Object Data { public get; public set; } FastReport.Olap.Slice.CalculateValueEventArgs -> System.Object Value { public get; public set; } FastReport.Olap.Slice.SliceField -> System.Object CurrentValue { public get; } FastReport.Olap.Format.CustomFormat -> System.String DefaultFormatValue { public get; public set; } FastReport.Olap.Code.ContainerFieldItem -> System.Object CurrentValue { public get; } FastReport.Olap.Code.Dimension -> System.Object CurrentValue { public get; } FastReport.Olap.Code.Dimensions -> System.Object DetailValue { public get; } FastReport.Olap.Code.Measure -> System.Object CurrentValue { public get; } Новые типы: FastReport.Olap.Utils.VMath - заменил тип Variant, теперь математика происходит через инвариантные вычисления с помощью боксинга и преобразование типа. FastReport.Olap.Types.IValueStruct``1 - интерфейс для реализации собственного типа боксинга. FastReport.Olap.Types.SimpleCompareAction - перечисление для типов действий инвариантной математики. Изменения для FastCube WinForms и FastCube Mono Устаревшие поле было заменено на технически совместимое. FastReport.Olap.Controls.SizingInfo -> public FastReport.Olap.Utils.Variant Data Новое поле: FastReport.Olap.Controls.SizingInfo -> public System.Int32 Data ### Выпускной вечер в федеральной сети детских технопарков URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/kvantorium-2023-final Summary: 20 мая в рамках сотрудничества представители нашей компании приняли участие в выпускном вечере Кванториума - детского технопарка. 20 мая в рамках сотрудничества представители нашей компании приняли участие в выпускном вечере Кванториума - детского технопарка. 20 мая в рамках сотрудничества представители нашей компании приняли участие в выпускном вечере Кванториума.  В течении всего учебного года наша компания проводила семинары, мастер классы и лекции для ребят. И субботним вечером с большим удовольствием мы вручили ребятам сертификаты об окончании школы Кванториум.  Желаем выпускникам удачи и дальнейшего развития в ИТ отрасли! ### Выпущен FastCube 1.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.1 Summary: Выпущен FastCube 1.1 Выпущен FastCube 1.1 Что нового: -------------- + добавлена новая статистическая функция "Количество уникальных значений" + добавлено свойство DefaultFormat определяющее формат вывода по умолчании для полей типа Date, Time и числовых + добавлено свойство поля FormatString определяющее формат вывода. + добавлена поддержка ftLargeInt и ftMemo полей + добавлена опция mdsoNoTotalIfOneValue (не отображать итог если есть только одно значение) + добавлена функция автоматической расстановки полей TfcSlice.CreateAutoFieldsLayout(ANumsAsFacts: boolean = false); + добавлена опция mdsoAddTotalPrefix (добавлять слово "Итог" при использовании опции mdsoTotalAsPrevLevel) + добавлен вызов события OnGetFieldConv для настройки конвертации поля  + добавлен расчет автовысоты для всех колонок оси строк + добавлены пакеты для Delphi 5 + добавлен Recompile Wizard для FastCube + добавлены события на операции сохранения/загрузки/экспорта в гриде + добавлен компонент TfrcGrid для привязки к TfrcCrossView в отчете экземпляров TfcGrid. * модуль fcGraphics переименован в fcGraphicUtils из-за наличия такого модуля в библиотеке 1stClass * модуль fcScrollBar переименован в fcScrollBarCtrl из-за наличия такого модуля в библиотеке 1stClass - решена проблема с Lookup полями - исправлена ошибка связанная со сравнением BCD в Delphi 2005 - исправлена ошибка возникавшая при копировании в буфер - убрана установка MakeTotal при сворачивании(разворачивания) значения - убраны русские символы из форм - исправлены ошибки экспорта ### Выпущен FastCube 1.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.2 Summary: Выпущен FastCube 1.2 Выпущен FastCube 1.2 Что нового: -------------- + добавлено свойство SelectedArea в TfcGrid для получения координат выделения в гриде + добавлена возможность изменять ширину выпадающего списка + добавлено сохранение ширины выпадающего списка в схеме + добавлена разбивка Времени на составляющме (Час, минута, секунда). Опция куба mdcoMakeTimes. + добавлено событие onGetStyles в TfrcGrid для задания стилей отображения TfrcCrossView в отчете + добавлена возможность исключения полей из списка при загрузке из базы используя событие OnGetFieldConv + добавлено свойство Version в TfcCube * разрешено устанавливать MakeTotal внутри конструкции Slice.BeginUpdate ...  Slice.EndUpdate. * добавлена проверка на версию в Recompile Wizard для FastCube * по умолчании значение NullStr сделано '' * в редакторе показателя заменена точность на формат * переименован класс TfrxChartEditor в TfrcChartEditor - исправлены ошибки работы с FMTBCD - исправлены ошибки работы с TimeStamp - исправлена ошибка загрузки данных из вычисляемых полей - устранена утечка памяти в TfcUniqueValues.Find - исправлены незначительные ошибки отрисовки осей грида - исправлены ошибка загрузки названий полей в TfcSlice.LoadFromStream - исправлена ошибка добавления TfcSourceGrid на форму - исправлена ошибка в LoadFromStream - исправлена ошибка с OnChange в TfcGrid - исправлена ошибка с удалением грида, если к нему привязана панель инструментов - исправлена ошибка с удалением грида, если к нему привязан TfcGridReport ### Выпущен FastCube 1.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.3 Summary: Выпущен FastCube 1.3 Выпущен FastCube 1.3 Что нового: -------------- + Добавлены стили для форматирования при печати ячеек с итогом: cellrowtotal, cellrowgrand, cellcoltotal, cellcolgrand, cellfulltotal, cellfullgrand, cellrowtotalcolgrand, cellrowgrandcoltotal + новые события: TfcChart.OnGetSeriesClass, TfcChart.OnSeriesCreated, TfcChart.OnChartFilled + новые события: TfcGrid.OnDrawCell, TfcGrid.OnDrawAxisItem + добавлена возможность перемещения по DetailGrid при помощи клавиатуры + в таблице детализации отображается фокус ячейки + в Recompile Wizard сохраняются установки для каждого компилятора + добавлено краткое описание TfcChart. Читайте fcchart_rus.txt. + При изменении названия поля куба происходит его переименование в схеме + добавлен компонент TfrcChart для привязки к TfrcChartView в отчете экземпляров TfcChart, доступных в приложении. + переработан компонент диаграммы (TfcChart) + Добавлен пункт меню для переименовывания измерений + Добавлено свойство PercentFormat + добавлено свойство Value для TMeasure в скрипте (короткое от CurrentValue) + добавлена регистрация классов в скрипте в FastrReport + добавлены Итальянские ресурсы (спасибо Loris Ferraresso) + числовые поля в DetailGrid выравниваются по правому краю + добавлены Бразильские ресурсы (два варианта на выбор) + экспорт в кодировке UTF8 * при перемещении между зонами грида измерение больше не теряет своей ширины, высоты * в Trial версии разрешена возможность сохранения данных куба. * добавлен выбор источника в отчете для TfrcChartView и TfrcCrossView * ресурсы измененны в utf8-xml * подкорректирована совместимость с Delphi5 * установлен запрет использования функции "Количество уникальных значений" с вычисляемым показателем * TfcCube.LoadFromStream делает куб активным если он неактивный * при экспорте в первую строке пишется Caption из куба - исправлена ошибка: деление на ноль при отображении процентов при нулевом итоге - исправлена ошибка с THorizBarSeries - Исправлена ошибка: AV при перетаскивании поля "Системный счетчик". - исправлена ошибка отображения SmallInt - исправлена ошибка: AV при загрузке схемы от другого куба - исправлена ошибка: AV при добавлении нового показателя - исправлено ошибочное наименование показателей #MEASURES - исправлена ошибка: при редактировании показателей стиралась вся информация о диапазонах подсветки - исправлены незначительные ошибки отрисовки DetailGrid и SourceGrid - исправлена ошибка, возникавшая при отключении отображения всех показателей при отключенной опции mdsoAutoFilter - исправлена отрисовка TfcDetailGrid - исправлена ошибка, возникающая при откате изменений фильтра при отключенной опции mdsoAutoFilter ### Выпущен FastCube 1.4 с поддержкой Delphi 2009! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.4 Summary: Выпущен FastCube 1.4 с поддержкой Delphi 2009! Выпущен FastCube 1.4 с поддержкой Delphi 2009! Что нового в FastCube 1.4: + добавлена опция mdsoSaveChartInSchema в TfcSlice (сохранение настроек диаграмм вместе с настройками среза) + добавлена новая статистическая функция "Список уникальных значений" + Добавлено новое событие TfcSlice.OnInterpreterCreated для добавления пользовательских переменных и функций в скрипт + Добавлены Польские ресурсы + Добавлен метод TfrcCrossView.Update для вызова в скрипте отчета при изменении набора в исходном датасете + Добавлено сохранение ширины колонок оси X  в схеме. + Сделано обращение в скрипте к значениям полей с записях, формирующих вычисляемую ячейку.   Это дает возможность расчета показателя по алгоритму пользователя не основываясь на вычислении других показателей.   Для формировани массива детализации необходимо вызывать в скрипте метод Measures.PrepareDetailInfo   Число записей в массиве - Measures.RecordCount   Обращение к значению по в строке - Measures.DetailValue[ARecordIndex, AFieldName] + Сделана возможность возвращения результата скрипта как String. + Обращение к показателям в скрипте (Measures[MeasureName]) сделано по имени показателя. + Добавлено свойство Name для поля в регионе. Возможно обращение к показателям по имени. + добавлена новая статистическая функция "Первое встреченное значение". Применима ко всем типам данных! + Добавлена опция куба mdcoLoadWithDefaultFormat. Установка для полей формата по умолчании при загрузке сохраненного куба. + Добавлена разбивка даты на составляющую ДеньГода. + добавлены Голландские ресурсы (спасибо Jack Janssen) + Добавлено свойство PaintStyle влияющее на стиль отрисовки    грида и его составляющих. Различия между стилями будут с    новыми версиями увеличиваться + Добавлен экспорт куба/данных куба в XML форматы: XML for Analysis, xml-msdata (.Net DataSet), ms rowset (ADO), DataPacket (ClientDataset) + Добавлено свойство property UseFCChartEvents: boolean в TfrcChart + При печати диаграммы через TfrcChart используются события из исходной диаграммы TfcChart + Добавлена возможность регистрации пакетов с помощью Recompile Wizard + Добавлены Турецкие ресурсы (спасибо Burhan Cakmak) + Добавлена разбивка даты на составляющую НомерНедели. + Добавлено свойство TfcSlice.FieldsOrder - вид сортировки в списке полей (по имени поля, по названию поля, по порядку в DataSet, пользовательская). + добавлены Португальские ресурсы (спасибо Fernando Dias) + добавлены Чешские ресурсы (спасибо Karel JaneД?ek) * В демо добавлены примеры использования новых свойств. * Обновлены Бразильские ресурсы - Исправлено: значение вычисляемого поля с подсчетом итогов по формуле равно 0 в диаграмме в некоторых случаях - Исправлена потеря заголовка поля при его перемещении между областями - Исправлена обработка полей в IBObjects - При загрузке куба из потока название поля "Показатели" устанавливается в соответсвии с языковыми ресурсами - Исправлена ошибка возникавшая при работе в дизайнере FastReport - Исправлена ошибка обращения к значениям детализации (Measures.DetailValue[ARecordIndex, AFieldName]) из скрипта - Исправлена ошибка обращения к значениям измерений (Dimensions[AFieldName].CurrentValue) из скрипта - Исправлена ошибка отрисовки при mdgoYAxisScroller - Исправлено: Имена измерений и показателей в скрипте - регистрочувствительные. - Убрана лишняя перерисовка грида при движении курсора мыши на регионом строк - Published свойства в DefaultFormat сделаны write. - Исправлена ошибка получения данных для диаграммы - Исправлена ошибка регистрации компонента TfrcChart - Исправлена ошибка возникавшая при сортировке по значению показателя при отсутствии ячейки с фокусом - Исправлена ошибка с вызовом SetCubeFieldCaption в TfcAbstractSlice - Исправлена ошибка: Свойство Font не используется в TfcGrid. - Исправлена ошибка возникающая при использовании Lookup полей - Исправлены ошибки в Recompile Wizard. ### Выпущен FastCube 1.5! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.5 Summary: Выпущен FastCube 1.5! Выпущен FastCube 1.5! Выпущен FastCube 1.5. + Изменен алгоритм расчета высоты строк в оси X + Добавлено свойство TfcGrid.MaxRowHeightInXAxis + Добавлены свойства в Measures[] ColOffsetValueWithDimValue[ADimValue: Variant] и ColOffsetValueWithDimValue[ADimValue: Variant] для получения значения показателя со значением измерения равному ADimValue + Добавлена обработка колеса мыши в таблице детализации. + Добавлено сохранение в файле схемы свойств FieldsOrder и ShowSplitFieldsInFieldList + Добавлено свойство TfcSlice.ShowSplitFieldsInFieldList + Добавлено сохранение в файле куба индекса поля в исходном DataSet + Добавлено событие TfcSlice.OnSliceChanged + Добавлена возможность копирования в буфер обмена с заголовками + Добавлены события TfcSlice.OnStartChange и TfcSlice.OnStopChange. + Добавлены Французские ресурсы. Спасибо Hugues Van Landeghem. + Улучшена поддержка WideString полей. В сочетании с новыми определениями (см. fc.inc) UseWideString, UseUnicodeString (только для d2009) позволяет выводить unicode символы в кросс-таблице. + Добавлено свойство PercentFormat в TfcCube.DefaultFormat + Добавлена опция mdgoCloneMasterValueOnExport в TfcGrid (копирование значения группировки на все строки(столбцы) в экспорте) + Ширина полей сохраняется в схеме и при перемещении полей между регионами + Добавлена поддержка TBCDField в Delphi5 + Добавлены Немецкие ресурсы. Спасибо Daniel Soppe + Добавлено свойство GridCanvas в TfcGrid для использования в событиях OnDrawCell и OnDrawAxisItem + Добавлена кнопка CopyToClipboard в ChartToolbar + Добавлены Испанские ресурсы + Добавлена процедура TfcCube.Refresh для обновления данных в кубе из DataSet * Функция af_Count больше не требует указания базового поля. - Удалены свойства грида Ctl3D, ParentCtl3D - Существенно ускорен процесс сворачивания/разворачивания элемента измерения - Устранена задержка отрисовки осей при больших объемах данных - Исправлена ошибка с Dimensions[] в сскрипте вычисляемого показателя - Исправлена ошибка с BCD полями в Fib+ и InterBaseExpress - Исправлена ошибка доступа к DefaultFormat в TfcFieldOfRegion - Исправлена ошибка в HTML экспорте под Delphi 2009 - Исправлена ошибка: при редактировании TfrcChartView происходил сброс схемы куба. - Исправлена копиляция в BCB6 пакета с поддержкой FastScript - Исправлено некоректное присвоение charset - Исправлены ошибки в Recompile Wizard для Delphi 2009 - Исправлены ошибки в пакете frcd12.dpk (Delphi 2009) - Исправлены ошибки формы редактора показателей ### Выпущен FastCube 1.6! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.6 Summary: Выпущен FastCube 1.6! Выпущен FastCube 1.6! FastCube 1.6 Что нового: + Добавлена function TfcAxis.GetVisibleIndexFromAbs(ALevel: Integer; AAbsIndex: Integer; var AIndex: integer; var AVisible: Boolean): Boolean; + Добавлена процедура TfcGrid.SelectCell(ACol, ARow: integer; AMakeVisible: boolean); + Добавлена поддержка Embarcadero Rad Studio 2010 (Delphi/C++Builder) + Добавлена опция mdsoSaveFiltersByValue в TfcSlice (сохранение в схеме фильтров по значению) + Добавлена новая статистическая функция "Последнее встреченное значение". Применима ко всем типам данных! + Добавлено свойство UseParentFont в TfcGridStyles. + При печати с использованием TfrcGrid из TfcGrid берутся шрифт, цвет и выравнивание. + Добавлено свойство Font в TfcGridStyle. + Добавлено свойство Measure[].TotalValueForDims['dim1, dim2'] для получения значения итога по измерения dim1, dim2 для меры + Добавлены Греческие ресурсы от Dimitris Karagikas + Добавлена возможность одновременного использования одного поля одновременно в показателях и измерении + Добавлены свойства Dimensions.IsTotalByCol и Dimensions.IsTotalByRow для проверки в скрипте является ли ячейка итоговой + Добавлен тип формата fkCustom (Вы можете создавать и регистрировать дополнительные форматы через fcCustomFormats.AddFormat. Смотрите примеры fcExamples). + Добавлены Шведские ресурсы от Niklas Larsson + Добавлены скриптовые события OnGetSeriesClass, OnSeriesCreated и OnChartFilled в TfrcChartView. + Обновлен модуль frcCrossRTTI для поддержки диаграмм. + Добавлено свойство StackType (MultiBar) в TfcChart. + Добавлена поддержка THorizBarSeries в TfcChart. + Добавлены новые события OnSaveTemplate и OnLoadTemplate в TfcChart. + Добавлено новое свойство DefaultTemplatePath в TfcChart. + Добавлены новые свойства DefaultSchemePath, DefaultCubePath и DefaultExportPath в TfcGrid. + Добавлена опция грида mdgoChangeOrderByClick - Переключение порядка сортировки одним нажатием кнопки мыши. + Добавлен пакет интеграции с FastReport для BCB6 + Добавлена возможность одновременного изменения ширины всех колонок в оси X. Для этого необходимо удерживать клавишу Ctrl при изменении размера колонки. * Изменено событие TfrcGrid.onGetStyles * Для файлов схемы теперь используется только UTF8 кодировка. - Исправлен эспорт Null в различные XML форматы - Исправлена ошибка чтения свойства StackType (MultiBar) в TfcChart. - Исправлено использование свойства DefaultExportPath в TfcGrid и свойства DefaultTemplatePath в TfcChart. - Исправлена ширина TfcChartToolBar - Исправлена ошибка чтения схемы диаграммы сохраненной в версии до 1.5.5 - Исправлена ошибка: Неверный расчет размеров при печати при использовании различных шрифтов. - Исправлена ошибка диаграммы при пустом наборе данных - Исправлена ошибка отображения названий показателей при свернутом измерении ### Выпущен FastCube 1.7! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.7 Summary: Выпущен FastCube 1.7! Выпущен FastCube 1.7! FastCube 1.7, что нового: + Добавлено свойство TfcChart.SkipNullPoints: boolean + Добавлена опция mdsoSaveFiltersEnabledValues в TfcSlice (сохранение в схеме фильтров значений, отмеченных как допустимые) + Добавлена обработка комбинаций клавиш Ctrl+Up и Ctrl+Down в TfcGrid и в TfcDetailGrid + Добавлено событие TfcGrid.OnUpdateSelection: TNotifyEvent + При изменении стилей свойство TfcGridStyle.UseParentFont устанавливается в False. + Добавлено скриптовое событие OnGetFieldConv в TfrcCube. + Добавлен параметр ACalcRowHeight: boolean в TfcGrid.SelectCell + Добавлены события OnBeforeRemoveSliceFieldFromRegion и OnBeforeAddedSliceFieldToRegion в TfcSlice + Добавлена опция mdsoAllowFilterAllValues в TfcSlice.Options * Свойство берется из TfcGrid если ипользуется событие OnGetStyles в TfrcGrid * Значения числовых показателей копируются в буфер без учета формата. - Поправлено копирование стилей - приводило к неверному цветам в html, xls экспортах - Исправлены незначительные ошибки печати. - Исправлены ошибки конвертора полей. - Исправлено отображение выпадающих списков при FormStyle=fsStayOnTop  - Исправлена ошибка печати диаграммы. - Исправлена ошибка сохранения в схеме фильтра значения Null при опции mdsoSaveFiltersByValue - Исправлена ошибка инсталляции пакетов с помощью Recompile Wizard в Delphi 11 - Исправлена работа с буфером обмена для D9+ - Исправлено повреждение памяти через вызов DrawText приводящее к разного рода исключительным ситуациям - Исправлена ошибка в Recompile Wizard для C++Builder 6 c FastScript в версии Standart - Исправлено несколько ошибок в работе с FreePascal и Lazarus - Исправлена сортировка по выделенной ячейке. - Исправлена ошибка печати с использованием TfcGridReport - Исправлена ошибка загрузки схемы с полями не содержащимися в кубе ### Выпущен FastCube 1.8 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-1.8 Summary: Выпущен FastCube 1.8 Выпущен FastCube 1.8 FastCube 1.8 --------------- + Добавлена поддержка Embarcadero Rad Studio XE (Delphi XE/C++Builder XE) + Добавлено свойство RunScriptInDesigner в TfrcCube. + Добавлен поиск по первому символу (по нажатии клавиши) в раскрывающихся списках (список полей и список уникальных значений) + Добавлена поддержка TeeChart 2010 - Исправлена отрисовка подсветки при включенных стилях XP. - Исправлена ошибка работы со строковыми показателями типа UnicodeString - Исправлена ошибка - AV при перемещении вычисляемого показателя в область списка полей. - Исправлена ошибка, возникавшая при компиляции приложения в BCB 6 без использования runtime пакетов - Исправлена ошибка обработки полей типа ftMemo - Исправлены ошибки печати TfcGrid ### Выпущен FastCube 2 VCL! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-fastcube-vcl Summary: Выпущен FastCube 2 VCL! Выпущен FastCube 2 VCL! Набор компонентов для Desktop OLAP. Поддерживает Delphi/C++Builder/RAD Studio с 7й версии и до XE5 (последней на момент выпуска). Совсем кратко о том, что нового во второй версии: I. Улучшения отображения и поведения грида 1. Улучшения в гриде для исходных данных 2. Более стандартное отображение в Windows с включенными темами 3. Градиенты II. Анализ данных 1. Оптимизации для операций с осями 2. Новый атрибут измерения для единичного выбора (радио фильтр) 3. Улучшения в группах и 4. итогах 5. Ранжирование для показателей 6. Древовидная ось 7. Выделение данных 8. Панель статуса 9. Улучшенное использование FastScript 10. Новые фильтры экспорта III.Собственно, Куб 1. Разбиения 2. Загрузка из произвольных хранилищ 3. Преобразование данных при загрузке 4. Вычисление произвольных полей во время загрузки 5. Операции добавления/удаления для полей после загрузки 6. Добавление данных в активный куб IV. Глобальный фильтр V. И это далеко не всё. Если вы наш официальный пользователь VCL-компонент — зайдите в кабинет клиента и получите скидку на FastCube 2! ### Выпущен FastQueryBuilder 1.03 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastquerybuilder-1.03-release Summary: Выпущен FastQueryBuilder 1.03 Выпущен FastQueryBuilder 1.03 + добавленны пакеты и совместимость с d2006(DeXter) + связи между полями совместимых типов  + дизайнер сохраняет свою позицию и размер - исправлена ошибка формирования order by ... desc - исправленна ошибка 'Control has no parent window.' в Delphi 5 ### Выпущен FastReport .NET 1.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-1.1 Summary: Выпущен FastReport .NET 1.1 Выпущен FastReport .NET 1.1 Выпущена новая версия лидирующего продукта Fast Reports для платформы .NET - FastReport.NET 1.1 Что нового? Версия 1.1 --------------- + добавлены новые стили интерфейса - Office2007Blue, Office2007Silver, Office2007Black, VistaGlass. Выбрать стиль можно в меню "Вид/Настройки..." дизайнера, или с помощью компонента EnvironmentSettings (св-во UIStyle) + добавлен экспорт в CSV + добавлен экспорт в Text/Dot-matrix + добавлены приложения Designer.exe и Viewer.exe + добавлен элемент управления DesignerControl + добавлена команда "Копировать формат" на панель инструментов "Стандартная" + добавлены новые системные переменные - "TotalPage#" и "Page#" + добавлена поддержка источника данных BindingSource + добавлено свойство "RTFExport.ImageFormat" + добавлены свойства HideIfNoData, NoDataText в BarcodeObject + добавлен новый демо-проект - MdiDesigner + добавлен демо-отчет "Table/Fit Dynamic Table To Page" + добавлен демо-отчет "Dialogs/Cascaded Data Filtering" + добавлен демо-отчет "Interactive Reports/Interactive Matrix With Chart" + добавлен демо-отчет "Dialogs/Labels With Dialog" + добавлена локализация Chinese (simplified) + добавлена локализация Arabic + добавлен экспорт прозрачных цветов и картинок (alpha blending) в PDF формат + добавлен экспорт линий, стрелок, прямоугольников теней в PDF формат + добавлен экспорт водяных знаков в PDF формат + добавлен экспорт паттернов линий в PDF формат + добавлен экспорт горизонтальных и вертикальных линий, прямоугольников, теней в Excel(xml), RichText, OpenOffice и HTML форматы * улучшена поддержка Unicode в PDF экспорте * MSChart объект перемещен в главный модуль FastReport.dll, больше не нужно подключать его как плагин * библиотека FastReport.Dock заменена на FastReport.Bars - исправлена ошибка в дизайнере при запуске в среде Vista 64-bit - исправлена ошибка с вложенным отчетом и разрываемым бэндом - исправлена ошибка в объекте Matrix (разрыв объединенной ячейки) - исправлена ошибка при создании обработчика события, если выбрано несколько объектов - исправлена ошибка в экспорте в PDF (правая граница объекта TableObject) - исправлена ошибка с потерей фокуса при закрытии окна просмотра - исправлена ошибка с выравниванием текста по ширине - исправлена ошибка в окне "Данные" (если был зарегистрирован некорректный объект DataRelation) - исправлена ошибка в VS IDE (дизайнер закрывается при закрытии окна просмотра) - исправлена ошибка с буфером обмена при редактировании объекта TextObject на месте - исправлена ошибка с MS SQL параметром типа Guid - исправлена ошибка с обработкой бизнес-объектов - исправлена ошибка со свойством PrintOnParent вложенного отчета - исправлена ошибка с одновременной печатью обычной и динамической таблицы на одном бэнде - исправлена ошибка с параметрами отчета - исправлена ошибка с параметрами SQL - исправлена ошибка с совпадением имен объектов TableObject и TableDataSource - исправлена ошибка со свойством "Visible" у TableRow, TableColumn - исправлена ошибка в функции "Count" объекта "Матрица" - исправлена ошибка с разрывом объекта "Таблица" - исправлена ошибка со связями и пустыми колонками данных - исправлена ошибка с вращением текста в экспортах Excel(xml), RichText, OpenOffice, HTML, PDF - исправлена ошибка с вложенным отчетом и свойством "RepeatOnEveryPage" - исправлена ошибка при вставке объектов типа "generic" из окна "Данные" в скрипт - исправлена запись свойства "Script" в файл .frx - исправлены задержки в работе дизайнера, если выбрано много объектов - исправлена ошибка с PictureObject.Tile - исправлена ошибка экспорта разрывов страниц и полей в XML формат - исправлена ошибка экспорта разных линий окантовки в Excel(xml), RichText, OpenOffice, HTML и PDF форматы - исправлена ошибка с подчеркнутым и перечеркнутым текстом в PDF экспорте - исправлена ошибка с окантовками TableObject в PDF экспорте - исправлена ошибка с заголовком документа в PDF экспорте FastReport .NET - генератор отчетов с широчайшими возможностями для Windows Forms, ASP.NET. Совместим с Microsoft Visual Studio 2005 и 2008, .NET Framework 2.0 и выше. Главные преимущества: - собственный визуальный дизайнер отчётов, независимый от используемой среды разработки, также встраиваемый в приложение для конечных пользователей; - специально оптимизирован для тяжелых корпоративных нагрузок, обработки больших объёмов информации и формирования действительно больших отчётов. ### Выпущен FastReport .NET 1.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-1.2 Summary: Выпущен FastReport .NET 1.2 Выпущен FastReport .NET 1.2 Новое в версии 1.2 + добавлены функции в окно "Данные" + добавлены новые объекты - CellularTextObject, ZipCodeObject + добавлены настройки email в отчет (см. меню Отчет|Свойства, закладка "Email") + добавлен экспорт в многостраничный файл TIFF + добавлено шифрование RC4 128-bit в PDF экспорте + добавлен флаг "Видимый" в редактор условного выделения. Теперь можно скрывать объект по условию + добавлены свойства AutoShrink, AutoShrinkMinSize у объекта "Текст" + добавлено свойство DataBand.RowCount + добавлено событие ReportPage.ManualBuild + добавлено свойство PictureObject.Angle + добавлено событие AfterData у всех объектов отчета + добавлено свойство CommandTimeout во все подключения + добавлен экспорт водяных знаков в HTML формат + добавлена возможность экспорта разлинованного TextObject (Underlines = true) в PDF формат + добавлены локализации Swedish, Chinese (Traditional), Czech, Turkish, Spanish + добавлены новые демо-отчеты в категории "Report Objects" + добавлены новые примеры в папке Demos * ВОЗМОЖНАЯ "поломка кода"! изменения в движке бизнес-объектов. См. подробности на форуме: https://форум.быстрыеотчеты.рф/discussion/6522/ * улучшена производительность (загрузка и запуск отчетов, содержащих большое количество объектов) * при печати иерархии теперь можно использовать свойство Anchor у объектов бэнда * изменено расширение результирующего файла в Excel(XML) экспорте с *.xls на *.xml * изменения в экспорте Excel(XML) - поддержка экспорта числовых значений * изменения в объекте "Матрица" * улучшения в иерархических отчетах (заголовки/подвалы, итоги) - исправлена ошибка с языком отчета VB.Net - исправлена ошибка в Viewer.exe (исключение, если окно слишком маленькое) - исправлена ошибка при выборе объекта Report в окне "Дерево отчета" в VS design-mode - исправлена ошибка при использовании WebReport и MasterPage - исправлена ошибка с отображением RTL в HTML экспорте и WebReport - исправлена ошибка с отображением RTL в RichText(rtf) экспорте - исправлена ошибка в MS Chart (толщина рамки при печати) - исправлена ошибка с диалогом поиска текста в превью - исправлена ошибка с типом Nullable T - исправлена ошибка в экспорте PDF (при экспорте сложной заливки) - исправлена ошибка с экспортом различных стилей рамок в форматы XML и RichText - исправлена ошибка при редактировании готового отчета - исправлена ошибка при печати объекта CellularTextObject - исправлена ошибка с диалоговой формой - исправлена ошибка с Entity Framework в ASP.NET - исправлена ошибка в диалоге настройки страницы в окне просмотра - исправлена ошибка с разверткой двух объектов "Матрица", расположенных рядом - исправлена ошибка в мастере этикеток - исправлена ошибка при отправке email через MAPI ### Выпущен FastReport .NET 1.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-1.3 Summary: Выпущен FastReport .NET 1.3 Выпущен FastReport .NET 1.3 Версия 1.3 --------------- + добавлен экспорт в монохромный TIFF + добавлен экспорт в Excel 2007 + добавлен экспорт в PowerPoint 2007 + добавлен экспорт в MHT (веб-архив) + добавлен экспорт в DBF + добавлено подключение к ODBC + добавлено подключение к Oracle ODP.NET добавлена печать имени копии  + (см. отчет "Features/Print Copy Names") добавлена встроенная поддержка  + каскадной фильтрации (св-во DetailControl). См. отчет "Dialogs/Cascaded Data Filtering" + добавлены флаги "применить" к элементам стиля добавлены пункты в  + контекстное меню бэнда для быстрого создания дочернего бэнда и детального бэнда "Данные" + добавлено свойство TextObject.NullValue (заменяет null значение на  + указанное в свойстве) добавлено свойство TextObject.ProcessAt  + (позволяет печатать итог в заголовке) добавлено свойство  + ImageExport.MonochromeTiffCompression + добавлены свойства HTMLExport.WidthUnits, HTMLExport.HeightUnits  + (позволяют выбирать между Pixel и Percent) добавлен режим Message-HTML  + (MHT, MHTML, веб-архив) в HTML экспорт (свойство HTMLExport.Format)  + добавлено событие Config.DesignerSettings.FilterConnectionTables + добавлено событие DataSourceBase.Load для заполнения источника данных  + в коде добавлена локализация Croatian добавлена локализация Persian  + добавлены новые примеры в папке Demos\VB.Net добавлен демо-отчет  + "Script/Sort Group By Total" * улучшена работа механизма "Не отрывать от данных" - исправлена ошибка в объектах "Матрица" и "Таблица" (не работало св-во Visible) - исправлена ошибка в подключении MS SQL (теперь можно использовать таблицы из схем, отличных от dbo.*) - исправлена ошибка в режиме Medium Trust - исправлена ошибка в бизнес-объектах (при совпадении имен у источников данных) - исправлена ошибка в диалоговых формах (переключение на страницу диалога могло вызвать исключение) - исправлена ошибка в построителе запросов - исправлена ошибка с OutlineExpression и RepeatOnEveryPage - исправлена ошибка с KeepChild - исправлена ошибка с экспортом штрихкодов - исправлена ошибка в диалоговых контролах (Enabled & data filtering) - исправлена ошибка с RepeatOnEveryPage и дочерним бэндом - исправлена ошибка в объектах "Таблица" и "Матрица" (бесконечный цикл, если колонка не помещается на странице) - исправлена ошибка в PDF экспорте (структура файла) - исправлена ошибка в дизайнере при попытке копирования итога - исправлена ошибка - исключение при закрытии дизайнера - исправлена ошибка с отключением навигатора в HTML экспорте - исправлена ошибка с указанием размеров WebReport в процентах - исправлена ошибка в PDF экспорте (подстановка цифр в арабском) - исправлена ошибка сортировки по вычисляемому полю - исправлена ошибка в PDF экспорте (экспорт бэнда с нулевой высотой и установленной заливкой) - исправлена ошибка в редакторе текста/выражения (drag&drop из дерева данных) - исправлена ошибка в экспорте Excel 2007 - исправлена ошибка в диалоге печати (свойства принтера) - исправлена ошибка с Outline, когда несколько отчетов объединяется в один - исправлен поиск в окне просмотра - исправлена ошибка в группах, когда нет данных для отображения FastReport.NET это полнофункциональное решение для создания отчётов для Windows Forms и ASP.NET. Может использоваться в Microsoft Visual Studio 2005/2008 и Delphi Prism. Совместимо с .NET Framework 2.0 и выше. Используя FastReport.NET вы можете создавать независимые от приложения отчёты. Другими словами, FastReport.NET может быть использован как самостоятельный инструмент для генерации отчётов. ### Выпущен FastReport .NET 1.4 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-1.4-release Summary: Выпущен FastReport .NET 1.4 Выпущен FastReport .NET 1.4 Версия 1.4 --------------- + добавлена поддержка Visual Studio 2010 + добавлена поддержка частичного внедрения шрифтов в PDF экспорте + добавлено подключение к SQL CE + добавлена системная переменная HierachyRow#, возвращающая номер строки вида "1.2.1" в иерархическом отчете + добавлена поддержка схемы таблицы в коннекторы OleDB, ODBC + добавлена функция NumToWordsEs (число прописью на испанском) + добавлена локализация Dutch + добавлена локализация на украинский + добавлено свойство Config.ReportSettings.DefaultPaperSize + добавлено свойство HTMLExport.Print - разрешает показ диалога печати в браузере при открытии html документа в одностраничном режиме + добавлено свойство HTMLExport.PageBreaks - разрешает разрывы между страницами при печати документа из браузера в одностраничном режиме + добавлено свойство ForceLoadData у источника данных + добавлено свойство band.FirstRowStartsNewPage + добавлено свойство Parameter.Description + добавлено свойство Config.TempFolder + добавлено свойство report.ReportInfo.PreviewPictureRatio + добавлено свойство DataBand.PrintIfDatasourceEmpty + добавлено свойство ChildBand.PrintIfDatabandEmpty + добавлен флаг Config.DesignerSettings.Restrictions.DontCreateData для запрета добавления новых источников данных - исправлена ошибка с Row# и StartNewPage - исправлена ошибка с пользовательскими функциями типа Nullable - исправлена ошибка с одновременной установкой свойств CanBreak и StartNewPage у бэнда - исправлена ошибка с пропуском стилей оформления в HTML при экспорте большого количества страниц в одностраничном режиме - исправлена ошибка с регистрацией плагинов - исправлена ошибка в диалоговых контролах, прикрепленных к вычисляемому полю - исправлена ошибка в построителе запросов (неверный тип join) - исправлена ошибка с порядком контролов в диалоговых формах - исправлена ошибка с Dock != None и CanGrow, CanShrink - исправлена ошибка в экспорте HTML - исправлена ошибка с сохранением имени принтера в файле отчета - исправлена ошибка в объекте "Диаграмма" (не работает метод ClearValues) - исправлена ошибка в мастере подключения к данным - исправлена ошибка в итогах, если опция "Преобразовать null значения" отключена - исправлена ошибка с записью отчета в виде класса VB - исправлено "дерево отчета" (outline) в иерархическом отчете - исправлена ошибка в объекте "Диаграмма" (при попытке сгруппировать несортированные данные по месяцам) - исправлена ошибка в диалоге "Мастер подключения к данным" в Windows Vista - исправлена ошибка с внедрением TTC шрифтов в PDF экспорте - исправлена ошибка при экспорте объекта TableObject с невидимыми строками * улучшения в диалоге "Мастер подключения" (чтение списка таблиц выполняется значительно быстрее) * команда дизайнера DesignerControl.cmdData заменена на cmdAddData и cmdChooseData * уменьшен размер создаваемого файла в HTML экспорте * улучшена производительность при работе с бизнес-объектами с глубоким уровнем вложенности * сортировка списка таблиц в "Мастере подключения к данным" по умолчанию, убрана кнопка "Сортировать" * небольшие улучшения в окне "Данные" (возможность двигать параметр отчета вверх/вниз с помощью Ctrl+Up/Down) * программа инсталляции теперь автоматически добавляет все dll в GAC * сборка FastReport.dll разделена на части - FastReport.dll, FastReport.Web.dll ### Выпущен FastReport .NET 1.5 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-1.5-release Summary: Выпущен FastReport .NET 1.5 Выпущен FastReport .NET 1.5 Версия 1.5 --------------- + добавлен импорт из формата RDL (Report Definition Language) + добавлен экспорт в формат XPS + добавлен экспорт в формат Word 2007 (docx) + добавлено свойство DataBand.ResetPageNumber + добавлены свойства PDFExport.JpegQuality и PDFExport.RichTextQuality (значения по умолчанию равны 90) + добавлена локализация Slovak + добавлена поддержка пользовательских функций в итогах матрицы + добавлено вычисление процентов в объекте "Матрица" + добавлена опция TotalsFirst (итоги в начале) для итогов матрицы + добавлено свойство HTMLExport.Layers и пункт на диалоге HTML экспорта - включают режим построения послойного HTML файла + добавлено событие Config.ReportSettings.ReportPrinted + добавлено событие DataLoaded во все диалоговые контролы, поддерживающие фильтрацию данных + добавлена печать из браузера в WebReport + добавлены свойства WebReport.PrintInPdf (включить для показа PDF при печати или отключить для печати из браузера) + добавлены свойства WebReport.PrintWindowWidth, WebReport.PrintWindowHeight + добавлены свойства WebReport.ShowWord2007Export, WebReport.DocxMatrixBased * добавлено свойство DbfExport.FieldNames вместо FieldNamesFileName, LoadFieldNamesFromFile * улучшена работа TextObject.Duplicates - исправлена ошибка в объекте "Текст" с html тэгами и стилем "подчеркнутый" - исправлена ошибка с опцией "Не отрывать от данных" и многоколоночным бэндом "Данные" - исправлена ошибка с размером бумаги - исправлена ошибка при отображении нескольких объектов "Таблица" на одном бэнде - исправлена ошибка со структурой отчета (preview outline) - исправлена ошибка в RTF экспорте с одинаковыми картинками - исправлена ошибка с CheckedListBoxControl и каскадной фильтрацией - исправлена ошибка с subreport и многоколоночным бэндом - исправлена ошибка с FirstTabOffset - исправлена ошибка со статическими параметрами запроса и master-detail отчетом - исправлена ошибка в экспорте в PowerPoint - исправлена ошибка EvenStyle в объекте "Матрица" ### Выпущен FastReport .NET 2013 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2013.1 Summary: Выпущен FastReport .NET 2013 Выпущен FastReport .NET 2013 Главные нововведения: 1. Диалоги в веб-отчётах - теперь пользователь может управлять процессом построения отчётов в интернет-интранет (редакции Web forms + Win forms и Professional). 2. Объект карта. Теперь вы можете помещать полноценые карты в свои отчёты и работать с ними! (редакции Win Forms и выше) 3. Хранение отчётов в облаках! (редакции Win Forms и выше) Полный список нововведений в версии 2013.1 --------------- + добавлена поддержка диалогов в WebReport (некоторые объекты и возможности в разработке) + добавлен объект "Карта" + добавлена возможность сохранения готового отчета в DropBox + добавлена возможность сохранения готового отчета в SkyDrive + добавлен новый тулбар в WebReport + добавлена поддержка AJAX в WebReport + добавлен выбор PrintOn.SinglePage в свойство PrintOn (нужен двойной проход) + добавлено свойство AdjustSpannedCellsWidth в объекты "Матрица" и "Таблица" + добавлено свойство Wysiwyg в экспорт в Word 2007 + добавлена поддержка якорей в PDF экспорте + добавлена локализация Armenian + добавлено свойство Label у серии диаграммы - исправлена ошибка при сохранении отчета в .cs/.vb файл - исправлена ошибка drag&drop в редакторе кода - исправлена ошибка в экспорте TXT - исправлена ошибка в экспорте в Word 2007 в послойном режиме - исправлена ошибка с числовым форматом в экспортах в Excel - исправлена ошибка при сохранении отчета в файл VB.Net Но и это ещё не всё - следите за новыими функциями, которые со дня на день появятся в разделе "daily builds" (готовятся к следующему релизу). Если вы раздумывали над приобретением, переходом на более высокую редакцию или продлением лицензии - сейчас самое время для этого. В январе 2013 стоимость лицензий FastReport.NET будет скорректирована. ### Выпущен FastReport .NET 2013.2 с поддержкой MVC URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-2013.2 Summary: Выпущен FastReport .NET 2013.2 с поддержкой MVC Выпущен FastReport .NET 2013.2 с поддержкой MVC Рады сообщить о выходе новой версии генератора отчетов для MS Visual Studio. FastReport.Net теперь поддерживает одну из современных технологий - MVC, она доступна в редакциях Win+WebForms и Professional. Информацию по использованию читайте в нашем блоге. Также было добавлено еще одно облако - Google Drive.  + добавлена поддержка ASP.NET MVC framework (ASPX, Razor) в WebReport + добавлены новые примеры использования WebReport в MVC - \Demos\C#\MvcDemo, \Demos\C#\MvcRazor + добавлено сохранение в облако Google Drive  + добавлена греческая локализация * ВНИМАНИЕ! изменено расширение WebReport handler (было FastReport.Export.aspx, стало FastReport.Export.axd), просим исправить существующие файлы web.config - исправлена ошибка с Application Key и Secret в экспорте Dropbox - исправлена ошибка с NullReferenceException при экпорте в Dropbox - исправлена ошибка c кодировкой при импорте файла dDase для карты в экспорте DBX - исправлена ошибка с числовыми форматами Excel - исправлена ошибка с неправильным форматом после оптимизации матрицы в экспорте Excel 2007 - исправлена ошибка с прозрачностью шрифитов в пустых ячейках в экспорте Excel 2007 - исправлена ошибка с дублированием склеенных ячеек в экспорте Excel 2007 - исправлена ошибка с внедрением моноширинных шрифтов в экспортах в PDF и XPS - исправлена ошибка стилей в WebReport - исправлена ошибка с WebReport.RepotDone - исправлена ошибка с Master Pages в WebReport - исправлена ошибка при печати легенды диаграммы - исправлена ошибка в PictureObject ### Выпущен FastReport .NET! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-fastreport-net Summary: Выпущен FastReport .NET! Выпущен FastReport .NET! Компания Fast Reports Inc. рада сообщить Вам о выпуске нового продукта - FastReport.NET.  FastReport.NET - это генератор отчетов с широчайшими возможностями для разработчиков, использующих продукты Microsoft Visual Studio 2005 и 2008. FastReport.NET написан на C# и совместим с .NET Framework 2.0 и выше.  ### Выпущен FastReport 3.16 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.16 Summary: Выпущен FastReport 3.16 Выпущен FastReport 3.16 + добавлена поддержка юникода в TfrxMemoView + добавлен экспорт в GIF формат TfrxGifExport + добавлен e-mail экспорт (SMTP) TfrxMailExport  + добавлен фильтр экспорта в формат CSV (TfrxCSVExport) + добавлен новый фильтр экспорта в текстовый файл (TfrxSimpleTextExport) + добавлена зависимость регистра символов в скрипте C++ + добавлен опция типа оси X в chart объект + добавлена возможность использования квадратных скобок взамен угловых (как в версии 2.5) + [FQB] связи между полями совместимых типов  + добавлены default settings для TfrxDesigner (font, paper, rtl, script language).  + добавлено событие TfrxDMPExport.OnTranslate * изменены правила экспорта rich-text объектов - исправлена ошибка в сервере при использовании параметра "pagenav" - исправлена ошибка picture.url - исправлена ошибка в PDF экспорте с горизонтальными/вертикальными линиями - [FQB] исправленна ошибка 'Control has no parent window' в Delphi 5 - исправлена ошибка в кросс-табах (неверный размер строк/столбцов) - исправлено выравнивание baClient для объектов страницы - устранена утечка памяти в режиме сервера - исправлена ошибка с master-detail DBX - исправлена ошибка TFMTBCDField (wrong sum calculation) ### Выпущен FastReport 3.17 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.17 Summary: Выпущен FastReport 3.17 Выпущен FastReport 3.17 + добавлены новые ресурсы Farsi + добавлены кнопки pdf и e-mail экспорта в окно предварительного просмотра + добавлено меню по правой кнопке мыши в предварительном просмотре + добавлен полноэкранный режим в предварительном просмотре (клавиша F11) * улучшен экспорт в формат PDF * ограничено использование некоторых свойств HTML и image экспортов при отправке по e-mail - [FQB] исправлена ошибка формирования order by ... desc - исправлена ошибка с пустым свойстовом DefaultPath во всех фильтрах экспорта - осправлена ошибка Null to OleStr - исправлена ошибка Delphi5/WideStrings - исправлена ошибка с jscript/basicscript - исправлена ошибка ibo (присвоения blob в TWideStrings) - исправлена ошибка картинок (если blob неправильный) - исправлены действия горячих клавиш Cut/Copy/Paste в инспекторе объектов - исправлена ошибка с undo в защищенных паролем отчетах - исправлена ошибка при получении списка защищенных паролем отчетов в сервере - исправлена ошибка со свойством Memo.Lines - IBO исправления ### Выпущен FastReport 3.18 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.18 Summary: Выпущен FastReport 3.18 Выпущен FastReport 3.18 + добавлена совместимость с D2006 + добавлена поддержка зачеркнутого текста в HTML экспорт + добавлена поддержка межсимвольного интервала при экспорте в формат PDF + добавлена поддержка BALTIC_CHARSET (windows-1257) в PDF экспорт + добавлена поддержка диагональных линий TfrxShapeView в PDF экспорт + добавлен модуль импорта FRF. Для его использования просто включите файл frx2xto30.pas в секцию "uses". - исправлено редактирование на месте объекта Текст - исправлена ошибка с экспортом в монохромный TIFF формат (ошибка открытия в MS Paint и Photo Editor)  - исправлена ошибка в компонентах dbx - исправлена ошибка с выбором лотка бумаги - исправлены ошибки в e-mail экспорте (свойства Lines, Signature, с прикреплением файлов, неправильный синтаксис адреса при работе с некоторыми smtp-серверами) - исправлен пользовательский интерфейс фильтров экспорта - исправлен экспорт в формат GIF - исправлен баг с xp style (av при закрытии редактора выражений) - исправлен av при выделении sysmemo и memo - исправлено имя файла экспорта по умолчанию в диалоге сохранения - исправлен TfrxServerConfig.LoadFromFile ### Выпущен FastReport 3.19 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-3.19 Summary: Выпущен FastReport 3.19 Выпущен FastReport 3.19 + добавлен отдельный пакет frxTee для TeeChart + добавлен модуль frxHiButtons.pas (hi-color кнопки). Просто добавьте в список uses. + добавлена закладка "Классы" в дерево данных + добавлено свойство TfrxBarcodeView.WideBarRatio + добавлена поддержка китайских CJK шрифтов в PDF экспорт - исправления связанные с мультипоточностью - исправлена ошибка в комбинации cross+subreport - исправлена ошибка с CloseDatasource = True - исправлена ошибка в старых кроссах - исправлена ошибка в XLS(OLE) экспорте с длинными строками - исправлена ошибка в PDF экспорте с не-TrueType шрифтами - исправлено чтение memo.loadfromfile - исправлена ошибка в инсталляторе - исправлен баг с печатью reporttitle дважды - исправлено поведение startnewpage+reprintonnewpage - исправлен межсимвольный интервал в PDF экспорте - исправлен баг с выравниванием baClient - исправлен баг с матричными объектами (дизайнер, ядро) - исправлен баг с иконкой приложения - FS: исправлен баг с многопоточностью - исправлен баг в превью (отображение страницы при смене масштаба) - исправлен импорт frf ### Выпущен FastReport 3.19 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-3.19 Summary: Выпущен FastReport 3.19 Выпущен FastReport 3.19 + добавлен отдельный пакет frxTee для TeeChart + добавлен модуль frxHiButtons.pas (hi-color кнопки). Просто добавьте в список uses. + добавлена закладка "Классы" в дерево данных + добавлено свойство TfrxBarcodeView.WideBarRatio + добавлена поддержка китайских CJK шрифтов в PDF экспорт - исправления связанные с мультипоточностью - исправлена ошибка в комбинации cross+subreport - исправлена ошибка с CloseDatasource = True - исправлена ошибка в старых кроссах - исправлена ошибка в XLS(OLE) экспорте с длинными строками - исправлена ошибка в PDF экспорте с не-TrueType шрифтами - исправлено чтение memo.loadfromfile - исправлена ошибка в инсталляторе - исправлен баг с печатью reporttitle дважды - исправлено поведение startnewpage+reprintonnewpage - исправлен межсимвольный интервал в PDF экспорте - исправлен баг с выравниванием baClient - исправлен баг с матричными объектами (дизайнер, ядро) - исправлен баг с иконкой приложения - FS: исправлен баг с многопоточностью - исправлен баг в превью (отображение страницы при смене масштаба) - исправлен импорт frf ### Выпущен FastReport 3.20 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-3.20 Summary: Выпущен FastReport 3.20 Выпущен FastReport 3.20 + улучшен экспорт в RTF + добавлено управление font.charset (установите в DEFAULT_CHARSET если вам нужен unicode) + добавлено свойство EmptyLines в XLS и XML экспорт  (если установлено в 'false', то все пустые строки убираются,  используется при экспорте без разрывов страниц для получения непрерывной таблицы) + добавлена поддержка ParagraphGap в PDF экспорте + увеличена скорость и уменьшен размер выходного файла в PDF экспорте + добавлено событие TfrxReport.OnBeforeConnect + добавлена поддержка ADO, IBX в импортер frf + добавлено свойство TfrxADOQuery.CommandTimeout + добавлен элемент pbExportQuick множества TfrxPreviewButtons  (включение отображения кнопок быстрого экспорта (PDF, E-mail) в окне предварительного просмотра) * функция AVG считает только не-Null значения * объект RichView теперь поддерживает WYSIWYG - [server] исправлена ошибка с передачей параметров при обновлении отчета - исправлена ошибка в RTF экспорте с аттрибутами стиля шрифта - исправлена ошибка с отрисовкой рамок в PDF экспорте - исправлена ошибка с размером бумаги - исправлен ParagraphGap в PDF экспорте - исправлена ошибка stack overflow с бэндом report summary - исправлена ошибка с диалоговой формой - исправлена ошибка TProgressBar property out of range при экспорте пустой страницы в HTML - исправлена ошибка в PDF экспорте с нулевой высотой/шириной bitmap изображения - [FS] исправлен вывод об ошибках в OLE - исправлена ошибка в объекте checkbox - исправлена ошибка в datatree - исправлена ошибка в chart (тип datetime) - исправлена ошибка с окном инспектора в режиме отладки - исправлена операция Undo защищенного паролем отчета - исправлены ошибки в датасетах - исправлено сохранение файла в дизайнере при открытии другого файла - исправлен PDF экспорт (цвет шрифта clNone теперь виден как clBlack)  ### Выпущен FastReport 3.21 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-3.21 Summary: Выпущен FastReport 3.21 Выпущен FastReport 3.21 + [server] добавлены новые свойства в конфигурационый файл (config.xml) + [server] добавлены новые выходные форматы CSV, BMP, GIF, TIFF + [server] добавлена возможность кеширования отчетов в памяти * [server] полностью изменен формат конфигурационного файла  (важно! читайте подробнее в server_changes_rus.txt) * [server] свойство TfrxServer.Configuration устарело и более не используется * [server] обновлены примеры server/service * [server] модифицированы модули log-writer, statistic, cache - [server] много исправлений + добавлено свойство TfrxHTMLExport.UseGif + добавлена поддержка юникода в HTML, "Rich Text" (RTF) и XML экспортах + добавлены свойства TfrxXLSExport.SuppressPageHeadersFooters и TfrxXLSExport.SuppressPageHeadersFooters; + добавлено свойство TfrxReport.OnPreview + добавлено свойство TfrxReport.OnPrintPage + [FQB] добавленно свойство fqbCore.UsingQuotes для поддержки имен полей в кавычках + добавлено отсечение объектов в превью + добавлены свойства TfrxPreview.BackColor, FrameColor + добавлены шрифты принтера в список выбора шрифтов + добавлена прозрачность/цвет заливки в объект Rich + добавлено событие TfrxDesigner.OnInsertObject * изменения в редакторе датабэнда * изменен чекбокс "Pictures" на комбобокс (none/jpeg/bmp/gif) в диалоге HTML экспорта  * изменен чекбокс "Styles" на "Continuous" в XLS и XML экспортах * bcb2006 совместимость * обновлены Голландские ресурсы - исправлена ошибка с неправильным определением кодовой страницы в навигаторе страниц HTML экспорта - исправлен некорректный экспорт EAN штрихкодов (цифры за границей штрихкода обрезались) - исправлено неверное разбиение на страницы в RTF экспорте - исправлена проблема со сдвигом объектов - исправлено растягивание монохромных изображений - исправлен TfrxDateEditControl - исправлена ошибка при копировании сгруппированных объектов - исправлена ошибка vband&overlay - исправлена установка параметров печати - испрпавлено поведение KeepFooter + агрегатные функции - исправлена ошибка в св-ве TfrxADOTable.IndexFieldNames - исправлена ошибка в параметрах ADO - исправления в мастере database/table/query - исправлена ошибка с font charset в RTF экспорте - исправлена ошибка в отрисовке превью - исправлена ошибка с объектом Rich, если нет установленных принтеров - исправлены копии в экспорте в матричный отчет - исправлена ошибка в разборе выражений в объекте Rich - исправлена ошибка с mdi preview - исправлена ошибка со скобками в RTL тексте при экспорте в PDF - исправлена ошибка с вводом китайских символов в диалоговые контролы - исправлено поведение сдвига объектов (shiftmode) - исправлена ошибка с правым выравниванием и ненулевым межсимвольным интервалом в PDF экспорте - исправлена ошибка с подчеркиваниями в HTML экспорте - исправлена ошибка с бэндом overlay и keeptogether - исправлена ошибка с bcb5 (не работают функции с параметрами) - исправлены ошибки с крупными шрифтами в системе - исправлены ошибки с html тэгами ### Выпущен FastReport 3.22 for Delphi URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-3.22 Summary: Выпущен FastReport 3.22 for Delphi Выпущен FastReport 3.22 for Delphi + добавлена полная поддержка возможностей TeeChart Pro + добавлено свойство TfrxHTMLExport.Centered + добавлен чекбокс "Continuous" в диалоге RTF экспорта + добавлено свойство TfrxRTFExport.SuppressPageHeadersFooters + добавлено свойство TfrxCheckBox.UncheckStyle + добавлено свойство TfrxGroupFooter.HideIfSingleDataRecord + добавлен сдвиг текста при ненулевом межсимвольном интервале в PDF экспорте * обновлено главное (main) демо (подержка ADO, добавлены новые отчеты) * добавлено имя объекта в сообщение об ошибке в некоторых случаях * TfrxGradientView не экспортируется в форматы HTML, RTF, XLS * сохранение имен объектов при работе с буфером обмена * обновлены Датские ресурсы * обновлены Португальские ресурсы * улучшен HTML, RTF экспорты * улучшены экспорты в XML, Excel (спасибо Bali) * увеличен таймаут в E-Mail экспорте - исправлена ошибка при экспорте пустой страницы в HTML экспорте - исправлен баг в функции IIF - исправлена ошибка с "ShowProgress := False" в XLS экспорте - исправлена ошибка в XML экспорте - исправлена ошибка с бэндом reportsummary - исправлены утечки памяти в скрипте - исправлены ошибки со сдвигом - исправлен экспорт заливки bsBDiagonal и bsFDiagonal в PDF - исправлена ошибка с некорректным значением кодовой страницы TfrxRichView в RTF экспорте - исправлена ошибка с полями в PDF экспорте - исправлена ошибка с blobfield в bds2006 - исправлена ошибка с растягиванием картинок - [server] исправлена ошибка в кеше отчетов - [server] исправлена ошибка с использованием времени простоя - [server] незначительные исправления ### Выпущен FastReport 3.23 для Delphi URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-3.23 Summary: Выпущен FastReport 3.23 для Delphi Выпущен FastReport 3.23 для Delphi Что нового: + добавлена возможность сохранения в stream в экспортах Jpeg, Gif, Tiff, Bmp + добавлен новый элемент управления для выбора режима экспорта колонтитулов в диалоге RTF экспорта + добавлено новое свойство TfrxRTFExport.HeaderFooterMode  (можно выбирать между hfText, hfPrint, hfNone - по умолчанию hfText) + [server] добавлено свойство TfrxReportServer.WebServer + добавлено свойство TfrxHTMLExport.EmptyLines * e-mail экспорт теперь может формировать имя файла приложения из имени файла экспорта * обновлены Датские ресурсы - исправлена ошибка при экспорте в монохромный TIFF формат - исправлена ошибка в PDF экспорте, когда Outline пуст и выбран для экспорта - исправлена ошибка с тулбарами при крупных шрифтах (120 dpi) - исправления экспорта штрих-кодов в PDF формат - исправлены ошибки в add-in компонентах (AV при открытии проектов) - исправлена ошибка с позиционированием страницы в превью - исправлена ошибка при пересечении RichText объектов в RTF экспорте - исправлена ошибка с форматом чисел в XLS экспорте - исправлена ошибка с экспортом штрихкодов - исправлена ошибка, когда номер не находится в диапазоне страниц в далоге экспорта - [server] исправлена ошибка с амперсандом в переменных запроса - исправлена ошибка в XML экспорте (XML Parsing Error) - исправлена ошибка с HideIfSingleDataRecord ### Выпущен FastReport 3.24 для Delphi URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-3.24 Summary: Выпущен FastReport 3.24 для Delphi Выпущен FastReport 3.24 для Delphi Что нового: + добавлены некоторые свойства dbxdatabase + добавлено св-во TfrxMemoView.Wysiwyg (внимание - при его отключении не работает выравнивание текста по ширине!) - исправлена ошибка с shiftmode - исправлена ошибка в редакторе TabOrder - ошибка с разрываемым richedit - ошибка с двухмониторной конфигурацией - исправлена ошибка с anchor+keeptogether - исправлена ошибка с printtoprevpage - исправлена ошибка со стилями и форматированием чисел в XML экспорте - исправлена ошибка с "неразрывным" режимом экспорта в XML - исправлена ошибка с высотой символов в PDF экспорте - исправлена ошибка с агрегатами (запятая в имени поля) - исправлена совместимость с TLargeIntField - [server] исправлена ошибка с потоками в клиенте - исправлена ошибка с DefaultPath в XLS экспорте ### Выпущен FastReport 4.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-4.1 Summary: Выпущен FastReport 4.1 Выпущен FastReport 4.1 1. Выпущен FastReport 4.01 -------------- + добавлена возможность показа дизайнера в панели (метод TfrxReport.DesignReportInPanel). См. демо Demos\\EmbedDesigner + добавлена поддержка TeeChart7 Std + [server] добавлен параметр "User" в события TfrxReportServer.OnGetReport, TfrxReportServer.OnGetVariables и TfrxReportServer.OnAfterBuildReport + добавлено свойство Cross.KeepTogether + добавлено свойство TfrxReport.PreviewOptions.PagesInCache - исправлена ошибка в штрихкоде (при экспорте без превью) - исправлена ошибка в preview (AV при zoommode = zmWholePage) - исправлена ошибка с outline + drilldown - исправлена ошибка с датасетами в наследованном отчете - [install] исправлена ошибка с настройкой library path при установке в BDS/Turbo C++ Builder - исправлена позиция pagefooter если page.EndlessWidth = true - исправлена ошибка сдвига объектов - исправлено наследование в design-time (ошибка с путями) - исправлена ошибка с chm help в дизайнере - исправлена ошибка в PDF (встраивание шрифтов) - исправлены кнопки превью - исправлена ошибка с подсветкой синтаксиса - исправлена ошибка в режиме print scale - исправлена ошибка с control.Hint - исправлена ошибка редактирования в режиме превью - исправлена утечка в cross-tab 2. Мы переехали Наш новый адрес: ул.Обороны 24, офис 502, Ростов-на-Дону, Россия, 344082 Телефон: +7 (863) 227-07-40 Факс:    +7 (863) 227-07-36 ### Выпущен FastReport 4.2 VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-4.2 Summary: Выпущен FastReport 4.2 VCL Выпущен FastReport 4.2 VCL + добавлена поддержка CodeGear Delphi 2007 + добавлен экспорт html тегов в формат RTF + улучшено разбиение объекта "Rich" на страницы + улучшено разбиение объекта "Текст" на страницы + добавлено свойство TfrxReportPage.ResetPageNumbers + добавлена поддержка экспорта underlines в формат PDF * экспорт текстовых полей с форматом fkNumeric как чисел в ODS экспорт - исправлена ошибка keeptogether с агрегатными ф-ями - исправлена ошибка с экспортом двойных линий в RTF - исправлена ошибка с мультипоточностью в PDF экспорте - исправлена ошибка с цветом фона абзаца в RTF экспорте - исправлена ошибка с юникодом в xml/xls экспорте - исправлена ошибка с обрезанием страниц в экспортах BMP, TIFF, Jpeg, Gif - исправлена ошибка режима печати "масштабирование" - исправлена ошибка группы с userdataset - исправлена ошибка разбиения cross-tab на страницы - исправлена ошибка с круглыми скобками в PDF экспорте - исправлена ошибка с изменением серого цвета в черный в RTF экспорте - исправлена ошибка outline с page.endlessheight - исправлена ошибка с зависанием при экспорте в текстовый формат некоторых отчетов - исправлена ошибка с диапазоном страниц и outline в PDF экспорте - исправлена ошибка с вызовом DesignReport дважды - исправлена ошибка undo в окне кода - исправлена поддержка unicode в cross объекте - исправлен метод designreportinpanel с диалоговыми формами - исправлена ошибка копирования DMPCommand в буфер обмена - исправлена ошибка с экспортом null изображений - исправлена ошибка code completion - исправлена ошибка column footer & report summary ### Выпущен FastReport 4.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-4.3 Summary: Выпущен FastReport 4.3 Выпущен FastReport 4.3 Что нового в версии 4.3 --------------- + добавлена поддержка шифрования в PDF экспорте + добавлена поддержка TeeChart Pro 8 + добавлена поддержка кодовой страницы OEM в PDF экспорте + добавлено св-во TfrxReport.CaseSensitiveExpressions + добавлена поддержка C++Builder 2007 + добавлено свойство "OverwritePrompt" во все компоненты экспорта + улучшен RTF экспорт (WYSIWYG) + добавлена поддержка тайской и вьетнамской кодировок в PDF экспорте + добавлена поддержка стрелок в PDF экспорте * при наследовании отчета скрипт из отчета предка добавляется к текущему отчету (закомментированный) * небольшие изменения в ядре PDF экспорта - исправлена ошибка при форматировании чисел в Open Document Spreadsheet экспорте - исправлена ошибка при вводе текстовых данных в числовое поле(Object Inspector) и закрытие дизайнера (без применения изменений) - исправлена ошибка в TfrxDBDataset с установленным reCurrent - исправлена ошибка с утечкой памяти при экспорте пустого outline в PDF формат - исправлена ошибка с line# (с subreports) - ошибка с редактированием готового отчета, содержащего rich объект - исправлена ошибка с экспортом теней в PDF экспорте - исправлена ошибка с рисованием стрелок в дизайнере - исправлена ошибка с полями в HTML, RTF, XLS, XML экспортах - исправлена ошибка с экспортом стрелок в различные форматы - исправлена ошибка с определением принтеров при открытии дизайнера (list index of bound) - исправлена ошибка с размером страницы в наследованных отчетах ### Выпущен FastReport 4.4 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-4.4 Summary: Выпущен FastReport 4.4 Выпущен FastReport 4.4 Что нового в версии 4.4 + добавлена поддержка CodeGear RAD Studio 2007 + увеличена скорость PDF, HTML, RTF, XML, ODS, ODT экспортов + добавлены свойства TfrxReportPage.BackPictureVisible, BackPicturePrintable + добавлен доступ к свойству TfrxCrossView.CellFunctions из скрипта + добавлены свойства TfrxPDFExport.Keywords, TfrxPDFExport.Producer, TfrxPDFExport.HideToolbar, TfrxPDFExport.HideMenubar, TfrxPDFExport.HideWindowUI, TfrxPDFExport.FitWindow, TfrxPDFExport.CenterWindow, TfrxPDFExport.PrintScaling + добавлена возможность перекомпиляции пакетов frxFIB из "recompile wizard" + добавлена возможность устанавливать цвет для всех серий TeeChart, которые это поддерживают + добавлена возможность устанавливать стили рамки для каждой линии в редакторе стилей + добавлено св-во TfrxPreview.Locked и событие TfrxPreview.DblClick + добавлено исключение "invalid password", при загрузке не зашифрованного отчета + добавлен новый параметр у функции InheritFromTemplate (по умолчанию = imDefault) imDefault - показать диалог с ошибкой, imDelete - удалить дубликаты, imRename - переименовать дубликаты + добавлено свойство TfrxRTFExport.AutoSize (по умолчанию "False") для включения авторазмера по вертикали у ячеек таблиц * переработано диалоговое окно PDF экспорта * улучшен WYSIWYG в PDF экспорте - исправлена ошибка с смещением бэндов PageFooter и ReportSummary при использовании EndlessHeight - исправлена ошибка с большой высотой страницы в предпросмотре - исправлена ошибка с одновременным использованием оглавления и шифрования в PDF экспорте - исправлена ошибка с залитыми стрелками (solid arrows) в PDF экспорте - исправлена ошибка печати TfrxHeader на новой странице если ReprintOnNewPage=true и KeepFooter=True - исправлена ошибка при использовании AllowSplit и TfrxGroupHeader.KeepTogether - исправлена ошибка c номерами страниц при печати dotMatrix отчета без диалогов - исправлена ошибка с EndlessHeight в мульти-колоночном отчете - исправлена ошибка при изменении шрифта у TfrxRichView - [fs] исправлена ошибка при создании TWideStrings из скрипта - исправлена ошибка с диалоговой формой когда св-во TfrxButtonControl.Default установлено в True - исправлено двукратный вызов ошибки "duplicate name" в дизайнере страниц сформированного отчета, при копировании-вставке объекта - исправлена ошибка с TfrxPreview.Clear и режимом ZmWholePage - исправлена ошибка в PDF экспорте при использовании одновременно опций "outline" и "embedded fonts" - исправлена ошибка с многопоточностью в PDF экспорте - исправлена ошибка с заливкой прозрачного прямогольника в PDF экспорте - исправлена ошибка с экспортом OEM_CODEPAGE в RTF, Excel - исправлена ошибка с вертикальным размером одной страницы в RTF экспорте - исправлена ошибка с вертикальными стрелками в PDF экспорте - исправлена утечка памяти с наследуемыми отчетами ### Выпущен FastReport 4.5 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-4.5 Summary: Выпущен FastReport 4.5 Выпущен FastReport 4.5 В предверии нового года - новая версия FastReport - 4.5. Что нового: -------------- + добавлен модуль ConverterRB2FR.pas для конвертации отчетов из Report Builder + добавлен модуль ConverterQR2FR.pas для конвертации отчетов из QuickReport + добавлена поддержка нескольких приложений в e-mail экспорте (например html с картинками) + добавлена поддержка юникода (UTF-8) в e-mail экспорте + добавлена возможность изменять путь к шаблонам в дизайнере (вкладка наследования отчета) + добавлено скриптовое событие OnReportPrint + добавлена поддержка PNG во все версии (начиная с Basic)  + добавлено св-во TfrxDMPMemoView.TruncOutboundText - обрезает текст выходящий за границы объекта в матричном отчете когда WordWrap=false + добавлены новые стили рамки fsAltDot и fsSquare + добавлено новое событие OnPreviewDblClick для всех компонентов TfrxView + добавлена возможность вызывать события диалоговых форм после построения отчета, DestroyForms должен быть установлен в false + добавлена возможность изменять св-ва AllowExpressions и HideZeros в ячейках CrossTab (по умолчанию = false) + добавлено св-во IgnoreDupParams для DB компонентов + добавлена авто-открытие датасета у TfrxDBLookupComboBox  + добавлено св-во TfrxADOQuery.LockType  + добавлен новый define DB_CAT (frx.inc) для группировки DB компонентов  + добавлено св-во TfrxPictureView.HightQuality (отображает рисунок в предпросмотре более качественно, но снижает скорость отрисовки) + [FRViewer] добавлены параметры командной строки "/print filename" и "/silent_print filename" + добавлена поддержка ввода юникода в "Rich Editor" + добавлен новый define HOOK_WNDPROC_FOR_UNICODE (frx.inc) - устанавливает хук  на функцию GetMessage для поддержки ввода юникода в D4-D7/BCB4-BCB6 + добавлена возможность выбора пути к пакетам FIB в "Recompile Wizard" + добавлена новая функция TfrxPreview.GetTopPosition, возвращает позицию на текущей странице + добавлены новые "горячие - клавиши" в "Редактор кода" : Ctrl+Del - удаляет слово перед курсором, Ctrl+BackSpace - удаляет слово после курсора(как в Delhi IDE) + добавлен пример "MDI Designer" - все языковые ресурсы перенесены в UTF8, XML  - исправлена ошибка с HTML- тегами [sup] и [sub]  - исправлена ошибка при вычислении ширены в TfrxMemoView, при использовании HTML тегов - исправлена ошибка с suppressRepeated в вертикальных бэндах - исправлена ошибка когда дизайнер не восстанавливал позиции полос прокрутки после команд undo/redo - исправлена визуальная ошибка в панели при использовании Windows Vista + XPManifest + Delphi 2006  - исправлена ошибка в CalcHeight при использовании отрицательного LineSpace - исправлена ошибка в frx2xto30 при импорте компонента запроса/таблицы, добавлен импорт компонента TfrDBLookupControl  - исправлена ошибка при использовании CrossTab и TfrxHeader.ReprintOnNewPage = True - исправлена ошибка с исчезновением символа переноса (WordBreak) при разрыве TfrxMemoView или использовании FlowTo - исправлено конвертирование из юникода в TfrxMemoView когда используется charset не по умолчанию - [fs] исправлена ошибка с оператором "in" - исправлена ошибка с агрегатной функцией SUM  - исправлена ошибка при использовании  юникода вместе с  [TotalPages#]  в TfrxMemoView - исправлена ошибка  с типом поля TSQLTimeStampField - исправлена ошибка док-панелей ("Object Inspector", "Report Tree", "Data Tree")  при использовании дизайнера как MDI или при использовании нескольких не модальнх дизайнеров - исправлена ошибка при скрытии/показе док-панелей ("Object Inspector", "Report Tree", "Data Tree"), теперь после скрытия восстанавливается их размер - исправлена ошибка в XML/XLS экспорте - неверная кодировка цифр после переноса строки - исправлена ошибка в RTF экспорте - исправлена ошибка с командами undo/redo в дизайнере при редактировании PreviewPages - исправлена ошибка с SuppressRepeated при использовании KeepTogether в группе - исправлена ошибка с SuppressRepeated, на новой странице все события вызывались дважды(используйте Engine.SecondScriptCall чтобы определить повторный вызов) ### Выпущен FastReport FMX с поддержкой XE3! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-fmx-1.0 Summary: Выпущен FastReport FMX с поддержкой XE3! Выпущен FastReport FMX с поддержкой XE3! Теперь FastReport FMX поддерживает FireMonkey 2 (Embarcadero RAD Studio XE3, Delphi XE3), а также предыдущую версию FireMonkey (Embarcadero RAD Studio XE2, Delphi XE2). По сравнению с бета-версией исправлено множество ошибок и повышена скорость и стабильность отчетности под Windows и Mac OS X. Как пример - ошибка при одновременной установке FastReport VCL и FastReport FMX в среду разработки. Вам нужно будет скачать FastReport VCL current build из панели управления. Все клиенты FastReport FMX бета могут получить релиз бесплатно, а все клиенты FastReport VCL могут получить его со скидкой через панель управления . ### Выпущен FastReport Mono 2013 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-mono-2013.1 Summary: Выпущен FastReport.Mono 2013 Выпущен FastReport.Mono 2013 Что нового в нашем кросс-платформенном генераторе отчётов? Используйте возможность публиковать отчёты в Сети - версия FastReport Mono 2013 позволяет использовать генератор отчётов  FastReport Mono совместно с веб-сервером Apache. Пример использования этой возможности вы найдёте в папке Demos/C#/Web. Не ограничивайте себя использованием классических штрих-кодов. В FastReport Mono 2013 добавлена поддержка двумерного штрихкода - QR-code.  Использование QR-кода позволяет до 100 раз увеличить объем закодированной информации по сравнению с традицонными штрих-кодами. - добавлен сервер WEB отчётов - исправлен вид навигатора в сформированных HTML документах - добавлено свойство "Data Only" (только данные) в экспорт документов формата Xlsx (MS Excel 2007 и последующие версии) - добавлен новый тип штрихкода - QR-code - усовершенствован вид объекта RichText - исправлена ошибка в источнике данных BusinessObjects  - усовершенствована логига размещения бэндов - оптимизация генерации двух-проходного построения отчётов - добавлено поле CC (доолнительные адресаты) в почтовом клиенте - добавлено свойство WYSIWYG  в экспорт в  Excel2007 - оптимизация работы с памятью при обработке в BLOB данных - множество мелких исправлений ### Выпущен FastReport Mono! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-fastreport-mono Summary: We are pleased to announce a new product - FastReport.Mono. FastReport.Mono is a multi-platform reporting solution. We are pleased to announce a new product - FastReport.Mono. FastReport.Mono is a multi-platform reporting solution. Мы рады представить новый продукт - FastReport Mono. FastReport Mono - это кросс-платформенное решение для разработки отчетов. Вы можете использовать его в Windows, Linux, Mac OS X, любой другой операционной системе, которая поддерживается Xamarin Mono.  ### Выпущен FastReport Server 2.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-server-2.1 Summary: Выпущен FastReport Server 2.1 Выпущен FastReport Server 2.1 + добавлен режим аутентификации Windows * улучшена работа CGI совместно с серверами IIS/Apache * раширенна информация об ошибках * улучшена стабильность * увеличена производительность - исправлены ошибки ### Выпущен FastReport Server 2.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-server-2.2 Summary: Выпущен FastReport Server 2.2 Выпущен FastReport Server 2.2 + обновлена документация + доступны переменные "AUTHLOGIN" и "AUTHGROUP" внутри любого отчета + любой отчет может быть сопоставлен с одной или несколькими группами, для других групп выполнение этих отчетов запрещено + настройка задержек хранения в кэше для любого файла отчета (reports.xml) + добавлен новый  редактор свойств отчетов в утилиту конфигурации (закладка Reports) + добавлено свойство "Xml" - "SplitType" в конфигурацию - позволяет выбрать тип разбиения на листы: none/pages/printonprev/rowscount + добавлено свойство "Xml" - "SplitRowsCount" в конфигурацию - устанавливает количество строк для режима разбиения "rowscount" + добавлено свойство "Xml" - "Extension" в конфигурацию - позволяет выбрать расширение ".xml" или ".xls"  + добавлено свойство "Html" - "URLTarget" в конфигурацию - позволяет установить аттрибут target для гиперссылок внутри отчета + добавлено свойство "ReportsFile" в конфигурацию - путь к файлу хранения свойств отчетов (задержек хранения в кэше, ассоциированных групп) + добавлено свойство "ReportsListRenewTimeout" в конфигурацию - интервал обновления списка отчетов в секундах + добавлено свойство "ConfigRenewTimeout" в конфигурацию - интервал обновления файла конфигурации в секундах + добавлено свойство "MimeType" в конфигурацию для каждого выхдного формата  + добавлено свойство "BrowserPrint" в конфигурацию - разрешает печать отчета средствами браузера, добавлен новый шаблон nav_print_browser.html + добавлена динамическая генерация имени результирующих файлов (report_name_date_time) + добавлена поддержка Windows x64 (в режиме WOW) * переменные SERVER_REPORTS_LIST и SERVER_REPORTS_HTML (список доступных отчетов) зависят от группы пользователя (для внутренней аутентификации) * изменен PDF экспорт: добавлена полная поддержка Unicode, увеличена скорость работы, уменьшены требования к памяти - исправлена ошибка в сборщике мусора (Session Manager) - исправлена ошибка с запуском исполняемого файла дизайнера (Studio) - исправлена ошибка с потерей параметров при обновлении/экспорте отчета ### Выпущен FastReport Server 2.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-server-2.3 Summary: Выпущен FastReport Server 2.3 Выпущен FastReport Server 2.3 Что нового в версии 2.3?  ==============  + добавлена папка "scripts" для дополнительных скриптов (директива "uses" в скрипте отчета)  + добавлено ведение лога планировщика (пишет сообщения в scheduler.log)  + добавлено свойство "Reports" - "Scripts" в конфигурацию сервера - устанавливает путь для директивы "uses" в скрипте отчета  + добавлено свойство "Http" - "MaxSession" в конфигурацию сервера - устанавливает максимальное количество одновременных сессий (установить в 0 для снятия ограничения)  + добавлено свойство "Reports" - "MaxReports" в конфигурацию сервера - устанавливает максимальное количество одновременно строящихся отчетов (установить в 0 для снятия ограничения)  + добавлено свойство "Logs" - "SchedulerLog" в конфигурацию сервера - устанавливает имя файла лога планировщика  + добавлено свойство "Scheduler" - "Active" в конфигурацию сервера - разрешает работу планировщика  + добавлено свойство "Scheduler" - "Debug" в конфигурацию сервера - разрешает запись отладочных логов планировщика  + добавлено свойство "Scheduler" - "StudioPath" в конфигурацию сервера - устанавливает путь к программе FastReport Studio (оставить пустым для пути по умолчанию)  * использовано ядро FastReport 4.10  - исправлена ошибка с типами MIME в http заголовках (content-type)  - исправлена ошибка с конфигурацией по умолчанию (если отсутствует config.xml)  - исправлена ошибка с error pages  - исправлена ошибка с кнопкой "Export Setup" в редакторе запланированных задач в утилите конфигурации ### Выпущен FastReport Studio 3.17 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-3.17 Summary: Выпущен FastReport Studio 3.17 Выпущен FastReport Studio 3.17 + добавлены новые ключи для установки опций графического экспорта (ключи /dpi /quality /mono /unite /crop ) + добавлена эмуляция рантайм режима для независимого дизайнера (ключ /runtime) + добавлен экспорт в формат GIF + добавлен переключатель языка интерфейса (меню Вид) + добавлены кнопки pdf и e-mail экспорта в окно предварительного просмотра + добавлено меню по правой кнопке мыши в предварительном просмотре + добавлен полноэкранный режим в предварительном просмотре (клавиша F11) + добавлено руководство пользователя + добавлено руководство программиста + добавлено руководство по командной строке + Добавлен интерфейс IfrxView + Добавлены новые демонстрационные отчёты с графиками + Добавлена поддержка языковых ресурсов * изменен инсталлятор  * изменен раздел реестра для хранения Connection aliases с HKCU на HKLM * Переписана основная демка для Visual С++ - Иправлен баг с экспортом из Дизайнера (FastReport.exe) - Исправлен баг с окнами в Дизайнере - Исправлено событие OnClickObject ### Выпущен FastReport Studio 3.19 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-3.19 Summary: Выпущен FastReport Studio 3.19 Выпущен FastReport Studio 3.19 + добавлена C# демо: ClientOfReportServerDemo - демонстрирует использование FastReport Studio в трёхзвенных приложениях + добавелна C# демо: Picture - демонстрирует использование интерфейса IfrxPictureView + добавлен новый интерфейс IfrxPictureView + добавлена Delphi for .NET демо + обновлен интерфейс (новые кнопки, splash и стартовое окно) + добавлена служба планировщика (теперь Вы можете запланировать свои отчеты и получить их по e-mail) + добавлена утилита конфигурации + добавлена контекстная подсказка в дизайнере (клавиша F1) + добавлен метод LoadPreparedReportFromStream(IStream *) к интерфейсу IfrxPreviewX + добавлен метод SavePreparedReportToStream(IStream *)  к интерфейсу IfrxReport + добавлен новый интерфейс IfrxDataBand * исправлены C++ демки: callbacks и variables * обновлена С++ демо multithread_test * обновлена C# демо DataSetDemo: добавлен класс FrxDataSet * обновлена демо C++ DynamicReport * обновлён метод CreateReportObject() интерфейса IfrxReport. Изменён тип параметра, определяюего создаваемый объект. * обновлена демо для Visual FoxPRO * обновлена C# демо DataSetDemo: добавлен класс FrxDataView + пример сортировки данных для отчёта средствами .NET ### Выпущен FastReport Studio 3.22b! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-3.22 Summary: Выпущен FastReport Studio 3.22b! Выпущен FastReport Studio 3.22b! Что нового в  FastReport Studio 3.22b: * обновлена документация + добавлен новый элемент управления для выбора режима экспорта колонтитулов в диалоге RTF экспорта + добавлен чекбокс "Continuous" в диалоге RTF экспорта + добавлен сдвиг текста при ненулевом межсимвольном интервале в PDF экспорте + добавлены свойства Frame, ShiftMode и Align в интерфейс IfrxView + добавлен интерфейс IfrxSubreport + добавлен интерфейс IfrxHeader + добавлен интерфейс IfrxFooter + добавлен интерфейс IfrxMasterData + добавлен интерфейс IfrxDetailData + добавлен интерфейс IfrxSubdetail + добавлен интерфейс IfrxDataBand4 + добавлен интерфейс IfrxDataBand5 + добавлен интерфейс IfrxDataBand6 + добавлен интерфейс IfrxPageHeader + добавлен интерфейс IfrxPageFooter + добавлен интерфейс IfrxColumnHeader + добавлен интерфейс IfrxColumnFooter + добавлен интерфейс IfrxGroupHeader + добавлен интерфейс IfrxGroupFooter + добавлен интерфейс IfrxChild + добавлен интерфейс IfrxOverlay + добавлен новый VB6 пример, который показывает как использовать метод FindObject и объекты TfrxADODatabase и TfrxADOQuery + добавлен интерфейс IfrxStretcheable + добавлен новый пример, показывающий как органиовать Master/Detail отчёты на основе ADO таблиц + добавлен интерфейс IFrxChartAxis - появилась возможность управлять масштабированием диаграм + добавлены новые типа серий TeeChart + добавлен новый пример использования TfrxGzipCompressor и методоа SendMail интерфейса IfxrBuiltinExports + добавлен объект TfrxGzipCompressor + добавлено свойство таймаута для TfrxADOQuery + добавлены свойства таймаутов для TfrxADOConnection + добавлен новый пример динамического построения TeeChart на C++ + добавлен новый пример динамического построения TeeChart на C#.NET + добавлен новый пример работы с Crosstab для VC++ * обновлены методы CreateReportObject и CreateReportObjectEx в интерфейсе IfrxReport * IfrxReport->IfrxPrintOptins->PageNumbers укаывает диапазон страниц для печати и экспорта. * обновлён TeeChart до версии 7 * e-mail экспорт теперь может формировать имя файла приложения из имени файла экспорта * обновлены Датские ресурсы * TfrxGradientView не экспортируется в форматы HTML, RTF, XLS * сохранение имен объектов при работе с буфером обмена * обновлены Датские ресурсы * обновлены Португальские ресурсы * улучшен HTML, RTF экспорты * улучшены экспорты в XML, Excel (спасибо Bali) * увеличен таймаут в E-Mail экспорте - исправлена ошибка с экспортом штрихкодов - исправлена ошибка, когда номер не находится в диапазоне страниц в далоге экспорта - исправлена ошибка в XML экспорте (XML Parsing Error) - исправлена ошибка с HideIfSingleDataRecord - исправлена ошибка при экспорте пустой страницы в HTML экспорте - исправлен баг в функции IIF - исправлена ошибка в XML экспорте - исправлена ошибка с бэндом reportsummary - исправлены утечки памяти в скрипте - исправлены ошибки со сдвигом - исправлен экспорт заливки bsBDiagonal и bsFDiagonal в PDF - исправлена ошибка с некорректным значением кодовой страницы TfrxRichView в RTF экспорте - исправлена ошибка с полями в PDF экспорте - исправлена ошибка с растягиванием картинок ### Выпущен FastReport Studio 3.23 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-3.23 Summary: Выпущен FastReport Studio 3.23 Выпущен FastReport Studio 3.23 Что нового в  FastReport Studio 3.23: - исправлена ошибка со стилями и форматированием чисел в XML экспорте - исправлена ошибка с "неразрывным" режимом экспорта в XML - исправлена ошибка с высотой символов в PDF экспорте - исправлена ошибка с агрегатами (запятая в имени поля) - исправлена совместимость с TLargeIntField - исправлена ошибка с DefaultPath в XLS экспорте + добавлено свойство Charset в интерфейс IfrxFont + добавлено совйство OldStyleProgress в интерфейс IfrxReport + добавлен новый пример на VB6 использования ActiveX  * множественные фиксы в реализации ActiveX  - исправлена ошибка при пересечении RichText объектов в in RTF экспорте + добавлены интерфейсы IfrxCustomCrossView, IfrxCrossView, IfrxDBCrossView ! переименованы элемнеты списка frxSeriesSortOrder из за конфликта имён: soNone -> so_None, soAscending -> so_Ascending, soDescending -> so_Descending ### Выпущен FastReport Studio 4.5! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-4.5 Summary: Выпущен FastReport Studio 4.5! Выпущен FastReport Studio 4.5! + добавлена активация + добавлена поддержка нескольких приложений в e-mail экспорте (например html с картинками) + добавлена поддержка юникода (UTF-8) в e-mail экспорте + добавлена возможность изменять путь к шаблонам в дизайнере (вкладка наследования отчета) + добавлено скриптовое событие OnReportPrint + добавлено св-во TfrxDMPMemoView.TruncOutboundText - обрезает текст выходящий за границы объекта в матричном отчете когда WordWrap=false + добавлены новые стили рамки fsAltDot и fsSquare + добавлено новое событие OnPreviewDblClick для всех компонентов TfrxView + добавлена возможность изменять св-ва AllowExpressions и HideZeros в ячейках CrossTab (по умолчанию = false) + добавлена авто-открытие датасета у TfrxDBLookupComboBox  + добавлено св-во TfrxADOQuery.LockType  + добавлено св-во TfrxPictureView.HightQuality (отображает рисунок в предпросмотре более качественно, но снижает скорость отрисовки) + добавлена поддержка ввода юникода в "Rich Editor" + добавлена новая функция TfrxPreview.GetTopPosition, возвращает позицию на текущей странице + добавлены новые "горячие - клавиши" в "Редактор кода" : Ctrl+Del - удаляет слово перед курсором, Ctrl+BackSpace - удаляет слово после курсора(как в Delhi IDE) - все языковые ресурсы перенесены в UTF8, XML  - исправлена ошибка с HTML- тегами [sup] и [sub]  - исправлена ошибка при вычислении ширены в TfrxMemoView, при использовании HTML тегов - исправлена ошибка с suppressRepeated в вертикальных бэндах - исправлена ошибка когда дизайнер не восстанавливал позиции полос прокрутки после команд undo/redo - исправлена ошибка в CalcHeight при использовании отрицательного LineSpace - исправлена ошибка при использовании CrossTab и TfrxHeader.ReprintOnNewPage = True - исправлена ошибка с исчезновением символа переноса (WordBreak) при разрыве TfrxMemoView или использовании FlowTo - исправлено конвертирование из юникода в TfrxMemoView когда используется charset не по умолчанию - [fs] исправлена ошибка с оператором "in" - исправлена ошибка с агрегатной функцией SUM  - исправлена ошибка при использовании  юникода вместе с  [TotalPages#]  в TfrxMemoView - исправлена ошибка  с типом поля TSQLTimeStampField - исправлена ошибка при скрытии/показе док-панелей ("Object Inspector", "Report Tree", "Data Tree"), теперь после скрытия восстанавливается их размер - исправлена ошибка в XML/XLS экспорте - неверная кодировка цифр после переноса строки - исправлена ошибка в RTF экспорте - исправлена ошибка с командами undo/redo в дизайнере при редактировании PreviewPages - исправлена ошибка с SuppressRepeated при использовании KeepTogether в группе ### Выпущен FastReport Studio 4.6 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-4.6 Summary: Выпущен FastReport Studio 4.6 Выпущен FastReport Studio 4.6 + добавлен интерфейс IfrxCheckBoxView + добавлено шифрование защищённых паролем шаблонов отчётов. Пожалуйста, сделайте резервную копию ваших защищенных паролем отчётов. + добавлено свойство Visible интерфейсу IfrxComponent + добавлен метод SetGlobalVariable интерфейсу IfrxReport + добавлено свойство StrikeOut интерфейсу IfrxFont + добавлена поддержка изображений Enhanced Metafile (EMF) в RTF, Open Office (ODS), Excel (XLS) экспортах + добавлен новый тег nowrap , текст заключенный в тег не разбивается WordWrap, а переносится целиком + добавлена возможность "сортировать по имени" в дереве данных + добавлена возможность вывода страниц в предпросмотре справа налево (в режиме много страниц), для RTL языков + добавлена возможность перемещать бенд без объектов (Alt + Move) + добавлено новое свойство TfrxReportPage.PageCount аналогично TfrxDataBand.RowCount + добавлено св-во Hint для всех печатаемых объектов, подсказки у диалоговых объектов теперь отображаются и в StatusBar + добавлены в XML reader + изменения в редакторе диаграмм: возможность изменять имя серий, возможность перемещать созданные серии, небольшие исправления + Класс TfrxStyles зарегистрирован в скрипте + [fs] Исправлена ошибка в приведении типов из Variant(string) к Integer / Float - исправлена ошибка при выводе subreport на растягиваемом бенде - исправлена ошибка при использовании Band.Allowslit = True и TfrxColumnFooter - исправлена ошибка при использовании charset в Кросс таблице отличной от DEFAULT_CHARSET - исправлена ошибка при печати на альбомной ориентации с пользовательским размером бумаги - исправлена ошибка с использованием сетевых путей в наследовании отчета - исправлено вычисление свободного пространства на странице при использовании PrintOnPreviousPage - Thumbnail и Outline показываются справа для RTL языков - [fs] исправлена ошибка с поздним связыванием - изменения в наследовании отчетов: пути к шаблону потомку теперь записываются относительно текущего отчета (старые отчеты, в которых использовались пути относительно приложении тоже будут работать) - исправлена ошибка в RTF экспорте с некоторыми TfrxRichView объектами - исправлена ошибка в наследование subreports - исправлена ошибка в предпросмотре с темами winXP в последнем обновлении - исправлена ошибка вычислений ширины при использовании HTML тегов в мемо - исправлена ошибка мерцания предпросмотра при использовании события OnClickObject - исправлена ошибка с RTL в PDF экспорте - исправлена ошибка с SubReport при использовании многоколоночной страницы - исправлена ошибка с Subreport.PrintOnParent = True в наследованных отчетах - исправлена ошибка с внедренными шрифтами в PDF экспорте - исправлена ошибка с длинными ReportTitle + Header + MaterData.KeepHeader = True - исправлена ошибка с добавлением датасетов при наследовании отчета ### Выпущен FastReport Studio 4.7! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-4.7 Summary: Выпущен FastReport Studio 4.7! Выпущен FastReport Studio 4.7! Выпущена новая версия одного из лидирующих продуктов Fast Reports для платформы win32 – FastReport Studio 4.7. Что нового? • Добавлена демонстрационная программа для Sybase PowerBuilder. • Улучшен механизм дрилл-даунов (раскрывающихся групп) для корректной работы с master-detail-subtetail отчетами. • Улучшен функционал вертикальных бэндов. • Расширен интерфейс объекта TfrxADOQuery, теперь он позволяет програмно указывать зависимость Master/Detail между SQL запросами и программно устанавливать параметры SQLзапросов. • Расширен интерфейс объекта TfrxReport. • Расширены возможности встроенного скриптового языка FastScipt. • Улучшена совместимость динамической библиоте при работе со скриптовыми языками. • Расширены возможности экспорта отчётов. • Исправлена часть демонстрационных программ в соответствии с расширенниями интерфейсов. • Расширены возможности TfrxLineView  - возможность создавать LineView программно и управляет его параметрами из внешнего приложения. • Расширены возможности TfrxADOTable - добавлены новые свойства чтения заголовка таблицы. • Исправлены ошибки в вертикальных бэндах. • Исправлена небольшая утечка памяти во вложенных отчетах. • Исправлены мелкие ошибки в инспекторе объектов и расширена его функциональность. • Исправлена работа с переносом больших неразрывных объектов. • Исправлена ошибка с использованием HTML тэгов в мемо вместе с WordWrap на коротком тексте • Исправлен SendMail экспорт и расширена его диагностика. FastReport Studio – генератор отчётов для разработчиков программного обеспечения и бизнес пользователей.  Пользователи Fast Reports могут приобрести FastReport Studio со скидкой ### Выпущен FastReport Studio 4.8 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-studio-4.8 Summary: Выпущен FastReport Studio 4.8 Выпущен FastReport Studio 4.8 * изменен PDF экспорт: добавлена полная поддержка Unicode, увеличена скорость работы, уменьшены требования к памяти + добавлен BDE движок + добавлен DBX движок + в диалог TfrxMailExport добавленно поле TimeOut + добавлен флаг подтверждения прочтения в TfrxMailExport + добавлена поддержка RTF 4.1 в объекте TfrxRichText + добавлена возможность использования механизма "держать вместе"(KeepTogether/KeepChild/KeepHeader) в многоколоночном отчете + добавлена возможность разбиения больших бэндов(больше чем высота страницы) по умолчанию + добавлено вычисление контрольной суммы для штрихкода  2-5 interleaved + добавлены новые константы drDontEditReportScript и drDontEditInternalDatasets типу TfrxDesignerRestriction - изменен механизм наследования, правильное наследование связанных объектов (fixups) - исправлена небольшая утечка памяти во вложенных отчетах - исправлена ошибка в ActiveX Preview Form - исправлена ошибка использования DownThenAcross в кросс таблице - исправлена ошибка использования опции ReprintOnNewPage - исправлена ошибка с emf в ODT экспорте - исправлена ошибка с зеркальными полями в RTF, HTML, XLS, XML, OpenOffice экспортах - исправлена ошибка с использованием HTML тэгов в мемо вместе с WordWrap на коротком тексте - исправлена ошибка с многоколоночной страницей, когда бэнд перекрывал PageHeader - исправлена ошибка с некорректным отображением outline при построении нескольких составных отчетов с использованием двухпроходного режима - исправлена ошибка с неправильным отображением некоторых кодовых страниц, которые используют 2 байта для спец. символов (Японские и Китайские кодовые страницы) - исправлена ошибка с переменными "Page" и"Line" в вертикальных бэндах - исправлена ошибка со смещением вложенных отчетов  при использовании св-ва PrintOnParent  - исправлена ошибка удаления первого пробела из текста в "разрываемом" memo - исправлена ошибка, возникающая при использовании св-ва KeepHeader - исправлена ошибка, когда группа не вмещается на пустую страницу и переносится - исправлена ошибка, когда движок пытался перенести большие неразрываемые объекты и "уходил" в бесконечный цикл - исправлена ошибка, когда дизайнер вставлял код события в закомментированный блок - исправлена ошибка, когда дизайнер показывал закомментированные функции в инспекторе объектов - исправлена ошибка, при которой кросс таблица обрезала текст в "углу" таблицы, когда высота "угла" больше высоты колонки - исправлена проблема при использовании PageFooter и ReportSymmary вместе со св-вом PrintOnPreviousPage - увеличена скорость компиляции скрипта - улучшен метод AddFrom - копирование outline - улучшен механизм  дрилл-даунов, должен корректно работать с master-detail-subtetail отчетами - улучшен режим без сортировки в кросс таблице(объединяет колонки корректно) - улучшен функционал вертикальных бэндов, показывает мемо поля помещенные на гориз. бэнд и которые не пересекают вертикальный бэнд, а так же вычисляет в них значения и обрабатывает события(как в FR2) - улучшено WatchForm: TListBox заменен на TCheckListBox ### Выпущен FastReport VCL 2.55 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2.55 Summary: Выпущен FastReport VCL 2.55 Выпущен FastReport VCL 2.55 * изменены фильтры экспорта в RTF и XLS (TfrRtfAdvExport, TfrOLEExcelExport) - исправлена ошибка в функции FielIsNull - исправлена ошибка в TfrPictureView в режиме not Stretched - исправлен TfrReport.Clear - исправлена ошибка с количеством копий в диалоге 'Print' - исправлен TfrButtonControl.SaveToFR3Stream - исправлен TfrView.SaveToFR3Stream - исправлена ошибка с разрываемыми растягиваемыми бендами ### Выпущен FastReport VCL 4.10 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.10-release Summary: Выпущен FastReport VCL 4.10 Выпущен FastReport VCL 4.10 Что нового: ---------------  + добавлена поддержка Embarcadero Rad Studio XE (Delphi EX/C++Builder EX)  + добавлена поддержка пакетов TeeChart 2010 (новые типы серий не поддерживаются в этой версии)  + добавлено свойство TruncateLongTexts в XLS OLE экспорт позволяющее экспортировать строки любой длины  + добавлено свойство EmbedProt в PDF экспорт позволяющее отключать встраивание шрифтов в шифруемый PDF файл  + добавлено свойство TfrxDateEditControl.WeekNumbers  - исправлена ошибка неправильного экспорта перечёркнутых текстов XLS XML экспортом  - исправлена ошибка экспорта пустой страницы XLS OLE экспортом  - исправлена ошибка неправильной закраски фона страницы в PDF экспорте  - исправлена ошибка в встроенном дизайнере при использовании точек останова в скрипте  - исправлена ошибка с потерей фокуса в элементе выбора размера шрифта в дизайнере  - исправлена ошибка с обрезанием элемента выбора размера шрифта в Windows Vista/7  - исправлена ошибка с потерей имени файла в наследованном отчете  - исправлена ошибка в многостраничном отчете при использовании EndlessHeight/EndlessWidth  - исправлена ошибка с TfrxHeader.ReprintOnNewpage иKeepTogether  - исправлена ошибка в многоколоночном отчете с использование дочерних бэндов  - улучшен механизм разбиения (добавлен метод TfrxStretcheable.HasNextDataPart для разбиения сложных данных как RTF таблица)  - улучшена скорость работы кросс таблицы при использовании кросс таблицы на повторяющемся бэнде ### Выпущен FastReport VCL 4.11 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.11-release Summary: Выпущен FastReport VCL 4.11 Выпущен FastReport VCL 4.11 Что нового: --------------- + добавлен новый фильтр экспорта BIFF8 XLS + добавлено в ODF экспорт свойство Language + [enterprise] добавлена папка "scripts" для дополнительных скриптов (директива "uses" в скрипте отчета) + [enterprise] добавлено ведение лога планировщика (пишет сообщения в scheduler.log) + [enterprise] добавлено свойство "Reports" - "Scripts" в конфигурацию сервера - устанавливает путь для директивы "uses" в скрипте отчета + [enterprise] добавлено свойство "Http" - "MaxSessions" в конфигурацию сервера - устанавливает максимальное количество одновременных сессий (установить в 0 для снятия ограничения) + [enterprise] добавлено свойство "Reports" - "MaxReports" в конфигурацию сервера - устанавливает максимальное количество одновременно строящихся отчетов (установить в 0 для снятия ограничения) + [enterprise] добавлено свойство "Logs" - "SchedulerLog" в конфигурацию сервера - устанавливает имя файла лога планировщика + [enterprise] добавлено свойство "Scheduler" - "Active" в конфигурацию сервера - разрешает работу планировщика + [enterprise] добавлено свойство "Scheduler" - "Debug" в конфигурацию сервера - разрешает запись отладочных логов планировщика + [enterprise] добавлено свойство "Scheduler" - "StudioPath" в конфигурацию сервера - устанавливает путь к программе FastReport Studio (оставить пустым для пути по умолчанию) - [enterprise] исправлена ошибка с типами MIME в http заголовках (content-type) - [enterprise] исправлена ошибка с конфигурацией по умолчанию (если отсутствует config.xml) - [enterprise] исправлена ошибка с error pages - исправлена в XML экспорте ошибка использовании свойства ShowProgress - исправлена в RTF экспорте ошибка в вычислении размера шрифта для ячекк без текста - исправлена в ODF экспорте обработка поля Creator - исправлена в XML экспорте обработка специальных символов в строке - исправлена ошибка в ODF экспорте в формировании атрибутов table:number-columns-spanned и table:number-rows-spanned - исправлена ошибка в ODF экспорте в обработке цвета clNone - исправлена ошибка в ODF экспорте в формировании стиля table:covered-table-cell - исправлена ошибка в ODF экспорте в формировании копий тегов table:covered-table-cell - исправлена ошибка в ODF экспорте: ненужные теги text:p теперь не добавляются внутрь тегов table:covered-table-cell - исправлена ошибка в ODF экспорте в формировании языковых стилей - исправлена ошибка в ODF экспорте в обработке пробелов и знаков табуляции - исправлена ошибка в ODF экспорте в формировании стилей числовых ячеек - исправлена ошибка в ODF экспорте в обработке фоновой картинки - исправлена ошибка в ODF экспорте в формировании междусимвольного интервала - исправлена ошибка в ODF экспорте в форматировании чисел - исправлена ошибка в ODF экспорте с тегом table-row - исправлена ошибка в XLS(OLE) экспорте в форматировании чисел - исправлена ошибка в RTF экспорте в обработке RTF полей - исправлена ошибка в обработке специальных символов в HTML экспорте - исправлена ошибка UTF8 кодирования в ODF экспорте - исправлена ошибка экспорта в PDF подчеркнутых, перечёркнутых и повёрнутых текстов. ### Выпущен FastReport VCL 4.12 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.12-release Summary: Выпущен FastReport VCL 4.12 Выпущен FastReport VCL 4.12 Версия 4.12 - что нового: + добавлена поддержка Embarcadero Rad Studio EX2 (x32/x64)   Добавлена полная поддержка Embarcadero Rad Studio EX2 для 32-х   битной и 64-х битной версии компилятора. + добавлен экспорт Excel формул в BIFF экспорте   Отчет может содержать объекты "Текст" с формулой Excel начинающейся   со знака "=". Такие объекты экспортируются как формулы в xls файл.   Экспортированием формул можно управлять с помощью свойства   TfrxBIFFExport.ExportFormulas. Более подробно об этом можно прочитать   в нашем блоге. + добавлен экспорт внешних URL в PDF экспорт   Компонент в отчете может содержать в внешнюю ссылку, к примеру   " https://fast-report.com ". Такой компонент будет экспортироваться  как   интерактивная зона. + добавлен конвертер из Rave Reports ConverterRR2FR.pas   Модуль который позволяет конвертировать отчеты из "Rave Report"   в формат "Fast Report". + добавлено свойство Cross KeepRowsTogether   Это свойство позволяет держать все строку объекта Кросс таблица (с   вложенными строками) безразрывно на странице, осуществляя перенос   всей строки целиком. + оптимизировано объединение ячеек в BIFF экспорте   BIFF экспорт был оптимизирован для отчетов содержащих большое   количество объектов "Текст". + добавлено свойство DataOnly в экспорты   Свойство DataOnly позволяет фильтровать компоненты отчета при   экспорте не содержащие данных(не привязанные к данным).   Это позволяет экспортировать только те компоненты. которые были   привязаны к данным. + формат картинок во всех экспортах изменен на PNG   Формат картинок в экспортах был заменен на PNG по умолчанию.   Для примера, если отчет содержит картинку и экспортируется в RTF   формат, то такой RTF файл будет содержать картинку в формате PNG.   PNG формат позволяет уменьшить размер и улучшить качество   экспортируемой картинки. --------------- + добавлена поддержка Embarcadero Rad Studio EX2 (x32/x64) + добавлен экспорт Excel формул в BIFF экспорте + добавлен экспорт внешних URL в PDF экспорт + добавлен конвертр из Rave Reports ConverterRR2FR.pas + добавлено свойство Cross.KeepRowsTogether + оптимизировано объединение ячеек в BIFF экспорте + добавлено свойство DataOnly в экспорты + формат картинок во всех экспортах изменён на PNG + улучшена обработка числовых форматов в BIFF экспорте + добавлено свойство TfrxODFExport.SingleSheet + добавлено свойство TfrxSimpleTextExport.DeleteEmptyColumns + добавлено свойство TfrxBIFFExport.DeleteEmptyRows + добавлен прогресс-бар в экспорт BIFF - исправлена ошибка c рамкой для некоторых типов штрих кодов - исправлен неправильный размер метафайлов в EMF экспорте - исправлена обработка отрицательных чисел в OLE экспорте - исправлена ошибка в OLE экспорте в обработке исключений - исправлена ошибка в создании прогресс-бара  (относится ко многим экспортам) - исправлена ошибка в ODF экспорте в обработке строк - исправлена ошибка в OLE экспорте в форматировании чисел - исправлена ошибка в PDF экспорте в повороте текста на 90, 180 и 270 градусов - исправлена ошибка в ODF экспорте в обработке колонтитулов - исправлена ошибка в Text экспорте в вычислении границ объектов - исправлена ошибка в ODF экспорте в UTF8 кодировании - исправлено скрытие линий сетки вокруг непустых ячеек в BIFF экспорте - исправлено размытие картинок при экспорте ### Выпущен FastReport VCL 4.6 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.6 Summary: Выпущен FastReport VCL 4.6 Выпущен FastReport VCL 4.6 Версия 4.6 -------------- + добавлен новый тег nowrap , текст заключенный в тег не разбивается WordWrap, а переносится целиком + добавлена возможность "сортировать по имени" в дереве данных + добавлена возможность вывода страниц в предпросмотре справа налево (в режиме много страниц), для RTL языков + добавлена возможность перемещать бенд без объектов (Alt + Move) + добавлена возможность сохранения кэша изображений в "temp" файл (PreviewOptions.PictureCacheInFile) + добавлено новое свойство TfrxReportPage.PageCount аналогично TfrxDataBand.RowCount + добавлено св-во EngineOptions.UseGlobalDataSetList (для многопоточных приложений ) - установите св-во в True, если не нужно использовать Глобальный список DataSet (используйте Report.EnabledDataSet.Add () для добавления данных в локальный список) + добавлено св-во Hint для всех печатаемых объектов, подсказки у диалоговых объектов теперь отображаются и в StatusBar + добавлено св-во TfrxDBLookupComboBox.AutoOpenDataSet (автоматически открывает присоединенный датасет после события onActivate диалога ) + добавлено св-во WordWrap для диалоговых кнопок (Delphi 7 и выше) + добавлено св-воTfrxDesigner.TemplatesExt + изменения в редакторе диаграмм: возможность изменять имя серий, возможность перемещать созданные серии, небольшие исправления + Класс TfrxStyles зарегистрирован в скрипте + [enterprise] добавлена экспериментальная возможность печати на принтеры, подключенные к серверу (config.xml "AllowPrint", установлено в "no" по умолчанию) + [enterprise] добавлена поддержка шаблонов (папка "templates"), внимание: все файлы шаблонов записаны в кодировке UTF8 + [enterprise] добавлено автообновление параметров конфигурации + [enterprise] добавлено автообновление списка отчетов + [enterprise] добавлено новое демо \Demos\ClientServer\ISAPI + [enterprise] улучшено быстродействие и стабильность + [fs] добавлено св-во TfsScript.IncludePath + [fs] добавлено св-во TfsScript.UseClassLateBinding + [fs] Исправлена ошибка в приведении типов из Variant(string) к Integer / Float - исправлена ошибка при выводе subreport на растягиваемом бенде - исправлена ошибка при использовании Band.Allowslit = True и TfrxColumnFooter - исправлена ошибка при использовании charset в Кросс таблице отличной от DEFAULT_CHARSET - исправлена ошибка при печати на альбомной ориентации с пользовательским размером бумаги - исправлена ошибка с использованием сетевых путей в наследовании отчёта - исправлена совместимость с модулем WideStrings в BDS2006/2007 - исправлено вычисление свободного пространства на странице при использовании PrintOnPreviousPage - Thumbnail и Outline показываются справа для RTL языков - [fs] исправлена ошибка с поздним связыванием - изменения в наследовании отчётов: пути к шаблону потомку теперь записываются относительно текущего отчёта (старые отчёты, в которых использовались пути относительно приложении тоже будут работать) - исправлен модуль для конвертации отчётов из Report Builder - исправлена ошибка в RTF экспорте с некоторыми TfrxRichView объектами - исправлена ошибка в наследование subreports - исправлена ошибка в предпросмотре с темами winXP в последнем обновлении - исправлена ошибка вычислений ширины при использовании HTML тегов в мемо - исправлена ошибка мерцания предпросмотра при использовании события OnClickObject - исправлена ошибка при минимизации модального дизайнера в BDS2005 и выше - исправлена ошибка с RTL в PDF экспорте - исправлена ошибка с SubReport при использовании многоколоночной страницы - исправлена ошибка с Subreport.PrintOnParent = True в наследованных отчётах - исправлена ошибка с SYMBOL_CHARSET в PDF экспорте - исправлена ошибка с внедрёнными шрифтами в PDF экспорте - исправлена ошибка с длинными ReportTitle + Header + MaterData.KeepHeader = True - исправлена ошибка с добавлением датасетов при наследовании отчёта - исправлена ошибка с путями в HTML экспорте ### Выпущен FastReport VCL 4.7 с поддержкой Delphi 2009! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.7 Summary: Выпущен FastReport VCL 4.7 с поддержкой Delphi 2009! Выпущен FastReport VCL 4.7 с поддержкой Delphi 2009! + поддержка CodeGear RAD Studio (Delphi/C++Builder) Delphi 2009 + [enterprise] расширенное описание ошибок в  логах + добавлены свойства TfrxHTMLExport.HTMLDocumentBegin: TStrings,    TfrxHTMLExport.HTMLDocumentBody: TStrings, TfrxHTMLExport.HTMLDocumentEnd: TStrings + улучшен RTF экспорт (межстрочный интервал и т.д.) + добавлена поддержка изображений Enhanced Metafile (EMF) в RTF, Open Office (ODS), Excel (XLS) экспортах + добавлено событие OnAfterScriptCompile + добавлено событие onLoadRecentFile + добавлено hot-key Ctrl + mouseWheel - изменяет масштаб в дизайнере + добавлено св-во TfrxMemoView.AnsiText + добавлены примеры для C++ Builder  - исправлена ошибка в RTF экспорте с EMF изображениями в OpenOffice Writer - исправлены некоторые многопоточные моменты в ядре, PDF, ODF экспортах - [enterprise] исправлена ошибка с интегрированным шаблоном навигатора отчета - [enterprise] исправлена ошибка с экспортом в браузере Internet Explorer - исправлена ошибка с размером шрифта матричных отчетов в Excel и XML экспортах - исправлена ошибка в e-mail экспорте с несколькими адресами - исправлена ошибка в XLS экспорте (с выключенным быстрым экспортом и объектом image равным null) - [enterprise] исправлена ошибка в обработке события TfrxReportServer.OnGetVariables  - исправлена ошибка в функции Calcl - исправлена утечка памяти в редакторе CrossTab - исправлена ошибка отображения некоторых диалогов в режиме DualView - исправлена ошибка в PostNET и ean13 штрихкодах - исправлена ошибка при использовании TruncOutboundText в матричных отчетов - исправлена ошибка с точками останова в синтаксис мемо - улучшенно событие OnBeforeConnect в ADO компонентах - исправлена ошибка при наследовании отчетов в встроенных DB компонентах - исправлена ошибка с фоновым цветом в TfrxPanelControl(Delphi 2005 и выше) Всем пользователям FastReport 4.* - не забудьте получить бесплатное обновление до версии 4.7! ### Выпущен FastReport VCL 4.8 с поддержкой Delphi 2010! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.8 Summary: Выпущен FastReport VCL 4.8 с поддержкой Delphi 2010! Выпущен FastReport VCL 4.8 с поддержкой Delphi 2010! ! + добавлена поддержка Embarcadero Rad Studio 2010 (Delphi/C++Builder) ! + добавлено событие TfrxMailExport.OnSendMail ! + [enterprise] добавлен режим аутентификации Windows ! + добавлен флаг подтверждения прочтения в TfrxMailExport ! + добавлено вычисление контрольной суммы для штрихкода  2-5 interleaved ! * изменен PDF экспорт: добавлена полная поддержка Unicode, увеличена скорость работы, уменьшены требования к памяти   старый PDF экспорт сохранен в файле frxExportPDF_old.pas ! * [enterprise] улучшена работа CGI совместно с серверами IIS/Apache + добавлено св-во TfrxDBDataset.BCDToCurrency + добавлено св-во TfrxReportOptions.HiddenPassword для возможности устанавливать пароль из кода + добавлено событие TfrxADOConnection.OnAfterDisconnect + добавлено св-во TfrxDesigner.MemoParentFont + добавлены новые значения для св-ва TfrxDesignerRestriction: drDontEditReportScript и drDontEditInternalDatasets + добавлено св-во TfrxGroupHeader.ShowChildIfDrillDown + в диалог TfrxMailExport добавленно поле TimeOut + добавлена возможность использования механизма "держать вместе"(KeepTogether/KeepChild/KeepHeader) в многоколоночном отчете + добавлена возможность разбиения больших бэндов(больше чем высота страницы) по умолчанию - изменен механизм наследования, правильное наследование связанных объектов (fixups) - исправлена ошибка с зеркальными полями в RTF, HTML, XLS, XML, OpenOffice экспортах - исправлена ошибка, при которой кросс таблица обрезала текст в "углу" таблицы, когда высота "угла" больше высоты колонки - улучшено WatchForm: TListBox заменен на TCheckListBox - улучшен метод AddFrom - копирование outline - улучшен функционал вертикальных бэндов, показывает мемо поля помещенные на гориз. бэнд и которые не пересекают вертикальный бэнд, а так же вычисляет в них значения и обрабатывает события(как в FR2) - улучшен режим без сортировки в кросс таблице(объединяет колонки корректно) - улучшен конвертер из Report Builder - улучшено событие TfrxDesigner.OnInsertObject, должно вызываться при перетаскивании полей из дерева данных - улучшен механизм  дрилл-даунов, должен корректно работать с master-detail-subdetail отчетами  - исправлена ошибка использования DownThenAcross в кросс таблице - исправлено несколько ошибок под CodeGear RAD Studio (Delphi/C++Builder) 2009  - исправлена ошибка с emf в ODT экспорте - исправлена ошибка с некорректным отображением outline при построении нескольких составных отчетов с использованием двухпроходного режима - исправлена ошибка, когда группа не вмещается на пустую страницу и переносится - исправлена ошибка с переменными "Page" и"Line" в вертикальных бэндах - исправлена ошибка, возникающая при использовании св-ва KeepHeader - исправлена ошибка со смещением вложенных отчетов  при использовании св-ва PrintOnParent  - исправлена небольшая утечка памяти во вложенных отчетах - исправлена проблема при использовании PageFooter и ReportSymmary вместе со св-вом PrintOnPreviousPage - исправлена ошибка, когда дизайнер показывал закомментированные функции в инспекторе объектов - исправлена ошибка, когда дизайнер вставлял код события в закомментированный блок - исправлена ошибка, когда движок пытался перенести большие неразрываемые объекты и "уходил" в бесконечный цикл - исправлена ошибка с использованием HTML тэгов в мемо вместе с WordWrap на коротком тексте - [enterprise] исправлена ошибка с потерей параметров при обновлении/экспорте отчета - исправлена ошибка экспорта в PDF для Delphi4 - исправлена ошибка с неправильным отображением некоторых кодовых страниц, которые используют 2 байта для спец. символов (Японские и Китайские кодовые страницы) - исправлена ошибка удаления первого пробела из текста в "разрываемом" memo - исправлена ошибка с многоколоночной страницей, когда бэнд перекрывал PageHeader - исправлена ошибка использования опции ReprintOnNewPage - внесены незначительные изменения в лицензионное соглашение ### Выпущен FastReport VCL 4.9 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-4.9 Summary: Выпущен FastReport VCL 4.9 Выпущен FastReport VCL 4.9 Что нового: + добавлена возможность печати/экспорта прозрачных картинок (св-ва TfrxPictureView.Transparent и TfrxPictureView.TransparentColor) (PDF экспорт не поддерживается) + добавлены новые режимы "Разбивка на листы"  в TfrxXMLExport + добавлена  поддержка тега /PAGE tag в TfrxRichView, "движок" автоматически разбивает страницы отчета, когда встречает тег /PAGE  + добавлена возможность скрывать Null значения в TfrxChartView (TfrxChartView.IgnoreNulls = True) + добавлена возможность устанавливать любой порядок страниц при печати + [enterprise] обновлена документация + [enterprise] доступны переменные "AUTHLOGIN" и "AUTHGROUP" внутри любого отчета + [enterprise] любой отчет может быть сопоставлен с одной или несколькими группами, для других групп выполнение этих отчетов запрещено + [enterprise] настройка задержек хранения в кэше для любого файла отчета (reports.xml) + [enterprise] добавлен новый  редактор свойств отчетов в утилиту конфигурации (закладка Reports) + [enterprise] добавлено свойство "Xml" - "SplitType" в конфигурацию - позволяет выбрать тип разбиения на листы: none/pages/printonprev/rowscount + [enterprise] добавлено свойство "Xml" - "SplitRowsCount" в конфигурацию - устанавливает количество строк для режима разбиения "rowscount" + [enterprise] добавлено свойство "Xml" - "Extension" в конфигурацию - позволяет выбрать расширение ".xml" или ".xls"  + [enterprise] добавлено свойство "Html" - "URLTarget" в конфигурацию - позволяет установить аттрибут target для гиперссылок внутри отчета + [enterprise] добавлено свойство "ReportsFile" в конфигурацию - путь к файлу хранения свойств отчетов (задержек хранения в кэше, ассоциированных групп) + [enterprise] добавлено свойство "ReportsListRenewTimeout" в конфигурацию - интервал обновления списка отчетов в секундах + [enterprise] добавлено свойство "ConfigRenewTimeout" в конфигурацию - интервал обновления файла конфигурации в секундах + [enterprise] добавлено свойство "MimeType" в конфигурацию для каждого выходного формата  + [enterprise] добавлено свойство "BrowserPrint" в конфигурацию - разрешает печать отчета средствами браузера, добавлен новый шаблон nav_print_browser.html + [enterprise] добавлена динамическая генерация имени результирующих файлов (report_name_date_time) * [enterprise] переменные SERVER_REPORTS_LIST и SERVER_REPORTS_HTML (список доступных отчетов) зависят от группы пользователя (для внутренней аутентификации) + добавлено рисование shapes в PDF экспорте (не картинка) + добавлен поворот текста в PDF экспорте (не картинка) + добавлено св-во EngineOptions.IgnoreDevByZero отключает исключение при делении на ноль в выражениях + добавлены св-ва TfrxDBLookupComboBox.DropDownWidth, TfrxDBLookupComboBox.DropDownRows + добавлено событие TfrxCustomExportFilter.OnBeginExport + добавлена возможность уменьшать шрифт у объекта штрихкод + добавлена возможность вставлять FNC1 в "code 128" штрихкод + добавлено событие TfrxPreview.OnMouseDown + добавлена поддержка нового PDF экспорта в D4-D6 и BCB4-BCB6 * улучшен метод AddFrom - копирование якорей - исправлена ошибка с зачеркнутым текстом в PDF экспорте - исправлена ошибка с некорректным экспортом объекта TfrxRichView в RTF формат (неправильный интерлиньяж) - [enterprise] добавлена критическая секция в метод TfrxServerLog.Write - исправлена ошибка с установкой флагов защиты в диалоговом окне PDF экспорта - исправлена ошибка с экспортом картинок в Open Office Writer (odt) - [enterprise] исправлена ошибка с компонентой TfrxReportServer в Delphi 2010 - исправлены незначительные ошибки в Embarcedero RAD Studio 2010 - исправлена ошибка с бесконечным циклом при использовании вертикальных бэндов вместе c заголовком страницы и заголовками с включенной опцией ReprintOnNewPage - исправлена ошибка при использовании механизма "держать вместе" и кросс таблицы (не верный перенос кросс таблицы) - исправлена ошибка с макросом [CopyName#] при печати в режиме "Join small pages"  - исправлена ошибка при попытке разбить отчет с бесконечной высотой на страницы (NewPage, StartNewPage) - исправлена ошибка добавления пустой строки в TfrxRichView при вставке текста из выражений - исправлена ошибка вывода подвала если бэнд скрыт(FooterAfterEach = True) - исправлена ошибка сброса переменной Page в двухпроходном отчете с TfrxCrossView - исправлена ошибка с потерей выравнивания при разбиении у объекта TfrxRichView - исправлены зависания отчетов с TfrxRichView c использованием RTF 4.1 Так же выпущена новая версия FastScript v1.96 === + добавлена поддержка Embarcedero Rad Studio 2010 добавлены новые RTTI функции * улучшена скорость выполнения скрипта * улучшена работа под Lazarus ### Выпущен FastReport.NET 1.6 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-1.6 Summary: Выпущен FastReport.NET 1.6 Выпущен FastReport.NET 1.6 Изменения в версии 1.6  ---------------  + добавлена возможность сохранения шаблона в формате RDL (Report Definition Language)  * изменен механизм работы экспортов и печати в WebReport, теперь используется handler в файл web.config  + добавлены локализации Romanian, Hungarian, Japanese, Thai  + добавлено свойство Report.InitialPageNumber  + добавлено свойство TextObject.ParagraphOffset  + добавлено свойство PreviewControl.UseBackColor  + добавлена функция IsNull для проверки значения поля БД на null  + добавлен импорт свойства WritingMode при импорте RDL-отчетов  + добавлено сохранение свойства TextObject.Angle при сохранении отчетов в формате RDL  + добавлено кодирование символа FNC1 в штрихкод Datamatrix (используйте последовательность &1;)  + добавлены экспорты в Open Document Text, XPS, DBF в WebReport  * добавлена возможность замены встроенного построителя запросов  - исправлена ошибка в режиме печати "масштабирование"  - исправлена ошибка в объекте RichObject (св-во CanShrink не работает с пустым текстом)  - исправлена ошибка при разрыве объекта "Текст"  - исправлена ошибка в свойстве TextObject.TabWidth  - исправлена ошибка при сохранении готового отчета с флагом UseFileCache  - исправлены ошибки RichObject в многопоточном режиме  - исправлена ошибка при открытии некоторых сохраненных в RDL отчетов в Report Builder  - исправлена ошибка в мастере группировки  - исправлена ошибка с фильтром в ChartObject при сохранении отчета в класс C#/VB.Net  - исправлена ошибка при конвертировании булевых выражений в RDL импорте  - исправлена ошибка с внутренним манифестом в ODF экспорте ### Выпущен FastReport.NET 1.7 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-net-1.7 Summary: Выпущен FastReport.NET 1.7 Выпущен FastReport.NET 1.7 Изменения: + добавлен плагин импорта из Crystal Reports + добавлено событие Config.DesignerSettings.PageAdded + добавлено свойство Config.PreviewSettings.AllowPrintToFile + добавлено свойство Report.MaxPages + добавлено свойство MatrixObject.KeepCellsSideBySide + добавлено оглавление (outline) в PDF экспорте + добавлено свойство TableObject.ManualBuildAutoSpans + добавлены свойства TableRow.KeepRows, TableColumn.KeepColumns + добавлена возможность скрывать фильтры экспортов и объекты отчета: RegisteredObjects.FindObject(typeof(PDFExport)).Enabled = false * улучшена работа файлового кеша отчета * улучшена загрузка файлов .fpx * CheckBoxObject доступен в версии FR.Net Basic - исправлена ошибка с отображением текста в WebReport если TextObject.WordWrap = false;  - исправлена утечка памяти при экспорте в PDF с опцией "Встроить шрифты" - исправлена ошибка с разрывом бэнда - исправлена ошибка с информационными полями в зашифрованном PDF файле - исправлена ошибка с рамками и заливкой страницы в PDF экспорте - исправлена ошибка в RichObject - исправлена ошибка в окне предварительного просмотра - исправлена ошибка при сохранении отчета в виде класса - исправлена ошибка с некоторыми типами картинок - исправлена ошибка с разрывом текста - исправлена ошибка с обработчиками событий - исправлена ошибка с определением высоты текста в RichObject - исправлена ошибка в PDF экспорте (пропадали картинки при просмотре в MAC OS или iOS) - исправлена ошибка с выравниванием по сетке - исправлена ошибка с разрывом бэнда и outline - исправлена ошибка при экспорте в метафайл - исправлена ошибка с унарным минусом и итогами - исправлена ошибка с водяным знаком ### Выпущен FastScript 1.9 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.9-release Summary: Выпущен FastScript 1.9 Выпущен FastScript 1.9 + полная поддержка многопоточности + увеличена скорость работы + добавлены пакеты для Delphi 2006 + добавлены отдельные пакеты для TeeChart - исправлен тип bool в С++ - исправлена зависимость от регистра в C++ (долько для ключевых слов) - исправлена ошибка в jscript (функции возвращающие строку ### Выпущен FastScript 1.9 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.9 Summary: Выпущен FastScript 1.9 Выпущен FastScript 1.9 + полная поддержка многопоточности + увеличена скорость работы + добавлены пакеты для Delphi 2006 + добавлены отдельные пакеты для TeeChart - исправлен тип bool в С++ - исправлена зависимость от регистра в C++ (долько для ключевых слов) - исправлена ошибка в jscript (функции возвращающие строку ### Выпущен FastScript 1.92 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.92 Summary: Выпущен FastScript 1.92 Выпущен FastScript 1.92 + добавлена поддержка CodeGear Delphi 2007 + добавлен rtti для TPopupMenu * обновлена версия ini rtti, добавлены rtti для TCustomIniFile и TMemIniFile + добавлена поддержка Lazarus 0.9.22   a) адаптированы невизуальные компоненты для компиляции с Free Pascal v2.0.4, 2.1.1, 2.3.1   b) адаптированы визульные компоненты под LCL (Lazarus component library)   c) добавлены пакеты для Lazarus Пока не адаптированы под Lazarus и Free pascal следующие модули: fs_idbreg, fs_iibxreg, fs_iadoreg, fs_ibdereg, fs_iteereg,  fs_ibdertti, fs_ichartrtti, fs_iadortti, fs_iibxrtti, fs_idisp ### Выпущен FastScript 1.94 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.94 Summary: Выпущен FastScript 1.94 Выпущен FastScript 1.94 - добавлены новые RTTI фунуции/свойства:TCustomIniFile.WriteTStrings,TCustomIniFile.ReadTStrings, TIBTransaction.Commit,TIBTransaction.RollBack,TIBTransaction.StartTransaction,TIBQuery.FetchAll, TIBQuery.RecordCount,TChartSeries.Active,TChartSeries.Count,TChartSeries.Delete. - исправлена ошибка с оператором "in" - функции возвращают значение null по-умолчанию - исправлена ошибка с поздним связыванием - добавлено свойство TfsScript.IncludePath (список путей для модулей) - добавлено свойство TfsScript.UseClassLateBinding  - исправлена ошибка с приведением типов - добавлено свойство EvaluteRiseError - возвращает True если в функции Eveluate произошла ошибка - добавлено событие OnGetVarValue - добавлен метод AddPropertyEx с новыми обработчиками событий TfsGetValueNewEvent/TfsSetValueNewEvent - исправлена ошибка в функции Evaluate и Basic грамматикой - исправлена ошибка ненужного вызова AddRTII в функции evaluate ### Выпущен FastScript 1.95 с поддержкой Delphi 2009 ! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.95 Summary: Выпущен FastScript 1.95 с поддержкой Delphi 2009 ! Выпущен FastScript 1.95 с поддержкой Delphi 2009 ! Что нового в FastScript 1.95 : + добавлена поддержка CodeGear Rad Studio 2009 - исправлена ошибка с оператором "with" - исправлена ошибка с комментарием в Basic script - исправлены незначительные ошибки в TfsSyntaxMemo и TfsTree ### Выпущен FastScript 1.97 с поддержкой Embarcadero Rad Studio XE! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastscript-1.97 Summary: Выпущен FastScript 1.97 с поддержкой Embarcadero Rad Studio XE! Выпущен FastScript 1.97 с поддержкой Embarcadero Rad Studio XE! Что нового в версии 1.97? ============== + добавлена поддержка Embarcadero Rad Studio XE + добавлена поддержка TeeChart 201 ### Выпущен МоиОтчеты Вьювер URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/release-free-fastreport-viewer Summary: Выпущен МоиОтчеты Вьювер - бесплатная утилита для просмотра и печати FP3-фалов Выпущен МоиОтчеты Вьювер - бесплатная утилита для просмотра и печати FP3-фалов Выпущен МоиОтчеты Вьювер - бесплатная утилита для просмотра и печати FP3-фалов - сформированных документов FastReport. Скачать можно  здесь ### Выставка Digit 2007 в Ростове-на-Дону 27-29 сентября URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/digit-2007-exhibition Summary: Fast Reports на выставке Digit 2007 в Ростове-на-Дону 27-29 сентября Fast Reports на выставке Digit 2007 в Ростове-на-Дону 27-29 сентября Компания Fast Reports принимает участие в выставке Digit 2007 в Ростове-на-Дону 27-29 сентября Разделы выставки:  -Инфокоммуникационные услуги на базе интеграции средств связи и информатизации;  -Информатизация и компьютерные сети;  -Информационные системы; -Телекоммуникации;  -Научные исследования и технологии;  -Беспроводные технологии;  -Беспроводная связь;  -Проводные технологии в информационном обеспечении;  -Электроника;  -Интеллектуальный дом; -Технические средства и системы безопасности; -Информационная безопасность  Адрес: 344068, Россия, г. Ростов-на-Дону, ул. М. Нагибина, 30, ВЦ "ВертолЭкспо" Тел./факс: (863) 268-77-33, 268-77-51   E-mail:  com@vertolexpo.ru  ;  digit@vertolexpo.ru Проект-менеджер: Курдюкова Наталья Александровна Менеджер: Самарская Яна Николаевна Руководитель проекта: Башко Наталья Александровна  Подробнее: http://www.vertolexpo.ru/Exhibition.aspx?eid=48&ceid=168 ### Выставка Interop 2008 Moscow с 23 по 24 апреля URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/interop-2008-exhibition Summary: FastReports на выставке Interop 2008 Moscow c 23 по 24 апреля FastReports на выставке Interop 2008 Moscow c 23 по 24 апреля Компания Fast Reports рада сообщить, что будет участвовать в выставке Interop 2008 Moscow c 23 по 24 апреля в выставочном центре Т-Модуль, и приглашает Вас посетить наш стенд №217. На конференции 23 апреля в 12:30 во втором Конференц Холле Михаил Филиппенко , генеральный директор, FastReports , выступит с докладом " Business Intelligence для среднего и малого бизнеса " о сравнении нескольких подходов к внедрению систем поддержки принятия решений на предприятиях. Программа конференции Схема проезда План выставки Как наш клиент, Вы можете посетить выставку бесплатно, для этого достаточно заполнить форму он-лайн регистрации посетителей , указав в поле комментарии, что приглашение получено от компании FastReports . ### Выступление Fast Reports на форуме «DIGITAL EDU» в СВФУ URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/digital-edu Summary: Команда Fast Reports выступила на форуме «DIGITAL EDU» в СВФУ c докладом об опыте взаимодействия с учебными заведениями. Команда Fast Reports выступила на форуме «DIGITAL EDU» в СВФУ c докладом об опыте взаимодействия с учебными заведениями. 16-17 февраля в Северо-Восточном федеральном университете состоялся Всероссийский научный форум «DIGITAL EDU. Цифровые компетенции в образовании» с участием гостей из многих регионов России и зарубежных стран, в их числе были и представители Fast Reports.  Конференция была посвящена основным подходам к формированию компетенций в условиях трансформаций в системе образования, которые позволят выпускникам после окончания учебы стать высококвалифицированными и конкурентоспособными кадрами на рынке труда.   Всего за два дня были проведены две научно-практические конференции – для педагогов и студентов, где со своими наработками выступили около 400 человек, состоялись одиннадцать мастер-классов от специалистов из Якутска, Краснодара, Ростова-на-Дону и Нур-Султана по цифровым компетенциям. Наша компания выступила с докладом "Развитие профессиональных компетенций у студентов ИТ-специальностей” и провела мастер-класс "Методы обучения в условиях цифровизации образования и общества. Опыт взаимодействия с учебными заведениями”. ### Выход новой версии FastReport Desktop 2022.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-desktop-2022.1 Summary: Предновогоднее обновление FastReport Desktop до версии 2022.1. Предновогоднее обновление FastReport Desktop до версии 2022.1. Обновленная версия в FastReport Desktop 2022.1. Еще больше возможностей с FastReport. Новые возможности Добавлен новый объект "Улучшенная матрица": Вот список ключевых особенностей матрицы: заголовки строк и колонок могут содержать группы и простые элементы в произвольном порядке, что позволяет строить асимметричные отчеты; кнопки сворачивания позволяют интерактивно управлять видимостью отдельных элементов; кнопки сортировки позволяют интерактивно сортировать матрицу по выбранным значениям, в том числе по значениям итогов; группировка Top N позволяет отобразить N значений в заголовке, а остальные значения сгруппировать в отдельный элемент с возможностью разворачивания; вывод заголовков матрицы в ступенчатом виде; сортировка заголовков по значениям итогов; широкий набор агрегатных функций; поддержка пользовательских агрегатных функций; широкий набор специальных функций, позволяющих получить значения итогов, соседних ячеек, а также функции для расчета процентов; поддержка объектов "Искрографик" и "Индикатор прогресса" в ячейках данных. Подробнее о возможностях объекта смотрите в  документации. Добавлены штрих-коды  GS1 DataBar : Limited, Omnidirectional, Stacked и Stacked Omnidirectional. Новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных. Config.CompilerSetting.Placeholder  - строковая переменная, которая используется для замены выражений с несуществующими именами. По умолчанию, значение этой переменной - пустая строка. Config.CompilerSetting.ExceptionBehaviour  может иметь следующие значения: ExceptionBehaviour.Default - стандартное поведение, как и было ранее. При наличии ошибок с некорректными именами, выводится сообщение об ошибке. Подготовка отчета прерывается. ExceptionBehaviour.ReplaceExpressionWithExceptionMessage  - некорректные выражения заменяются на текст сообщения об исключении. Ошибки при этом не выводятся. Подготовка отчета не прерывается. ExceptionBehaviour.ShowExceptionMessage - появляется сообщение с текстом исключения, после нажатия кнопки OK, подготовка отчета продолжается. При этом, неправильные выражения заменяются на значение переменной Placeholder. ExceptionBehaviour.ReplaceExpressionWithPlaceholder  - некорректные выражения просто заменяются на Placeholder. Сообщений об ошибках нет. Подготовка отчета не прерывается. Пример при значениях переменных:  ExceptionBehaviour = ExceptionBehaviour.ReplaceExpressionWithPlaceholder Placeholder = "НЕТ ДАННЫХ!" Здесь видно, что в таблице есть поле с именем FistName , однако в выражении оно указано некорректно. А это результат подготовки такого отчета. Ранее его подготовить было бы невозможно из-за ошибок. Повышено качество трансляции RTF в объекты отчета. Преобразование RTF в объекты отчета оптимизировано. Добавлена трансляция RTF в ячейках таблиц. А также исправлено много ошибок. Улучшения экспорта Реализован экспорт водяных знаков в Word и RTF. Добавлено масштабирование SVG изображений в матрице экспорта. Это позволяет повысить качество экспортируемых изображений при экспорте в Word и Excel. Однако, при этом размер выходного файла увеличивается. Для использования этой возможности, необходимо включить опцию "Для печати" при экспорте. Реализован экспорт групп на отдельные листы в Excel 2007. В Excel 2007 добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте. Теперь можно определить как будет вести себя изображение в ячейке при изменении ее положения и размера. При этом изображение может: перемещаться и изменять свой размер вместе с ячейкой; перемещаться вместе с ячейкой, но не изменять свой размер; не перемещаться и не изменять размер; Реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97. В HTML-экспорте добавлена опция "Не поворачивать альбомные страницы при печати". Ранее мы принудительно поворачивали страницы с альбомной ориентацией при печати. Необходимо это было по причине того, что браузеры не умеют корректно печатать отчеты со страницами как в книжной, так и в альбомной ориентации. При печати таких документов, страницы с альбомной ориентацией обрезаются по ширине страниц с книжной ориентацией. Теперь, можно настроить, поворачивать страницы с альбомной ориентацией или нет. Кроме того, исправлена ошибка, при которой страницы с альбомной ориентацией поворачивались всегда, даже когда нет страниц с книжной ориентацией. Полный список изменений [Engine] + добавлен новый объект AdvMatrixObject; + добавлены штрих-коды GS1 Databar: Limited, Omnidirectional, Stacked и Stacked Omnidirectional; + добавлены новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных; + добавлена трансляция RichObject внутри TableCell; * переработана трансляция RichObject в объекты отчёта; - исправлен ShiftMode транслированных из RTF текста объектов; - исправлена ошибка с двумя параметрами с одним именем приводящая к исключению System.ArgumentException; - исправлена ошибка с вложенным отчетом содержащим многоколоночный Databand; - исправлена ошибка с неверным расчетом высоты бэнда; - исправлена ошибка с отображением гиперссылок при конвертации RTF в объекты отчета; - исправлена трансляция RichObject если документ назначается из скрипта; - исправлена ошибка с шрифтами, добавляемыми в Config.PrivateFontCollection; [Designer] + добавлена проверка вводимых данных в окне редактирования QR-кода СберБанка; - исправлена ошибка с переносом строки в редакторе текстового объекта; - исправлена ошибка конвертации отчетов rdl, содержащих матрицы внутри ячеек таблицы; - исправлена ошибка с направляющими линиями в дизайнере; - исправлена ошибка с окном "Дерево отчета"; - исправлена ошибка приводящая к System.NullReferenceException и падению дизайнера во время его запуска при включенной опции Авто-направляющие; [Preview] - исправлена ошибка со сдвигом позиции объектов при переключении вида бэндов во время редактировании подготовленной страницы; [Exports] + реализован экспорт водяных знаков в Word; + реализован экспорт водяных знаков в RTF; + добавлена опция "Не поворачивать альбомные страницы при печати" при экспорте в HTML; + добавлена возможность изменять имя прикрепляемого файла при отправке по Email; + добавлено масштабирование SVG изображений в матрице экспорта; + добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте в Excel 2007; + реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97; + реализован экспорт групп на отдельные листы в Excel; + реализован экспорт уровня прозрачности изображений водяных знаков в Word; + реализован экспорт размера изображения водяного знака в RTF; - исправлена ошибка, приводившая к System.NullReferenceException при экспорте в текст, таблиц с количеством строк меньше одной; - исправлен некорректный левый отступ таблиц при экспорте в Word; - исправлена ошибка со шрифтом Wingdings в тегах HTML при экспорте в HTML; - исправлен баг с экспортом шрифтов Wingdings и Webdings в HTML; - исправлена ошибка с шириной фреймов при экспорте в PowerPoint; - исправлена ошибка экспорта объектов с прозрачной заливкой в RTF; - исправлена ошибка экспорта объектов с прозрачной заливкой в Word; - исправлена ошибка, приводящая к System.OutOfMemoryException при экспорте в PDF; - исправлено неправильное отображение переноса строки при экспорте в HTML; - исправлено переполнение памяти при экспорте в PDF; - исправлены ошибки в PDF-экспорте на системах, отличных от Windows; - исправлена ошибка с экспортом таблиц с количеством столбцов больше 63 в Word 2007; - исправлена ошибка приводящая к утечке памяти и исключению System.OutOfMemoryException в PDF-экспорте при включенной опции "Текст в кривых"; - исправлена ошибка с разрывом строки при экспорте в HTML; ### Выход новой версии FastReport for DBA 2022.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-dba-2022.1 Summary: Предновогоднее обновление FastReport for DBA до версии 2022.1. Предновогоднее обновление FastReport for DBA до версии 2022.1. Обновленная версия в FastReport for DBA 2022.1. Еще больше возможностей с FastReport. Новые возможности Добавлен новый объект "Улучшенная матрица": Вот список ключевых особенностей матрицы: заголовки строк и колонок могут содержать группы и простые элементы в произвольном порядке, что позволяет строить асимметричные отчеты; кнопки сворачивания позволяют интерактивно управлять видимостью отдельных элементов; кнопки сортировки позволяют интерактивно сортировать матрицу по выбранным значениям, в том числе по значениям итогов; группировка Top N позволяет отобразить N значений в заголовке, а остальные значения сгруппировать в отдельный элемент с возможностью разворачивания; вывод заголовков матрицы в ступенчатом виде; сортировка заголовков по значениям итогов; широкий набор агрегатных функций; поддержка пользовательских агрегатных функций; широкий набор специальных функций, позволяющих получить значения итогов, соседних ячеек, а также функции для расчета процентов; поддержка объектов "Искрографик" и "Индикатор прогресса" в ячейках данных. Подробнее о возможностях объекта смотрите в  документации. Добавлены штрих-коды  GS1 DataBar : Limited, Omnidirectional, Stacked и Stacked Omnidirectional. Новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных. Config.CompilerSetting.Placeholder  - строковая переменная, которая используется для замены выражений с несуществующими именами. По умолчанию, значение этой переменной - пустая строка. Config.CompilerSetting.ExceptionBehaviour  может иметь следующие значения: ExceptionBehaviour.Default - стандартное поведение, как и было ранее. При наличии ошибок с некорректными именами, выводится сообщение об ошибке. Подготовка отчета прерывается. ExceptionBehaviour.ReplaceExpressionWithExceptionMessage  - некорректные выражения заменяются на текст сообщения об исключении. Ошибки при этом не выводятся. Подготовка отчета не прерывается. ExceptionBehaviour.ShowExceptionMessage - появляется сообщение с текстом исключения, после нажатия кнопки OK, подготовка отчета продолжается. При этом, неправильные выражения заменяются на значение переменной Placeholder. ExceptionBehaviour.ReplaceExpressionWithPlaceholder  - некорректные выражения просто заменяются на Placeholder. Сообщений об ошибках нет. Подготовка отчета не прерывается. Пример при значениях переменных:  ExceptionBehaviour = ExceptionBehaviour.ReplaceExpressionWithPlaceholder Placeholder = "НЕТ ДАННЫХ!" Здесь видно, что в таблице есть поле с именем  FistName , однако в выражении оно указано некорректно. А это результат подготовки такого отчета. Ранее его подготовить было бы невозможно из-за ошибок. Повышено качество трансляции RTF в объекты отчета. Преобразование RTF в объекты отчета оптимизировано. Добавлена трансляция RTF в ячейках таблиц. А также исправлено много ошибок. Улучшения экспорта Реализован экспорт водяных знаков в Word и RTF. Добавлено масштабирование SVG изображений в матрице экспорта. Это позволяет повысить качество экспортируемых изображений при экспорте в Word и Excel. Однако, при этом размер выходного файла увеличивается. Для использования этой возможности, необходимо включить опцию "Для печати" при экспорте. Реализован экспорт групп на отдельные листы в Excel 2007. В Excel 2007 добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте. Теперь можно определить как будет вести себя изображение в ячейке при изменении ее положения и размера. При этом изображение может: перемещаться и изменять свой размер вместе с ячейкой; перемещаться вместе с ячейкой, но не изменять свой размер; не перемещаться и не изменять размер; Реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97. В HTML-экспорте добавлена опция "Не поворачивать альбомные страницы при печати". Ранее мы принудительно поворачивали страницы с альбомной ориентацией при печати. Необходимо это было по причине того, что браузеры не умеют корректно печатать отчеты со страницами как в книжной, так и в альбомной ориентации. При печати таких документов, страницы с альбомной ориентацией обрезаются по ширине страниц с книжной ориентацией. Теперь, можно настроить, поворачивать страницы с альбомной ориентацией или нет. Кроме того, исправлена ошибка, при которой страницы с альбомной ориентацией поворачивались всегда, даже когда нет страниц с книжной ориентацией. Полный список изменений [Engine] + добавлен новый объект AdvMatrixObject; + добавлены штрих-коды GS1 Databar: Limited, Omnidirectional, Stacked и Stacked Omnidirectional; + добавлены новые свойства: Config.CompilerSetting.ExceptionBehaviour и Config.CompilerSetting.Placeholder. Эти свойства дают возможность настраивать поведение при возникновении исключений с некорректными именами полей и таблиц баз данных; + добавлена трансляция RichObject внутри TableCell; * переработана трансляция RichObject в объекты отчёта; - исправлен ShiftMode транслированных из RTF текста объектов; - исправлена ошибка с двумя параметрами с одним именем приводящая к исключению System.ArgumentException; - исправлена ошибка с вложенным отчетом содержащим многоколоночный Databand; - исправлена ошибка с неверным расчетом высоты бэнда; - исправлена ошибка с отображением гиперссылок при конвертации RTF в объекты отчета; - исправлена трансляция RichObject если документ назначается из скрипта; - исправлена ошибка с шрифтами, добавляемыми в Config.PrivateFontCollection [Designer] + добавлена проверка вводимых данных в окне редактирования QR-кода СберБанка; - исправлена ошибка с переносом строки в редакторе текстового объекта; - исправлена ошибка конвертации отчетов rdl, содержащих матрицы внутри ячеек таблицы; - исправлена ошибка с направляющими линиями в дизайнере; - исправлена ошибка с окном "Дерево отчета"; - исправлена ошибка приводящая к System.NullReferenceException и падению дизайнера во время его запуска при включенной опции Авто-направляющие; [Preview] - исправлена ошибка со сдвигом позиции объектов при переключении вида бэндов во время редактировании подготовленной страницы; [Exports] + реализован экспорт водяных знаков в Word; + реализован экспорт водяных знаков в RTF; + добавлена опция "Не поворачивать альбомные страницы при печати" при экспорте в HTML; + добавлена возможность изменять имя прикрепляемого файла при отправке по Email; + добавлено масштабирование SVG изображений в матрице экспорта; + добавлена возможность экспорта свойства, определяющего размер и расположение изображения при экспорте в Excel 2007; + реализована возможность скрывать или показывать линии сетки при экспорте в Excel 97; + реализован экспорт групп на отдельные листы в Excel; + реализован экспорт уровня прозрачности изображений водяных знаков в Word; + реализован экспорт размера изображения водяного знака в RTF; - исправлена ошибка, приводившая к System.NullReferenceException при экспорте в текст, таблиц с количеством строк меньше одной; - исправлен некорректный левый отступ таблиц при экспорте в Word; - исправлена ошибка со шрифтом Wingdings в тегах HTML при экспорте в HTML; - исправлен баг с экспортом шрифтов Wingdings и Webdings в HTML; - исправлена ошибка с шириной фреймов при экспорте в PowerPoint; - исправлена ошибка экспорта объектов с прозрачной заливкой в RTF; - исправлена ошибка экспорта объектов с прозрачной заливкой в Word; - исправлена ошибка, приводящая к System.OutOfMemoryException при экспорте в PDF; - исправлено неправильное отображение переноса строки при экспорте в HTML; - исправлено переполнение памяти при экспорте в PDF; - исправлены ошибки в PDF-экспорте на системах, отличных от Windows; - исправлена ошибка с экспортом таблиц с количеством столбцов больше 63 в Word 2007; - исправлена ошибка приводящая к утечке памяти и исключению System.OutOfMemoryException в PDF-экспорте при включенной опции "Текст в кривых"; - исправлена ошибка с разрывом строки при экспорте в HTML; ### Вышла новая версия Fast Reports FMX 2022.1! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-fmx-2022.1 Summary: Выход новой версии FastReport FMX 2022.1. Новые возможности уже ждус вас в обновлении! Выход новой версии FastReport FMX 2022.1. Новые возможности уже ждус вас в обновлении! Начиная с версии 2022.1, все редакции FastReport распространяются по подписке. Это обеспечит доступ ко всем возможностям самых актуальных версий, пока ваша подписка действительна. В новой версии добавлена поддержка Embarcadero RAD Studio 11 и новой платформы macOS ARM 64-bit для Apple M1. В этом релизе мы также расширили набор фильтров экспорта FastReport FMX. Для использования теперь доступны фильтры экспорта в формат OpenOffice ODT и ODS. Дополнительно была улучшена работа с FmxLinux под операционными системами Linux и поддержка Metal API под macOS. Версия 2022.1 --------------- + Добавлена поддержка Embarcadero RAD Studio 11; + Добавлена поддержка компилятора macOS ARM 64-bit для Apple M1; + Добавлены фильтры экспортов ODT и ODS; * Новый модуль печати для FmxLinux основанный на GTK; * Добавлено чтение таблицы cmap с платформой macOS в TTF шрифте; * Добавлена локальная функция copyFrom для GZip упаковщика убирающее исключения при отладке; - Исправлена ошибка с canvas.beginscene когда AutoWidth = true; - Исправлены ошибки в экспорте PDF с режимом полной отладки; - Исправлен навигатор в экспорте HTML; - Исправлено поведение свойства TfrxPreview.Workspace.DoubleBuffered на macOS с использованием Metal; - Исправлен неправильный размер таблицы метрик, что могло вызывать перезапись других таблиц шрифта в экспорте PDF; - Исправлена ошибка c сериализацией отредактированной страницы в previewpages; - Исправлены незначительные утечки памяти; - Исправлена ошибка с выпадающим списком полей; - Исправлена печать и экспорт в Delphi 11; - Исправлена ошибка с Metal canvas в дизайнере отчетов; - Исправлена высота линий штрих-кодов; - Исправлены стили dot и dash в экспорте PDF; - Исправлена список шрифтов в Linux; - Исправлена структура ODT/ODS экспортов и вывод изображений в RTF под libreoffice; - Исправлена ошибка для "No mapping for the Unicode character exists in the target multi-byte code page" при загрузке теста из потока; - Исправлены тэги HTML. ### Вышла новая версия FastReport Desktop 2022.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-desktop-2022.2 Summary: Состоялся выход версии 2022.2 в FastReport Desktop. Было внесено большое количество новых возможностей и изменений. Состоялся выход версии 2022.2 в FastReport Desktop. Было внесено большое количество новых возможностей и изменений. Появилась возможность сохранить отчет со случайными данными В меню файл в дизайнере отчетов появился новый пункт "Сохранить со случайными данными...". При таком сохранении отчета все источники данных будут сохранены в отчете и данные в них будут заменены на случайные. Подсветка пересекающихся объектов в дизайнере Теперь при размещении объектов на странице отчета выделяются цветом пересекающиеся объекты и объекты, выходящие за пределы бэндов и страницы. В корректном отчете не должно быть таких объектов. Несоблюдение этой рекомендации, может приводить к ряду проблем при подготовке и экспорте отчетов. По умолчанию эта опция отключена. Включить ее можно в настройках дизайнера Файл->Настройки (File->Options). Линейка с направляющими в редакторе RichObject Новый инструмент позволяет удобно настраивать отступы и позиции табуляции при редактировании RichObject.  Подробнее читайте в статье . Добавлена консольная утилита конвертации RTF С её помощью можно удобно конвертировать RTF-файлы в шаблоны отчета. Появилась возможность использовать файлы XLSX в качестве источников данных Теперь из файлов Excel 2007 можно получить данные как из базы данных и использовать их в отчете.  Подробнее читайте в статье . Опция "Закрепить ячейки" при экспорте в Excel 2007 Эта возможность, позволяет определить область листа, которая всегда будет видимой при прокрутке. Закрепить можно: первую строку, первый столбец, определенное количество строки и столбцов. Также добавлен экспорт формата чисел и дат в формат Excel 97 (BIFF8). В HTML экспорте теперь есть опция "Высокое качество SVG" - при включении этой настройки качество SVG изображений будет значительно выше. Однако, нужно учитывать, что расход памяти будет выше. В Word документах добавлен экспорт закладок и внутренних ссылок. В PDF, Word, HTML и RTF теперь есть экспорт ширины символов табуляции. В SVG экспорте добавлено новое свойство PrefixStyle - оно позволяет задать префикс для всех стилей. Кроме того мы улучшили документацию и добавили возможность переключения локализации в настройках FastReport for DBA. Полный список изменений в версии 2022.2 [Engine] + добавлена возможность сохранить отчет со случайными данными; * в методе ExportBand теперь используется аргумент BandBase вместо Base; - исправлены ошибки с двойным вызовом событий AfterData, BeforePrint и AfterPrint объекта ContainerObject; - исправлена ошибка, приводящая к System.NullReferenceException при запуске отчетов с диалоговыми формами; - исправлена ошибка, из-за которой не работало свойство VisibleExpression у подотчетов и страниц; - исправлен баг со сдвигом по вертикали непересекающихся объектов при конвертации RTF; - исправлена ошибка с правым якорем на страницах с бесконечной шириной и альбомной ориентацией; - исправлена трансляция списков при конвертации RTF; - исправлена ошибка, из-за которой не работало свойство RichObject.AllowExpressions; - исправлена ошибка, приводящая к System.OverflowException при отрисовке неподготовленной бесконечной страницы; [Designer] + добавлена подсветка пересекающихся объектов; + добавлена линейка с направляющими в редакторе RichObject; + заменены символы пароля на точки в инспекторе объектов; + добавлено предупреждение о возможном переполнении стека при расположении Matrix или AdvMatrix на повторяющиеся бэнд; - удалено сообщение об ошибке, если текст штрих-кода содержит выражение; - исправлена ошибка с опцией отключения горячих клавиш; - исправлено выпадающее меню при нажатии на кнопку LineStyle и LineWidth; - исправлено отображение данных в дизайнере; - исправлены ошибки, приводящие к System.NullReferenceException при перетаскивании объектов на AdvMatrix; - исправлена ошибка с некорректным отображением настроек тени в редакторе границ; [Preview] - исправлена ошибка, приводящая к System.NullReferenceException, при щелчке по редактируемому текстовому объекту; - исправлена ошибка с неработающими гиперссылками в отчетах с многоколоночными бэндами; - исправлена ошибка, когда экспорт отчета, приводил к сохранению подготовленного отчета; - исправлена ошибка с настройкой списков доступных экспортов и экспортов в облака в PreviewControl; [Exports] + добавлен экспорт в ZPL II; + добавлена опция "Высокое качество SVG" в HTML-экспорте; + добавлена опция "Закрепить ячейки" при экспорте в Excel 2007; + добавлена возможность масштабирования печати при экспорте в Excel 2007; + добавлен экспорт закладок и внутренних ссылок в Word; + добавлен экспорт формата чисел и дат в Excel 97; + добавлено шифрование персональных данных пользователя в Email-экспорте; + добавлен экспорт отступа RichObject в RTF; + добавлен экспорт переноса строки RichObject в RTF; + добавлен экспорт отступа TextObject в Word; + добавлен экспорт ширины символов табуляции в PDF, Word, HTML и RTF; + добавлено свойство PrefixStyle в SVG-экспорте, которое позволяет задать префикс для всех стилей; * улучшен экспорт RichObject в Excel 2007; * удалены экспорты FastReport Cloud и XMPP; - исправлен некорректный поворот альбомной ориентации страниц при HTML-печати, если на них использовались стили с предыдущих страниц; - исправлена ошибка с масштабом шрифта при экспорте в PDF; - исправлена утечка памяти при экспорте SVG объектов в HTML с опцией "Высокое качество SVG"; - исправлена ошибка при встраивании шрифтов, для которых запрещена упаковка, в PDF-экспорте; - исправлена ошибка с экспортом символов табуляции в Word; - исправлена заливка фона изображения и свойство line-height в HTML-экспорте; - исправлена ошибка экспорта пользовательской пунктирной линии SVGObject в PDF; - исправлена ошибка с экспортом границ соединенных ячеек в SVG. ### Вышла новая версия FastReport Desktop 2022.3 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-desktop-2022.3 Summary: Состоялся выход версии 2022.3 в FastReport Desktop. Мы подготовили для вас много новых функций: валидатор шаблона отчета, редактор FRX формата. Состоялся выход версии 2022.3 в FastReport Desktop. Мы подготовили для вас много новых функций: валидатор шаблона отчета, редактор FRX формата. Состоялся выход версии 2022.3 в FastReport Desktop. Мы подготовили для вас много новых функций: валидатор для проверки шаблона отчета и получения списка ошибок, редактор FRX формата, конвертор отчетов из StimulSoft, копирование диалоговых страниц и многое другое. Валидатор отчета: В дизайнере отчета добавлена вкладка "Проверка" (справа, рядом с вкладками "Данные" и "Дерево отчета"). Здесь можно проверить шаблон отчета, а также получить список ошибок и предупреждений. Все это выводится в виде таблицы, в которой указано имя объекта (если оно есть) и описание ошибки. Если выделить строку в таблице, то в дизайнере будет выделен соответствующий объект. Ошибки и предупреждения могут быть следующих типов: объект без имени, объекты с одинаковым именем, пересекающиеся объекты, объекты с нулевой высотой или шириной, а также объекты, частично или полностью находящиеся за пределами родительского объекта. Объекты без имени и объекты с одинаковыми именами, являются критическими ошибками. Они могут приводить к различным ошибкам и даже падению приложения при подготовке отчета. К тому же, без валидатора эти ошибки очень сложно найти. Пересекающиеся объекты не являются серьезной ошибкой. В некоторых случаях могут быть полезными и использоваться целенаправленно (например, линии или прямоугольники). Пересекающиеся текстовые объекты, в большинстве случаев могут приводить к некорректным экспортам. Особенно в табличных экспортах, например Excel. В результате экспорта будет много лишних ячеек и так далее. С такими объектами надо быть осторожными. Объекты, частично выходящие за границы родительского объекта (например бэнда или страницы), тоже могут быть полезными в редких ситуациях. Но в большинстве случаев, приводят к ошибкам при подготовке и экспорте отчета. Объекты, полностью находящиеся за пределами родительского - ошибка серьезная. Найти такие объекты без валидатора, тоже очень трудно. Пересекающиеся объекты и выходящие за пределы родительских могут выделяться цветом (который теперь можно выбирать), если включена соответствующая настройка в меню Файл -> Настройки. Использовать проверку отчёта совсем не обязательно. Но это может быть полезным, когда ваш отчет работает или выглядит не так как хотелось бы. Подробнее о валидаторе отчёта читайте по следующей ссылке.  Редактор FRX Иногда возникает необходимость редактировать содержимое FRX-файла с помощью сторонних текстовых редакторов. Теперь вы можете это делать непосредственно в дизайнере отчета. Для этого был добавлен редактор FRX формата. По умолчанию он отключен. Чтобы включить редактор перейдите в меню «Файл -> Настройки». В дизайнере отчета, слева от вкладки Code появится вкладка FRX. Внесенные здесь изменения, будут сразу применяться к отчету и отображаться на его страницах. Подробнее о редакторе FRX читайте в следующей статье.  Конвертор отчетов из StimulSoft Добавлена возможность конвертировать шаблоны отчетов из StimulSoft в шаблоны FastReport .NET. В отчетах StimulSoft могут присутствовать объекты реализации, которые не поддерживаются дизайнером FastReport. Эти объекты не будут экспортироваться, либо будут заменены другими таким образом, чтобы построенный отчет был максимально похож на созданный в StimulSoft. Важно отметить, что импорт кросс-бэндов реализован выносом их содержимого в родительский бэнд. Подробнее о конвертации отчётов читайте в статье по следующей ссылке. Копирование диалоговых страниц Добавлена возможность копировать диалоговые страницы. Как с помощью контекстного меню диалоговой страницы, так и с помощью кнопки «Отчет -> Копировать страницу отчета». При копировании создается копия диалоговой страницы с уникальным именем. У всех дочерних объектов тоже будут уникальные имена. Однако обработчики событий у объектов будут те же, что и у исходной страницы. При необходимости нужно создать новые обработчики. Также теперь диалоговые страницы можно удалять не только с помощью кнопки «Отчет -> Удалить страницу», но и через контекстное меню в редакторе формы и дереве отчета. Отключение последних настроек форматирования При создании объекта в дизайнере его настройки будут применены к следующему созданному объекту того же типа. Например, если создать текстовый объект, настроить у него размер шрифта, границы, цвет заливки, то следующий текстовый объект будет создан с такими же настройками. Это удобно, когда нужно создавать несколько объектов с такими же или похожими настройками. В ситуациях, когда такое поведение дизайнера не нужно его можно отключить в меню «Файл -> Настройки». При этом объекты будут создаваться с настройками по умолчанию. Экспорт всех вкладок При просмотре интерактивных отчетов можно открывать детальные отчеты в новых вкладках. Здесь видно три открытые вкладки. Раньше экспортировалась только активная вкладка. Теперь можно экспортировать все вкладки в один файл с помощью новой опции "Экспорт всех вкладок". Подробное описание связанных сборок и установленных плагинов Теперь при наведении курсора мыши на dll в списке плагинов (Файл -> Настройки -> Плагины) и в списке ссылок на сборки (Отчет -> Свойства -> Скрипт), выводится подробная информация с описанием, версией, размером, датой создания и т.д. Выбор языка при экспорте в Word, PowerPoint, Rich Text, OpenOffice Write и OpenOffice Calc  Теперь в этих экспортах можно выбирать язык документа. По умолчанию используется язык, выбранный в дизайнере. Также добавлена опция "Показать линии сетки" в Excel 2007 экспорте. Полный список изменений [Engine] + добавлен конвертор отчетов из StimulSoft; + добавлено изменение имени источника данных JSON в выражениях при его переименовании; + добавлена конвертация свойства PaperSize при конвертации отчетов из StimulSoft; + добавлена проверка существования связанных сборок при конвертации отчетов из StimulSoft; + добавлено свойство PrintOnParent у объектов Table и Matrix; + добавлена загрузка параметров отчета при конвертации отчетов из RDL; + добавлена загрузка вложенных отчетов при конвертации отчетов из RDL; + добавлена возможность сохранить данные JSON подключения с помощью свойства StoreData; + улучшено быстродействие в отчетах, содержащих большое количество объектов; * изменен текст исключения при вычислении и форматировании выражения, если e.InnerException null; * при загрузке RDL отчетов, ширина страницы будет равна ширине секции только в случае, если ширины страницы нет; - исправлено вычисление длины кодировки DataMatrix C40 и текста; - обработано исключение System.ComponentModel.Win32Exception, при печати с отключенным "Диспетчером печати"; - исправлено скрытие границы изображения при печати с автоматическим размером; - исправлена ошибка переполнения стека при подготовке отчета с дочерним бэндом подвала страницы и включенной у него опцией начать новую страницу; - исправлена ошибка, при которой не передавался текущему отчету путь к базовому отчету на Unix ОС; - исправлена ошибка с созданием подотчета и страницы с одним именем при конвертации отчетов из StimulSoft; - исправлена ошибка с некорректными именами при конвертации отчетов из StimulSoft; - исправлена ошибка с TotalPages в Page.VisibleExpression, которая приводит к исключению при выключенном двойном проходе; - исправлена ошибка, при которой бэнд может расти за пределы страницы; - исправлена ошибка, при которой объекты могут расти за пределы бэнда или ContainerObject; - исправлена ошибка обратного отступа при трансляции RTF в объекты отчёта; - исправлен межстрочный интервал для текста транслированного из RichObject; - исправлена ошибка свойства ConnectionString в классе JsonDataSourceConnectionStringBuilder, когда информация приходила без заголовков запроса; [Designer] + добавлен валидатор отчета, который помогает находить некорректные объекты (повторяющиеся имена, отрицательные размеры и т.д.); + добавлен редактор для свойства RichObject.Text; + добавлен редактор FRX в дизайнере отчетов; + добавлено подробное описание связанных сборок и установленных плагинов; + добавлена возможность копировать диалоговые страницы; + добавлена возможность удалять диалоговые страницы через контекстное меню; + добавлена возможность отключить использование последних настроек форматирования при создании объектов; + добавлена интеграция с FastReport.Id; + добавлен вызов онлайн-документации в дизайнере отчетов; + добавлен мастер для визуализации контрольных идентификационных знаков; + добавлены всплывающие подсказки о правых и нижних отступах для направляющих и объектов в дизайнере; + добавлена возможность выбирать цвет подсветки пересекающихся объектов в дизайнере; + добавлена возможность подключения баз Access 2007; * изменен внешний вид формы редактора подключения к ElasticSearch; * изменены текстовые поля в CISWizardForm с единицами измерения на текстовые поля, поддерживающие только числа; - исправлена ошибка, приводящая к System.NullRefereceException при создании вычисляемого столбца для вложенной таблицы JSON; - исправлена ошибка, приводящая к System.FormatException при отрисовке подписей карт; - исправлена ошибка, приводящая к System.NullReferenceException, при нажатии кнопки "Вставить" в контекстном меню диалоговых страниц; - исправлена ошибка масштабирования элементов управления зумом дизайнера в режиме HiDPI при запуске из старого демонстрационного приложения; - исправлено открытие формы сохранения изменений после сохранения всего отчета; - исправлены не масштабируемые элементы в окне приветствия; - исправлена подсветка пересекающихся графиков; - исправлено исключение при переименовании таблицы JSON; - исправлен UpdateStatusBar в DialogWorkspace; - исправлена ошибка локализации кнопки "Учётная запись" в меню "Файл"; - исправлена потеря фокуса выбранного объекта при изменении его свойств; - исправлена ошибка при которой не происходило переключение на страницу "Код" после добавления обработчика событий; [Preview] + реализован экспорт всех открытых вкладок; - исправлена ошибка, приводившая к System.NullReferenceExteption при подготовке отчета с RichObject в системе без принтеров; - исправлена ошибка в объекте MSChart в режиме HiDPI; [Exports] + добавлен экспорт локали в Word, PowerPoint, Rich Text, OpenOffice Write и OpenOffice Calc; + добавлено шифрование пароля сертификата цифровой подписи в PDF-экспорте при его сохранении; + добавлена опция "Показать линии сетки" при экспорте в Excel 2007; + добавлен экспорт типов данных в DBF; + добавлено новое свойство в экспорт SVG PrefixStyle, которое позволяет задать префикс для всех стилей внутри SVG экспорта; + добавлена опция "Использовать системное форматирование данных" в Excel 2007 экспорте; * установлена UTF-8 в качестве кодировки по умолчанию для экспорта DBF; - исправлено неправильное масштабирование изображений в послойном HTML-экспорте при включенном высоком качестве SVG и увеличении более 1; - исправлена ошибка, приводившая к System.IndexOutOfRangeException при экспорте шрифта без кернинга в PDF; - исправлена ошибка масштабирования изображений при послойном HTML-экспорте; - исправлена ошибка, приводящая к System.NullReferenceException при экспорте отчета с пустой страницей в Word 2007; - исправлена утечка памяти в экспорте PDF с некоторыми CJK шрифтами; - исправлен баг, при котором SVG картинка не поворачивалась на заданный угол в HTML экспорте; - исправлен повторный рендеринг ячейки таблицы при экспорте в SVG; - исправлен некорректный стиль страницы при печати из браузера для табличного HTML экспорта; - исправлено исключение, которое возникало при экспорте объекта с отрицательными размерами в HTML формат; - исправлена ошибка экспорта в PDF при Compressed = false; - исправлена некорректная запись свойства border-collapse в табличном HTML-экспорте; - исправлена ошибка Excel-экспорта, при которой заливка в выходном файле не менялась с первого раза; - исправлена ошибка экспорта водяного знака в PostScript; - исправлена ошибка масштабирования шрифта при экспорте в PDF; - исправлена ошибка, при которой текстовый объект с HtmlTags, экспортированный в RTF, не изменялся тегами
, , . ### Вышла новая версия FastReport Desktop 2023.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-desktop-2023.1 Summary: С версий 2023.1 вам доступно: улучшение валидатора отчетов, интеграция с МоиОтчеты Облако, исправление объекта MSChartObject и т.д. С версий 2023.1 вам доступно: улучшение валидатора отчетов, интеграция с МоиОтчеты Облако, исправление объекта MSChartObject и т.д. Расширение функционала для FastReport Desktop. С версий 2023.1 вам стало доступно: улучшение валидатора отчетов, интеграция с МоиОтчеты Облако, исправление объекта MSChartObject, хранимые процедуры и т.д. Интеграция с МоиОтчеты Облако FastReport Desktop и FastReport for DBA начали поддерживать некоторое взаимодействие с МоиОтчеты Облако. Скачивание и загрузка отчетов Теперь Вы можете скачать отчет из хранилища МоиОтчеты Облако и работать над ним в дизайнере, или же наоборот – загрузить свои файлы в Облако. Предварительный веб-просмотр Помимо стандартного предпросмотра появился и предварительный веб-просмотр. Отчет можно просмотреть таким образом, только если он был открыт из Облака. Подключение к источникам данных МоиОтчеты Облако МоиОтчеты Облако может хранить подключения к источникам данных. С этого момента вам доступна возможность добавить эти источники данных в собственный отчет. А также появилась возможность загружать подключение к МоиОтчеты Облако. Чтобы узнать подробнее о новых возможностях, прочитайте эту статью. Улучшения валидатора отчетов Повышена скорость работы Теперь валидатор отчетов работает в отдельном потоке. А также, значительно оптимизирована скорость его работы. Изменения можно заметить при обработке отчетов с большим количеством ошибок. Пока валидатор проверяет отчет, в окне проверки отображается соответствующее сообщение. При этом можно редактировать отчет. По завершению работы валидатора, появится таблица с ошибками. Настройка таблицы валидатора Для удобства добавлен новый столбец с номерами ошибок. Его отображение можно включить или отключить через контекстное меню таблицы. Таким же образом, можно настраивать отображение столбца с типом ошибки. Конвертор шаблонов JasperReports Добавлена возможность конвертировать шаблоны отчетов из JasperReports в шаблоны FastReport .NET. В отчетах JasperReports могут присутствовать объекты, которые не поддерживаются дизайнером FastReport. Эти объекты не будут конвертироваться, либо будут заменены другими таким образом, чтобы построенный отчет был максимально похож на созданный в JasperReports. Подробнее читайте в статье. Улучшения и исправления объекта MSChartObject Объект MSChartObject имеет большое количество свойств и настроек. Наиболее часто используемые из них вынесены в редактор объекта. Свойства, недоступные в редакторе, можно изменять с помощью инспектора объектов. Однако с этими свойствами возникала проблема - при их изменении, отчет не считался измененным. В результате сохранение было недоступно. Чтобы сохранить отчет, нужно было изменить какое-нибудь другое его свойство или объект. Кроме того, при подготовке отчета и после закрытия окна предварительного просмотра, значения указанных свойств сбрасывались на значения по умолчанию. В новой версии эта ошибка исправлена. Подключение к хранимым процедурам в MsSQL Добавлена возможность подключаться к хранимым в MsSQL процедурам. Ранее это было доступно с помощью запроса к базе данных. Теперь к процедурам можно подключиться гораздо удобнее, с помощью интерфейса подключения таблиц базы данных. Они будут отображаться в окне выбора вместе с таблицами. При выборе процедуры будет появляться окно с настройками параметров, если они есть. Подробнее читайте в статье. Улучшения экспортов Опция "Для печати" в RTF экспорте Добавлено новое свойство PrintOptimized и соответствующая опция в окне экспорта. Включение этой настройки значительно увеличит качество изображения при экспорте. Однако, размер выходного файла тоже увеличится. Финансовый формат при экспорте в Excel 2007 Теперь денежный формат данных можно экспортировать как финансовый. Для этого добавлена соответствующая опция в окне экспорта и свойство CurrencyToAccounting. Полный список изменений доступен по следующей ссылке. ### Вышла новая версия FastReport FMX 2.8! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-fmx-2.8 Summary: Вышла новая версия FastReport FMX 2.8! Вышла новая версия FastReport FMX 2.8! В новой версии FastReport FMX мы добавили поддержку FmxLinux, теперь вы можете создавать свои приложения с FastReport FMX на Linux. Узнайте как установить и использовать FastReport FMX 2.8 для FmxLinux В этой версии улучшена работа с последними версиями macOS Big Sur и приложениями прошедшими нотаризацию. Кроме того, мы добавили пакеты для Embarcadero RAD Studio 10.4 и внесли общие улучшения. Полный список изменений: Версия 2.8 --------------- + Добавлена поддержка фреймворка FmxLinux framework + Добавлена поддержка Embarcadero RAD Studio 10.4 * Улучшена поддержка новой версии MacOS BigSur * Улучшена симуляция Arial Unicode MS для bold/italic в PDF экспорте - Исправлен экспорт изображений в PDF экспорте под RAD Studio 10.4 - Исправлен доступ к шрифтам в режиме песочницы Mac OS (notarized applications) - Исправлено всплывающие меню в предпросмотре - Исправлены ошибки компиляции пакетов для работы с FireDAC - Исправлен экспорт объекта Checkbox в PDF - Добавлена возможность устанавливать фиксированный размер штрихкода из скрипта - Исправлена ошибка кэширования страниц предпросмотра в файле ### Вышла новая версия МоиОтчеты Облако 2024.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-cloud-2024.1 Summary: С этой версий были добавлены: интеграция с ClickHouse, предпросмотр из WASM, новый сервис уведомлений, массовое удаление файлов. С этой версий были добавлены: интеграция с ClickHouse, предпросмотр из WASM, новый сервис уведомлений, массовое удаление файлов. С этой версией в облачный сервис для генерации и хранения документов были добавлены: интеграция с ClickHouse, интерактивный предпросмотр из WASM, новый сервис уведомлений, массовое удаление файлов, рассылки по электронной почте и многое другое. Интеграция с ClickHouse Добавлено подключение к колоночной базе данных ClickHouse. Перейдите в панель «Данные» и нажмите на кнопку "+". Тем самым у вас откроется меню выбора доступных источников. Подробнее читайте в статье. Сервис уведомлений В МоиОтчеты Облако добавлена возможность получать уведомления о различных событиях: об успешных экспортах документов, создании или удалении файлов и другие. Отображение уведомлений можно настроить на странице «Настройки профиля». В простом варианте это будет выглядеть вот так: В расширенном формате будет выглядеть иначе: Массовое удаление файлов Наша команда оптимизировала работу приложения. Теперь вместо запросов на удаление каждого файла из корзины создаётся 1 единый запрос. Тем самым корзина стала очищаться в несколько раз быстрее. Страница свойств папок Улучшена информация об уже созданных папках. Была добавлена страница свойств с описанием: создателя и владельца папки, размером и местонахождением папки в рабочем пространстве. Расчёт размера папки Добавлено API, которое рассчитывает сколько места занимает содержимое папки (актуально для шаблонов, отчётов и экспортов). На странице свойств папки можно посмотреть её размер. В скобках указан реальный размер, который получится после скачивания папки. Интерактивный предпросмотр Добавлен бета-микросервис для просмотра отчётов в браузере на основе технологии WASM. Он в отличие от текущего статического предпросмотра может работать с интерактивными объектами: картами и раскрывающимися списками. Для его использования нужно заменить в строке браузера слово staticpreview на wasmpreview (/staticpreview/t/6235f34d935bef40aa09e8c3 -> /wasmpreview/t/6235f34d935bef40aa09e8c3) Apikey в staticpreview Добавлена возможность использовать apikey в staticpreview. Таким образом можно давать доступ на предпросмотр только для тех пользователей, у которых есть такой ключ. Ключ передаётся следующим образом: ``` https://облако.моиотчеты.рф/staticpreview/t/6235f34d935bef40aa09e8c3?apikey={ваш ключ} ``` Новый дизайн страницы задач Значительно была переработана система Задач. Пользовательский интерфейс стал более эргономичным и интуитивно понятным для пользователей. Рассылки по электронной почте Добавлена страница настройки рассылок по почте. Теперь можно отправлять письма с шаблонами, отчётами и экспортами. А также один раз настроить рассылку и использовать её в других задачах повторно. Новые хлебные крошки Хлебные крошки на страницах файлов и папок заменены на более компактный вариант. Скачивание папок Добавлена возможность скачивать группы файлов и папок. Для этого нужно выбрать пункт «Скачать» в контекстном меню. При выборе папок или нескольких файлов будет создан общий архив, который автоматически начнёт скачиваться. Новый онлайн дизайнер Онлайн дизайнер отчётов был обновлён до самой последней версии. Подробнее об изменениях внутри дизайнера можно ознакомиться на странице продукта. Хранение VCL шаблонов С релизом 2024.1 было добавлено хранение VCL шаблонов. Теперь можно сохранить в облаке файлы форматов .fp3 и .fr3, а после использовать их в будущих проектах. Полный список изменений --- ### [Backend] + добавлен шрифт Tahoma в worker; + добавлено API, которое создаст папку с указанным именем, если её не существует при запросе; + добавлена сериализация для свойства транспорта у задач экспорта; + добавлен кэш для превью; + добавлена локализация проверки скриптов; + добавлен парсер для ReportInfo шаблонов VCL; + добавлено подключение к базе данных ClickHouse; + добавлен метод валидации для транспортов и экспортов; + добавлен способ получения уведомлений из аудита; + добавлено массовое удаление файлов; + добавлено API для расчёта, сколько места занимает содержимое папки; + добавлена проверка и решение проблемы, когда у файлов не было GridFS чанков; + добавлены отсутствующие логи "Доступ запрещён" для задач; * обновлён скрипт инсталляции; * обновлено поведение, при котором копии файлов больше не будут создаваться с такими же правами, как у оригинала; * локализованы ошибки FastReport .NET; * обновлён пакет FastReport до версии со SkiaSharp; * произведён рефакторинг обновления задач; * улучшено обновление транспортов у задач трансфера; * улучшена логика обновления задач, теперь процесс происходит в View Model; * переименован TaskUpdateType в EnumerablePatchType; * объединены некоторые схожие методы получения, удалён лишний код, скорректирован нейминг; * улучшен GET запрос одной папки, теперь вернётся рассчитанный размер её содержимого; * рефакторинг View Models; * сконвертированы идентификаторы подписки и сущности в аудитах ObjectId; * удалено поле Count из аудитов из-за проблем с производительностью; * улучшен запрос получения статистики по аудитам; * добавлен новый конфигурационный файл для онлайн дизайнера; * перемещены все View Models в другую директорию - исправлены записи при создании в аудит; - исправлена проверка прав на группы с null правами; - исправлено отображение сообщения об ошибке в онлайн дизайнере; - исправлена проверка подключения при создании или редактировании источника данных; - исправлена ошибка с избыточным аудитом при экспорте; - исправлено создание логгеров с неправильными контекстами; - исправлена ошибка, когда неправильное значение даты в создании или обновлении подписки приводило к ошибке 500; - исправлена ошибка, из-за которого папка «.preview» создавалась для каждого предпросмотра; - исправлены многочисленные проблемы сериализации; - исправлена нехватка traceId в логах бэкенда; - исправлена ошибка наименования для генерации SDK; - исправлена ошибка, из-за которой параметры отчёта ломали экспорт; - исправлено дублирование имён файлов при экспортах; - исправлена ошибка работы кодировки win1251 в FireBird подключении; - исправлен UpdateTaskTest; - исправлены транспорты в задачах-преобразователях; - исправлена сериализация задач и аудитов; - исправлена ошибка с диалогами отчёта при построении; - исправлены отсутствующие связанные аудиты; - исправлен тип возвращаемой View Model в InternalDesignerController; - исправлена подготовка тэга AMP для считывания в XML; - исправлена ошибка отображение переноса строки и пробела в дизайнере; - исправлены возвращаемые View Model при экспорте папок; - исправлен ошибка, когда messageId экспорта мог быть null; ### [Frontend] + добавлены иконки для источников данных; + добавлена кнопка предпросмотра на страницу свойств файла; + добавлена поддержка примесей в онлайн дизайнере; + добавлена сортировка по странице пользователей; + добавлено время создания на странице пользователей; + добавлено сообщение, означающее, что папка успешно экспортирована; + добавлен идентификатор рабочего пространства на страницы информации о файлах в панели администратора; + добавлена локализация для шапок диалогов выбора файлов и папок; + добавлено поле TemplateId на страницу экспорта в панели администратора; + добавлен бета-микросервис для просмотра отчётов в браузере на технологии WASM; + добавлено поле Deleted на страницы файлов в панели администратора; + добавлена переадресация на страницу выхода из сервера аутентификации после выхода из приложения; + добавлена страница свойств для папок; + добавлен новый переключатель для удалённых файлов в админ панели; + добавлена возможность перейти к выбранному рабочему пространству из карточки пользователя; + добавлены новые иконки в онлайн дизайнере; + добавлен поиск по странице источников данных в панели администратора; + добавлена возможность использовать API Key в staticpreview; + добавлены индикаторы загрузки для страниц в панели администратора; + добавлена сортировка на странице источников данных в панели администратора; + добавлена блокировка кнопки загрузки после нажатия на неё; + добавлено сообщение об ошибке, если обновление источника данных не удалось; + добавлено поведение, при котором на страницах файлов админ панели нажатая кнопка ToBin сменится на Restore и наоборот; + добавлена красная окраска даты истечения, когда API ключ уже просрочен; * локализована надпись "just now" и другой текст во всплывающих сообщениях; * обновлены Blazor компоненты, теперь у них есть уникальные html классы для будущих тестов; * скрыта история свойств файла, если история пуста или недостаточно прав для её просмотра; * обновлена информация о лимитах на странице «о рабочем пространстве», реализовано более аккуратное округление чисел; * включено обрезание технологии WASM; * обновлён Blazorise в панели администратора, исправлена страница создания плана подписки; * заменены кастомные чекбоксы на вариацию из Blazorise на странице редактирования плана подписки в админ панели; * изменено поведение для удаления на странице файла; * изменён дизайн страницы задач; * изменена кнопка добавить параметр в задачах; * рефакторинг панели администратора; * заменены на более компактный вариант хлебные крошки на страницах файлов и папок; * улучшен редирект на специальную страницу, когда подписка просрочена; - исправлено выравнивание текста на страницах сервиса; - исправлена ошибка, когда диалог удаления отображался без выбранных файлов; - исправлена ошибка, из-за которой нельзя было удалить файл если вместе с ним удалялся файл без прав на удаление; - исправлена ошибка, из-за которой создавалось несколько источников данных во время проверки состояния источника; - исправлен редирект при входе в сервис; - исправлены кривые карточки подписок в админ панели; - исправлена ошибка, при которой было невозможно переместить или скопировать файл в другую подписку через frontend; - исправлена ошибка, когда поиск в аудитах приводил к ошибке 404; - исправлена ошибка 404 при переключении рабочего пространства на страницах файлов в админ панели; - исправлены шапки окон диалогов выбора; - исправлен диалог выбора типа экспорта в задачах; - исправлено поведение средний кнопки мыши, теперь нажатие на боковую панель админки открывает новые вкладки; - исправлена ошибка с отображением идентификатора шаблона на страницах экспорта; - исправлена ошибка нового dotent SDK, исправлена разметка экрана загрузки экспорта; - исправлены frontend ошибки при подключении к ClickHouse; - исправлено кривое отображение данных на страницах файлов и источников данных; - исправлен невидимый календарь в аудитах; - исправлена ошибка, когда значение из URL не попадало в строку поиска на странице рабочих пространств в админ панели; - исправлены чекбоксы на странице обновления плана в админ панели; - исправлено положение панели управления в превью; - исправлены графики дэшбордов (двойные графики, отсутствие цветов, сломанный URL параметр); - исправлена инициализация дэшбордов; - исправлена ошибка, когда длинный текст ломал шапку диалогов выбора; ### [Demos] - исправлена ошибка при редактировании прав групп; - исправлено Java SDK и демо; ### [Common] + добавлена HomePageLink в файл конфигурации; + добавлено автоматическое обновление онлайн дизайнера; + добавлены поля Old и New Value на страницу «Детали аудита»; + добавлено хранение VCL шаблонов; + добавлен сканер критических изменений API на стадии сборки; + добавлено генерирование документации в формате PDF; + добавлена новая глава документации; + добавлена документация «Как обновить транспорты в задачах-преобразователях и адреса электронных почт в задачах с электронными почтами»; + добавлено хранение .fp3 файлов; + добавлен сервис предпросмотра на JS; + добавлены сообщения об ошибках для источников данных; + добавлена ссылка на продление подписки; + добавлено скачивание папок; + добавлен текущий год в лицензии для SDK; + добавлена кнопка, по которой можно перейти к аудитам из workspace; + добавлен тест, проверяющий избежание коллизии имен папок; + добавлены конфиги для источников данных содержащие в себе настройку таймаута; + добавлены токены отмены в панели пользователя для методов, которые обращаются к API; + добавлены токены отмены операции для методов, которые взаимодействуют с API; + добавлена настройка прав предпросмотра на страницу свойств файла; + добавлены ссылки на объекты в аудитах; + добавлен редирект на домашнюю страницу при нажатии на лого в шапке; + добавлена возможность сортировки подписок по CreatedTime, SubscriptionPeriodVM.StartTime, SubscriptionPeriodVM.EndTime, Name, Locale, Plan в прямом и обратном порядке; + добавлено обрезание имени папок; * перенесена загрузка файлов (документация, файлы установки) на новый сервер; * обновление проекта до .NET 6.0; * обновлена версия Open API Tool; * обновлена строка поиска на страницах файлов в панели администратора; * обновлены cake скрипты до версии .NET 6.0; * удалено событие onclick, которое перезагружает страницу * обновлена версия FastReport .NET до 2023.2 - исправлено отображение TraceId в логах; - исправлены поля «Старое» и «Новое» значение в аудитах действий с файлами; - исправлена сборка микросервиса wasm-preview; - исправлена ошибка, из-за которой онлайн дизайнер не мог загрузиться; - исправлена версия библиотеки предпросмотра в WASM; - исправлены ошибки в проверке прав в источниках данных и Задачах; - исправлено пустое поле поиска при существующем параметре в URL для секции пользователей в панели администратора; - исправлена ошибка неправильного рута экспорта отчета; - исправлено изменение стандартной подписки на текущую при смене рабочих пространств; - исправлены избыточные страницы пагинатора, при условии когда используется поиск на странице рабочих пространств панели администратора; - исправлена архивация картинки при экспорте отчета в формат изображения без включенной настройки "создания отдельных файлов для каждой страницы"; - исправлено некорректное позиционирование контекстного меню при попытке открыть его в маленьком окне; - исправлены консольные ошибки при нажатии кнопок, в логике которых есть JSRuntime, и ошибки о null референсах при нажатии кнопки "Свойства" контекстного меню; - исправлены нерабочие хлебные крошки в аудитах. ### Вышла первая версия FastCube! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/first-release-fastcube-vcl Summary: Вышла первая версия FastCube! Вышла первая версия FastCube! В соответствии с высокими требованиями пользователей к продуктам Fast Reports наша компания выпускает набор Delphi-компонентов для OLAP-анализа FastCube.  Отличительные особенности FastCube:  высокая скорость обработки информации, достугнутая благодаря традиционной для Fast Reports оптимизации и собственному формату хранения данных в памяти высокая гибкость в обработке информации в силу полной совместимости и возможностей использования скриптового языка FastScript - подключайте любые сколь угодно сложные механизмы аналитики! полная интеграция с FastReport - вы можете сразу же отправить полученный срез OLAP-куба в FastReport или же, наоборот, вызвать из FastReport OLAP-куб для настройки необходимых вам данных! И, самое главное! Только для наших уже зарегистрированных русскоязычных пользователей беспрецедентная скидка в 50% на любую редакцию FastCube! ### Генератор отчетов на базе Avalonia UI: FastReport Avalonia URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/announcement-fastreport-avalonia Summary: Анонсируем новый генератор отчетов на базе Avalonia UI для кроссплатформенной разработки в системах Linux, macOS и Windows. Анонсируем новый генератор отчетов на базе Avalonia UI для кроссплатформенной разработки в системах Linux, macOS и Windows. Уже этой весной мы представим мощную библиотеку с единым пользовательским интерфейсом, которая позволит встраивать генератор отчетов в приложения для Linux, macOS и Windows с помощью  Avalonia UI . Avalonia UI – это фреймворк основанный на .NET, активно используемый для разработки кроссплатформенных пользовательских интерфейсов. С помощью универсального API для построения приложений Avalonia поддерживает все основные платформы и среды исполнения и имеет свой уникальный интерфейс. Тем самым ваши бизнес-решения будет идентично выглядеть в каждой операционной системе. FastReport Avalonia включает в себя мощное ядро обработки данных, уже привычный дизайнер отчетов и вьювер для готовых отчетов. Также в новом продукте доступны все форматы экспорта построенного отчета – PDF, Excel, MS Word и многие другие.  Библиотека полностью обратно совместима с FastReport WPF , FastReport .NET , FastReport Mono . Поддерживает Avalonia UI, .NET 7 и .NET 8. И еще до официального релиза мы приглашаем вас попробовать ее возможности в бесплатной демо-версии!  Узнайте больше о FastReport Avalonia и попробуйте бесплатную демо-версию прямо сейчас.  Скачать демо для Windows Скачать демо для Linux Скачать демо для macOS ### Генератор отчётов с визуальным дизайнером в Visual Studio Express Edition URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/report-generator-visual-designer Visual Studio Express Edition от Microsoft - невероятно популярная среда разработки. В том числе, благодаря своей бесплатности. Однако, как у всего бесплатного, есть у этой редакции определённые недостатки. В частности - сложности с использованием дополнительных сторонних компонентов. К примеру, очень многие популярные компонент-паки для .net, в которые входят, помимо всего прочего, какие-никакие, но генераторы отчётов, зачастую используют саму среду разработки Visual Studio (полностью или частично) в качестве визуальной среды разработки отчётов. И в Express Edition такой подход не проходит в силу невозможности такой интеграции. Подход FastReport.Net отличается - тут есть собственный полностью автономный дизайнер отчётов, который может быть вызван, в том числе, из приложения начиная с Winforms Edition (то есть среда разработки Visual Studio для визуальной разработки отчётов не нужна). Итак - устанавливаем FastReport.Net в Visual Studio Express Edition: 1. Создадим новый проект в Студии. 2. Кликаем правой кнопкой мыши где-нибудь на пустом месте в Toolbox. 3. Выбираем в контестном меню Add tab. 4. Называем как-нибудь новую вкладку, например FastReports Components. 5. Правый клик на пустом месте в новой вкладке. 6. Выбираем в контесктном меню Choose Items... 7. Нажимаем кнопку Browse... Находим и указываем FastReport.dll. Он лежит в корневой папке FastReport .NET. 8. Компоненты появятся на вкладке .NET Framework Components. Их можно отсортировать по Namespace. Все компоненты FastReport .NET лежат в namespace FastReport. Отметить нужные компоненты галочкой и нажать ок. Запускаем дизайнер отчётов из кода. Пример на C#: Report report = new Report(); report.Design(); Вуаля! Tags: .NET, Visual Studio, Express Edition, FastReport, .NET, Visual Studio, Express Edition, FastReport ### Генерация веб-отчётов в Mono URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/generating-web-reports-mono-net Summary: Существует возможность исполнения веб-приложений ASP.NET под управлением веб-сервера Apache в операционных системах Linux, Unix, FreeBSD, Windows и других. Необходимо установить среду исполнения Mono и веб-сервер Apache Существует возможность исполнения веб-приложений ASP.NET под управлением веб-сервера Apache в операционных системах Linux, Unix, FreeBSD, Windows и других. Необходимо установить среду исполнения Mono и веб-сервер Apache Существует возможность исполнения веб-приложений ASP.NET под управлением веб-сервера Apache в операционных системах Linux, Unix, FreeBSD, Windows и других. Для этого Вам необходимо установить среду исполнения Mono, непосредственно сам веб-сервер Apache Существует возможность исполнения веб-приложений ASP.NET под управлением веб-сервера Apache в операционных системах Linux, Unix, FreeBSD, Windows и других. Для этого Вам необходимо установить среду исполнения Mono, непосредственно сам веб-сервер Apache, дополнительный модуль mod_mono и xsp сервер (обеспечивает выполнение ASP.NET-страниц). Все, что касается Mono можно установить из пакетов операционной системы или скачать и установить с официального сайта проекта http://www.mono-project.com/download/ После установки mod_mono и XSP необходимо отредактировать файлы конфигурации сервера Apache. Найдите место, куда был установлен файл mod_mono.conf – как правило, это папка /etc/apache2 . Откройте файл httpd.conf и добавьте туда строку: Include /etc/apache2/mod_mono.conf Затем необходимо перезапустить веб-сервер. Для проверки работоспособности модуля mod_mono, можно скопировать содержимое папки /usr/lib/xsp/test в папку вашего сайта. Для ускорения работы приложений ASP.NET под управлением mod_mono разработчики рекомендуют отключить KeepAlive в файле httpd.conf : KeepAlive Off Если отключение данного параметра нежелательно, то нужно хотя бы снизить значение KeepAliveTimeout: KeepAliveTimeout 2 Подробнее о конфигурации mod_mono можно прочесть на сайте разработчика http://www.mono-project.com/Mod_mono / FastReport.Mono также поддерживает работу под mod_mono начиная с версии 1.0.11 . Для использования FastReport.Mono под управлением mod_mono, достаточно положить файл FastReport.Web.dll в папку проекта bin совместно с файлом FastReport.Mono.dll . Пример ASP.NET приложения, работающего под управлением mod_mono можно посмотреть в папке Demos/C#/Web . Ссылка на страницу загрузки FastReport.Mono Tags: ASP.NET, FastReport, Mono, .NET ### Генерация документации при помощи Fast Report.VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/generating-documentation-vcl Вероятно, зашедший сюда читатель уже слышал о необычном применении генераторов отчёта - использование генератора отчётов для описания протоколов. Эта статья является наглядным примером использования генератора отчётов для подготовки документации. Пример сформированного PDF файла: "Спецификация в формате PDF" . Исходный код отчёта: "Шаблон отчёта, на основе которого формируется документ" . База данных отчёта: "База данных, содержащая описание протоколов" . Для формирования документа необходимо открыть отчёт в дизайнере и отредактировать путь к базе данных: Пример просмотра одной из страниц документа: Иногда возникает необходимость опубликовать документацию в Сети. Один из простых способов размещения документов - в виде картинке. Не верите? Здесь можно посмотреть пример экспорта документа в графические файлы: Фотоальбом, созданный генератором отчёта. Tags: VCL, FastReport, VCL, FastReport ### Генерация отчетов в SAP NetWeaver при помощи FastReport .NET – Часть 2 - печать выходных форм URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/generating-reports-sap-net-2 Summary: Продолжаем генерировать отчёты в SAP NetWeaver при помощи FastReport .NET, подробная инструкция по разработке печатных форм. Продолжаем генерировать отчёты в SAP NetWeaver при помощи FastReport .NET, подробная инструкция по разработке печатных форм. Продолжаем генерировать отчёты в SAP NetWeaver при помощи FastReport .NET, подробная инструкция по разработке печатных форм. Первая часть статьи Задача: Разработать печатную форму заказа на поставку и присвоить ее виду документа “NB Стандартный заказ”. Пример готового отчета: Подготовка словаря данных. Для печати ЗнП необходимо создать несколько структуру в АБАП словаре. Эти структуру будут использованы в источнике данных для отчета. Запустите транзакцию SE11. Создайте и активируйте следующие объекты: Структура ZZPO_ITEM_S Тип таблицы  ZZPO_ITEM_TT Структура  ZZPO_PARTNER_S Структура  ZZPO_DOC_S Тип таблицы  ZZPO_DOC_TT Подготовка шаблона Запустить транзакцию ZFR_RMAN. Нажать на кнопку “New” и добавить новый отчет “ZPO_FR” с параметрами, как указано на скриншоте ниже. Сохранить отчет. После сохранения перейти в режим редактирования и нажать на кнопку “Designer”. Система запросит тип таблицы для источника данных. Укажите  ZPO_DOC_TT. После этого отобразиться дизайнер отчетов. Конфигурация бендов. Меню:Отчет->Настройка бендов. Настройте (добавьте\удалите) бенды как представлено на скриншоте Нажмите на кнопку “Close”. Двойным нажатием нажмите на первый “Data” бэнд  и выберите “ITEMS” в качестве источника данных. Нажмите на вложенных“Data” бэнд и выберите “SCHD” в качестве источника данных. Расположение элементов отчета. Растяните бэнд “Report Title”, поместите текстовые элементы из панели элементов  и впишите в них статические тексты. Перетяните поля из источника данных “MYDATASET”  на заголовок отчета. Измените  бэнд“Page header”для отображения заголовка колонок позиций заказа( добавить статические текстовые элементы ).    Измените бэнд “Data: ITEMS” –разместите в него поля из источника данных “ITEMS” Измените бэнд “Data: SCHD” –разместите в него поля из источника данных “ SCHD ” . На бэнд “Footer” поместите поля из источника данных “ITEMS” ([ITEMS.MENGE] и [ITEMS.MEINS]).       Готовый шаблон: Если нажать на кнопку “preview ”, то отобразиться практически пустой отчет. Это происходит из-за того, что не указаны тестовые данные для отчета.  Далее будет продемонстрировано, как сгенерировать тестовые данные. Сохраните изменения  шаблона (нажмите на стандартную кнопку сохранения) и выйдите из дизайнера. Теперь нажмите “Save” чтобы сохранить параметры отчета (в том числе и шаблон)  в базу данных. Разработка программы печати и выполнение настроек Нам необходимо разработать программу\подпрограмму для возможности вызова печати из выходных документов заказа на поставку. В ABAP Workbench создайте пул модулей ZZMM_FRPRINTING. Добавьте подпрограмму “po_print_fr” со следующим кодом: ``` *&---------------------------------------------------------------------* *& Module Pool ZZMM_FRPRINTING *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------*   PROGRAM zzmm_frprinting. TABLES: nast.   *&---------------------------------------------------------------------* *& Form po_print_fr *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * -->ENT_RETCO text * -->ENT_SCREEN text *----------------------------------------------------------------------* FORMpo_print_fr USING ent_retco ent_screen.   DATA: lv_druvo LIKE t166k-druvo, ls_nast LIKE nast, lv_from_memory, ls_doc TYPE meein_purchase_doc_print, lt_ret TYPE bapiret2_t.   DATA lo_fr TYPE REF TO zcl_frbase_report.   DATA: ls_order TYPE zzpo_doc_s, lt_order TYPE zzpo_doc_tt, ls_item TYPE zzpo_item_s, ls_schd TYPE eket.   FIELD-SYMBOLS: TYPE ekpo, TYPE eket.   CLEARent_retco.   IF nast-aende EQ space. lv_druvo = '1'. ELSE. lv_druvo = '2'. ENDIF.   CALL FUNCTION 'ME_READ_PO_FOR_PRINTING' EXPORTING ix_nast = nast ix_screen = ent_screen IMPORTING ex_retco = ent_retco ex_nast = ls_nast doc = ls_doc CHANGING cx_druvo = lv_druvo cx_from_memory = lv_from_memory.   CHECK ent_retco EQ 0.   MOVE-CORRESPONDING ls_doc-xekko TO ls_order.   SELECT SINGLE * INTO CORRESPONDING FIELDS OF ls_order-provdata FROM lfa1 WHERE lifnr = ls_order-lifnr.   LOOP AT ls_doc-xekpo ASSIGNING .   CLEAR ls_item. MOVE-CORRESPONDING TO ls_item.   LOOP AT ls_doc-xeket ASSIGNING . CLEAR ls_schd. CHECK -ebelp = ls_item-ebelp. MOVE-CORRESPONDING TO ls_schd. APPEND ls_schd TO ls_item-schd. ENDLOOP.   APPEND ls_item TO ls_order-items.   ENDLOOP.   APPEND ls_order TO lt_order.   CREATE OBJECT lo_fr EXPORTING iv_reportkey = 'ZPO_FR'.   " use for production ent_retco = lo_fr->build_report( lt_order ).   ********************************************************************** **use for debugging\template correction " DATA: lv_answer.   " lo_fr->set_mode( zcl_frbase_report=>mc_edit ). " lo_fr->call_designer( lt_order ). " CALL FUNCTION 'POPUP_TO_CONFIRM' " EXPORTING " text_question = 'update report template in DB?' " IMPORTING " answer = lv_answer. " if lv_answer eq '1'. " lo_fr->save_report( ). " ENDIF. **********************************************************************     ENDFORM. "po_print_fr ``` В коде производится вызов функции по получению данных ЗнП, маппинг данных на структуры данных и вызов метода ZCL_FRBASE_REPORT->BUILD_REPORT для генерации отчета. В случае, если необходимо отладить отчет с тестовыми данными, то необходимо закомментировать вызов метода “BUILD_REPORT”  и раскомментировать секцию программы ниже.  Настройки Вызовите транзакцию NACE  и добавьте новых вид выходного документа ZZFR для ЗнП. В качестве программы печати выберите ZZMM_FRPRINTING и подпрограмму PO_PRINT_FR. Укажите последовательность доступа 0001. Новый вид выходного документа добавьте в схему выходных документов (например в  RMBEF1) Создайте запись условия для ZZFR и вида ЗнП “NB”.  Откройте следующий путь настроек: SPRO->Material Management->Purchasing->Messages->Output control->Message types->Define message types for Purchase order-> Fine-Tuned Control: Purchase Order. Добавьте следующие записи для  ZZFR Теперь можно открыть на редактирование существующий ЗнП или создать новый и вызвать функцию печати. Альтернативно можно вызвать печать заказа через транзакцию ME9F. Tags: .NET, FastReport, Печать ### Год подписки на МоиОтчеты Облако — всего за полцены до 30 июня! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/oblako-skidka-2025 Summary: Год подписки на облачный сервис для хранения, редактирования и управления отчетами "МоиОтчеты Облако" — всего за полцены до 30 июня! Год подписки на облачный сервис для хранения, редактирования и управления отчетами "МоиОтчеты Облако" — всего за полцены до 30 июня! МоиОтчеты Облако — это облачный сервис для хранения, редактирования и управления отчетами и документами. Испытайте все преимущества SaaS с экономией 50%: Создавайте отчеты в облаке — без нагрузки на ваш компьютер, из любой точки мира Встроенный удобный дизайнер отчетов Автоматизация процессов и запуск по расписанию Совместная работа с гибкой настройкой прав доступа Безопасность: защищенный вход и цифровая подпись Функционал FastReport: подключение к разным источникам данных, экспорт в популярные форматы и доставка отчетов удобным способом Гибкие тарифы — найдите оптимальный именно для вас До 30 июня оплачиваете 6 месяцев — получаете подписку на 12!  ### Графики и диаграммы в FastReport.Mono URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/charts-fastreport-mono В продукте FastReport.Mono диаграммы и графики отключены из соображений лицензионной чистоты. Однако, если вы используете платформу Майкрософт и обладаете лицензией FastReport, то существует возможность влючить построения графиков и диаграмм в отчётах. Для задействования возможности построения графиков необходимо выполнить следующие шаги: Добавить в проект ссылку на внешнюю библиотеку System.Windows.Forms.DataVisualization.dll Добавить к проекту файлы с исходным кодом из папки FastReport.Mono/Chart Задействуйте чарты в файле FastReport.Mono/AssemblyInitializer.cs  Активируйте компонент в файле FastReport.Mono/Design/ImportPlugins/ComponentsFactory.cs Пример регистрации компонента --- FastReport.Mono/AssemblyInitializer.cs (revision 102) +++ FastReport.Mono/AssemblyInitializer.cs (working copy) @@ -22,6 +22,7 @@ using FastReport.Design; using FastReport.Functions; using FastReport.Export.OoXML; +using FastReport.MSChart; namespace FastReport { @@ -126,6 +127,8 @@ RegisteredObjects.Add(typeof(ShapeObject), "ReportPage,Shapes", 131, "Objects,Shapes,Diamond", 4); RegisteredObjects.Add(typeof(SubreportObject), "ReportPage", 104); #if! Basic + RegisteredObjects.Add(typeof(MSChartObject), "ReportPage", 125); + RegisteredObjects.Add(typeof(MSChartSeries), "", 130); RegisteredObjects.Add(typeof(TableObject), "ReportPage", 127); RegisteredObjects.Add(typeof(TableColumn), "", 215); RegisteredObjects.Add(typeof(TableRow), "", 216); Пример активации компонента --- FastReport.Mono/Design/ImportPlugins/ComponentsFactory.cs (revision 102) +++ FastReport.Mono/Design/ImportPlugins/ComponentsFactory.cs (working copy) @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.Text; -//using FastReport.MSChart; +using FastReport.MSChart; using FastReport.Table; using FastReport.Matrix; @@ -169,13 +169,13 @@ // /// The name of the MSChartObject instance. // /// The parent of the MSChartObject instance. // /// The MSChartObject instance. -// public static MSChartObject CreateMSChartObject(string name, Base parent) -// { -// MSChartObject chart = new MSChartObject(); -// chart.Name = name; -// chart.Parent = parent; -// return chart; -// } + public static MSChartObject CreateMSChartObject(string name, Base parent) + { + MSChartObject chart = new MSChartObject(); + chart.Name = name; + chart.Parent = parent; + return chart; + } Затем следует пересобрать проект, чтобы изменения вступили в силу. Ниже показан шаблон отчёта с чартами Файл шаблона отчёта с чартами ```   ``` Tags: Mono, FastReport, Mono, FastReport ### Группы новостей URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/newsgroups-2004 Summary: Группы новостей Группы новостей Представляем группы новостей для технической поддержки наших пользователей. fast-reports.ru.public.fastreport.vcl  - Технические вопросы по FastReport2.x VCL. fast-reports.ru.public.fastreport.clx  - Технические вопросы по FastReport CLX. fast-reports.ru.public.fastreport.3  - Технические вопросы по FastReport3.x. fast-reports.ru.public.fastreport.net  - Технические вопросы по FastReport.NET. fast-reports.ru.public.fastscript  - Технические вопросы по FastScript. fast-reports.ru.public.freereport  - Технические вопросы по FreeReport. fast-reports.ru.public.fastexperts  - Технические вопросы по FastExperts. fast-reports.ru.public.openquerybuilder  - Технические вопросы по OpenQueryBuilder. fast-reports.ru.public.non-technical  - Нетехнические вопросы по продуктам Fast Reports, Inc. fast-reports.ru.public.binaries  - Для отсылки прикрепляемых исходников, скриншотов, поясняющих суть проблемы. Это русскоязычные группы новостей. Смотрите список англоязычных групп на английской версии сайта. ### Губернатор обозначил перспективы развития IT-отрасли в Ростовской области URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/gubernator-it-kompanii-2025 Summary: 19 мая 2025 года глава ростовской области Юрий Слюсарь встретился с представителями региональных IТ-компаний и вузов, где обучают специалистов инженерных профессий. 19 мая 2025 года глава ростовской области Юрий Слюсарь встретился с представителями региональных IТ-компаний и вузов, где обучают специалистов инженерных профессий. 19 мая 2025 года глава региона Юрий Слюсарь встретился с представителями региональных IТ-компаний и вузов, где обучают специалистов инженерных профессий. На ней обсуждались предложения по развитию ИT-отрасли. Генеральный директор компании ООО "Быстрые отчеты" - Алла Шлюпкина также приняла участие в обсуждении. Ростовская область может стать крупным центром ИT-отрасли, считают участники встречи. Для этого предложено реализовать ряд идей.  Юрий Слюсарь назвал актуальным предложение усилить профориентационную работу среди школьников, а также отметил, что решать задачи развития ИТ-отрасли Дона помогут федеральные проекты, различные программы, в том числе нацпроект «Экономика данных». Подробности о встрече смотрите в этом видео. ### Данные могут быть очень страшными.. URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/Halloween-FastReport-BusinessGraphics Summary: Новая демоверсия FastReport Business Graphics в тематике Хэллоуина. Новая демоверсия FastReport Business Graphics в тематике Хэллоуина. Они объемные или пылятся в недрах БД? Нечитабельны, а значит - неинформативны. Просто ужас! Чтобы вам было не страшно, мы создали инструмент наглядной визуализации данных и украсили его в праздничные цвета. Скорее попробуй нашу Хэллоуинскую версию! Посмотрите на примеры визуализации данных по Хэллоуину в тематическом оформлении:  ### Деинсталляция URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/how-to-uninstall Summary: Откройте программы и компоненты, нажав на кнопку "Пуск" Изображение кнопки "Пуск" Откройте программы и компоненты, нажав на кнопку "Пуск" Изображение кнопки "Пуск" Для удаления программ Открыть Programs and Features нажатием на кнопку Старт. Выбрать папку FastReport, и кликнуть Uninstall. Для удаления понадобятся административные права. ### Делаем PDF документы на Raspberry PI с .NET Core URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/creating-pdf-on-raspberry-pi Summary: Очень радует возможность исполнения .NET Core приложений на платформах ARM32 / ARM64. Производители серверов уже начали продажи аппаратных платформ на ARM процессорах. Ну а сейчас у нас есть возможность потренироваться на Raspberry PI с заделом на сервера. Очень радует возможность исполнения .NET Core приложений на платформах ARM32 / ARM64. Производители серверов уже начали продажи аппаратных платформ на ARM процессорах. Ну а сейчас у нас есть возможность потренироваться на Raspberry PI с заделом на сервера. Очень радует возможность исполнения .NET Core приложений на платформах ARM32 / ARM64. Производители серверов уже начали продажи аппаратных платформ на ARM процессорах. Ну а сейчас у нас есть возможность потренироваться на Raspberry PI с заделом на сервера. Raspberry PI - миниатюрный одноплатный компьютер, работающий на процессоре ARM. Этот микрокомпьютер часто используется в качестве учебной платформы, в разработках встроенных решений, а также в качестве простой рабочей станции при подключении к нему монитора и клавиатуры. Для экспериментов используем плату Raspberry PI 3B c 1ГБ оперативной памяти и установленной операционной системой Linux Raspbian Buster with desktop. Я опущу процесс установки и настройки системы - будем считать, что у вас уже всё установлено и работает. Несмотря на его крохотные размеры, мы имеем дело с полноценным компьютером со взрослыми возможностями. Попробуем установить на него фреймворк .NET Core и написать простое приложение на языке C#, которое будет формировать PDF документ. Для начала нам нужно подключиться к плате через SSH или открыть приложение терминала на десктопе, если вы подключили плату к монитору и клавиатуре. Само собой, плата должна быть подключена к сети Internet для установки необходимых нам компонентов. Операционная система Raspbian поддерживает выполнение .NET Core приложений для архитектуры ARM32. Ссылку на соответствующий файл можно найти на сайте .NET Core . Выполняем команды для скачивания и распаковки архива в терминале: ``` $ sudo wget https://download.visualstudio.microsoft.com/download/pr/f2e1cb4a-0c70-49b6-871c-ebdea5ebf09d/acb1ea0c0dbaface9e19796083fe1a6b/dotnet-sdk-3.1.300-linux-arm.tar.gz $ mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-3.1.300-linux-arm.tar.gz -C $HOME/dotnet ``` Затем добавляем путь к папке с .NET Core в переменную окружения PATH, а также создаем переменную DOTNET_ROOT: ``` $ export DOTNET_ROOT=$HOME/dotnet $ export PATH=$PATH:$HOME/dotnet ``` Эти строки лучше всего добавить в конфигурационный файл профайла пользователя: ~/.bash_profile, ~/.bashrc, ~/.kshrc, ~/.profile, ~/.zshrc, ~/.zprofile, чтобы их не вводить после каждого логина. Правильность установки .NET Core SDK можно проверить следующей командой: ``` $ dotnet --info .NET Core SDK (reflecting any global.json): Version: 3.1.300 Commit: b2475c1295   Runtime Environment: OS Name: raspbian OS Version: 10 OS Platform: Linux RID: linux-arm Base Path: /home/pi/dotnet/sdk/3.1.300/   Host (useful for support): Version: 3.1.4 Commit: 0c2e69caa6   .NET Core SDKs installed: 3.1.300 [/home/pi/dotnet/sdk]   .NET Core runtimes installed: Microsoft.AspNetCore.App 3.1.4 [/home/pi/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 3.1.4 [/home/pi/dotnet/shared/Microsoft.NETCore.App]   To install additional .NET Core runtimes or SDKs: https://aka.ms/dotnet-download ``` Для дальнейшей работы нужно установить недостающие пакеты (все остальные уже установлены в составе с Linux Raspbian Buster with desktop): ``` $ sudo apt-get install libgdiplus $ sudo wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb $ sudo apt-get install -y ttf-mscorefonts-installer_3.6_all.deb ``` Мы установили набор шрифтов, который поставляется в системе Windows, поэтому приложения будут выглядеть похоже и в Windows и в Linux. Теперь можно приступать к созданию нашего приложения. Для этого выполним команду: ``` $ dotnet new console -o testpdf ``` В папке testpdf будет создана заготовка консольного приложения с файлами testpdf.csproj и Program.cs. Заменим содержимое файла testpdf.csproj: ``` Exe netcoreapp3.1     ``` В файле содержатся ссылки на Nuget пакеты FastReport.Core и FastReport.Compat. Они будут скачаны в процессе сборки программы и помещены в папку ~/.nuget/packages. Содержимое файла Program.cs заменим на следующий код: ``` using System; using FastReport; using FastReport.Export.Pdf; using FastReport.Utils;   namespace testpdf { class Program { static void Main() { Console.WriteLine("Test FastReport Core"); // create report object using Report report = new Report(); // create page using ReportPage page = new ReportPage(); // add page in report report.Pages.Add(page); // create band page.ReportTitle = new ReportTitleBand() { Height = Units.Centimeters * 10 }; // create text object placed on band using TextObject text = new TextObject() { Left = Units.Centimeters * 7, Top = Units.Centimeters * 5, Font = new System.Drawing.Font("Arial", 24), CanGrow = true, AutoWidth = true, Text = "Hello Raspberry!", Parent = page.ReportTitle };   // make the document report.Prepare(); // save the document as PDF file using PDFExport pdf = new PDFExport(); report.Export(pdf, "file.pdf"); } } } ``` Программа создает экземпляр отчёта, добавляет в него страницу, а на неё бэнд. Затем создается текстовый объект по координатам Left и Top. Свойства CanGrow и AutoWidth позволяют объекту автоматически рассчитать высоту и ширину в зависимости от размера текста. Свойство Parent указывает на принадлежность нужному бэнду. Создание объектов в коде программы не единственный способ формирования документов. Можно использовать поставляющийся в комплекте с FastReport .NET редактор шаблонов Designer.exe. Сформированный с его помощью файл с расширением *.frx можно затем загрузить с помощью метода Report.Load. В XML шаблоне можно указать привязки к данным пользователя, переменные, использовать встроенные и пользовательские функции. Подробнее о возможностях FastReport .NET можно узнать на официальном сайте. После формирования документа он сохраняется в файл PDF. Все объекты использованные в программе содержат множество свойств, которые влияют на их поведение в документе. Подробнее с ними можно ознакомиться в документации к продукту FastReport .NET. Запускаем программу командой: ``` $ dotnet run ``` Если всё сделано правильно и все нужные пакеты установлены, мы получим файл file.pdf. В противном случае нужно прочесть текст выданных ошибок и устранить их. Полученный PDF файл полностью соответствует стандарту, содержит текст и внедренный шрифт. Текст можно выделить и скопировать в другой документ. В верхнем левом углу страницы присутствует текст означающий, что мы использовали демо-версию FastReport .NET Core. Максимальное количество страниц в демо-версии ограничено пятью. Коммерческая версия FastReport .NET не содержит этих ограничений, её можно приобрести на сайте Fast Reports . Существует способ получить аналогичный PDF файл без надписи DEMO VERSION абсолютно бесплатно. Для этого можно использовать продукт FastReport Open Source . Изменим файл csproj, а именно секцию ItemGroup: ``` ``` The file Program.cs needs to be changed as follows: ``` using System; using FastReport; using FastReport.Export.PdfSimple; using FastReport.Utils;   namespace testpdf { class Program { static void Main() { Console.WriteLine("Test FastReport Open Source");   // ... // same code here ... // ...   // save the document as PDF file using PDFSimpleExport pdf = new PDFSimpleExport(); report.Export(pdf, "file.pdf"); } } } ``` Затем запускаем программу командой dotnet run и получаем PDF без текста об использовании демо-версии и каких-либо ограничений по количеству страниц. К сожалению, есть существенный недостаток Open Source версии - файлы PDF содержат внутри изображения вместо текста. Скопировать такой текст не получится и размер файлов будет существенно больше. Для простых применений этого должно хватить. При создании PDF с помощью FastReport Open Source может возникнуть проблема отрисовки символов в виде пустых квадратов. Этот баг .NET Core уже давно исправлен для платформ x86 и x64. В таком случае нужно ждать исправления в последних сборках .NET Core или использовать .NET Core SDK 2.2. Очень радует возможность исполнения .NET Core приложений на платформах ARM32 / ARM64. Производители серверов уже начали продажи аппаратных платформ на ARM процессорах . Не исключено, что в самое ближайшее время мы увидим рост  популярности предложений ARM Bare-Metal на хостинговых площадках. Ну, а сейчас у нас есть возможность потренироваться на Raspberry PI с заделом на сервера. Примеры описанные в статье можно найти в моем профиле на GitHub . Tags: .NET, FastReport, Linux, Core, PDF, .NET, FastReport, Linux, Core, PDF ### Делаем и выводим штрих-коды ITF-14 в .NET-приложениях URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/creating-ITF-14-in-net-reports Summary: ITF-14 - это двухполосный числовой код или код высокой плотности, который может кодировать только числа в чётном количестве. ITF-14 - это двухполосный числовой код или код высокой плотности, который может кодировать только числа в чётном количестве. ITF-14 - это двухполосный числовой код или код высокой плотности, который может кодировать только числа в чётном количестве. ITF-14 (Interleaved Two of Five) - это двухполосный числовой код, по-другому код высокой плотности, который может кодировать только числа в чётном количестве. Каждый такой штрих-код кодирует нечётную цифру темной линией и чётную цифру - пробелом между ними. Чтобы закодировать нечётное число цифр, вы должны дополнить самую левую (старшую) цифру нулем. Об особенностях кодирования будет рассказано чуть позже.  Реализация штрих-кода ITF-14 или же interleaved 2 of 5 применяется для кодирования Global Trade Item Number. Глобальный номер торговой позиции (GTIN) - это идентификатор торговой позиции, разработанный компанией GS1 . Это международная организация, занимающаяся вопросами стандартизации учёта и штрихового кодирования логистических единиц. Идентификаторы GS1 используются для поиска информации о продукте в базе данных вручную или же путем ввода номера через сканер штрих-кода, направленный на штрих-код. Рассмотрим кратко стандарты штрихового кодирования. Установлено два основных стандарта штрихового кодирования: EAN/UCC-13 – для единицы товара. European Article Number, EAN (европейский номер товара), в дальнейшем после распространения известный также как международный артикул (International Article Number) — европейский стандарт штрих-кода, предназначенный для кодирования идентификатора товара и производителя. В России это ГОСТ ISO/IEC 15420-2010 «Автоматическая идентификация. Кодирование штриховое. Спецификация символики штрихового кода EAN/UPC». Номер товара EAN/UCC-13 имеет следующую структуру: — первые 2-3 цифры — региональный код (префикс) страны, где зарегистрирован данный номер (для EAN РОССИЯ – 460-469); — следующие 4-5 цифр – это регистрационный номер предприятия внутри национальной организации; — следующая группа цифр обозначает порядковый номер продукции внутри предприятия; — последняя 13-я цифра является контрольной суммой или контрольным числом. Оно вычисляется из предыдущих двенадцати. Важно помнить, что штрих-код EAN используется для уникальной идентификации продукции. Для автоматизации складского учета товаров, помещенных в индивидуальную или групповую транспортную упаковку применяется штрих-код ITF-14. По нему компьютерная система учета определяет не только вид товара, находящийся в упаковке, но и его количество. Проще говоря, группа кодов ITF-14 является надмножеством кодов EAN-13 и отличается от них дополнительной первой цифрой. ITF-14 обычно используются для печати на гофрированном картоне, для маркировки картонных коробок, ящиков или поддонов. Они широко применяются розничными торговцами, производителями и дистрибьюторами для точной логистики и обработки запасов. Также можно встретить в идентификации багажа в аэропортах, нумерации авиационных билетов, идентификации почтовых отправлений. Перед вами один из примеров применения ITF-14 на основе коробки от MilkyWay. Штрих-код ITF можно печатать не только на этикетках, но и непосредственно на стенках картонной коробки, гофрокороба или на любой другой поверхности грубой текстуры. Даже в этом случае он будет успешно считываться сканерами. Вот ещё один пример использования из жизни на основе картриджа со скрепками XEROX 008R13041. Поскольку штрих-код ITF-14 предназначен для обозначения товаров в транспортных упаковках - он не предусматривает обработку на кассовых терминалах. Особенности кодирования ITF-14 всегда кодирует 14 цифр, а вводим мы только 13 цифр. Почему? Рассказываю на примере схемы: Индикатор – это обозначение уровня упаковки для конкретной картонной коробки. Этот однозначный префикс может варьироваться от 0 до 8. (например, 1 — коробка, 2 — ящик и т.д.). Префикс компании GS1 может иметь длину от 7 до 10 цифр и присваивается для однозначного определения владельца конкретного бренда. Поставщики должны получить этот префикс непосредственно от GS1, чтобы однозначно идентифицировать свою компанию. Ссылка на товар – ссылается на тот же номер продукта, используемый для уровня товара GTIN, когда упаковка состоит из одного и того же элемента. Картонным коробкам с ассортиментом товаров присваивается новый номер продукта. Контрольная цифра – это последняя цифра данного штрих-кода, которая является расчетной для контрольной суммы, но определяется она не по всем предыдущим цифрам, а только по 12 из них, следующим за первой. Используя алгоритм MOD10, вычисленная контрольная сумма предотвращает ошибки подстановки. Толстая черная рамка вокруг штрих-кода называется опорной полосой (Bearer Bar). Эта полоса уравнивает давление, создаваемое печатающей пластиной по всей поверхности штрих-кода и улучшает читаемость, сокращая вероятность неполного сканирования символа. ITF-14 может быть с видимыми или скрытыми вертикальными опорными полосами. Размер – два компонента, которые определяют ширину символа штрих-кода ITF-14, являются отношением ширины к узкой части. Это отношение остается постоянным и всегда должно быть в пределах от 2,25:1 до 3:1. Перейдём к практике - как быстро делать-выводить ITF-14 в своём проекте на .NET в MS Visual Studio? FastReport .NET в помощь! Есть такой объект среди штрих-кодов! Настройка ITF-14 в дизайнере Добавляем на лист Barcode и выбираем именно ITF-14. Штрих-коды 2/5 Interleaved, 2/5 Industrial, 2/5 Matrix тоже Interleaved Two of Five , но это совершенно разные объекты. Подробнее о них можно почитать тут . Для примера покажу ITF-14 и 2/5 Interleaved. Как видите, разница очевидна. Далее мы видим большое количество свойств для более тонкой настройки, но остановимся на некоторых конкретных: "Поворот" (Angle) – Свойство позволяет задать поворот объекта на один из фиксированных углов – 0, 90, 180, 270 градусов. "Масштаб" (Zoom) – Свойство задает масштабирование штрих-кода. Это свойство используется только вместе со свойством "Авторазмер". "Авторазмер" (AutoSize) – Если это свойство включено, объект будет растягиваться, чтобы показать штрих-код целиком. Если свойство отключено, штрих-код будет растянут до размеров объекта. "Показывать текст" (ShowText) – Свойство определяет, надо ли показывать ли текст в нижней части штрих-кода. "Поле данных" (DataColumn) – Поле данных, из которого загружать текст объекта. "Выражение" (Expression) – Выражение, которое возвращает текст объекта. "Текст" (Text) – Текст объекта. "Отступы" (Padding) – Свойство позволяет задать отступы от краев объекта, в пикселах. "Ширина полос" (WideBarRatio) – Это свойство имеется у всех линейных штрих-кодов. Оно определяет относительный размер широких полос штрих-кода. "Контрольная сумма" (CalcCheckSum) – Это свойство имеется у многих линейных штрих-кодов. Оно определяет, надо ли считать контрольную сумму автоматически. Если это свойство отключено, контрольная сумма должна присутствовать в тексте объекта. "Отображение вертикальных полос" (DrawVerticalBearerBars) – Если это свойство включено, то у объекта будут отображаться боковые линии. Если свойство отключено, то штрих-код будет иметь следующий вид: Сравнение ITF-14 и interleaved 2 of 5 Если говорить об этих двух штрих-кодах, то interleaved 2 of 5 - это безразмерная версия ITF-14, ведь в ITF-14 строгое количество символов, а именно 13 + 1 контрольная сумма. Interleaved 2 of 5 тоже может содержать эти 13 символов. Показываю на примере: Первым стоит ITF-14, а под ним Interleaved 2 of 5. Значения у них закодированы одинаковые и полоски выглядят одинаковыми. Ширина разная из-за стандартов отличных друг от друга. Из этого следует вывод, что если в interleaved 2 of 5 закодировать эти же 13 символов, то получим ITF-14, но без особого оформления для этого стандарта - только лишь одинаковые значения. Создание ITF-14 с помощью кода Вы можете добавить объект штрих-кода либо в коде пользовательского приложения, когда создаете отчет из кода. Давайте рассмотрим пример создания отчета в коде, и добавление в него штрих-кода ITF-14: Делаем и выводим штрих-коды ITF-14 в.NET-приложениях ``` //Создаем объект отчета Report report = new Report(); //Создаем страницу отчета ReportPage page = new ReportPage(); //добавляем уникальный идентификатор page.CreateUniqueName(); //Добавляем ее в коллекцию страниц отчета report.Pages.Add(page); //Создаем бэнд данные DataBand dataBand = new DataBand(); //с уникальным идентификатором dataBand.CreateUniqueName(); //и добавляем его в коллекцию бэндов page.Bands.Add(dataBand);   //Создаем объект штрих-кода FastReport.Barcode.BarcodeObject barcode = new FastReport.Barcode.BarcodeObject(); //Задаем тип штрих-кода barcode.Barcode = new FastReport.Barcode.BarcodeITF14(); //Задаем числовую комбинацию для кодирования barcode.Text = "597861558"; //Размещаем штрих-код на странице barcode.Parent = dataBand; //Устанавливаем размеры объекта barcode.Bounds = new RectangleF(0, 0, Units.Centimeters * 10, Units.Centimeters * 3); //Отображаем отчет report.Show(); ``` Итак, ITF-14 кодирует исключительно цифры и используется только на коробках, внутри которых есть штучный товар со штрих-кодом EAN/UCC-13. Так, благодаря поддержке ITF-14 и других штрих-кодов, FastReport.NET позволяет создавать полноценные отчеты и этикетки для торговли, логистики и складского учета. Tags: FastReport, .NET, Штрихкод ### Делаем одинаковые страницы отчета с разными заголовками URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/same-reports-different-headers Summary: Разные заголовки на одинаковых страницах отчёта в FastReport .NET. Разные заголовки на одинаковых страницах отчёта в FastReport .NET. Разные заголовки на одинаковых страницах отчёта в FastReport .NET. Иногда в вашей работе требуется один и тот же отчет, но с небольшими изменениями. Например, разные заголовки для разных отделов. Так, например, пользователь генератора отчетов ActiveReports хочет создать такой отчет: For example, the user select copies for the customer and for administration department. The application creates the same report but each one has a label in the header that shows something like "Copy for the customer", "Copy for the administration department". After, the application has to show the two pages in a form viewer. Давайте реализуем такой отчет в FastReport.Net. Можно формировать один и тот же отчет и передавать в него разные параметры для заголовка. Но если вы хотите получить одинаковые отчеты с разными заголовками в одном отчете, можно поступить иначе. Мы можем дублировать страницы исходного отчета, а затем изменить заголовки в этих страницах. Проще всего будет показать на отчете с одной страницей. В отчете будет параметр, в котором через запятую перечисляются номера заголовков, которые нужно выводить в этом отчете. В скрипте отчета мы дублируем страницу в зависимости от количества значений в параметре, потом заменим текст в заголовках новых страниц на нужный. Таким образом мы можем формировать страницы с разными заголовками в зависимости от переданных номеров. Однако есть одна сложность. Придется вручную вычислять номер текстового объекта, в котором нужно заменить текст. К примеру, в моем отчете 9 текстовых объектов. Первый из них – заголовок. Значит десятый тоже будет заголовком, но на новой странице. Если к 10 прибавить еще 9, то получаем номер заголовка на третьей странице и так далее. Вам станет понятнее, когда вы увидите скрипт: ``` private void _StartReport(object sender, EventArgs e) { //Parse parameter string parameter = (string)Report.GetParameterValue("Parameter"); string[] arr = parameter.Split(',');   //Number of text obj that is header int step = 10;   foreach (string item in arr) { ReportPage newPage = new ReportPage(); newPage.AssignAll(Page1); Report.Pages.Add(newPage); newPage.CreateUniqueName(); foreach (object obj in newPage.AllObjects) { if (obj is Base) { (obj as Base).CreateUniqueName(); } } TextObject txt = Report.FindObject("Text"+ step.ToString()) as TextObject; switch (item) { case "1": txt.Text = "Header 1"; break; case "2": txt.Text = "Header 2"; break; case "3": txt.Text = "Header 3"; break; } step = step + 9; } Report.Pages.Remove(Page1); } ``` Разберем этот скрипт подробнее. Мы использовали событие StartReport у объекта Report. В обработчике события мы и будем осуществлять манипуляции со страницами отчета. Отчет уже имеет одну разработанную страницу – по сути это готовый «боевой» отчет, на базе которого мы хотим сделать несколько, но с разными заголовками. Прежде всего парсим параметр отчета. Как уже говорилось ранее, в параметр передается последовательность идентификаторов шаблонов, которые мы хотим отобразить. Идентификаторы разделяются запятыми. Далее, в цикле перебираем полученные из параметра отчета идентификаторы.  Для каждого из них создается страница на основе существующей, вычисляется текстовый объект с заголовком. В зависимости от идентификатора шаблона текстовому объекту заголовка задается значение. После того, как мы создали «пачку» нужных страниц, удаляем первую страницу-образец. В итоге мы получаем несколько отчетов внутри одного. А управлять количеством этих отчетов-страниц можно передавая в отчет значение параметра - желаемую комбинацию идентификаторов, либо заголовков. Tags: .NET, FastReport, Отчет, .NET, FastReport, Отчет ### Демо версия FastReport VCL 5 доступна! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl5-demo Summary: Демо версия FastReport VCL 5 доступна! Демо версия FastReport VCL 5 доступна! Новое долгожданное поколение генераторов отчётов для Delphi/C++Builder Для загрузки демо версии FastReport VCL 5 нажмите здесь Что нового: Классы Новые типы заливки у объекта "Текст": Градиент и Стекло. Объект «Текст» может иметь несколько условий выделения. Они включают в себя настройки рамки, шрифта, заливки и видимость объекта. Вы можете включать и выключать каждую настройку. У объекта «Текст» теперь есть несколько настроек форматирования. Когда в тексте содержится несколько выражений, можно указать формат для каждого из них.   Добавлено свойство Filter у датабэндов. Можно отфильтровать строки данных без использования скрипта. Изменения в формате отчета: наборы данных, переменные, форматы, условное выделение хранятся в виде вложенных свойств и стали более удобочитаемыми. В объекты отчета добавлены события мыши: MouseEnter, MouseLeave. Добавлено свойство Visibility (vsPreview, vsPrint, vsExport) у объектов отчета. Новые объекты Новые 2D штрихкоды PDF417, DataMatrix и QR-code. Новые штрихкоды - Code128, EAN128 с автоматической кодировкой. Интерактивность Новые интерактивные типы отчета: детальный отчет и детальная страница. При клике на интерактивный объект, новый отчет создается и отображается в отдельной вкладке окна предпросмотра. Добавлена интерактивность в объект Chart. Детальный отчет можно вызвать через клик по объекту Chart. Экспорты В PDF-экспорт улучшено встраивание шрифтов: вместо целого шрифта встраивается только используемое в отчёте подмножество символов шрифтов. Это позволяет значительно сократить размер файла Новые экспорты: HTML5 (div), DOCX, XLSX, PPTX. Улучшение в форматах экспорта RTF, XLS, XML, HTML, ODF: поддержка разных типов линий рамки в объекте "Текст". GUI Новые иконки в окне предпросмотра и в Дизайнере отчетов. Улучшен внешний вид дерева данных. Новые иконки для различных типов полей. Новые/улучшенные диалоги: условное выделение, граница, заливка, редактор гиперссылок. ### Демо-версия FastCube 2 VCL beta доступна для скачивания URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/beta-demo-fastcube-vcl Summary: Демо-версия FastCube 2 VCL beta доступна для скачивания Демо-версия FastCube 2 VCL beta доступна для скачивания Мы предлагаем вам оценить новый уровень анализа данных! I. Улучшения отображения и поведения грида    1. Улучшения в гриде для исходных данных    2. Более стандартное отображение в Windows с включенными темами    3. Градиенты II. Анализ данных    1. Оптимизации для операций с осями    2. Новый атрибут измерения для единичного выбора (радио фильтр)    3. В FastCube2 можно объединять измерения в группы.    4. Итоги получили много нововведений    5. Ранжированиедля показателей    6. Древовидная ось    7. Выделение данных    8. Панель статуса    9. Общий код при использовании FastScript    10. Экспорт III.Куб    1. Разбиения    2. Загрузка из произвольных хранилищ    3. Преобразование данных при загрузке    4. Вычисление произвольных полей во время загрузки    5. Операции добавления/удаления для полей после загрузки    6. Добавление данных в активный куб IV. Глобальный фильтр ### Динамическая генерация таблиц в XAML URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/dynamically-create-table-xaml Иногда при проектировании WPF приложений возникает необходимость отображения таблиц разной конфигурации для формирования отчётов и отображения данных. Cтандартными средствами Visual Studio добиться нужного результата не всегда представляется возможным. Можно добавить объекты на форму программным способом, непосредственно в коде программы в процессе исполнения. Плюс данного метода – это использование минимального набора ПО. Но при построении большой таблицы он займёт слишком много времени. Так же потребуется реализация доступа к таблицам с данными и формирование циклов выборки. А при дальнейшем изменении структуры придётся перестраивать всё заново. Другой способ получить красивую нестандартную таблицу – использование FastReport.NET. Открываем дизайнер отчета, создаём источник данных и добавляем объекты: заголовок отчёта, заголовок страницы, данные, подвал страницы и другие при желании. Формируем отчёт и сохраняем его в формате XAML. Для этого жмём кнопку «Предварительный просмотр»(Ctrl+P), далее «сохранить» и выбираем пункт «Файл XAML». Созданный шаблон отчета можно сохранить для последующего использования. Можно встроить FastReport.NET в создаваемую программу. В ходе работы настраиваем таблицу в редакторе или программно, экспортируем в файл и загружаем сразу в WPF. Код экспорта представлен ниже: ``` // prepare a report report1.Prepare(); // create an instance of XAML export filter FastReport.Export.XAML.XAMLExport export = new FastReport.Export.XAML.XAMLExport(); // export in xaml report1.Export(export, "result.xaml"); ``` После экспорта сразу можно произвести загрузку. Для этого используем код: ``` // Создание потока для чтения выбранного XAML файла using (FileStream fs = new FileStream(filename, FileMode.Open)) { // Создание нового окна для графического вывода содержимого XAML файла ((Window)XamlReader.Load(fs)).Show(); } ``` Где filename – название созданного файла с таблицей. Вместо FileStream можно использовать MemoryStream, тогда XAML можно передать без использования файлов. Так можно построить таблицу динамически прямо в коде программы. Это позволяет генерировать таблицу на сервере, а на клиенте получать XAML файл и отображать его на форме. Так же FastReport избавляет от написания кода доступа к базе - вся работа  делается им, и не требует вмешательства. Из вышесказанного видно, что использование FastReport.NET значительно упрощает задачу и сокращает время разработки, избавляет от трудностей с выборкой данных из базы, облегчает изменение структуры таблицы. Tags: .NET, Visual Studio, FastReport, WPF, .NET, Visual Studio, FastReport, WPF ### Добавление новых пользователей в МоиОтчеты Облако URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/novye-polzovateli-oblako Summary: В Business-редакции сервиса МоиОтчеты Облако можно добавлять пользователей в одно рабочее пространство для одновременной совместной работы. В Business-редакции сервиса МоиОтчеты Облако можно добавлять пользователей в одно рабочее пространство для одновременной совместной работы. В Business-редакции сервиса МоиОтчеты Облако можно добавлять пользователей в одно рабочее пространство. Это позволяет нескольким людям совместно работать над отчётами или редактировать шаблоны. В Business-редакции нашего облачного сервиса для работы с отчётами МоиОтчеты Облако есть возможность добавлять пользователей в одно и то же рабочее пространство. Это значит, что несколько человек смогут подготавливать отчёты из одного большого списка ранее добавленных шаблонов. Или же несколько человек, разрабатывающих шаблоны отчётов, могут быстро и удобно добавлять их в пространство, где эти отчёты могут быть подготовлены другой группой пользователей, у которых нет права на редактирование шаблонов.  Для начала добавим нового пользователя в рабочее пространство. Когда новый пользователь впервые открывает МоиОтчеты Облако, он видит следующий экран: Каждый пользователь должен иметь аккаунт на нашем сервисе аутентификации ID Быстрые отчеты . После успешной регистрации и входа в МоиОтчеты Облако пользователь увидит следующее сообщение: На этом этапе мы переходим обратно к аккаунту, на который была приобретена лицензия на МоиОтчеты Облако. Во вкладке “Пользователи” вы увидите список уже добавленных пользователей, а также найдёте кнопку, которая нам сейчас понадобится – “Пригласить пользователя”. Если вы нажмёте на эту кнопку, вы увидите текстовое поле со ссылкой для приглашения, а также кнопку, которая позволит вам эту ссылку скопировать. По умолчанию эта ссылка многоразовая, и ограничена по действию на один день. На данный момент это меняется только через API.  Передайте эту ссылку новому пользователю. Когда он перейдёт по этой ссылке, то увидит диалог, предлагающий принять приглашение в МоиОтчеты Облако. И после нажатия “Принять” произойдёт две вещи. Во-первых, новый пользователь сможет выполнять действия, разрешённые группе “Все пользователи”. Например, если вы по умолчанию запретили получение информации о документах, то вот что они увидят: И, во-вторых, вы сможете увидеть нового пользователя в том же самом меню “Пользователи”, из которого копировалась ссылка для приглашения. Если вы хотите удалить пользователя из подписки, вы можете кликнуть на этого пользователя правой кнопкой мыши и выбрать соответствующую опцию. Кстати, если вы зайдёте в меню с информацией о рабочем пространстве, вы сможете увидеть максимальное количество добавленных пользователей. Таким образом, Business-редакция сервиса МоиОтчеты Облако позволяет эффективно организовать совместную работу над отчётами. Добавляя пользователей в одно рабочее пространство, можно обеспечить одновременную подготовку отчётов из общего списка шаблонов или же распределить задачи между разными группами пользователей. Это упрощает процесс работы с отчётами и делает его более удобным и эффективным. Tags: Облако, FastReport ### Добавление страниц из другого отчета в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/page-another-report-net Summary: Добавляем в разрабатываемый отчет страницы и диалоговые формы из других отчетов в FastReport .NET. Работать с отчетами стало ещё проще! Добавляем в разрабатываемый отчет страницы и диалоговые формы из других отчетов в FastReport .NET. Работать с отчетами стало ещё проще! Добавляем в разрабатываемый отчет страницы и диалоговые формы из других отчетов в FastReport .NET. Работать с отчетами стало ещё проще! В последнем обновлении в FastReport .NET появилась возможность добавлять в разрабатываемый отчет страницы из других отчетов. Это поможет быстрее работать с отчетами, где ранее бы вам требовалось объединить несколько файлов или бы пришлось переделывать отчет вручную. Для добавления страницы необходимо открыть меню «Файл» и выбрать пункт «Открыть страницу».  Откроется диалог выбора файла, аналогичный диалогу при обычной загрузке отчета. После выбора появится окно, содержащее список всех страниц и диалоговых форм отчета, а также предварительный вид выбранной страницы. Страницы отображаются точно также, как в дизайнере. При смене выбора страницы из списка также меняется превью. Добавить в отчет можно как одну, так и несколько страниц или диалоговых форм. Тогда в области просмотра будет показана последняя выбранная страница. По нажатию на кнопку «ОК» выбранные страницы будут добавлены в основной отчет. Если имя страницы, диалоговой формы или имена элементов на выбранных страницах совпадают с существующими в отчете, то новым элементам будут автоматически присвоены новые имена в стандартном формате. Это необходимо для того, чтобы в отчете не было объектов с одинаковыми именами. Такая ситуация может привести к множеству ошибок. В качестве наглядного примера добавим в основной отчет страницу Page1. Так она выглядит в исходном отчете. После добавления страницы её вид остался прежним, но имена некоторых элементов изменились, т.к. в основном отчете уже есть элементы с такими именами. По такому же принципу изменилось имя вновь добавленной страницы. Источники данных, Параметры, Переменные, Итоги и скрипт отчета, из которого добавляется страница, не переносятся. Поэтому, может потребоваться доработка отчета вручную. Работать с отчетами стало ещё проще! По всем возникающим вопросам пишите в нашу поддержку support@fastreport.ru Tags: .NET, FastReport, Дизайнер, Отчет, .NET, FastReport, Дизайнер, Отчет ### Документация URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/downloads/documentation Summary: На этой странице вы найдете техническую документацию и руководство пользователя для программных продуктов FastReport. Документация FastReport .NET Онлайн документация Руководство пользователя (.pdf) Руководство программиста (.pdf) Руководство по поддержке (.pdf) Руководство по установке (.pdf) Online Designer Онлайн документация Руководство пользователя (.pdf) FastReport VCL Онлайн документация Руководство пользователя (.pdf) Руководство программиста (.pdf) Руководство разработчика (.pdf) Руководство по веб-разработке (.pdf) Руководство разработчика FastScript (.pdf) МоиОтчеты Десктоп Онлайн документация Руководство пользователя (.pdf) Руководство по поддержке (.pdf) МоиОтчеты Облако Онлайн Документация Руководство пользователя (.pdf) Руководство программиста (.pdf) Руководство по поддержке (.pdf) МоиОтчеты Корпоративный Сервер Онлайн документация Руководство программиста (.pdf) Руководство пользователя (.pdf) Руководство по поддержке (.pdf) Руководство по установке (.pdf) МоиОтчеты Публикатор Онлайн документация Руководство программиста (.pdf) Руководство пользователя (.pdf) Руководство по поддержке (.pdf) Руководство по установке (.pdf) Описание функциональных характеристик (pdf) FastReport FMX (Reporting FMX) Онлайн документация FastReport Business Graphics .NET Онлайн документация Руководство программиста (.pdf) Руководство по установке (.pdf) FastCube .NET Онлайн Документация Руководство пользователя (.pdf) Руководство разработчика (.pdf) Руководство по поддержке (.pdf) FastScript .NET Онлайн документация Руководство программиста (.pdf) info@fastreport.ru Отдел продаж sales@fastreport.ru +7 (800) 551-75-80 +7 (863) 227-07-40 Офис Ростов-на-Дону, Россия ул. Обороны 24, офис 311, 344082 Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Продукты Купить Демоверсии Документация Деинсталляция Импортозамещение Лицензии Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Поддержка Условия поддержки Задать вопрос Вопросы и ответы Видео уроки Форум Статьи Новости Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Компания О компании Айдентика Реселлеры Партнёрство Карьера Контакты Реестр ПО ВБЦ СОУТ Декларация Реквизиты Согласие с обработкой ПД Политика конфиденциальности Не является публичной офертой Не является публичной офертой © 1998-2026 ООО «Быстрые отчеты» Ссылка успешно скопирована ### Долгожданный FastReport VCL 2.5! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2.5 Summary: Долгожданный FastReport VCL 2.5! Долгожданный FastReport VCL 2.5! Итак! FastReport 2.5 уже здесь. Больше, чем мы обещали. Ощутите новые возможности генераторов отчетов: - XLS - экспорт через OLE - Экспорт в BMP, JPEG, TIFF - цветной и черно-белый варианты - Экспорт в RTF (beta) - В TfrReport добавлены новые свойства: ReportComment, ReportName, ReportAutor, ReportDate, ReportLastChange, ReportPasswordProtected, ReportPassword, Advanced ReportVersion (major, minor, release, build) - Улучшеный CrossTab - Опциональное сохранение в формат FR3.0 Xml из дизайнера - возможность отключения подсветки синтаксиса в редакторе скрипта - Программное изменение страниц перед печатью - Возможность перестроить отчет при смене принтера - функция FieldIsNull в скрипте - мелкие багофиксы. ### Доставка отчетов в Jabber URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/export-jabber-net Если вам нужен экспорт для быстрой демонстрации отчетов внутри компании, FastReport.Net предоставляет эту возможность с помощью экспорта в мессенджер Jabber(XMPP). Очень интересная фича появилась в FastReport.Net - это экспорт в мессенджер Jabber(XMPP). По сути это экспорт в html с сохранением отчета в облачном сервисе Report Cloud. При этом в Jabber вам приходит веб-ссылка на отчет. Такой экспорт может быть удобен для быстрой демонстрации отчетов внутри компании, если мессенджер XMPP используется, как корпоративный. Давайте запустим любой отчет в режиме предварительного просмотра: Теперь нажимаем кнопку «Сохранить»   на панели инструментов: Из списка выбираем самый нижний пункт – XMPP. Открываются настройки экспорта: Задаем настройки вашего jabber профиля – идентификатор и пароль, а также идентификатор получателя отчета. В данном случае я отправляю сообщение сам себе, поэтому отправитель и получатель совпадают. На вкладке Proxy соответственно задаем настройки прокси сервера: Нажимаем ОК. И получаем сообщение в jabber: Переходим по ссылке и видим наш отчет: Все просто и понятно. Если вы часто отправляете отчет кому-то внутри компании, это можно быстро сделать с помощью XMPP экспорта. Нет необходимости передавать файл отчета, а только ссылку на отчет. И получатель может передать эту ссылку другим пользователям или скачать отчет на локальный компьютер. Tags: .NET, Экспорты, FastReport, .NET, Экспорты, FastReport ### Дублирование или удаление страниц при предварительном просмотре отчета URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/Duplication-removing-pages-preview-report Summary: Для упрощения процесса подключения к БД, существуют плагины-коннекторы. Чтобы коннекторы исправно работали, необходимо их скомпилировать. Посмотрите как это сделать, через менеджер пакетов Nuget. Для упрощения процесса подключения к БД, существуют плагины-коннекторы. Чтобы коннекторы исправно работали, необходимо их скомпилировать. Посмотрите как это сделать, через менеджер пакетов Nuget. Для упрощения процесса подключения к БД, существуют плагины-коннекторы. Чтобы коннекторы исправно работали, необходимо их скомпилировать. Посмотрите как это сделать, через менеджер пакетов Nuget. В FastReport 2018.4 появилась очень интересная функциональная возможность – добавлять и удалять страницы отчета в режиме предварительного просмотра. Давайте внесем ясность. Речь идет о страницах построенного отчета. То есть вы можете выбрать конкретную страницу отчета и клонировать ее сколь угодно много раз, либо удалить выбранную страницу. При этом никакого влияния на сам шаблон отчета не будет. Даже, если у вас останется всего одна страница. Чтобы вернуть все в исходное состояние – просто постройте отчет заново. Когда эта функция может быть полезна? Например, если вам нужно распечатать отчет, а какие-то определенные страницы нужны в нескольких экземпляров. Или наоборот, некоторые страницы не нужно печатать. Да, в настройках печати вы можете задать номера нужных страниц. Но вы должны запомнить эти номера. Это не очень удобно. Используя новую функцию, вы добавляете нужные страницы без необходимости что-то запоминать. Давайте рассмотрим, как это работает на практике. Например, у нас есть построенный в режиме предварительного просмотра отчет Simple List. Уменьшим его масштаб, чтобы в область видимости поместились все три страницы: Обратите внимание, что первая страница имеет желтую рамку. Это означает, что она выбрана сейчас. На панели инструментов сверху добавились два ярлыка: -  копировать страницу; -  удалить страницу. Скопируем первую страницу: Скопированная страница добавилась сразу после выбранной. А теперь удалим все страницы, кроме последней. При удалении фокус переключается на последующую страницу. Поэтому, в нашем случае, удобнее всего установить фокус на первую страницу, а затем удалять страницы. В итоге останется лишь одна, последняя страница отчета. Мы можем клонировать ее, но другие страницы нам уже не доступны. Таким образом, новая функция клонирования и удаления страниц построенного отчета весьма полезна при печати. Tags: .NET, FastReport, .NET, FastReport ### Единая экосистема для Delphi продуктов в релизе FastReport 2023.2 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-vcl-2023.2 Summary: Это крупное обновление связывает наши основные продукты для Delphi и Lazarus в единую экосистему с общей установкой и авторизацией Это крупное обновление связывает наши основные продукты для Delphi и Lazarus в единую экосистему с общей установкой и авторизацией Это крупное обновление связывает наши основные продукты для Delphi и Lazarus в единую экосистему.  Что это значит? Одна система установки с онлайн авторизацией – устанавливайте и обновляйте все ваши продукты сразу. Общая система релизов – крупные релизы выходят как общий релиз всех продуктов. Общая библиотека для всех продуктов – исправление и новый функционал могут быть доступны сразу в нескольких продуктах. Удалена утилита recompile, функции пересборки пакетов теперь выполняет установщик. ❗️Для загрузки обновления рекомендуем вам деинсталировать все продукты через старый установщик, а после воспользоваться новым установщком.❗️ Core library Появились новые пакеты Core, Core Graphics, Core Localization, объединяющие продукты в одну экосистему. Изменена система локализации продуктов. Теперь она не требует пересборки пакетов, достаточно установить языковые пакеты при установке, добавить компонент TfrLocalizationController и выбрать нужный язык. FastReport VCL Переработана система редактирования и использования стилей в дизайнере отчета. Новый режим позволяет: создавать, редактировать и назначать стили во время дизайна отчета. Создаваемые стили по умолчанию копируют внешний вид объекта. Изменение стиля влияет на все объекты, которым ранее был присвоен этот стиль. Новый инструмент «Таблица стилей» позволяет персонализировать внешний вид отчета с использованием стилей, а также переключать их между собой практически мгновенно. Вы можете: Выбирать режим таблицы стилей; Создавать совершенно новые собственные стили и цветовые схемы, которые бы подходили именно вашему отчету; Менять уже созданные стили объектов отчета под свой вкус; Практически мгновенно переключаться между готовыми решениями. Таблицы стилей поддерживаются в подготовленном отчете и позволяют менять стиль отчета без повторного построения. Эти стили сохраняются в файл построенного отчета, чтобы такой отчет можно было распространять среди других пользователей. Каждый пользователь сможет выбрать свой стиль. Композитные штрих-коды Добавлен новый объект-контейнер для составления композитных штрих-кодов. Объект имеет уже готовые настройки композитных штрих-кодов: EAN 8+2, EAN 8+5, EAN 13+2, EAN 13+5. Редактор объекта предоставляет функционал для быстрого составления собственных типов составных штрих-кодов. Пример штрих-кодов, которые используются при печати ценников. Мощные инструменты для ваших отчетов Для эффективной работы многопоточных приложений добавлена возможность печати в нескольких потоках. Каждый поток может печатать на принтер, не блокируя работу других потоков. Такой подход эффективен для приложений, работающих в режиме сервиса печати. Улучшен объект цифровой подписи для экспорта в PDF. Теперь подпись можно дополнить текущей датой подписания, именем и другой дополнительной информацией. В фильтры экспортов добавлена возможность переопределять и заменять стандартный диалог экспорта, без изменений в исходных кодах FastReport. Пример использования: ``` uses frxExportPDFDialog; type TfrxCustomPDFExportDialog = class(TfrxPDFExportDialog) protected procedure InitControlsFromFilter(ExportFilter: TfrxBaseDialogExportFilter); override; end; procedure TfrxCustomPDFExportDialog.InitControlsFromFilter(ExportFilter: TfrxBaseDialogExportFilter); begin inherited; SignaturePage.TabVisible := False; end; procedure SetDialogClass; begin frxPDFExport1.CustomExportDialogClass := TfrxCustomPDFExportDialog; end; ``` Улучшены и исправлены ошибки в фильтрах экспортов. Экспорт в PDF получил поддержку обработки полупрозрачных изображений SVG. Доработана совместимость отчетов между версиями для Lazarus и Delphi. Исправлен перенос переменных отчета между версиями. FastCube VCL и FastCube FMX Для продуктов FastCube VCL и FastCube FMX была добавлена интеграция с FastScript, которую мы вынесли в отдельный пакет. Для включения поддержки FastScript достаточно установить один дополнительный пакет и не пересобирать все остальные. Дополнительно мы уделили внимание на исправление ошибок подсветки и редакторов. FastCube VCL получил поддержку HiDPI для мониторов высокого разрешения. Поддерживаются все доступные режимы среды разработки RAD Studio. FastQueryBuilder получил поддержку пакетов последних версий RAD Studio. В FastReport FMX были исправлены ошибки совместимости с RAD Studio 11. Улучшили оптимизацию и производительность продукта, внесли внутри архитектурные изменения. Полный список изменений для версии 2023.2 Сore library --------------- + Добавлен новый пакет ядра с общим кодом для всех продуктов + Добавлен новый пакет графического ядра с общим кодом для всех продуктов + Добавлены новые пакеты локализации * Изменена система локализации продуктов FastReport VCL --------------- [Designer] - Исправлена поддержка Int64 в инспекторе объектов - Исправлено поведение фильтра в диалоге выбора данных - Исправлены границы рамки TfrxRichView в дизайнере - Исправлена ошибка, из-за которой выпадающий code completion не копировал стили из Syntax Memo [Engine] + Добавлена поддержка таблиц стилей и улучшена работа со стилями в дизайнере отчета + Добавлена возможность одновременной многопоточной печати - Исправлено масштабирование форм для дополнительного монитора для Delphi 10.1 и позже - Исправлена ошибка с интерактивными событиями компонента родительского контейнера - Исправлена обработка ошибки в событиях CrossView - Исправлена печать режима текущей страницы - Исправлена Duplex печать для нескольких копий документов с включенным разбором по копиям [Exports] + Добавлено новое свойство CustomExportDialogClass для фильтров экспорта, которое позволяет переопределить диалог экспорта для стандартных фильтров экспорта * Улучшен экспорт полупрозрачных SVG в PDF экспорте через EMF - Исправлена утечка памяти с встраиваемыми файлами в PDF экспорте - Исправлен диалог прогресса в HTML экспорте при вводе неправильного номера страницы - Исправлен экспорт TfrxLineView и TfrxShapeView в PPTX экспорте [Lazarus] + Добавлена поддержка переносимости переменных в шаблонах (Delphi <--> Lazarus) - Исправлено поведение пустого TfrxPictureView в Lazarus [Preview] - Исправлен порядок кнопок в превью [Report object] + Добавлены композитные штрихкоды (EAN 8+2, EAN 8+5, EAN 13+2, EAN 13+5) + Добавлен метод TfrxPictureView.LoadFromStream + Добавлена обработка свойства Hint (аналогично TagStr) - Исправлено размещение SVG картинки в TfrxPictureView [Resources] * Обновлены португальские ресурсы * Обновлены польские ресурсы FastReport FMX --------------- - Исправлена ошибка integer overflow в объекте градиентной заливки - Исправлена ошибка редактора кросс таблицы в RAD Studio 11 FastQueryBuilder --------------- - Добавлены пакеты для новых версий Delphi (RAD Studio 10 – 11) FastCube --------------- + Добавлена поддержка HiDPI для мониторов высокого разрешения + Добавлен пакет интеграции с FastScript (интеграция не требует пересборки основных пакетов) - Исправлены ошибки в правилах подсветки - Исправлена ошибка Access violation при использовании компонента в некоторых редакторах ### Ещё раз о запуске FR.Mono на Mac OS X URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/running-mono-macosx В поддержку часто попадают вопросы, каким образом запустить файл Demo.exe из демонстрационной версии FastReport.Mono на компьютерах и ноутбуках Apple. Часть ответа содержится в названии продукта - для успешного использования генератора отчётов FastReport.Mono на устройствах с Mac OS X необходимо наличие рантайм версии Mono. Загрузить его можно пройдя по следующей ссылке: http://download.mono-project.com/arch...in.x86.dmg После установки строка запуска демонстрационной версии генератора отчётов будет выглядеть так: $ mono Demo.exe эту команду необходимо выполнить в терминале, предварительно зайдя в директорию, в которую распаковали демонстрационную версию генератора отчётов. Дело в том, мы запускаем не исполняемый файл Windows, а запускаем виртуальную NET машину, которая в свою очередь исполняет код генератора отчётов. Кстати, не так давно мы выложили обновление демонстрационной версии, которая стала более стабильной нежели предыдущая - http://www.fast-report.com/pbc_downlo...o_demo.zip Tags: Mono, FastReport, Mono, FastReport ### Завершился Всероссийский Чемпионат "Профессионалы" 2023 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/young-professionals-2023 Summary: Компания Быстрые отчеты приняли участие во Всероссийском чемпионате "Профессионалы" 2023 и наградили победителей и призеров. Компания Быстрые отчеты приняли участие во Всероссийском чемпионате "Профессионалы" 2023 и наградили победителей и призеров. Всероссийское чемпионатное движение по профессиональному мастерству - это ряд соревновательных мероприятий, направленных на создание новых и развитие существующих профессиональных компетенций с учетом специфики субъектов Российской Федерации согласно запросам реального сектора экономики. А также с целью выявления, развития и поддержки талантливой, перспективной молодежи и молодых специалистов. С 26 по 29 апреля в Таганрогском колледже Морского приборостроения прошел региональный чемпионат по компетенциям: «Разработка решений с использованием блокчейн технологий» и «Интернет-маркетинг». 29 апреля на церемонии закрытия Чемпионата "Профессионалы" 2023 компания Быстрые отчеты наградили призеров и победителей компетенции "Интернет-маркетинг". Поздравляем всех конкурсантов с успешным завершением Чемпионата и желаем профессионального успеха! ### Завершился второй мастер-класс от эксперта компании "Быстрые отчеты" URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/kvantorium-2023 Summary: 9 февраля в Донском технопарке "Кванториум" прошло последнее занятие из серии мастер-классов от компании "Быстрые отчеты". 9 февраля в Донском технопарке "Кванториум" прошло последнее занятие из серии мастер-классов от компании "Быстрые отчеты". В федеральной сети детских технопарков - Кванториуме 9 февраля завершилась серия мастер-классов от компании "Быстрые отчеты". На последнем занятии наш эксперт провел интерактивное занятие на тему "Жизненный цикл разаботки", в котором студенты технопарка учились определять целевую аудиторию своего будущего продукта, а также обсудили важность понимания, кому и зачем мы предлагаем свой продукт или услугу. Ребята научились задавать нужные вопросы, оформлять их в опросники и формировать аналитику по полученной информации. Они легко усваивали информацию не через скучную лекцию, а наглядно, интерактивно, в живом диалоге с модератором, выполняя задания за компьютером. ### Завершился второй хакатон в Южном Университете (ИУБиП) URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/humanhack-hackathon-2022 Summary: С 18 по 20 ноября проходил хакатон в Южном Университете (ИУБиП) для школьников, студентов и молодых специалистов IT-сферы. С 18 по 20 ноября проходил хакатон в Южном Университете (ИУБиП) для школьников, студентов и молодых специалистов IT-сферы. С 18 по 20 ноября в  Южном университете ИУБиП проходил хакатон " HUMANHACK 2022 ", темой которого стала качественная разработка для отечественных решений. Участниками были школьники, увлекающиеся IT-сферой, студенты IT-специальностей и конечно же молодые специалисты в сфере IT.  Участие в проекте помогло ребятам найти оплачиваемую стажировку в ведущих IT-компаниях города, а также получить приглашение на трудоустройство по завершению хакатона. ООО "Быстрые отчеты" выступили на мероприятии в качестве спонсоров и представили собственное кейс-задание для участников. 16 команд попробовали свои силы в решении кейса от ведущего производителя программного обеспечения в сфере генерации отчетов. Отметим напряженную борьбу среди участников, которые 48 часов неустанно боролись за призовые места. Особенно проявили себя следующие команды: FV BB, Бензовоз. Дополнительно для участников был объявлен креативный конкурс на создание талисмана и слогана для нашей компании. Победительница получила ценный приз из рук Шлюпкиной Аллы, которая выступила на мероприятии в качестве ведущей. ### Загрузка ListDataSet данных в куб URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/list-data-set-for-pivot-grid Summary: Пример загрузки данных из List Пример загрузки данных из List Пример загрузки данных из List В версии 2021.1 добавлен компонент ListDataSet позволяющий загружать в куб данные используя Windows Forms Data Binding Добавлена возможность загружать данные в куб используя механизм Windows Forms Data Binding, использующийся в стандартных элементах управления: DataGridView, ListView и Combobox. Windows Forms Data Binding работает с данными посредством компонента BindingSource, который выступает в роли прокси (больше информации по теме можно найти в MSDN). Далее приведен небольшой пример загрузки данных из List<>. 1. Объявляем класс ProductInfo ``` public class ProductInfo { public String Name { get; set; } public String Group { get; set; } public int Count { get; set; } } ``` 2. Создаем список записей ProductInfo ``` List CreateProducts() { return new List { new ProductInfo {Group = "Bakery products", Name = "Ciabatta", Count = 3}, new ProductInfo {Group = "Bakery products", Name = "Bread", Count = 5}, new ProductInfo {Group = "Bakery products", Name = "Croissant", Count = 1},   new ProductInfo {Group = "Alcohol", Name = "Wine", Count = 6}, new ProductInfo {Group = "Alcohol", Name = "Whiskey", Count = 2}, new ProductInfo {Group = "Alcohol", Name = "Beer", Count = 5},   new ProductInfo {Group = "Dairy products", Name = "Yoghurt", Count = 5}, new ProductInfo {Group = "Dairy products", Name = "Milk", Count = 4} }; } ```  3. Настраиваем Cube и slice ``` private void Form1_Load(object sender, EventArgs e) { // configure data source listDataSet1.DataSource = CreateProducts(); // load data to Cube cube1.Active = true; // configure Slice slice1.YAxisContainer.AddSliceField(slice1.SliceFields.GetFieldByName("Group")); slice1.YAxisContainer.AddSliceField(slice1.SliceFields.GetFieldByName("Name")); var measure = new FastReport.Olap.Slice.MeasureField(slice1, FastReport.Olap.Types.AggregateFunction.Sum, slice1.SliceFields.GetFieldByName("Count")); slice1.MeasuresContainer.AddMeasure(measure); slice1.XAxisContainer.AddMeasuresField(); } ``` В результате получаем следующий вид: Полный пример расположен в каталоге Demos\C#\DataBindings. Tags: .NET, FastCube, WinForms, .NET, FastCube, WinForms ### Загрузка объектов в FastReport VCL с помощью протоколов http и https URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/uploading-objects-vcl-http-and-https-protocols Summary: Новый инструмент для получения данных через протоколы http и https для загрузки в объекты карт, картинок, текста и PDF. Новый инструмент для получения данных через протоколы http и https для загрузки в объекты карт, картинок, текста и PDF. Новый инструмент для получения данных через протоколы http и https для загрузки в объекты карт, картинок, текста и PDF. Одна из ключевых задач генератора отчетов - получение данных. Чаще всего, для хранения и получения данных используются базы данных. Но что делать, если для хранения определенных данных используются удаленные облачные хранилища? Как загрузить в отчет логотип компании по http, чтобы он при этом всегда был актуальным? Для решения этих задач в FastReport VCL 2021.3 мы добавили поддержку протоколов и возможность загружать данные через протоколы в такие объекты, как: Карты, Картинка, Текст, объект PDF, объект HTML. У ряда объектов появилось новое свойство DataLink , которое включает дополнительные свойства для обработки ссылок. Такие ссылки всегда начинается с имени схемы, за которой следует разделитель. Пример <схема>:[//путь] . Схемой в большинстве случаев выступают протоколы такие, как http и https . Важно! Для работы протокола https необходимы следующие библиотеки Open SSL: libssl-3.dll и libcrypto-3.dll их можно найти в директории с главным демо приложением. Библиотеки необходимо скопировать в папку с приложением или системную директорию. Загрузка данных по ссылкам в FastReport VCL FastReport VCL основан на модульной архитектуре, функционал http и https не исключение, и вынесен в отдельный пакет вместе с интернет транспортами. Поэтому, для работы ссылок по протоколам http и https необходимо подключить модуль frxTransportHTTP в uses секцию приложения или добавить один из интернет транспортов на форму приложения. Важно! Для работы протокола https необходимы следующие библиотеки Open SSL: ssleay32.dll и libeay32.dll их можно найти в директории с главным демо приложением. Запустим дизайнер отчетов и создадим новый отчет. Добавим на страницу отчета бэнд «Заголовок отчета» и объект картинку на него. Отчет должен выглядеть следующим образом. Выделим объект «Картинка» и перейдем в инспектор объектов. В инспекторе объектов нужно найти свойство DataLink. Для быстрого поиска можно воспользоваться фильтром, встроенным в инспектор объектов, введя имя искомого свойства. Рассмотрим значение дочерних свойств DataLink: Link – ссылка с схемой (протоколом), в формате <схема>:[//путь]. Данные будут загружены из указанной ссылки. LoadingType – тип загрузки, указывает в какой момент будут загружены данные. Может принимать следующие значения: [] – Пусто. Данные загружаются в режиме редактирования шаблона, по клику пользователя на редактор загрузки. Используется если данные нужно получить только один раз, и хранить их в шаблоне. [dltOnGetData] – По умолчанию. Данные загружаются в объект в момент построения отчета. В данном случае в шаблоне данные объекта не сохраняются. При каждом построении объект получает новые данные по ссылке. [dltOnPreview] – Данные загружаются в момент предпросмотра, экспорта или печати отчета. В данном случае, построенный отчет хранит ссылку на данные и загружает их каждый раз, когда пользователь загружает построенный отчет. Может использоваться для получения актуальных данных в построенном отчете, без его повторного построения. [dltOnGetData, dltOnPreview] – Гибридный режим. При построении, объект получает данные по ссылке и сохраняет их в построенном отчете. Так же, сохраняется и ссылка на данные. При загрузке построенного отчета с таким объектом, объект попытается загрузить данные аналогично как при [dltOnPreview] но, если загрузка данных была неудачной, будут показаны данные, полученные при построении отчета. ProcessingType – значение которое определяет, как будет обработана ссылка в момент построения отчета: dpString – как обычная строка, dpExpression – как выражение скрипта отчета. Установим свойство DataLink.Link у объекта «Картина» ссылкой на картинку с сайта, к примеру. Запустим отчет на выполнение. Аналогичным образом можно загружать и другие объекты, такие как: Текст, Картинка, Карты, HTMLView, PDFView. По ссылкам можно обращаться к Web API для получения данных, к примеру, OSM карт. Создадим новый отчет с бэндом «Заголовок отчета» и объектом Карты с пустым слоем (Как создать объект "Карты" можно посмотреть в нашей документации). Теперь выделим слой карты MapFileLayer1 и перейдем к свойству DataLink.Link в инспекторе объектов. Для загрузки OSM карт можно воспользоваться OpenStreetMap API. Попробуем отобразить выбранную область в FastReport VCL. API ссылка будет выглядеть следующим образом: https://www.openstreetmap.org/api/0.6/map?bbox=-6.7234%2C61.6283%2C-6.697%2C61.6379 , вставим ее в свойство DataLink.Link. Запустим отчет на построение. Данные с сервера загрузились в объект карты автоматически. Больше чем просто гиперссылки В FastReport VCL обработка всех схем и протоколов свойства DataLink происходит через фабрику. Это дает возможность разработчикам расширять функционал приложения добавляя новые схемы и протоколы без каких-то изменений в исходных кодах FastReport VCL. В дополнение, FastReport VCL автоматически регистрирует интернет транспорты в фабрике, как новые протоколы. Это позволяет получать доступ к приватным облачным хранилищам и загружать из них данные в отчет, без передачи или хранения каких-либо авторизационных данных внутри отчета. Схему взаимодействия свойства DataLink с фабрикой протоколов можно уводить ниже. Как же добавить интернет транспорт и использовать ссылки на приватный Google Drive? Сделать это можно всего в несколько шагов: Открыть палитру компонентов с интернет транспортами. Добавить TfrxGoogleDriveIOTransport на форму приложения. Назначить компоненту имя. Имя будет использоваться как схема-протокол у ссылки доступа. В примере мы назвали его “GDRIVE”. Установить подключение к Google Drive через меню “Edit connection” ( подробнее можно посмотреть в другой нашей статье ). Запустить дизайнер отчета и создать отчет, проделав шаги как в начале статьи при создании отчета с картинкой. В свойстве DataLink.Link нужно указать ссылку на файл в Google Dive, но вместо схемы(протокола) указать имя транспорта. В нашем случае это “GDRIVE“. Ссылка будет выглядеть следующим образом GDRIVE://LogoF.PNG. Можно запустить отчет на исполнение. Важно! Если данные не загружаются, убедитесь, что подключение к облачному хранилищу было выполнено корректно и токен авторизации был сохранен при подключении. Аналогичным образом можно подключаться к другим интернет транспортам. Это один из немногих мощных инструментов, которые появились с выходом FastReport VCL 2021.3 и которые, вы, можете использовать для улучшения своих проектов. Tags: VCL, Lazarus, FastReport, Delphi, HTTPS ### Загрузка файла OpenStreetMap в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/download-osm-net Summary: Посмотрите, как загружать карты из файлов OpenStreetMap (*.osm) в генератор отчетов FastReport .NET. Посмотрите, как загружать карты из файлов OpenStreetMap (*.osm) в генератор отчетов FastReport .NET. Посмотрите, как загружать карты из файлов OpenStreetMap (*.osm) в генератор отчетов FastReport .NET. В FastReport .Net верссии 2016.2 появилась возможность загружать карты из файлов OpenStreetMap (*.osm). В этой статье рассмотрим подробно как это сделать. Для начала необходимо получить файл содержащий часть карты OpenStreetMap. Для этого нужно: 1. Перейти на сайт http://www.openstreetmap.org 2. Найти интересующий город. Для этого в поле для поиска необходимо ввести название города, например, Великий Новгород. 3. Перемещая и приближая изображение, находим интересующую нас часть города. 4. Теперь нужно выделить область карты и экспортировать ее. Для этого жмем кнопку "Экспорт". И затем кликаем "выделить другую область". Станет видна подсвеченная прямоугольная область, которая и будет экспортирована. Эту область можно изменить перетаскивая ее углы. 5. Выделив нужную часть карты, жмем кнопку "Экспортировать". Появится стандартное окно браузера с предложением сохранить файл. По умолчанию карта сохраненяется в файл map.osm. Этот файл можно будет найти в папке загрузок браузера. 6. После нажания кнопки "Экспортировать" может произойти ошибка, так как OpenStreetMap не позволяет экспортировать слишком большие части карты. Чтобы избежать ошибки необходимо выделить облать поменьше. Теперь откроем полученный файл map.osm в дизайнере FastReport .Net. 1. Создадим на странице отчета карту. 2. Необходимо запустить редактор карты. Для этого нужно дважды кликнуть на объекте Карта. 3. В появившемся окне жмем кнопку добавить. 4. В следующем окне выбираем "Файл карты" и жмем кнопку открыть. 5. Появится стандартное окно открытия файла. Выбираем фильтр "Файл OpenStreetMap(*.osm)", выбираем файл и жмем кнопку открыть. 6. Опять возвращаемся к окну добавления нового слоя, здесь просто жмем "OK". 7. Теперь карта загружена и будет видна в области предварительного просмотра карты редактора. Теперь редактор карты можно закрыть нажав кнопку "ОК". На этом загрузка карты завершена. Tags: .NET, FastReport, Карта, .NET, FastReport, Карта ### Закладки в WebReport URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/tabs-web-report Начиная с версии FastReport.NET 2013.4, появилась возможность использовать закладки для просмотра нескольких отчетов в WebReport. Закладки могут быть полезны при просмотре отчетов, информация в которых взаимно дополняет друг друга.  Отчеты в каждой из закладок имеют свою собственную навигацию и могут быть привязаны каждый к своему источнику данных. Сохранение в различные форматы выполняется для каждой закладки индивидуально. В следующей версии FastReport.NET планируется реализация открытия детализированного отчета в отдельной закладке по клику на объекте страницы. Также будет добавлена возможность закрытия ненужных закладок. Закладки можно добавить непосредственно в коде приложения, например: ``` WebReport webReport = new WebReport(); webReport.Report.RegisterData(dataSet, "NorthWind"); webReport.Report.Load(report_path + "Simple List.frx"); webReport.CurrentTab.Name = "Simple List"; // tab 2 Report report2 = new Report(); report2.RegisterData(dataSet, "NorthWind"); report2.Load(report_path + "Labels.frx"); webReport.AddTab(report2, "Labels"); // tab 3 Report report3 = new Report(); report3.RegisterData(dataSet, "NorthWind"); report3.Load(report_path + "Master-Detail.frx"); webReport.AddTab(report3, "Master-Detail");   ``` Cвойство webReport.CurrentTab позволяет обратиться к активной закладке, например: webReport.CurrentTab.Report. По умолчанию доступна первая закладка. В каждой из закладок доступны свойства: Report – объект отчета, Name – наименование закладки. Если свойство Name не указано, то наименование закладки будет взято из свойств отчета или его имени файла. Также доступна коллекция закладок webReport.Tabs, которую можно использовать для обращения к закладке по её индексу, например: webReport.Tabs[0].Name. Метод webReport.AddTab  добавляет новую закладку. Для данного метода доступны следующие варианты вызова: ``` // добавление объекта отчета report public ReportTab AddTab(Report report); // добавление объекта отчета report с именем name public ReportTab AddTab(Report report, string name); // добавление объекта отчета report с возможностью указания, что отчет уже построен (reportDone = true) public ReportTab AddTab(Report report, string name, bool reportDone);   ``` Последний метод позволяет добавлять уже построенные отчеты. Во всех остальных случаях отчет будет построен при обращении к объекту. Пример добавления построенных отчетов: ``` webReport.Tabs.Clear(); string s = this.Server.MapPath("~/App_Data/Prepared.fpx"); // first Report firstReport = new Report(); firstReport.LoadPrepared(s); webReport.AddTab(firstReport, "First tab", true); // second Report secondReport = new Report(); secondReport.LoadPrepared(s); webReport.AddTab(secondReport, "Second tab", true);   ``` В дальнейшем планируется добавление настроек отображения закладок и, как я уже писал, реализация интерактивных отчетов. Пример работы закладок в нашем онлайн демо. Спасибо за внимание! Tags: .NET, FastReport, ASP.NET, MVC, .NET, FastReport, ASP.NET, MVC ### Закончилась эпоха WinForms, началась FastReport.Core.Skia URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-core-skia Summary: Новый графический движок SkiaSharp для создания качественных отчётов и корректного экспорта в разные форматы доступен в FastReport .NET. Новый графический движок SkiaSharp для создания качественных отчётов и корректного экспорта в разные форматы доступен в FastReport .NET. Новый графический движок SkiaSharp для создания качественных отчётов и корректного экспорта в разные форматы доступен в FastReport .NET. Для создания качественных отчётов и корректного экспорта их в разные форматы (PDF, Word, Excel и т.д.) необходимо использование графического движка. Начиная с самых первых версий .NET Framework компания Microsoft использовала GDI+ и его обёртку, в составе библиотеки System.Drawing. FastReport .NET уже давно использует эту же библиотеку для создания красивых и функциональных отчётов. Команда Mono разработала свою реализацию GDI+ для Unix-систем: libgdiplus, которая используется в System.Drawing.Common. Однако, и этот метод работает не идеально. Проблемы GDI+ К сожалению, в отличии от Windows, работа System.Drawing.Common на других платформах весьма специфична. К частым проблемам, которые мы получаем от наших пользователей, относятся: неправильный расчёт размеров отрисовываемого текста, отсутствие поддержки RTL-языков, неверный интервал между словами, ошибка переноса слов в предложении, отсутствие поддержки ARM-процессоров и общая нестабильность libgdiplus (ошибки вида “Out of memory”, проблемы при работе в многопоточной конфигурации). Часть из этих проблем решается ручной пересборкой libgdiplus из репозитория Mono с поддержкой Pango/Cairo . В любом случае это неудобно, особенно если ваше приложение использует контейнеризацию. Оставшаяся часть проблем влияет на качество экспорта отчётов на всех операционных системах кроме Windows. В итоге компания Microsoft официально отказалась от поддержки System.Drawing.Common на не-Windows платформах. Вот их публикация на эту тему: “ Breaking change: System.Drawing.Common only supported on Windows - .NET | Microsoft Docs “ . После неё наши пользователи начали активно интересоваться, как они смогут использовать мощную функциональность FastReport на ОС Linux или macOS. Решение Мы разработали специальную версию FastReport.Core, которая использует в качестве графического движка Skia и его обертку для .NET - SkiaSharp, под названием - FastReport.Core.Skia. Пакеты FastReport.Core.Skia и FastReport.Web.Skia доступны на нашем приватном NuGet сервере . В случае, если у вас наблюдались проблемы с отрисовкой текста под Linux с libgdiplus, настоятельно рекомендуем попробовать FastReport.Core.Skia. Для использования в вашем приложении достаточно сменить название пакета FastReport.Core -> FastReport.Core.Skia , а также добавить следующие пакеты для работы на Linux (на Windows и macOS необходимые пакеты добавляются автоматически) : - SkiaSharp.NativeAssets.Linux ( NuGet ). - HarfBuzzSharp.NativeAssets.Linux ( NuGet ). Давайте теперь попробуем сравнить FastReport.Core с libgdiplus и FastReport.Core.Skia на Linux/macOS. Для начала рассмотрим некорректный расчет длины текста после экспорта в HTML формат на ОС Linux Ubuntu 20.04. На изображениях ниже можно заметить, как даже пересобранный из исходников libgdiplus с Pango неверно отображает конец 1-ой строки, теряя часть информации, Skia работает отлично. Некорректный HTML экспорт на Linux, libgdiplus + Pango Корректный HTML экспорт на Linux, SkiaSharp Рассмотрим экспорт отчёта Unicode.frx из нашей демки с текстами на разных языках. К сожалению, даже после пересборки libgdiplus с Pango не работает c RtL-языками, такими как Hebrew, Arabic и другие. FastReport.Core.Skia умеет работать с такими языками. Некорректный PDF экспорт RtL-текста на Linux, libgdiplus с Pango записал весь текст в 1 столбик на 8 страниц Корректный PDF экспорт RtL-текста на Linux, SkiaSharp Похожая ситуация наблюдается с некоторыми восточными языками, для корректного отображения которых нужен специальный шрифт: Некорректный PDF экспорт текста на Linux, libgdiplus с Pango Корректный PDF экспорт текста на Linux, Skia. Для каждого текста автоматически выбирается подходящий шрифт. Попробуем работу FastReport.Core.Skia в ранее неподдерживаемом сценарии: работу на устройствах с ARM-процессорами, таких как Apple M1. Создадим консольное приложение .NET 6 (т.к. только .NET 6 имеет нативную поддержку ARM архитектуры для macOS) и сделаем экспорт отчёта Simple List.frx из нашего демо. И под конец напомним, что System.Drawing.Common начиная с версии 7.0 полностью перестанет поддерживать не-Windows системы, поэтому приведенные выше примеры работы libgdiplus скоро вовсе не будут работать. Ограничения: Эту версию FastReport.Core нельзя использовать, если применяется API System.Drawing: в некоторых .NET Framework проектах, NET Core 3.1/ NET 5+ WindowsForms проекты, а также в проектах с System.Drawing.Common из-за специфики данной модификации. Попробуйте новую версию FastReport.Core с поддержкой SkiaSharp и оцените все её преимущества. При возникновении каких-либо вопросов - обращайтесь в нашу Поддержку . Tags: Core, FastReport, HTML, Libgdiplus, Linux, MacOS, Mono, .NET, PDF, Windows, WinForms ### Записать в Excel XML из Delphi / Lazarus URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/excel-xml-export Summary: Сохраняем в XLSX XML и Excel 2007 из Delphi / C++Builder / Lazarus из кода с тонкой настройкой таблиц Сохраняем в XLSX XML и Excel 2007 из Delphi / C++Builder / Lazarus из кода с тонкой настройкой таблиц Сохраняем в XLSX XML и Excel 2007 из Delphi / C++Builder / Lazarus из кода с тонкой настройкой таблиц Когда задача стоит “Сохранить из Delphi или Lazarus в Excel” у разработчика просто огромный выбор - частично он описан в статье “ Как записать в XLS Biff8 из Delphi ”, там же я вкратце расписал, почему это плохой выбор. А что же тогда хорошо? А хорошо - сохранять в новый (ну, относительно новый) XML XLSX. "XML является технологией, разработанной для управления структурированными данными и отображения этих данных в виде удобочитаемого текстового файла. Язык XML соответствует отраслевым стандартам и может быть обработан многими базами данных и приложениями. С помощью XML многие разработчики могут создавать собственные настроенные теги, структуры данных и схемы. В целом XML существенно облегчает определение, передачу, проверку и интерпретацию данных в различных базах данных, приложениях и организациях. " Но Microsoft не был бы собой, если бы, традиционно не попытался сделать “свой собственный XML - c блэкджеком и ячейками!”. А потому у Excel на самом деле есть не один а целых два(!) XML-стандарта для хранения Excel-файлов: более ранний и более правильный. Как я уже неоднократно указывал, FastReport позволяет сохранять из Delphi и Lazarus ваши документы, отчёты информацию в великое множество форматов. Сделать сам отчёт - легче лёгкого,  можно посмотреть в прошлых статьях - единственное, опять остановлюсь-отмечу - следите за выравниванием ваших объектов, чтобы результирующие табличные форматы получались красивыми качественными! Так вот - для Excel XML у нас два разных(!) фильтра экспорта. Вот, полюбуйтесь! Видим окно предварительного просмотра и кнопку “ сохранить ” “Эй, уважаемый, а мне, простому программисту чем пользоваться?!” - спросите вы и будете совершенно правы. Короткий ответ - 2007 XML, более поздний. А ниже я расскажу, почему. Понятно, что программист никогда не делает “потому, что захотелось” - хочется чего-либо пользователю. В чём же разница в этих двух форматах с точки зрения пользователя, жаждущего получить таблицу Excel из приложения? Со стороны пользователя разница примерно как между rft без картинок и полноценным файлом MS Word, и первый в реальной жизни почти не встречается. В простом XML нет, ни стилей ни картинок. Просто таблица в XML. Но в момент, когда его придумывали, и выбора-то особо не было - это был огромный шаг вперёд для MS Excel. А вот Microsoft Excel 2007 XML может хранить картинки , там есть стили и тд. Это контейнер OOML. Углубиться в тему XML используемого с 2007 и далее можно тут - там целый мир! А мы просто сравним два варианта сохранения в XML и XLSX XML и решим, какой использовать рациональнее и в каких случаях. Экспорт в XML - более простой. Экспортируются только текстовые объекты. Изображения, графики, карты, штрихкоды, форматирование TfrxRichView, HTML-тэги и фоновое изображение в результирующий Excel XML не попадут. Ниже традиционно распишу, как реализовать сохранение в Excel XML полностью из кода, если не хочется или не требуется показывать предпросмотр и давать возможность отправить на печать. Окошко настроек экспорта в XML . Специально размещаю рядом для сравнения  настройки. Всё не просто, а очень просто! Средства FastReport помогают выбрать, какие страницы нашего документа отправить в Excel, диапазон или только определённые страницы. Настройки экспорта –  большее визуальное соответствие с начальным вариантом (WYSIWYG), разрыв страницы, и continuous - непрерывный документ с пропуском  промежуточных заголовков и подвалов страниц. Как будет выглядеть результат: без разделения, разделение на листы с использованием страниц отчёта, Use print on parent - каждой странице TfrxReportPage в шаблоне отчёта соответствует лист книги (при условии, что TfrxReportPage.PrintOnParent = False) или же поделить на части с задаваемым количеством строк. Открыть после экспорта – результирующий файл будет открыт сразу же после экспорта программой Microsoft Excel (Ну или что у пользователя в системе ассоциировано с файлами расширения XLSX для их открытия). Получившийся XML\ XLSX можно сохранить в виде файла с расширением .xml в памяти компьютера, отправить на FTP,  отправить по Email или загрузить в одно из облачных хранилищ (Dropbox, OneDrive, Box.com, GoogleDrive). Сравним получившиеся XLSX и Excel XML Первый скриншот - это результат сохранения в формате XLSX и как мы видим, данный формат не поддерживает данные сложнее обычного текста. А вот второй скриншот показывает нам все возможности формата XML, т.е. полную  поддержку штрихкодов, картинок. Если говорить про вес файлов, то результат ожидаемый: XLSX 48,0 КБ, XML 40,0 КБ. Разберёмся подробнее почему XLSX весит больше XML. За основу взяли вот этих прекрасных рыбок. Данный документ содержит много текста, табличные данные и 30 фотографий. Для большей наглядности сравним ещё и нестареющий Excel 97, о котором мы говорили в другой статье. Excel 97 - Формат двоичных файлов, бинарник (biff8), про сжатие тут не слышали и потому вес файла столь велик. В отличии от более позднего XML, формат 97 года поддерживает все виды изображений. Excel table (XML) - Ранняя версия XLSX, где данные хранятся как простые одиночные монолитные XML-файлы, что делает их довольно большими, по сравнению с OOXML и устаревшими двоичными форматами Microsoft Office. Но на скриншоте вес минимален - возмутился бы каждый! Ответ прост, данный вес указан за документ, где отображаться будет только текст. А теперь представьте, если бы тут всё-таки была поддержка картинок, да он бы занимал кучу места, ведь о сжатии на этом моменте всё ещё никто не знает. Кроме того, встроенные элементы, такие как изображения, хранятся в виде двоичных закодированных блоков, но недоступны для отображения. Excel 2007 XLSX (XML) - Microsoft взяли лучшее от прошлых форматов и внедрили сжатие файлов. Размер документа приблизительно на 50-75 процентов меньше, чем в предыдущих версиях. Ограниченные  возможности и возможные ограничения формата XLSX Excel 2007 Количество столбцов увеличилось с 256 до 16 384, количество строк в листе возросло с 65 536 до 1 048 576. Ускорены вычисления в больших листах, содержащих множество формул, благодаря поддержке Office Excel 2007 нескольких процессоров и многопоточных наборов микросхем. А теперь как сохранять в XLSX и XML Excel сразу из Delphi / Lazarus: Экспорт в XML Пример кода записи в XLSX XML с настройками ``` procedure TForm1.Button1Click(Sender: TObject); begin {Формируем отчёт. Перед экспортом отчёт необходимо обязательно сформировать} frxReport1.PrepareReport(); {Устанавливаем диапазон экспортируемых страниц. По умолчанию экспортируются все страницы   сформированного отчёта} frxXMLExport1.PageNumbers := '2-3'; {Устанавливаем, нужно ли формировать непрерывный документ с пропуском промежуточных заголовков и подвалов страниц.   Включение этой опции отключает TfrxXMLExport.ExportPageBreaks} frxXMLExport1.SuppressPageHeadersFooters := True; {Устанавливаем, экспортировать ли разрывы страниц в пределах листа книги, чтобы страницы при печати соответствовали страницам сформированного отчёта} frxXMLExport1.ExportPageBreaks := True; {Устанавливаем WYSIWYG} frxXMLExport1.Wysiwyg := True; {Устанавливаем порядок разбивки документа, используя свойство Split, которое может принимать следующие значения:   ssNotSplit - создаётся непрерывный документ;   ssRPages - каждому листу сформированного отчёта соответствует лист книги;   ssPrintOnPrev - каждой странице TfrxReportPage в шаблоне отчёта соответствует лист книги (при условии, что TfrxReportPage.PrintOnParent = False);   ssRowsCount - на каждом листе будет заданное в свойстве TfrxXMLExport.RowsCount количество строк.} frxXMLExport1.Split := ssNotSplit; {Устанавливаем, нужно ли открывать результирующий файл после экспорта} frxXMLExport1.OpenAfterExport := False; {Устанавливаем, нужно ли отображать прогресс экспорта   (показывать, какая страница в данный момент экспортируется)} frxXMLExport1.ShowProgress := False; {Устанавливаем, нужно ли отображать окно диалога с настройками фильтра экспорта} frxXMLExport1.ShowDialog := False; {Устанавливаем имя результирующего файла.} {Обратите внимание на то, что если не установить имя файла и отключить показ диалогового окна фильтра экспорта,} {то всё равно будет отображён диалог выбора имени файла} frxXMLExport1.FileName := 'C:\Output\test.xls'; {Экспортируем отчёт} frxReport1.Export(frxXMLExport1); end; ``` Экспорт в XLSX Экспорт из кода в XLSX Excel 2007 с настройками ``` procedure TForm1.Button2Click(Sender: TObject); begin {Формируем отчёт. Перед экспортом отчёт необходимо обязательно сформировать} frxReport1.PrepareReport(); {Устанавливаем диапазон экспортируемых страниц. По умолчанию экспортируются все страницы   сформированного отчёта} frxXLSXExport1.PageNumbers := '2-3'; {Устанавливаем, нужно ли формировать непрерывный документ с пропуском пустых линий, промежуточных заголовков и подвалов страниц (при EmptyLines = False).   При EmptyLines = True отчёт экспортируется в том виде, в котором он сформирован. Без пропуска пустых линий, промежуточных заголовков и подвалов страниц.   Включение этой опции отключает TfrxXLSXExport.SuppressPageHeadersFooters и наоборот} frxXLSXExport1.EmptyLines := True; {Устанавливаем, экспортировать ли разрывы страниц в пределах листа книги, чтобы страницы при печати соответствовали страницам сформированного отчёта} frxXLSXExport1.ExportPageBreaks := True; {Устанавливаем WYSIWYG} frxXLSXExport1.Wysiwyg := True; {Устанавливаем, нужно ли экспортировать только содержимое дата-бэндов} frxXLSXExport1.DataOnly := False; {Устанавливаем порядок разбивки документа:   при установленной опции SingleSheet все страницы документа будут расположены на одном листе   frxXLSXExport1.SingleSheet := True;   Если установить значение ChunkSize, то на каждом листе будет заданное количество строк.   SingleSheet в этом случае должно быть False   frxXLSXExport1.ChunkSize := 50;   Мы установим порядок, когда каждому листу сформированного отчёта соответствует лист книги} frxXLSXExport1.SingleSheet := False; frxXLSXExport1.ChunkSize := 0; {Устанавливаем, нужно ли открывать результирующий файл после экспорта} frxXLSXExport1.OpenAfterExport := False; {Устанавливаем, нужно ли отображать прогресс экспорта   (показывать, какая страница в данный момент экспортируется)} frxXLSXExport1.ShowProgress := False; {Устанавливаем, нужно ли отображать окно диалога с настройками фильтра экспорта} frxXLSXExport1.ShowDialog := False; {Устанавливаем имя результирующего файла. Обратите внимание на то, что если не} {установить имя файла и отключить показ диалогового окна фильтра экспорта,} {то всё равно будет отображён диалог выбора имени файла} frxXLSXExport1.FileName := 'C:\Output\test.xlsx'; {Экспортируем отчёт} frxReport1.Export(frxXLSXExport1); end; ``` Теперь мы знаем, как из Delphi и Lazarus записать в XLSX и в XML Excel 2007 (и выше) - и какой из этих форматов лучше выбирать! Tags: Delphi, Excel, FastReport, Lazarus, VCL, XLSX, Экспорты ### Запрос демо версии URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/request-successful Summary: Thank you for request, a download link will be sent to your email. Thank you for request, a download link will be sent to your email. Thank you for request, a download link will be sent to your email. Thank you for request, a download link will be sent to your email. Спасибо за обращение, ссылка на скачивание будет отправлена вам по указанному email. ### Запуск FastReport Business Graphics .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/Business-Graphics-NET Summary: Библиотека бизнес-графики FastReport .NET предназначена для приложений WinForms с поддержкой .NET Framework 4.x. Библиотека бизнес-графики FastReport .NET предназначена для приложений WinForms с поддержкой .NET Framework 4.x. Библиотека FastReport Business Graphics .NET предназначена для применения в WinForms приложениях с использованием .NET Framework 4.x.  С помощью библиотеки FastReport Business Graphics вы сможете визуализировать различные иерархические данные, построить бизнес диаграммы для последующего анализа и принятия решений. Главная задача деловой графики заключается в репрезентации данных таким образом, чтобы наглядно представленная информация ваших приложений помогала быстро получить полное представление о данных, облегчить процесс их анализа, и сделать процесс принятия бизнес-решений максимальной быстрым и эффективным.  FastReport Business Graphics  поможет интерактивно представить иерархические данные. Эта библиотека станет идеальным дополнением генератора отчетов FastReport .NET и OLAP-куба FastCube .NET. На данный момент времени в расширении предоставлены такие диаграммы как: Treemap, Sunburst, Icicle и диаграмма Ганта: Подробнее о FastReport Business Graphics .NET ### Запуск RAD Studio 10 Seattle URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/world-tour-rad-studio-2015 Summary: Запуск RAD Studio 10 Seattle Запуск RAD Studio 10 Seattle Стартует Мировой тур RAD Studio 10, который пройдет 24 сентября в Москве и 2 октября в Алматы. Участники смогут не только ознакомиться с новыми возможностями продуктов, но и своими глазами увидеть, почему комплексная среда RAD Studio 10 является универсальным решением для разработчика, позволяющая заниматься быстрым созданием приложений, обладающих всем необходимым функционалом по взаимодействию с практически любыми устройствами, корпоративными источниками данных и популярными облачными сервисами. Участие в мероприятии бесплатное! Регистрация и дополнительная информация на сайте  www.delphitour.ru ### Запуск бета-тестирования FastCube 2 VCL! URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-vcl-beta-testing Summary: Запуск бета-тестирования FastCube 2 VCL! Запуск бета-тестирования FastCube 2 VCL! Сегодня мы запускаем FastCube 2 VCL в отрытое бета-тестирование. А это значит что: - Триальные версии FastCube 2 для всех поддерживаемых сред разработки уже доступны тут: https://www.fast-report.com/ru/download/fast-cube-2/ - Все, кто приобретает FastCube 1 до момента релиза FastCube 2 (ориентировочно — май 2013) — получает FastCube 2 бесплатно, сначала beta — прямо сейчас, а потом — релиз. - Все официальные пользователи FastCube 1 могут приобрести FastCube 2 со значительной скидкой через клиентскую панель. ### Запуск коммерческой беты FastReport FMX URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/commercial-beta-fastreport-fmx Summary: Запуск коммерческой беты FastReport FMX Запуск коммерческой беты FastReport FMX Рады сообщить, что мы начинаем продажи бета-версии FastReport FMX. Все лицензионные пользователи FastReport FMX beta бесплатно получат релиз FastReport FMX. Используйте, тестируйте, пишите нам! FASTREPORT FMX - генератор отчётов для FIREMONKEY Кроссплатформенный генератор отчетов с широчайшими возможностями для Apple Mac OS X и Microsoft Windows. Совместим с Embarcadero RAD Studio XE2.  Генератор отчетов FastReport FMX — первое кросс-платформенное решение для внедрения Business Intelligence в программное обеспечение на базе среды разработки Embarcadero FireMonkey (Delphi для MS Windows и Apple Mac OS X). PS: Наши старые пользователи могут получить 50% скидку на покупку FastReport FMX. ### Запуск нового продукта от Быстрых отчетов URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-converter-fp3 Summary: Запуск нового продукта от Быстрых отчетов для конвертирования файлов из формата fp3 в любой формат данных FastReport VCL. Запуск нового продукта от Быстрых отчетов для конвертирования файлов из формата fp3 в любой формат данных FastReport VCL. Хотим представить программу для конвертирования файлов из формата fp3 в любой формат данных FastReport VCL - МоиОтчеты Конвертер. Конвертация одного или нескольких файлов, поддержка в командной строке, так и в интерактивном режиме, массовая конвертация документов FastReport VCL в популярные форматы. Всё это ждет Вас в МоиОтчеты Конвертер! ### Запуск приложения с FastReport .NET в Docker под Linux URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/application-net-docker-linux Summary: Docker производит развертывание буквально с помощью 2 команд, а контейнеры занимают меньше места, чем образы виртуальных машин. Docker производит развертывание буквально с помощью 2 команд, а контейнеры занимают меньше места, чем образы виртуальных машин. Docker производит развертывание буквально с помощью 2 команд, а контейнеры занимают меньше места, чем образы виртуальных машин. Docker – это программная платформа для быстрой разработки, тестирования и развертывания приложений. Благодаря нему мы можем на одном сервере разместить множество контейнеров. Под контейнерами понимается совокупность нашего приложения, его зависимостей и образа. Не забываем, что образ - это шаблон, который представляет из себя некий слепок файловой системы. Освежили память некоторыми терминами, теперь можно и поговорить о том, как поднять FastReport.Core + FastReport.Web в нашем собственном контейнере. Для начала нам понадобиться установить сам Docker на любой дистрибутив Linux, в нашем случае это будет Ubuntu 20.04. Об установке Docker на Linux вы можете прочитать в этой статье . После установки и проверки переходим к следующему шагу. Сейчас нам нужно создать DockerFile. Он представляет из себя обычный текстовый документ, содержащий все команды для сборки образа. Создавать и редактировать этот файл можно как в обычном текстовом редакторе, так и в том же VS code. Кстати, в VS code есть удобный плагин docker, благодаря чему написание и редактирование немного упрощается. Пример DockerFile: ``` FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base WORKDIR /app   RUN ln -s /lib/x86_64-linux-gnu/libdl-2.24.so /lib/x86_64-linux-gnu/libdl.so RUN apt-get update \ && apt-get install -y --allow-unauthenticated \ libc6-dev \ libgdiplus \ libx11-dev \ && rm -rf /var/lib/apt/lists/* ENV DISPLAY :99   FROM microsoft/dotnet:2.1-sdk AS build WORKDIR /src COPY ["fastreport_net", "FastReport.Net"] RUN dotnet restore "FastReport.Net/Demos/Core/FastReport.Core.Web21.MVC/FastReport.Core.Web21.MVC.csproj" COPY . . WORKDIR "/src/FastReport.Net/Demos/Core/FastReport.Core.Web21.MVC" RUN dotnet build "FastReport.Core.Web21.MVC.csproj" -c Release -o /app   FROM build AS publish RUN dotnet publish "FastReport.Core.Web21.MVC.csproj" -c Release -o /app   FROM base AS final WORKDIR /app COPY --from=publish /app . ENTRYPOINT ["dotnet", "FastReport.Core.Web21.MVC.dll"]   ``` Этот докер файл разворачивает образ Demo приложения FastReport.Core.Web21.MVC, в котором используется FastReport.Web и FastReport.Core. Пощупать его самостоятельно вы можете по следующей ссылке , либо при скачивании FastReport.NET найдите директорию Demos\Core\FastReport.Core.Web21.MVC . После написания DockerFile его непременно нужно собрать. Делается это очень просто. Запускаем терминал из директории, в которой находится DockerFile и вписываем в него команду: ``` sudo docker build ``` После успешной сборки нужно развернуть контейнер с помощью команды:  ``` sudo docker run -d -p 8080:80 build/fastreport ``` В этой команде мы пробрасываем порт 8080 и даем название образу “build/fastreport”. После успешного старта контейнера открываем http://localhost:8080/. Затем переходим на страницу своего приложения, если были выполнены и решены все зависимости, то перед нами предстанет ваш проект: Подытожим. Docker производит развертывание буквально с помощью двух команд, а контейнеры занимают намного меньше места, чем образы виртуальных машин, что дает нам большую экономию места и времени. Tags: Core, FastReport, Libgdiplus, Linux, .NET, Ubuntu ### Запущена программа поддержки образовательных учреждений URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-academic-program Summary: Запущена программа поддержки образовательных учреждений Запущена программа поддержки образовательных учреждений Мы рады сообщить о запуске программы поддержки образовательных учреждений FastReport Academic! В рамках программы любой вуз или ссуз может получить лицензию на продукты FastReport VCL и FastReport .NET в образовательных целях бесплатно и бессрочно. Для этого требуется лишь заполнить форму обратной связи на странице программы и приложить скан лицензии образовательного учреждения. Крупнейшие российские вузы уже обучают базам данных и генераторам отчетов с помощью FastReport Academic, приглашаем вас присоединиться. FastReport Academic ### Знакомство с форматом отчётов FastReport.NET на примере очень простого отчёта. URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/quick-look-minimal-net Задумывались ли вы каким образом образом работает генератор отчётов, что представляет из себя шаблон отчёта и из чего состоит подготовленный отчёт? Если вы не получили ответ, то давайте вместе попробуем найти ответы на эти вопросы. С помощью File->New создаём новый отчёт.  Превращаем его в минимальный отчёт, удаляя все бэнды кроме заголовка.  Помещаем простое текстовое поле на бэнд заголовка, как показано на следующем рисунке: Одна страница. Один бэнд не странице. Одно текстовое поле на бэнде. При сохранении этого отчёта получаем следущий файл, содержащий шаблон отчёта (файл с расширением FRX). ```   ``` Это исходный код отчёта, на основе которого строится отчёт. В этом примере отсутствуют позиции элементов, а значит левый верхний угол объекта совпадает с левым верхним углом "родительского" объекта . Подготовленный отчёт будет выглядеть следующим образом: Подготовленный отчёт сохраняется в файл с расширением FPX. Подготовленный отчёт это сжатый алгоритмом gzip файл в формате XML. Ниже показано распакованное содержимое подготовленного отчёта: ```   ``` Как видно из примера, элементы отчёта "мигрировали" в секцию . Само тело отчёта, содержащее непосредствено данные, содержатся в секции .  В виду того, что мы использовали нетипично простой отчёт, его тело выродилось в набор ссылок на элементы отчёта. В нашем случае тело отчёта выродилось до следующих ссылок на элементы отчёта: ```   ```  В данном случае ссылается на описание страницы из шаблона отчёта, на странице расположен бэнд , который ссылается на , который содержит элемент , который ссылается на текстовое поле . Чтобы понять простые идеи, заложенные в формат FPX, слегка модифицируем подготовленный отчёт в тестовом редакторе, добавив данных в тело отчёта. ```   ```  И откроем полученный отчёт в режиме предварительного просмотра. С помощью простой операции в подготовленный отчёт были добавлены новые данные. При этом использовалось простое правило - каждый элемент отчёта несёт минимум необходимой информации, необходимой для корректного отображения. Информация, которая не меняется в процессе построения отчёта, берётся из шаблона (секция ). Теперь вы можете добавить новые данные на страницу отчёта используя простой текстовый редактор. Что делать, если данные не поместились на одну страницу? Для ответа на этот вопрос ещё раз модифицируем подготовленный отчёт, добавив новую страницу и новые даенные: ```   ```  В результате мы получили отчёт из двух страниц, как показано на следующем рисунке: В этом посте нет ни слова о методах внедрения картинок в подготовленный отчёт. Оставайтесь с нами и вы узнаете как в отчётах хранятся картинки и много другой полезной информации. Tags: .NET, FastReport, .NET, FastReport ### Изменение наших банковских реквизитов URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/new-bank-details Summary: Изменение наших банковских реквизитов Изменение наших банковских реквизитов У ООО "Фаст Репортс" с 26.08.2014 изменились рублёвые банковские реквизиты. Обратите внимание перед оплатой счетов! Новые банковские реквизиты:   р/с 40702810347010000901 в Филиале "Южный" ОАО "УРАЛСИБ" г. Краснодар к/с 30101810400000000700 БИК 040349700 ### Изменения в лицензионном соглашении и условиях использования FastCube .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-new-eula Summary: С 30 сентября вступает в силу обновленное лицензионное соглашение FastCube .NET С 30 сентября вступает в силу обновленное лицензионное соглашение FastCube .NET Уведомляем вас об изменениях в соглашении об использовании и распространении для .NET-продуктов. Изменения коснулись пункта 1.5: был добавлен список dll и xml, которые Пользователь и/или Конечный пользователь имеют право использовать в составе КПО. Ознакомиться с изменениями можно  по этой ссылке . Новая версия вступает в силу с 30 сентября 2024 года. Также информируем владельцев лицензий FastCube .NET о переходе продукта на подписочную модель лицензирования с 30 сентября. Техническая поддержка и обновления для приобретенных ранее лицензий на этот продукт более будут недоступны.  Переход на подписочную лицензию означает, что лицензия действительна 12 месяцев с момента покупки. В течение этого периода вы получаете техническую поддержку и обновления. По истечении этого срока, чтобы продолжать получать обновления и поддержку, вы сможете продлить ее за 50% от полной стоимости (скидка действует в течение 1 месяца после истечения срока действия лицензии). Будем рады ответить на вопросы по почте support@fastreport.ru . ### Импорт RDL отчета в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/rdl-import-fastreport-net Что такое импорт RDL Отчет  RDL  - это шаблон отчета в формате  Report Definition Language . Формат используется в  Microsoft Reporting Services . Отчеты можно создавать в  Microsoft Visual Studio  и  Microsoft Report Builder , а также некоторых сторонних редакторах. Отчеты хранятся в файлах с расширением  rdl  или  rdlc .  Импорт RDL  - это средство, которое позволяет открыть  RDL  отчет в дизайнере  FastReport .NET . То есть у пользователей, которые ранее пользовались  RDL  отчетами и перешли на  FastReport .NET  теперь нет необходимости заново создавать все старые отчеты. Отчеты можно просто и быстро импортировать.  Импортирование отчета RDL Очень простая операция. Необходимо всего лишь в дизайнере  FastReport .NET  перейти в меню  File  и выбрать пункт  Open... . В появившемся окне нужно выбрать фильтр  RDL files (*.rdl;*.rdlc) . Выбранный файл будет автоматически преобразован в отчет  FastReport .NET  и открыт в дизайнере.  На двух рисунках ниже отчет в формате  RDL  (слева) и тот же самый отчет преобразованный в формат  FastReport .NET . Tags: .NET, FastReport, .NET, FastReport ### Импорт документов из Word уже доступен в FastReport .NET Ultimate URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/ultimate-novyj-plagin-importa-word Summary: С релизом 2025.2 подписка на Ultimate .NET стала еще выгодней! Все владельцы лицензии получили дополнительный плагин для импорта документов из Microsoft Word. С релизом 2025.2 подписка на Ultimate .NET стала еще выгодней! Все владельцы лицензии получили дополнительный плагин для импорта документов из Microsoft Word. С релизом 2025.2 подписка на Ultimate .NET стала еще выгодней! Все владельцы лицензии получили дополнительный плагин, который позволяет импортировать документы Microsoft Word (.docx). При открытии такого файла он преобразуется в шаблон отчета FastReport .NET (.frx). Стоимость подписки на Ultimate .NET осталась прежней. Ввиду больших отличий в форматах полное соответствие двух документов не всегда возможно. Однако, данный плагин позволяет значительно сократить время создания шаблона на основе существующего docx-файла. На данный момент наш плагин не поддерживает: подсветку фона части строки, шейпы (Shapes), а также вложенную векторную графику Vector Markup Language (VML) и OLE объекты.  Чтобы уже сейчас начать использовать этот плагин в своём бизнес-решении обновите свою лицензию до версии 2025.2 в личном кабинете . Затем по инструкции ниже зарегистрируйте dll в FastReport, либо подключите nuget пакет FastReport.Plugins.OOXMLImport. Об особенностях работы импорта и как подключить плагин, можно прочитать в статье. Читать статью ### Импорт отчета из формата RDL в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/rdl-import-net Summary: Рассказываем об ограничениях конвертации отчетов из других генераторов на примере формата от Microsoft Reporting Services. Рассказываем об ограничениях конвертации отчетов из других генераторов на примере формата от Microsoft Reporting Services. Рассказываем об ограничениях конвертации отчетов из других генераторов на примере формата от Microsoft Reporting Services. Как вы знаете генераторы отчетов существуют очень разные, и работают также по-разному. Могут быть ситуации, когда в одной системе в принципе невозможно создать точно такой же отчёт, как в другой. Даже если человек будет создавать отчет с нуля, стопроцентная идентичность достигнута быть не может. Наша команда отлично знает, как работать с ядром генерации FastReport, но в то же время мы не можем знать, как устроена система отчётов в других генераторах. Для решения этой проблемы нужны полные исходники таких решений.   Что такое импорт RDL Отчет RDL — это шаблон отчета в формате Report Definition Language . Формат используется в Microsoft Reporting Services. Отчеты можно создавать в Microsoft Visual Studio и Microsoft Report Builder, а также некоторых сторонних редакторах. Отчеты хранятся в файлах с расширением rdl или rdlc. Импорт RDL — это средство, которое позволяет открыть RDL отчет в дизайнере FastReport .NET. Наш импорт RDL работает именно с файлом отчета, в котором хранится не вся информация необходимая для полной конвертации. В том же RDL источники данных зачастую хранятся на сервере, а в отчёте их нет. Конвертации в FastReport .NET подлежат только те объекты, которые аналогичны объектам FastReport. Соответственно, конвертироваться будет только общий вид с некоторыми простыми свойствами объектов. Скрипты, формулы и выражения конвертироваться не будут. Импортирование отчета RDL Откройте дизайнер FastReport .NET, перейдите в меню «File» и выберете пункт «Open». В появившемся окне выберите фильтр RDL files (*.rdl;*.rdlc). Выбранный файл будет автоматически преобразован в отчет FastReport .NET и открыт в дизайнере. На двух рисунках ниже отчет в формате RDL и тот же самый отчет, преобразованный в формат FastReport .NET. Самое главное - полная конвертация, к сожалению, невозможна. Открыть и сразу запустить  сложный отчет не получится, с большой вероятностью он не заработает. И для его корректной работы однозначно потребуется доработка руками. Tags: .NET, FastReport, .NET, FastReport, Конвертирование ### Импорт отчетов Crystal Reports в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/crystal-reports-import-net Summary: Отчет Crystal Reports - это шаблон отчета созданный с помощью одноименного дизайнера. Данные отчеты хранятся в файлах с расширением rpt. Отчет Crystal Reports - это шаблон отчета созданный с помощью одноименного дизайнера. Данные отчеты хранятся в файлах с расширением rpt. Отчет Crystal Reports - это шаблон отчета созданный с помощью одноименного дизайнера. Данные отчеты хранятся в файлах с расширением rpt. Отчет  Crystal Reports - это шаблон отчета созданный с помощью одноименного дизайнера. Данные отчеты хранятся в файлах с расширением rpt . Импортирование отчета Crystal Reports Конвертор реализован в виде плагина. Его можно скачать здесь в разделе Дополнения . Плагин нужно скомпилировать в Visual Studio и подключить в дизайнере FastReport .NET . Для этого нужно перейти в меню View пункт Options... и в окне настроек на вкладке Plugins добавить плагин. После перезапуска дизайнера в окне открытия файла появится фильтр Crystal Reports file (*.rpt) . О том как скомпилировать и подключить плагин подробно написано в прилагающемся к нему файле readme.txt . На рисунках ниже представлен отчет Crystal Reports (слева) и тот же отчет импортированный в FastReport .NET (справа). Tags: FastReport, .NET, Конвертирование ### Импорт отчетов из JasperReports в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/converter-jasper-reports-dotnet Summary: В FastReport .NET был добавлен плагин импорта отчётов из JasperReports, который автоматически конвертирует документы в формат .frx В FastReport .NET был добавлен плагин импорта отчётов из JasperReports, который автоматически конвертирует документы в формат .frx В FastReport .NET был добавлен плагин импорта отчётов из JasperReports, который автоматически конвертирует документы в формат .frx Мы добавили новый импорт отчетов из JasperReports. Для того чтобы им воспользоваться необходимо в дизайнере FastReport .NET перейти в меню «File» и выбрать пункт «Open...». В появившемся окне нужно выбрать фильтр «JasperReports files (*.jrxml)». Выбранный файл будет автоматически преобразован в отчет FastReport .NET и открыт в дизайнере. Полученный отчет в результате импорта может иметь отличия, также скорее всего этот отчет нужно будет доработать – изменить свойства объектов и добавить подключения. Объекты «Таблица» JasperReports будут конвертироваться в подотчеты со схожими возможностями. Также в отчетах JasperReports могут присутствовать пользовательские элементы отчета, импорта которых нет, такие объекты нужно будет заменять аналогами самостоятельно пользователю.  В остальном, расположения, размеры и типы объектов с некоторыми свойствами будут совпадать с теми, которые были в отчете JasperReports. Сравнительная таблица отчетов JasperReports и FastReport .NET Возможность FastReport .NET JasperReports Объекты отчёта   Текст + +   Фигура + +   Изображение + +   SVG + +   Подотчёт + +   Служебный текст + -   Диаграмма + +   Баркод + +   Двумерный баркод + +   Карта + +   Почтовый индекс + -   Текст в ячейках + -   Rich Text + +   Градиент + -   Cross-tab (Матрица) + +   Улучшенная матрица (AdvMatrix) + -   Таблица + +   Контейнер + +   Индикатор + +   Чекбокс + -   Искрографик + -   HTML + +   Цифровая подпись + - Возможности отчётов   Диалоговые формы + -   Наследование отчётов + -   Master-detail-subdetail + +   Drill-downs + -   Группировка + +   Сортировка + +   Заголовки и подвалы + +   URLs и hrefs + +   HTML тэги в текстовых объектах + +   Безразмерные страницы + -   Компонент предварительного просмотра + +   Дизайнер отчётов в среде разработки + +   Дизайнер отчётов в исполняемой программе + +   Поддержка High DPI - +   Визуальный построитель SQL запросов + -   Языки интерфейса 29 1 Пример отчета при импорте из JasperReports в FastReport .NET Оригинал, который был построен в пробной версии JasperReports: Результат импорта с небольшой доработкой: На этих примерах есть заметное отличие, при одинаковом количестве строк часть страницы, занимаемая таблицей разная – это связано с различным расстоянием между линиями текста. Рассмотрим другой отчёт, который содержит в себе штрих-коды Code 128, Codabar, 2/5 Interleaved, 2/5 Industrial. Результат конвертации в дизайнер FastReport представлен на следующем скриншоте: Этот импорт должен позволить пользователям FastReport очень быстро конвертировать отчет из JasperReports с максимально возможной точностью. Это сократит трудозатраты на перенос и создание привычных отчётов в нашем дизайнере. Tags: Конвертирование, FastReport, .NET ### Импорт отчётов из Crystal Reports в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/import-reports-from-crystal-reports-to-fastreport-net Summary: Импортируем шаблон отчёта из формата RPT, созданного в Crystal Reports, в формат FRX, который используется в FastReport. Импортируем шаблон отчёта из формата RPT, созданного в Crystal Reports, в формат FRX, который используется в FastReport. Импортируем шаблон отчёта из формата RPT, созданного в Crystal Reports, в формат FRX, который используется в FastReport. Зачастую разработчики генераторов отчётов создают собственные форматы для хранения шаблонов. Например, FastReport использует формат .frx для хранения шаблонов и .fpx для хранения подготовленных к экспорту отчётов – а в Crystal Reports используются файлы формата .rpt. Из этой статьи вы узнаете, как импортировать шаблон отчёта из формата RPT, созданного в Crystal Reports, в формат FRX, который используется в FastReport. Для импорта шаблонов вам нужно иметь установленным настольный дизайнер отчётов. Импорт происходит при открытии им корректного RPT-файла. Добавить в дизайнер эту возможность можно, если скомпилировать специальное дополнение (плагин). Рассмотрим весь процесс от начала и до конца. Во-первых, загрузите проект плагина. Вы можете найти его по ссылке, в разделе Дополнения по ссылке .  Необходимая ссылка подписана “ Конвертер из Crystal Reports (*.rpt) в формат FastReport .NET (*.frx) ”. При нажатии на неё скачается архив, который нужно распаковать в удобное для вас место. Затем нужно открыть файл FastReport.RPTImportPlugin.sln с помощью Visual Studio. Загрузите пакет, необходимый для работы плагина. Он называется “ Crystal Reports, version for Visual Studio ”, и скачать его можно по следующей ссылке (необходима регистрация на сайте sap.com). По ссылке будет доступно несколько вариантов скачивания. Скачайте и установите следующий пакет, который есть в 32-битной и 64-битной версиях: SAP Crystal Reports for Visual Studio (SP30) runtime engine for .NET framework MSI. В проекте FastReport.RPTImportPlugin, который вы скачали, будут настроены следующие ссылки: Удалите все ссылки, упоминающие FastReport и CrystalDecisions, и затем добавьте ссылки на актуальные файлы: 1) CrystalDecisions.CrystalReports.Engine.dll и CrystalDecisions.Shared.dll . После установки пакета, который вы скачали, эти DLL-файлы будут расположены по следующему пути: ``` C:\Windows\Microsoft.NET\assembly\GAC_MSIL\CrystalDecisions.CrystalReports.Engine C:\Windows\Microsoft.NET\assembly\GAC_MSIL\CrystalDecisions.Shared ``` 2) FastReport.dll, FastReport.Compat.dll и FastReport.DataVisualization.dll . Эти DLL расположены в корневой папке установленного FastReport .NET. Если вы не меняли путь установки по умолчанию, то вы найдёте их здесь: ``` C:\Program Files (x86)\FastReports\FastReport.Net ``` Убедитесь, что вы используете корректные DLL! Если у вас установлено несколько версий FastReport .NET, вы можете ошибочно выбрать DLL неправильной версии, и дизайнер не распознает плагин или же не запустится. После этих действий ваш список ссылок будет выглядеть таким образом: Скомпилируйте проект. После, перейдите в папку FastReport.RPTImportPlugin\bin\Debug и найдите файл FastReport.RPTImportPlugin.dll. Откройте дизайнер отчётов, и в меню “Настройки…” выберите вкладку “Плагины”. Нажмите на кнопку “Добавить”, и выберите файл FastReport.RPTImportPlugin.dll. После этого вы увидите его в списке установленных плагинов: После добавления плагина перезапустите дизайнер, и выберите пункт “Открыть…”. После этого откроется меню выбора файлов, где в селекторе формата файлов должен появиться новый пункт: Внимание! Если при компиляции вы выбрали DLL, которые не совпадают с DLL, используемыми дизайнером, то: Дизайнер может не запуститься при повторном запуске. Пункт “Файл Crystal Reports” не будет добавлен в меню экспорта. В этих случаях повторно откройте проект FastReport.RPTImportPlugin, удалите из него FastReport.dll, FastReport.Compat.dll и FastReport.DataVisualization.dll, добавьте верные DLL и перекомпилируйте плагин. Если дизайнер не открывается после замены DLL, перепроверьте все остальные шаги. Если же даже это не помогло, то удалите ссылку на плагин из Config-файла и обратитесь в нашу поддержку. Файл Config находится по следующему пути, и содержит ряд настроек FastReport .NET: ``` …AppData\Local\FastReport ``` Чтобы удалить соединение с плагином, найдите и удалите строку, начинающуюся с Заметьте, что при импорте есть некоторые ограничения, вызванные разными техническими причинами. Например, не будут сохранены настроенные соединения с источниками данных, а также некоторые объекты могут отображаться с небольшими неточностями. Если вас не устраивает какой-либо аспект импорта шаблонов, обращайтесь в нашу техническую поддержку. Мы всегда стремимся улучшать наши продукты, и в том числе – улучшаем качество импорта отчётов. Подытожим, к этому моменту у вас должен быть скомпилированный плагин, который вы добавили в дизайнер FastReport. После этих действий вы сможете открывать RPT-файлы, созданные в Crystal Reports, в дизайнере FastReport .NET и сохранять их как FRX-файлы, т.е. шаблоны отчётов для FastReport .NET. Tags: .NET, Visual Studio, FastReport, Отчет, Конвертирование ### Индикатор наличия событий у объекта в дизайнере отчетов FastReport.Net URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/indicator-presence-events-designer-net В FastReport 2018.2.3 появились новые настройки дизайнера отчетов– внешний вид объектов. Настройки можно открыть в меню Файл – Настройки . Новый раздел пока содержит только две настройки: Отображать индикатор на бэндах с событиями; Отображать индикатор на объектах с событиями. Обе настройки позволяют включить индикацию наличия событий у объекта. Таким образом можно быстро найти в отчете объекты, для которых существует код в скрипте отчета. Индикатор представляет собой небольшой красный треугольник в левом верхнем углу объекта: Например, выделим объект CheckBox и посмотрим в инспекторе свойств события для него: Действительно, быстро и удобно искать объекты с событиями. Альтернативный путь – перейти в раздел Код, найти нужное событие и прочитать название объекта отчета. Затем нужно вернуться к странице отчета и, в инспекторе свойств выбрать нужный объект из выпадающего списка. Согласитесь, это очень неудобно. С индикатором, вы можете открыть большой, сложный отчет и мгновенно обнаружить объекты с событиями. Очевидно, что новый раздел настроек «Внешний вид объектов» будет пополняться и другими интересными опциями. Tags: .NET, FastReport, .NET, FastReport ### Интеграция с Business Graphics в FastCube .NET 2021.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastcube-net-2021.1 Summary: Добавлено расширение FastReport Business Graphics. Это новый продукт для интерактивной визуализации данных из приложений. Добавлено расширение FastReport Business Graphics. Это новый продукт для интерактивной визуализации данных из приложений. Добавлено расширение FastReport Business Graphics.  Это новый продукт для интерактивной визуализации данных из приложений. Подробнее о FastReport Business Graphics Добавлен компонент ListDataSet, позволяющий загружать в куб данные, используя Windows Forms Data Binding. Добавлена возможность загружать данные в куб, используя механизм Windows Forms Data Binding, применимый в стандартных элементах управления: DataGridView, ListView и Combobox. Windows Forms Data Binding работает с данными посредством компонента BindingSource, который выступает в роли прокси (больше информации по теме можно найти в MSDN). Далее приведен небольшой пример загрузки данных из List<>. 1. Объявляем класс ProductInfo ``` public class ProductInfo { public String Name { get; set; } public String Group { get; set; } public int Count { get; set; } } ``` 2. Создаем список записей ProductInfo ``` List CreateProducts() { return new List { new ProductInfo {Group = "Bakery products", Name = "Ciabatta", Count = 3}, new ProductInfo {Group = "Bakery products", Name = "Bread", Count = 5}, new ProductInfo {Group = "Bakery products", Name = "Croissant", Count = 1},   new ProductInfo {Group = "Alcohol", Name = "Wine", Count = 6}, new ProductInfo {Group = "Alcohol", Name = "Whiskey", Count = 2}, new ProductInfo {Group = "Alcohol", Name = "Beer", Count = 5},   new ProductInfo {Group = "Dairy products", Name = "Yoghurt", Count = 5}, new ProductInfo {Group = "Dairy products", Name = "Milk", Count = 4} }; } ``` 3.  Настраиваем Cube и slice ``` private void Form1_Load(object sender, EventArgs e) { // настраиваем источник данных listDataSet1.DataSource = CreateProducts(); // подгружаем данные в Cube cube1.Active = true; // настраиваем Slice slice1.YAxisContainer.AddSliceField(slice1.SliceFields.GetFieldByName("Group")); slice1.YAxisContainer.AddSliceField(slice1.SliceFields.GetFieldByName("Name")); var measure = new FastReport.Olap.Slice.MeasureField(slice1, FastReport.Olap.Types.AggregateFunction.Sum, slice1.SliceFields.GetFieldByName("Count")); slice1.MeasuresContainer.AddMeasure(measure); slice1.XAxisContainer.AddMeasuresField(); } ``` В результате получаем следующий вид: Полный пример расположен в каталоге Demos\C#\DataBindings. Другие изменения: - В контекстное меню XAxisZone, YAxisZone компонента SliceGrid добавлен пункт Copy, копирующий в буфер обмена заголовок выбранного узла - В выпадающих списках вставка из буфера осуществляет поиск значения - При двойном клике по значению в выпадающем фильтре измерения осуществляется позиционирование на это значение в SliceGrid ### Интеграция с МоиОтчеты Облако в FastReport Mono 2023.1 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/news/fastreport-mono-2023.1 Summary: В релизе FastReport Mono 2023.1 добавилась интеграция с МоиОтчеты Облако, конвертор из JasperReports, был улучшен MSChartObject. В релизе FastReport Mono 2023.1 добавилась интеграция с МоиОтчеты Облако, конвертор из JasperReports, был улучшен MSChartObject. В предновогоднем релизе FastReport Mono 2023.1 мы добавили: частичную интеграцию с МоиОтчеты Облако , конвертор шаблонов из JasperReports, подключение к хранимым процедурам в MsSQL, улучшили объект MSChartObject и многое другое. Интеграция с МоиОтчеты Облако FastReport .NET , FastReport Core, FastReport Mono начали поддерживать некоторое взаимодействие с МоиОтчеты Облако . Скачивание и загрузка отчетов Теперь Вы можете скачать отчет из хранилища МоиОтчеты Облако и работать над ним в дизайнере, или же наоборот – загрузить свои файлы в Облако. Предварительный веб-просмотр Помимо стандартного предпросмотра появился и предварительный веб-просмотр. Отчет можно просмотреть таким образом, только если он был открыт из Облака. Подключение к источникам данных МоиОтчеты Облако МоиОтчеты Облако  может хранить подключения к источникам данных. С этого момента вам доступна возможность добавить эти источники данных в собственный отчет. А также появилась возможность загружать подключение к МоиОтчеты Облако. Чтобы узнать подробнее о новых возможностях, прочитайте эту статью. Улучшения валидатора отчетов Повышена скорость работы Теперь валидатор отчетов работает в отдельном потоке. А также, значительно оптимизирована скорость его работы. Изменения можно заметить при обработке отчетов с большим количеством ошибок. Пока валидатор проверяет отчет, в окне проверки отображается соответствующее сообщение. При этом можно редактировать отчет. По завершению работы валидатора, появится таблица с ошибками. Настройка таблицы валидатора Для удобства добавлен новый столбец с номерами ошибок. Его отображение можно включить или отключить через контекстное меню таблицы. Таким же образом, можно настраивать отображение столбца с типом ошибки. Конвертор шаблонов JasperReports Добавлена возможность конвертировать шаблоны отчетов из JasperReports в шаблоны FastReport .NET. В отчетах JasperReports могут присутствовать объекты, которые не поддерживаются дизайнером FastReport. Эти объекты не будут конвертироваться, либо будут заменены другими таким образом, чтобы построенный отчет был максимально похож на созданный в JasperReports. Подробнее читайте в статье. Улучшения и исправления объекта MSChartObject Объект MSChartObject имеет большое количество свойств и настроек. Наиболее часто используемые из них вынесены в редактор объекта. Свойства, недоступные в редакторе, можно изменять с помощью инспектора объектов. Однако с этими свойствами возникала проблема - при их изменении, отчет не считался измененным. В результате сохранение было недоступно. Чтобы сохранить отчет, нужно было изменить какое-нибудь другое его свойство или объект. Кроме того, при подготовке отчета и после закрытия окна предварительного просмотра, значения указанных свойств сбрасывались на значения по умолчанию. В новой версии эта ошибка исправлена. Подключение к хранимым процедурам в MsSQL Добавлена возможность подключаться к хранимым в MsSQL процедурам. Ранее это было доступно с помощью запроса к базе данных. Теперь к процедурам можно подключиться гораздо удобнее, с помощью интерфейса подключения таблиц базы данных. Они будут отображаться в окне выбора вместе с таблицами. При выборе процедуры будет появляться окно с настройками параметров, если они есть. Подробнее читайте в статье. Улучшения экспортов Опция "Для печати" в RTF экспорте Добавлено новое свойство PrintOptimized и соответствующая опция в окне экспорта. Включение этой настройки значительно увеличит качество изображения при экспорте. Однако, размер выходного файла тоже увеличится. Свойство UseFileStream в Excel 2007 экспорте Добавлена новая опция UseFileStream для экспорта в Excel 2007. Ее можно использовать только при экспорте из кода в файл. Эта опция полезна при экспорте отчетов с большим количеством страниц (несколько десятков тысяч) в нескольких потоках. Тем самым это позволит избежать ошибок с нехваткой памяти. В остальных случаях использование особого смысла не имеет и не рекомендуется. Пример: ``` Report report = new Report(); Excel2007Export export = new Excel2007Export(); export.UseFileStream = true; report.Export(export, "report.xlsx"); ``` Финансовый формат при экспорте в Excel 2007 Теперь денежный формат данных можно экспортировать как финансовый. Для этого добавлена соответствующая опция в окне экспорта и свойство CurrencyToAccounting. Полный список изменений 2023.1 [Engine] + добавлено свойство Report.IsPrepared; + добавлен способ отображения текста TextRenderType.Inline; + реализован конвертер шаблонов JasperReports; + реализовано подключение к хранимым процедурам в MsSQL; * повышена минимальная версия .NET Framework с 4.0 до 4.6.2; * получение JSON в источнике данных вынесено в интерфейсную часть; - исправлена ошибка, приводившая к System.ArgumentException, когда свойство TextObject.FontWidthRatio равно нулю; - исправлена подсветка текста в RTF парсере; - исправлена ошибка многократных запросов на получение картинки при использовании URL в ImageLocation; - исправлена ошибка в функции IsNull; - исправлена ошибка отрисовки RichObject с выровненными изображениями; - исправлена ошибка, из-за которой неверно производился расчёт вертикальных расстояний при конвертации RichObject в текст; - исправлена ошибка в объекте AdvMatrix при обновлении отчета; - исправлена ошибка с получением строки JSON из JsonTableDataSource; - исправлена ошибка, приводящая к бесконечному циклу при построении таблицы, если на странице недостаточно места для одной строки; [Designer] + добавлена возможность создания вычисляемого столбца для IEnumerable источников данных; + добавлено окно с сообщением о загрузке отчета при открытии файла; + добавлен столбец с номерами ошибок в таблице проверки отчета; + добавлена возможность скрывать и показывать столбцы с номером и типом ошибки в таблице проверки отчета; + добавлено окно, уведомляющее о попытке сохранить отчет, который уже был изменен; + добавлена возможность показывать веб-превью отчета, открытого из FastReport Cloud; + добавлена возможность взаимодействия с источниками данных в Облаке - скачивание, загрузка, обновление; * увеличена скорость работы валидатора отчетов; * кнопка удаления бэнда теперь отключена в ситуациях, когда бэнд удалить нельзя; * изменено название корневой папки в форме FastReport Cloud, теперь зависит от выбранной локализации; * теперь в мастере запроса нельзя создать таблицу, если уже есть другая таблица с таким же именем; - исправлено представление дерева данных с источником данных IEnumerable, столбец которого не добавлялся, если он состоит из значимого типа; - исправлена ошибка с локализацией кнопки "Удалить" в свойствах отчета на вкладке "Скрипт"; - исправлена ошибка с выделением объекта после щелчка по строке в окне валидации отчета; - исправлена ошибка, из-за которой не менялся выбранный объект при изменении высоты бэнда мышью; - исправлена проблема с исключением System.OverflowException при редактировании текстового объекта без редактора; - исправлена ошибка, вызывающая исключение System.StackOverflowException при копировании форматирования; - исправлено выделение объекта, расположенного на неактивной странице, при нажатии на строку в окне "Проверка"; - исправлено отображение прогресса обновления списка ошибок в окне "Валидация" при изменении отчета; - исправлена ошибка с недопустимым значением при изменении цвета линии в редакторе MSChartObject; - исправлен порядок переключения клавишей "Tab" в формах подключений; - исправлена ошибка при которой не сохранялись свойства границ осей диаграммы, при их изменении в редакторе; - исправлены некорректные значения при изменении интервала в полосах на осях в MSChartObject; - исправлена ошибка, возникающая при удалении бэнда через конфигуратор бэндов, если выбран классический режим отображения бэндов; - исправлена ошибка, возникающая при нажатии кнопки "Удалить" на форме настройки бэндов, если в отчете отсутствуют бэнды; - исправлена ошибка, возникающая при удалении бэндов с рабочей области при удержании левой кнопки мыши; - исправлено восстановление состояния GridControl при закрытии формы редактора столбцов; - исправлена ошибка, возникающая при нажатии на кнопку "Отмена" в редакторе колонок объекта Grid; - исправлено отображение метки об изменении отчета при изменении MSChartObject; - исправлено перемещение столбцов элемента управления сеткой в форме редактора столбцов; - исправлены ошибки при перетаскивании объектов из дерева отчета на страницы и вкладку "Код"; - исправлены ошибки в окне конструктора запроса, при добавлении таблицы на рабочую область и при создании связей между таблицами; - исправлена ошибка, приводившая к исключению System.NullReferenceException при отключении вкладки "FRX", если она выбрана в дизайнере [Preview] + добавлена подсказка для поля "Копия" в форме "Отправить по E-mail"; + добавлены элементы управления масштабированием - исправлено отображение формы печати при увеличении масштабирования дисплея; - исправлена ошибка, при которой новые экспорты не появлялись в меню; - исправлен порядок переключения клавишей "Tab" в формах экспортов; - исправлен левый отступ RichObject; [Exports] + добавлена опция "Для печати" в RTF экспорте; + добавлена возможность экспорта денежного формата данных в качестве финансового в Excel 2007 экспорте; + добавлена опция UseFileStream для экспорта Excel 2007; * увеличены формы экспорта для корректного отображения надписей при разных локализациях; - исправлена ошибка с экспортом линий, нарисованных справа налево или снизу вверх, при экспорте в послойный HTML; - исправлена ошибка экспорта курсивного шрифта Tahoma в PDF; - исправлена ошибка, приводящая к System.ArgumentException при экспорте в поток с включенным свойством ImageExport.SeparateFiles; - исправлена ошибка при SVG-экспорте, когда некоторые фигуры прорисовывались дважды; - исправлена ошибка с экспортом бухгалтерского формата в Excel 2007, при которой не учитывалось количество десятичных знаков; - исправлены утечки памяти в экспортах табличного типа; - исправлена ошибка удаления временного файла при экстренной остановке программы во время экспорта в PDF; - исправлена ошибка экспорта курсивных и полужирных шрифтов в PDF; - исправлена ошибка из-за которой не печатался из браузера фон у объектов с заливкой Solid; - исправлена ошибка с методом set свойства HtmlTemplates.IndexTemplate; - исправлен экспорт 4-байтовых символов в PDF; - исправлен множитель высоты строк при экспорте в RTF; - исправлен множитель высоты строк при табличном экспорте в Word 2007; - исправлена позиция первого объекта на странице с ненулевым значением при экспорте в Word 2007; - исправлена ошибка доступа к временному файлу при экспорте в Excel 2007 с использованием свойств UseFileStream и SplitPages; - исправлена ошибка с локализацией свойства CurrencyToAccounting в Excel 2007 экспорте; - исправлена работа кнопок навигации и отображение нумерации страниц в HTML экспорте; - исправлен подъем и спуск шрифта в PDF-экспорте; [WebReport] * переработано свойство WebReport.ReportPrepared, теперь оно связано с соответствующим свойством отчёта; * обновлён дизайн WebReport для FastReport.Core.Web и FastReport.Web.Blazor; - исправлено редкое падение при попытке добавить пустой источник данных в WebReport; - исправлена ошибка, из-за которой не работал Outline в WebReport.LoadPrepared(); - удалена кнопка обновления при загрузке подготовленного отчёта (.fpx); - исправлена ошибка, из-за которой неверно высчитывалась ширина табов RichObject в WebReport; — удалена возможность выбора страниц в параметрах экспорта для одностраничных отчётов; [Demos] * обновлен дизайн демонстрационных отчетов; - исправлена ошибка масштабирования дочерних окон в новом демонстрационном приложении; [Extras] + обновлен плагин FastReportBGObjects, добавлена поддержка диаграммы Bubble; * подключение к ElasticSearch перенесено в отдельный плагин. ### Интерактивная матрица в веб отчете URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-matrix-web-report Summary: Используя базу данных xml из поставки FastReport .NET, мы можем создать интерактивную матрицу в веб-отчете. Используя базу данных xml из поставки FastReport .NET, мы можем создать интерактивную матрицу в веб-отчете. Используя базу данных xml из поставки FastReport .NET, мы можем создать интерактивную матрицу в веб-отчете. Давайте вспомним как создать интерактивную матрицу. Воспользуемся базой данных xml из поставки FastReport.Net. Выбираем таблицы: Добавляем на бэнд «Данные» объект «Матрица»: Теперь раскройте таблицу Order Details в окне данных. Вы увидите связные таблицы Products и Orders. Раскройте Orders. Она в свою очередь имеет еще одну связную таблицу Employees. Раскрываем ее и перетаскиваем поле FirstName в заголовок колонки: Сделаем двойной клик по добавленному полю. Давайте прибавим к FirstName поле LastName, чтобы отображать имя и фамилию сотрудника. Таким образом поле будет формироваться так: [Order Details.Orders.Employees.FirstName]+" "+[Order Details.Orders.Employees.LastName] При этом заголовок колонки сильно расширится. Давайте отключим свойство «автоширина». Для этого сделайте правый клик по объекту «Матрица». И в контекстном меню выбираем Auto Size: Теперь можно настроить размер строк и столбцов. Перетащите поле Photo в заголовок колонки. Отрегулируем размер ячейки, чтобы оба добавленных поля поместились. Теперь найдите связную таблицу Products в таблице Order Detail. Раскройте ее. У нее тоже есть связная таблица Categories. Из этой таблицы Categories перетягиваем поле CategoryName в заголовок строки. В эту же ячейку поместим поле Picture. Теперь из таблицы Order Details перетаскиваем поле Unit Price в ячейку данных. Отредактируем добавленное поле. Нужно найти произведение трех полей: UnitPrice, Quantity и 1-Discount. Таким образом мы найдем реальную сумму продаж: [Order Details.UnitPrice] * [Order Details.Quantity] * (decimal)(1 - [Order Details.Discount]) Матрица практически готова. Осталось выбрать стиль. Сделайте правый клик по матрице и выберите Style. Например, Orange. Уже симпатично: Создадим детальный отчет на отдельной странице. Добавим вторую страницу в отчет. Добавим поле Order Details.OrderDate на бэнд «Данные». Рядом размещаем поле Order Detail.Products.ProductName. Также перетаскиваем поля: Order Detail.UnitPrice, Order Detail.Quantity, Order Detail.Discount. Для отображения данных для нужного сотрудника нужно фильтровать таблицу. Мы будем передавать данные для сравнения из первой страницы во вторую. Для этого создадим параметр во второй странице. Для этого параметра создаем два подпараметра, оба строкового типа: Теперь добавим фильтр для бэнда «Данные». Делаем по нему двойной клик и выбираем вкладку Filter: [Order Details.Orders.Employees.FirstName] + " " + [Order Details.Orders.Employees.LastName] == [Parameters.Employee] && [Order Details.Products.Categories.CategoryName] == [Parameters.Category] Здесь мы сравниваем имя + фамилия сотрудника с параметром, и имя категории с параметром. Добавим заголовок детального отчета: [Parameters.Employee] order's. Получился такой шаблон: Вернемся на первую страницу. Выбираем поле данных матрицы. В инспекторе свойств находим Hyperlink и открываем редактор гиперссылки. Вкладка Report page: Выбираем вторую страницу и параметр Parameters. Значения подпараметров будут подставляться автоматически. Отчет готов. Сохраняем его. Теперь создаем веб приложение. Я использую ASP.Net MVC проект. Добавим в Reference ссылки на библиотеки FastReport.dll и FastReport.Web.dll. В папке Controllers находим файл HomeController.cs.  Это контроллер стартовой страницы. Здесь мы будем работать с объектом отчета. Добавляем недостающие библиотеки: ``` using FastReport.Web; using System.Web.UI.WebControls; ```  И код для метода Index, который отвечает за стартовую страницу: ``` public ActionResult Index() { WebReport webReport = new WebReport(); //создаем экземпляр класса WebReport. webReport.Width = Unit.Percentage(100); //Set the webReport object width 100% webReport.Height = Unit.Percentage(100); //Set the webReport object heigh 100% string report_path = "J:\\Program Files (x86)\\FastReports\\FastReport.Net\\Demos\\Reports\\"; //директория отчетов System.Data.DataSet dataSet = new System.Data.DataSet(); //создаем набор данных dataSet.ReadXml(report_path + "nwind.xml"); //загружаем xml базу данных webReport.Report.RegisterData(dataSet, "NorthWind"); //регистрируем источник данных в объекте отчета webReport.TabPosition = TabPosition.Hidden; //скрываем вкладки детальных отчетов webReport.ShowBackButton = true;// отображаем кнопку возврата ViewBag.WebReport = webReport; //передаем веб отчет во View return View(); } ``` Тут интересны две опции: TabPosition и ShowBackButton. Первая отвечает за отображение вкладок отчетов на панели инструментов. Мы скрыли вкладки. Вторая опция задает отображение кнопки «Back». Она позволяет вернуться к предыдущему отчету. Теперь выведем отчет в представлении (view). Открываем на редактирование файл index.cshtml (папка Views->Home). Задаем заголовок страницы и отображаем веб отчет: ``` @{ ViewBag.Title = "Home Page"; } @ViewBag.WebReport.GetHtml() ```  В файле _Layout.cshtml подключаем скрипты и стили в секции :    ``` @WebReportGlobals.Scripts() @WebReportGlobals.Styles() ```  Добавляем пространства имен в файл Web.config, который лежит в папке Views.      ``` ```  Добавляем обработчик в файл Web.config, который лежит в корне проекта: ``` ```  Запускаем приложение. Так выглядит наша матрица: Нажимаем на категорию сумму из любой ячейки данных. И видим детальный отчет для соответствующего сотрудника и категории: В детальном отчете показаны все заказы, оформленные этим сотрудником по товарам из выбранной категории. Теперь мы умеем создавать интерактивные матрицы для веба. Еще один вид отчета в нашу копилку. Tags: .NET, FastReport, ASP.NET, MVC, WebReport, Интерактивность, .NET, FastReport, ASP.NET, MVC, WebReport, Интерактивность ### Интерактивные формы в PDF экспорте FastReport .NET 2018 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-forms-pdf-export-net Summary: В этой статье описывается, как использовать интерактивные формы в отчетах FastReport .NET. Эти формы позволяют редактировать значения непосредственно при просмотре отчета. В этой статье описывается, как использовать интерактивные формы в отчетах FastReport .NET. Эти формы позволяют редактировать значения непосредственно при просмотре отчета. В этой статье описывается, как использовать интерактивные формы в отчетах FastReport .NET. Эти формы позволяют редактировать значения непосредственно при просмотре отчета. Ни для кого ни секрет, что стандарт PDF позволяет создавать заполняемые формы. То есть готовый документ можно редактировать прямо из просмотрщика. Чаще всего это применяется для анкет и различных бланков. Пользователь заполняет поля и отправляет документ по email или распечатывает. В новой версии FastReport .NET появилась возможность экспортировать отчеты в формат PDF с поддержкой интерактивных форм. В настройках экспорта добавилась соответствующая опция: Включение опции Interactive Forms накладывает ряд ограничений - PDF не может содержать встроенные шрифты, не может иметь стандарт PDF/A и PDF/X. Для реализации экспорта с интерактивными формами была добавлена новая возможность – редактируемые в режиме предварительного просмотра отчета текстовые и checkBox поля. Собственно, теперь отчет, в режиме предварительного просмотра представляет собой интерактивную заполняемую форму. У объектов Text и CheckBox появилось новое свойство – Editable. Если оно имеет значение true – объекты можно редактировать. Давайте посмотрим, как это выглядит: Кликаем по текстовому объекту с включенным свойством Editable и получаем окно редактирования текста. Для объекта CheckBox с помощью мыши просто ставится или снимается флажок: В демонстрационных отчетах FastReport .NET есть Interactive Forms. Давайте сделаем его экспорт в PDF. Проследите, чтобы опция Interactive Forms была включена в настройках экспорта. Полученный документ имеет поля, которые можно редактировать. Заполним их: Теперь можно сохранить файл с изменениями. Таким образом, функция редактирования отчета в режиме предварительного просмотра может быть использована для бланков и анкет. Вы можете сохранить отчет в формате .fpx и распространить его. Пользователи заполнят отчет подобно PDF формам. Либо вы сразу же экспортируете отчет в формат PDF и также распространяете файл. Tags: FastReport, .NET, PDF, Экспорты ### Интерактивный web отчет с раскрывающимися группами URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-reports-with-drill-down-lists Summary: Для того, чтобы существенно повысить удобство работы со списками. Мы создадим интерактивные отчеты с раскрывающимися группами, так вы просматриваете только нужные данные, открыв группу. Для того, чтобы существенно повысить удобство работы со списками. Мы создадим интерактивные отчеты с раскрывающимися группами, так вы просматриваете только нужные данные, открыв группу. Для того, чтобы существенно повысить удобство работы со списками. Мы создадим интерактивные отчеты с раскрывающимися группами, так вы просматриваете только нужные данные, открыв группу. В этой статье мы рассмотрим, как создавать интерактивные отчеты с раскрывающимися группами. Мы будем группировать записи и отображать группы в свернутом виде. При необходимости пользователь раскрывает группу и просматривает содержимое. Такая функциональность позволяет существенно повысить удобство работы со списками. Ведь группы занимают минимальное место в отчете, не перегружая его обилием данных. Вы просматриваете только нужные данные открыв группу. Давайте создадим отчет с группами. Я использовал базу данных nwind.xml из поставки FastReport .NET. Для работы понадобится лишь одна таблица – Products. Шаблон отчета состоит из пяти бэндов: Заголовок отчета; Заголовок группы; Данные; Подвал группы; Подвал страницы. В бэнде Данные размещаем поля: Products.ProductName, Products.UnitPrice. В заголовке группы будем отображать первую букву продукта: [[Products.ProductName].Substring(0,1)] Сделайте двойной клик по бэнду GroupHeader. В редакторе группы вводим выражение для группировки продуктов по первой букве. Сортировку отключаем. Теперь сделайте двойной клик по бэнду Данные. В редакторе выбираем вкладку Сортировка: Сортируем по имени продукта. В окне данных добавим новый Итог: В качестве функции используем Count: Раскрывающиеся списки обычно имеют «плюсик», который обозначает, что группа свернута. При раскрытии списка значок меняется на минус. Для реализации этого используем компонент CheckBox. Поместим его возле заголовка группы: В свойствах добавленного объекта изменим CheckedSymbol. Выбираем Plus. А для UncheckedSymbol выбираем Minus. Теперь для объекта CheckBox и для текстового поля справа зададим свойство Hyperlink: На вкладке Пользовательская задаем выражение: [Products.ProductName].Substring(0,1) Пришло время немного попрограммировать.  Выбираем бэнд GroupHeader. В инспекторе свойств выбираем вкладку События (Events). Находим событие BeforePrint и делаем двойной клик по нему. Добавляем следующий код для обработчика: ``` string groupName = ((String)Report.GetColumnValue("Products.ProductName")).Substring(0, 1); //получаем имя группы bool groupVisible = expandedGroups.Contains(groupName); //Проверяем видимость группы Data1.Visible = groupVisible;// Устанавливаем видимость данных в соответствии с видимостью группы GroupFooter1.Visible = groupVisible;// Устанавливаем видимость подвала группы в соответствии с видимостью группы CheckBox1.Checked = !groupVisible;//Устанавливаем состояние флажка в зависимости от видимости группы ``` Теперь создадим список видимых групп. Это пригодится нам позже: private List expandedGroups = new List(); Вернемся на страницу отчета. Выбираем объект CheckBox. В инспекторе свойств переключаемся на События и создаем обработчик для Click с помощью двойного клика. ``` string groupName = (sender as CheckBoxObject).Hyperlink.Value; //Получаем имя группы из гиперссылки if (expandedGroups.Contains(groupName)) //Если список видимых групп содержит выбранную группу expandedGroups.Remove(groupName); //То удалить из списка видимых групп выбранную else expandedGroups.Add(groupName); //Иначе добавить группу в список видимых Report.Refresh(); //Обновить отчет ``` Отчет готов. Переходим к созданию веб приложения. Я использую проект ASP.Net MVC. В Reference добавляем библиотеки FastReport.dll, FastReport.Web.dll из поставки FastReport.Net. В HomeController добавляем следующий код: Добавляем библиотеки: ``` using FastReport.Web; using System.Web.UI.WebControls;   public ActionResult Index() { WebReport webReport = new WebReport(); webReport.Height = Unit.Percentage(100); webReport.Width = Unit.Percentage(100); string report_path = "J:\\Program Files (x86)\\FastReports\\FastReport.Net\\Demos\\Reports\\"; System.Data.DataSet dataSet = new System.Data.DataSet(); dataSet.ReadXml(report_path + "nwind.xml"); webReport.Report.RegisterData(dataSet, "NorthWind"); webReport.Report.Load(report_path + "InteractiveDrillDown.frx"); ViewBag.WebReport = webReport; return View(); } ``` Разберем построчно: Создаем экземпляр веб отчета; Устанавливаем высоту веб отчета 100%; Устанавливаем ширину веб отчета 100%; Устанавливаем каталог с отчетами; Создаем источник данных; Загружаем базу данных в источник; Регистрируем источник данных к отчете; Загружаем отчет; Передаем отчет в представление. Теперь редактируем представление Index.cshtml: ``` @{ ViewBag.Title = "Home Page"; } @ViewBag.WebReport.GetHtml() ```  В файл _Layout.cshtml скрипты и стили:    ``` @WebReportGlobals.Scripts() @WebReportGlobals.Styles() ```   В файл Web.config из папки View добавляем пространства имен: ``` ```  В файл Web.config из корня проекта добавляем хэндлер: ``` ```  Теперь запускаем веб приложение: Как видно, при нажатии на крестик или заголовок группы она раскрывается. При этом плюсик меняется на минус. При повторном нажатии на заголовок группы или на минус, группа сворачивается обратно. Вот так мы можем создавать интерактивные выпадающие списки в веб отчетах. Tags: .NET, FastReport, ASP.NET, MVC, WebReport, Интерактивность, .NET, FastReport, ASP.NET, MVC, WebReport, Интерактивность ### Интерактивный веб отчет - детальная страница URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-web-report-detail-page Summary: Не обязательно создавать отдельный отчет для детализации, чтобы взаимодействовать с отчетом посредством гиперссылок. Можно сделать детальный отчет на отдельной странице. Посмотрите, как это сделать. Не обязательно создавать отдельный отчет для детализации, чтобы взаимодействовать с отчетом посредством гиперссылок. Можно сделать детальный отчет на отдельной странице. Посмотрите, как это сделать. Не обязательно создавать отдельный отчет для детализации, чтобы взаимодействовать с отчетом посредством гиперссылок. Можно сделать детальный отчет на отдельной странице. Посмотрите, как это сделать. Интерактивные отчеты позволяют пользователю взаимодействовать с отчетом посредством гиперссылок. Благодаря гиперссылкам можно запускать другие отчеты или переходить на другие страницы отчета или переходить к закладкам. В статье «Интерактивный веб отчет в MVC проекте» мы рассмотрели, как создать интерактивный отчет с детализирующим отчетом. По сути мы создали два отчета. Один ссылается на другой. Но все можно сделать проще. Не обязательно создавать отдельный отчет для детализации. Можно сделать детальный отчет на отдельной странице в главном отчете. Давайте рассмотрим, как это сделать. Создаем отчет. В качестве источника данных я использовал базу xml из поставки FastReport.Net. Таблицы Categories и Products. Создаем связь между таблицами: В окне данных можно увидеть новую связь: Теперь размещаем поля на бэнде «Данные»: Как видите, мы разместили два поля: CategoryName и Picture. У бэнда «Данные» установлено свойство Columns->Count в значении 2. Добавим новую страницу отчета. В ней мы создадим детальный отчет – список продуктов. Шаблон отчета довольно прост: Теперь нужно организовать фильтрацию списка продуктов. Фильтровать будем по имени категории. Будем передавать имя категории из первой страницы во вторую. Для этого нужно создать параметр отчета во второй странице: Теперь, открываем редактор бэнда «Данные» с помощью двойного клика по нему. Вкладка «Фильтр»: В выражении фильтра мы использовали поле CategoryName из связной таблицы Category. Переходим к первой странице отчета. Кликаем по полю Categories.CategoryName на бэнде «Данные». В инспекторе свойств находим Hyperlink. И открываем редактор гиперссылки: Выбираем вкладку «Детальная страница отчета». Здесь выбираем: вторую страницу, параметр отчета Category. В качестве значения параметра задаем выражение: [Categories.CategoryName] Внизу формы отмечаем опцию «Изменить внешний вид объекта, чтобы он выглядел как ссылка». Отчет готов. Сохраняем его и переходим ко второму этапу. Вторым этапом работы я выделил создание демонстрационного веб приложения. Создаем проект MVC. Добавим ссылки на библиотеки FastReport.dll и FastReport.Web.dll. Отчет будет расположен на стартовой странице сайта – Home. Поэтому логику работы с отчетом размещаем в контроллере HomeController. Добавляем библиотеки: ``` using FastReport.Web; using System.Web.UI.WebControls; ``` И код: ``` public ActionResult Index() { WebReport webReport = new WebReport(); //создаем экземпляр класса WebReport. string report_path = "J:\\Program Files (x86)\\FastReports\\FastReport.Net\\Demos\\Reports\\"; //директория отчетов System.Data.DataSet dataSet = new System.Data.DataSet(); //создаем набор данных dataSet.ReadXml(report_path + "nwind.xml"); //загружаем xml базу данных webReport.Report.RegisterData(dataSet, "NorthWind"); //регистрируем источник данных в объекте отчета webReport.Report.Load(report_path + "Simple Interactive.frx"); //загружаем отчет в объект WebReport ViewBag.WebReport = webReport; //передаем веб отчет во View return View(); } ``` Теперь нужно вывести наш отчет в представлении Index.cshtml (папка Views->Home). Код веб страницы выглядит так: ``` @{ ViewBag.Title = "Home Page"; } @ViewBag.WebReport.GetHtml() ``` В последней строке контроллер передает представлению отчет для отображения. В файле _Layout.cshtml нужно подключить скрипты:     ``` @WebReportGlobals.Scripts() @WebReportGlobals.Styles() ``` Добавляем пространства имен в файле web.config, который расположен в папке Views. ``` ``` Добавляем обработчик в файл Web.config, расположенный в корне проекта: ``` ``` Запускаем наше приложение. И наблюдаем наш отчет: Нажимаем на категорию Confections. Таким образом мы создали интерактивный отчет, не прибегнув к созданию отдельного файла для детализации информации. Tags: .NET, FastReport, ASP.NET, MVC, WebReport, Интерактивность, .NET, FastReport, ASP.NET, MVC, WebReport, Интерактивность ### Интерактивный веб отчет в MVC проекте URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-web-report-mvc Summary: Для того, чтобы просматривать детальную информацию исходя из контекста основного отчета, создадим интерактивные веб отчеты. Они значительно повышают удобство работы с отчетностью. Для того, чтобы просматривать детальную информацию исходя из контекста основного отчета, создадим интерактивные веб отчеты. Они значительно повышают удобство работы с отчетностью. Для того, чтобы просматривать детальную информацию исходя из контекста основного отчета, создадим интерактивные веб отчеты. Они значительно повышают удобство работы с отчетностью. В этой статье мы рассмотрим, как создавать интерактивные веб отчеты. Такие отчеты позволяют переходить на детальные отчеты или другие страницы с помощью гиперссылок. Такие отчеты повышают удобство работы с отчетностью. Ведь гораздо удобнее просматривать детальную информацию исходя из контекста основного отчета, чем искать эту информацию вручную. Для начала, нам необходимо создать сам отчет. Мы будем выводить список категорий продуктов. При нажатии на какую-либо категорию будет сформирован детальный отчет со списком товаров для выбранной категории. Итак, базовый отчет – список категорий. Создаем шаблон отчета. Я использовал базу данных xml из поставки FastReport.Net. Таблица Categories: Создаем следующий шаблон: Я установил у бэнда «Данные» свойство Columns, Count как 2. Теперь данные в этом бэнде будут выводиться в две колонки. Выводим имя категории и картинку. Наша задача выводить детальный список продуктов для категории. Поэтому теперь создадим детальный отчет для вывода списка товаров. Создаем новый отчет. Из той же базы данных выбираем таблицу Products и Categories. Связываем таблицы Products и Categories по полю CategoryID: И создаем шаблон отчета: Чтобы отображать товары для нужной категории их нужно отфильтровать. Для фильтрации будем использовать поле CategoryID. Необходимо передать параметр (идентификатор категории) из первого отчета во второй.  Для этого создаем параметр отчета – Category. Тип данных String. А теперь создаем фильтр для бэнда «Данные». Двойной клик по бэнду и выбираем вкладку «Фильтр»: В выражении фильтра просто проверяется равенство поля CategoryID значению параметра Category. Сохраняем отчет. Теперь вернемся к первому отчету с категориями. Для перехода к детальному отчету нужно создать гиперссылку для поля CategoryName. Выбираем поле Categories.CategoryName на бэнде «Данные». В инспекторе свойств находим Hyperlink и открываем редактор свойства. При этом будет показан «Редактор гиперссылки». Выбираем вкладку «Детальный отчет»: Здесь мы выбираем детальный отчет, созданный ранее. Затем, выбираем параметр отчета Category, которому мы передадим значение из главного отчета. И, наконец, задаем выражение из которого будет браться значение для параметра Category. Это выражение – поле CategoryID из таблицы Categories. Внизу формы, включаем флажок «Изменить внешний вид объекта, чтобы он выглядел как ссылка». Вот и все, сохраняем отчет. Теперь у нас есть главный отчет с категориями и детальный отчет с продуктами. Создаем ASP.Net проект MVC. Подключаем библиотеки к проекту: FastReport.dll, FastReport.Web.dll. Разместим наш отчет на странице Home. Работать с компонентом WebReport будем в классе HomeController (из папки Controllers). Добавляем библиотеки: ``` using FastReport.Web; using System.Web.UI.WebControls; ```  В метод Index() добавляем следующий код: ``` public ActionResult Index() { WebReport webReport = new WebReport(); //создаем экземпляр класса WebReport. string report_path = "J:\\Program Files (x86)\\FastReports\\FastReport.Net\\Demos\\Reports\\"; //директория отчетов System.Data.DataSet dataSet = new System.Data.DataSet(); //создаем набор данных dataSet.ReadXml(report_path + "nwind.xml"); //загружаем xml базу данных webReport.Report.RegisterData(dataSet, "NorthWind"); //регистрируем источник данных в объекте отчета webReport.Report.Load(report_path + "Simple Interactive.frx"); //загружаем отчет в объект WebReport ViewBag.WebReport = webReport; //передаем веб отчет во View return View(); } ```  Переходим к представлению Index.cshtml: Я убрал весь код, который был по умолчанию и добавил свой. Выводится только заголовок страницы и веб отчет: ``` @{ ViewBag.Title = "Home Page"; } @ViewBag.WebReport.GetHtml() ```  Метод Index из контроллера HomeController передаст отчет в представление Index. В файле _Layout.cshtml нужно подключить скрипты:    ``` @WebReportGlobals.Scripts() @WebReportGlobals.Styles() ```  Теперь нужно внести изменения в два веб конфига. Называются файлы одинаково, но размещены в разных папках. Первый – расположен в папке Views. Добавляем в него:     ``` ```  Второй файл расположен в корне проекта. В него добавляем обработчик: ``` ```  Вот и все! Запускаем приложение. Наш главный отчет с категориями. Выберем любую из них. Отобразился детальный отчет. Обратите внимание, что на панели инструментов появилась новая вкладка. Вы можете переключиться на главный отчет с помощью вкладки Simple Interactive. Таким образом, мы можем использовать популярные интерактивные отчеты и в вебе, также как и в десктоп приложениях. Tags: FastReport, ASP.NET, MVC, Интерактивность, FastReport, ASP.NET, MVC, Интерактивность ### Интерактивный веб отчет с планом и закладками URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-web-report-outline Summary: Создаем интерактивный отчет для веба, который по нажатию на название раздела в содержании перемещает по закладке в нужное место отчета. Создаем интерактивный отчет для веба, который по нажатию на название раздела в содержании перемещает по закладке в нужное место отчета. Создаем интерактивный отчет для веба, который по нажатию на название раздела в содержании перемещает по закладке в нужное место отчета. Интерактивные отчеты позволяют пользователю взаимодействовать с ним. Например, отчет может содержать гиперссылки, закладки, содержание. По нажатии на название раздела в содержании вы перемещаетесь по закладке в нужное место отчета. Такие отчеты часто используют в каталогах. Давайте создадим такой интерактивный отчет для веба. Для этого нам понадобится сам отчет и веб приложение. Начнем с отчета. Его шаблон будет состоять из двух страниц – содержание, страница с данными. Для примера я использовал базу данных nwind.xml из поставки FastReport.Net. Итак, используем таблицы: Categories и Products. Я создал простенький шаблон с полем Categories.CategoryName.  По нажатии на категорию пользователь будет перемещен к соответствующему разделу. Но это мы реализуем позже. Давайте теперь создадим вторую страницу отчета   .  Здесь бэнд «Данные» будет содержать детальный бэнд. Чтобы добавить его, кликаем правой кнопкой мыши по бэнду «Данные» и выбираем из списка «Добавить детальный бэнд Данные» (Add Detail Data Band). Для детального бэнда Данные нужно добавить заголовочный бэнд. Для этого нажимаем кнопку «Настроить бэнды…» (Configure bands…). В появившемся окне выбираем детальный бэнд «Данные» и нажимаем кнопку «Добавить»(Add). Выбираем бэнд «Заголовок» (Header): Перетаскиваем на главный бэнд «Данные» поля: Categories.CategoryName, Categories.Description, Categories.Picture. Еще я бы хотел добавить ссылку на первую страницу отчета. Шаблон будет выглядеть так: Для надписи Back to first добавим гиперссылку. Делаем правый клик по этой надписи и выбираем Гиперссылка (Hyperlink). В редакторе гиперссылки выбираем вкладку «Номер страницы» (Page Number). И задаем значение 1: Теперь займемся детальным бэндом «Данные». Перетаскиваем на него поля из таблицы Products: ProductName, UnitPrice, UnitsInStock, Discontinued. Шаблон страницы выглядит так: Для перехода по закладкам и формирования содержания отчета нам потребуется установить некоторые свойства первого бэнда «Данные». Выбираем этот бэнд и в инспекторе свойств находим OutlineExpression. Вводим значение - [Categories.CategoryName]. Чуть выше расположено свойство Bookmark. Для него устанавливаем такое же значение. Для детального бэнда «Данные» задаем свойство Outline – [Products.ProductName]. А теперь вернемся на первую страницу. Для поля Categories.CategoryName зададим свойство Hyperlink. В редакторе гиперссылки выбираем вкладку «Закладки» (Bookmarks) и задаем выражение [Categories.CategoryName]: Теперь бы хотелось отобразить номера страниц напротив каждого названия категории. Добавим текстовое поле рядом с именем категории. И задаем следующий текст: [Engine.GetBookmarkPage([Categories.CategoryName])] Эта функция будет отображать номер страницы для закладки. Также, для этого текстового поля добавим гиперссылку: Чтобы отобразить номера страниц с закладками необходимо сначала построить отчет. Но у нас номера расположены на первой странице отчета и движок отчета на тот момент еще не знает на каких страницах закладки. Чтобы наша функция заработала нужно для отчета включить свойство Doublepass. Оно позволит проходить отчет два раза. Первый – для получения номеров страниц закладок, второй – для отображения этих номеров на первой странице отчета. Чтобы найти это свойство выберите объект отчета (Report) в выпадающем списке в инспекторе свойств: Отчет готов. Теперь создадим ASP.Net MVC проект. Сразу же добавляем библиотеки FastReports в Reference: FastReport.dll, FastReport.Web.dll. Я буду показывать объект отчета на первой странице сайта, поэтому используем контроллер HomeController: ``` using FastReport.Web; using System.Web.UI.WebControls;     public ActionResult Index() { WebReport webReport = new WebReport(); //Создаем экземпляр веб отчета string report_path = "J:\\Program Files (x86)\\FastReports\\FastReport.Net\\Demos\\Reports\\"; //Задаем папку с отчетами System.Data.DataSet dataSet = new System.Data.DataSet(); //Создаем источник данных dataSet.ReadXml(report_path + "nwind.xml"); //Загружаем базу данных в источник webReport.Report.RegisterData(dataSet, "NorthWind"); //Регистрируем источник данных в отчете webReport.Height = Unit.Percentage(100); //Устанавливаем высоту веб отчета 100% webReport.Width = Unit.Percentage(100); //Устанавливаем ширину веб отчета 100% webReport.Report.Load(report_path + "InteractiveComplexReport.frx"); //Загружаем отчет ViewBag.WebReport = webReport; //Передаем отчет в представление return View(); } ```  Теперь редактируем представление Home->Index.cshtml. Оставляем только заголовок и вывод отчета: ``` @{ ViewBag.Title = "Home Page"; } @ViewBag.WebReport.GetHtml() ```  Добавляем файл Shared->_Layout.cshtml скрипты и стили:    ``` @WebReportGlobals.Scripts() @WebReportGlobals.Styles() ```  В файл Views->Web.config добавляем пространства имен: ``` ```  В файл Web.config из корне решения добавляем хэндлер: ``` ```  Ну вот и все. Запускаем приложение. Первая страница отчета: Выбираем любую категорию и перемещаемся к ней: Чтобы вернуться к содержанию нажимаем Back to first. А теперь сделаем экспорт отчета в формат Adobe Acrobat с помощью иконки   на панели инструментов веб отчета. Вот здесь и пригодилось свойство Outline. Мы имеем подробную схему отчета слева. Вот так можно сделать свой веб отчет более привлекательным и удобным в использовании. Как я отметил в начале, такой тип интерактивного отчета идеально подходит для вывода каталога продукции. Tags: .NET, FastReport, ASP.NET, MVC, Интерактивность, .NET, FastReport, ASP.NET, MVC, Интерактивность ### Интерактивный отчёт с предварительным вводом данных в таблицу URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-report-preliminary-data Summary: Рассказываем о возможности изменять данные в таблице вручную перед построением отчета с использованием скрипта из FastReport .NET. Рассказываем о возможности изменять данные в таблице вручную перед построением отчета с использованием скрипта из FastReport .NET. Рассказываем о возможности изменять данные в таблице вручную перед построением отчета с использованием скрипта из FastReport .NET. Как вы уже знаете, отчеты FastReport .NET могут иметь диалоговые формы, которые выводятся перед построением отчета. Благодаря им вы можете задавать некие текстовые, булевые или числовые переменные. Это могут быть текстовые поля, таблицы, списки, выпадающие списки, даты, чекбоксы и даже списки с чекбоксами. Как правило, диалоговые формы используют для фильтрации данных в отчете или для выбора критериев поведения отчета. Но сегодня мы поговорим о другом возможном применении диалоговой формы. Рассмотрим случай, когда вам нужно перед отображением отчета ввести для него данные. Это достаточно простой кейс, если речь идет об отдельных текстовых полях, чекбоксах, списках. Но что, если у вас есть таблица с данными, и вы хотите иметь возможность скорректировать эти данные вручную до построения отчета? Тут нам на помощь придет компонент Grid  . Это таблица с данными, которую мы можем показать на диалоговой форме перед построением отчета. Добавим в отчет диалоговую форму и разместим на ней контрол Grid. Вызовем контекстное меню для него с помощью правого клика: Выберите “Edit Collumns…” , чтобы добавить колонки в таблицу. В окне редактирования колонок добавляем три - Name, Address, Phone. Обратите внимание на свойство Customers.Name. Тут мы ссылаемся на некий источник данных Customers, которого еще нет в отчете. Но мы его добавим позже, с помощью скрипта. Для остальных колонок нужно задать соответствующие свойства. Шаблон страницы отчета крайне прост - лишь один объект Table с тремя колонками. Заполнять мы его будем в скрипте отчета. А теперь, давайте добавим обработчик события StartReport для отчета: Скрипт отчета: ``` public class ReportScript { //Структура данных для таблицы public class Customer { public string Name {get; set; } public string Address {get; set; } public string Phone {get; set; }   public Customer(string name, string address, string phone) { Name = name; Address = address; Phone = phone; } }   private void _StartReport(object sender, EventArgs e) { //Список пользователей List customers = new List(); //Заполняем список пользователей данными по умолчанию customers.Add(new Customer("Kevin Smith", "221 52nd st, Brooklyn, NY, United States", "+12127599755")); customers.Add(new Customer("Justin Ford", "1556 Broadway, suite 416, NY, United States", "+12145678900")); customers.Add(new Customer("Amanda Stephenson", "455 Larkspur Dr., CA, United States", "+14105175379")); //Регистрируем источник данных в отчете Report.RegisterData(customers, "Customers"); //Задаем источник данных в таблице Grid1.DataSource = Report.GetDataSource("Customers"); //Задаем поля в ячейках Cell6.Text = "[Customers.Name]"; Cell7.Text = "[Customers.Address]"; Cell8.Text = "[Customers.Phone]"; } } ``` В данном случае мы задаем структуру данных Customer, которая будет использоваться для вывода строк в таблице в диалоговом окне и в отчете. Далее мы создаем источник данных Customers и заполняем ее экземплярами Customer. Затем регистрируем полученный источник данных в отчете. Помните, как мы задавали поле данных для колонок в объекте Grid? Именно на этот источник данных мы и ссылались. Тут же мы назначаем поля из источника ячейкам таблицы (объект Table) в шаблоне страницы. Теперь, для объекта Table на странице отчета создадим обработчик события ManualBuild. Это событие вызывается после построения объекта на странице и позволяет изменять уже готовую к отображению таблицу. Таким образом, мы можем изменять текст в таблице с помощью скрипта. ``` private void Table1_ManualBuild(object sender, EventArgs e) { //Задаем источник данных DataSourceBase rowData = Report.GetDataSource("Customers"); //Инициализируем данные rowData.Init(); //Отображаем первую строку данных Table1.PrintRow(0); //Отображаем колонку Table1.PrintColumns(); //Цикл по всем строкам данных в источник while (rowData.HasMoreRows) { //Выводим очередную строку данных Table1.PrintRow(1); //Выводим колонку Table1.PrintColumns(); //берем следующую запись из источника rowData.Next(); } } ``` Здесь мы заполняем таблицу, просто пробегая в цикле по всем строкам данных. Давайте запустим отчет. Первое, что мы увидим - диалоговое окно с таблицей: Сделаем двойной клик по первой ячейке, чтобы отредактировать ее текст: Нажмем OK и посмотрим на результат: Как видите, наши дефолтные данные изменились на те, что мы ввели вручную. Таким образом, вы можете дать пользователям возможность изменять данные вручную перед построением отчета. В данном примере показано заполнение таблицы данными из скрипта, но ничего не мешает вам заполнять данными из источника. Tags: .NET, FastReport, Интерактивность, Дизайнер, Script, Отчет, .NET, FastReport, Интерактивность, Дизайнер, Script, Отчет ### Искусственный интеллект и бизнес: преимущества, где и как можно использовать URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/artificial-intelligence-business Summary: ИИ в бизнесе — не серебряная пуля, но инструмент, который при правильной настройке может существенно изменить подход к работе. ИИ в бизнесе — не серебряная пуля, но инструмент, который при правильной настройке может существенно изменить подход к работе. Искусственный интеллект (ИИ) уверенно входит в бизнес-среду. Как скальпель в руках хирурга, ИИ требует точности — при правильном подходе результат может оказаться крайне эффективным. Для разработчиков ПО знание возможностей ИИ — это не роскошь, а рабочий инструмент. Искусственный интеллект (ИИ) уверенно входит в бизнес-среду. Как скальпель в руках хирурга, ИИ требует точности — при правильном подходе результат может оказаться крайне эффективным. Для разработчиков ПО знание возможностей ИИ — это не роскошь, а рабочий инструмент. Основные преимущества использования ИИ Применение ИИ в бизнесе объясняется рядом причин. Ниже представлены ключевые из них. 1) Автоматизация задач ИИ снижает объем ручной работы. Простые действия — классификация, сортировка, реагирование — передаются алгоритмам. Это снижает нагрузку на персонал и ускоряет выполнение операций. 2)  Принятие решений на основе данных Алгоритмы обучаются на больших объемах данных. Результатом становятся предсказания, оценки и рекомендации, которые раньше были недоступны или слишком затратны. 3) Персонализация ИИ способен адаптировать взаимодействие с клиентом под его поведение. Речь идет о рекомендациях, настройке интерфейса, предложениях — отчасти это напоминает ручную настройку под каждого пользователя, но в автоматическом режиме. 4) Дополнительная выгода: снижение затрат После первичной настройки система может работать автономно. Меньше ручного труда, меньше ошибок, меньше потерь времени — как следствие, экономия. 5) Масштабируемость Инструменты на базе ИИ хорошо масштабируются. Их можно применять на разных уровнях бизнеса без существенных изменений архитектуры. Где можно использовать ИИ Области применения ИИ в бизнесе весьма разнообразны. Вот только некоторые из них. Анализ данных Обнаружение закономерностей в больших массивах Предсказание событий и поведения пользователей Определение аномалий в операционных процессах Обслуживание клиентов Чат-боты, которые не устают и работают круглосуточно Голосовые помощники на базе распознавания речи Анализ текстов обращений и автоматическая маршрутизация Продажи и маркетинг Рекомендательные механизмы для товаров и услуг Оптимизация показов рекламы Сегментация аудитории на основе поведения Финансовые операции Оценка кредитоспособности клиентов Обнаружение подозрительных транзакций Поддержка инвестиционных решений Управление персоналом Первичный отбор резюме Прогноз текучести кадров Определение рисков снижения производительности Как внедрить ИИ в бизнес: поэтапный подход Разработка и интеграция ИИ-систем требует системного подхода. Можно выделить несколько основных этапов. 1. Постановка задачи Формулируется цель. Она должна быть измеримой и привязанной к бизнес-результатам. Примеры: уменьшить время обработки заявок, повысить точность прогноза спроса. 2. Сбор и обработка данных Данные нужны, как топливо двигателю. Без них — движение невозможно. Процесс включает: Очистку и нормализацию Разметку (если нужно обучение с учителем) Формирование обучающей и тестовой выборок 3. Выбор модели Тип задачи определяет алгоритм: Регрессия: прогноз значений Классификация: распределение по категориям Кластеризация: группировка по признакам Работа с текстом: обработка естественного языка 4. Внедрение Модель превращается в сервис или часть продукта. Обычно разворачивается API или модуль, который может масштабироваться. 5. Поддержка и переобучение Модели со временем теряют точность. Требуется повторное обучение, настройка, логгирование. Используются инструменты ML Ops. Роль разработчиков Разработчик ПО — это связующее звено между бизнесом и ИИ. Его зона ответственности: Подготовка данных и инфраструктуры Реализация модели Интеграция в продукт Поддержка и обновление Часто именно разработчик первым видит, что модель “устала” или работает не так, как планировалось. Инструменты Наиболее часто применяются следующие технологии: Языки: Python, иногда R Библиотеки: scikit-learn, TensorFlow, PyTorch Сервисы: Azure ML, AWS SageMaker, Google Cloud AI Средства интеграции: Docker, FastAPI, gRPC Заключение ИИ в бизнесе — не серебряная пуля, но инструмент, который при правильной настройке может существенно изменить подход к работе. Для разработчиков это область, где востребованы как технические, так и прикладные знания. ИИ не решает всё, но игнорировать его уже невозможно. Tags: Новые технологии ### Исполнение ASP.NET приложений в операционной системе Linux Debian URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/aspnet-on-linux-debian Summary: Проект Mono позволяет запускать приложения, использующие .NET Framework, на операционных системах, отличных от Windows. Проект Mono позволяет запускать приложения, использующие .NET Framework, на операционных системах, отличных от Windows. Проект Mono позволяет запускать приложения, использующие .NET Framework, на операционных системах, отличных от Windows. Проект Mono позволяет запускать приложения, использующие .NET Framework, на операционных системах, отличных от Windows. Рассмотрим, для примера, настройку среды исполнения в Linux Debian. Аналогичные настройки  будут применимы ко всем производным от Debian систем, например Ubuntu. В первую очередь необходимо установить Mono, выполнив команду: ``` #apt-get install mono mono-gmcs mono-gac mono-utils ``` Если в дальнейшем планируется разработка на данном компьютере, устанавливаем визуальную среду Mono Develop: ``` #apt-get install monodevelop monodoc-browser monodevelop-nunit monodevelop-versioncontrol ``` Для выполнения веб-приложений ASP.NET, кроме всего прочего, понадобится XSP сервер: ``` #apt-get install mono-xsp2 mono-xsp2-base asp.net2-examples ``` Примеры ASP.NET 2.0 будут установлены в папку /usr/share/asp.net2-demos/. Переходим в эту папку и запускаем XSP сервер для проверки: ``` #xsp2 ``` Сервер должен выдать информацию о запуске: ``` Listening on port: 8080 (non-secure) Listening on address: 0.0.0.0 Root directory: /usr/share/asp.net2-demos Hit Return to stop the server. Application_Start ``` По умолчанию XSP доступен по адресу http://localhost:8080 Проверяем работоспособность XSP в браузере. Далее устанавливаем модуль для сервера Apache2 mod_mono: ``` #apt-get install libapache2-mod-mono ``` Перезапускаем Apache: ``` #/etc/init.d/apache2 restart ``` Проверяем настройки файла /etc/apache2/conf.d/mono-web.conf: ``` MonoAutoApplication Enabled MonoRunXSP True MonoDebug False MonoSetEnv MONO_IOMAP=all MonoMaxActiveRequests 500 MonoMaxWaitingRequests 500 MonoAutoRestartMode Requests MonoAutoRestartRequests 5000 MonoSetEnv MONO_THREADS_PER_CPU=3000 ``` Ниже показан примерный конфиг для виртуального хоста Apache2: ``` NameVirtualHost 192.168.1.2:80 ServerName mytest-server-mono.com ServerAdmin admin@mytest-server-mono.com ServerAlias www.mytest-server-mono.com 192.168.1.2:80 AddMonoApplications FrSite "/:/home/www/fr_asp_net_dir" MonoExecutablePath FrSite "/usr/bin/mono" MonoServerPath FrSite "/usr/bin/mod-mono-server2" MonoMaxMemory FrSite 300000000 MonoMaxCPUTime FrSite 3600 DocumentRoot "/home/www/fr_asp_net_dir" Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all SetHandler mono MonoSetServerAlias FrSite DirectoryIndex Default.aspx AddHandler mono .aspx .ascx .asax .ashx .config .cs .asmx .axd   ``` Можно скопировать в домашнюю папку виртуального хоста демонстрационные файлы FastReport.Mono из папки \Demos\C#\Web и убедиться в работоспособности установленной среды исполнения ASP.NET приложений в системе Linux Debian. Подробнее о настройке mod_mono можно почитать на странице проекта http://www.mono-project.com/Mod_mono Tags: .NET, Mono, FastReport, Linux, ASP.NET, .NET, Mono, FastReport, Linux, ASP.NET ### Использование FastReport Studio из C# приложений на 64-битных архитектурах. URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/fastreport-studio-applications Простой рецепт: в настройках проекта необхоодимо выбрать 32-х битную платформу. В случае выбора других платформ в настройках проекта, объекты генератора отчётов не будут доступны приложению. Ниже картинка с примером правильных параметров проекта и рассказ, как правильно использовать отчётность из программ C#, VB.NET и прочих управляемых приложений. Правильный рецепт: скачать демо версию FastReport.NET, найти конвертор отчётов и "поиграться" c ними. Почему второй рецепт правильный? Потому что в случае родного .NET приложения Вы сможете использовать генератор отчётов на полную мощность. Посудите сами - FastReport Studio - 32-х битный COM сервер, работа с которым происходит из 64-битного приложения. Помиои этого, большинство привлекательных возможностей управляемого кода не могут быть использованы при работе через технологию COM. Иными словами, если Вы выбираете управляемый код для своих приложений, то используйте систему отчётности, также основанную на управляемом коде - сэкономите массу времени и нервов. Tags: COM vs Managed code, COM vs Managed code ### Использование online дизайнера отчетов в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/using-online-designer-net Summary: На данный момент online дизайнер отчетов работает в связке с объектом WebReport. Использование дизайнера также возможно в ASP.NET. На данный момент online дизайнер отчетов работает в связке с объектом WebReport. Использование дизайнера также возможно в ASP.NET. На данный момент online дизайнер отчетов работает в связке с объектом WebReport. Использование дизайнера также возможно в ASP.NET. В FastReport .NET 2015.1 появилась возможность использования online дизайнера отчетов. Данный дизайнер может быть загружен непосредственно в браузере пользователя и позволяет отредактировать внешний вид шаблона отчета, изменить свойства объектов, а также, при соответствующих настройках, отредактировать события объектов и скрипт отчета. Полнофункциональная версия on-line дизайнера доступна в редакции Professional. Пробную версию можно получить в редакции Trial, которая доступна на сайте для свободного скачивания. Ознакомительная версия отличается заблокированной функцией сохранения отредактированных отчетов. На данный момент online дизайнер отчетов работает в связке с объектом WebReport. Использование дизайнера также возможно в ASP.NET MVC. On-line дизайнер позволяет редактировать внешний вид отчетов, изменять свойства объектов, добавлять новые объекты. Существует возможность  изменить скрипт отчета и обработчики событий отчета, но в целях безопасности, по умолчанию, данная опция отключена – её можно включить в свойствах объекта WebReport. При отключенной опции редактирования содержимое скрипта при сохранении игнорируется и заменяется исходным значением. Также, в целях безопасности, в online дизайнер не попадают строки подключения встроенных в отчет источников данных – полученные при сохранении значения также игнорируются и заменяются теми, что были в изначальном отчете. Дизайнер отчетов находится в разработке. Некоторые типы объектов пока не поддерживаются. Также, нет возможности редактирования диалоговых форм отчета. Следует отметить, что все неподдерживаемые дизайнером объекты или свойства сохраняют свои первоначальные значения и не меняются. Принцип работы online дизайнера отчетов: После загрузки объекта WebReport на ASP.NET странице выполняется AJAX запрос к handler FastReport для получения содержимого контейнера – в данном случае кода вызова on-line дизайнера в контексте iframe. Код дизайнера отчетов размещается в отдельной папке на сайте приложения. После загрузки дизайнера  в браузер пользователя выполняется очередной AJAX запрос к handler из кода дизайнера на получение нужного отчета (getReportByUUIDFrom). На серверной стороне производится подготовка отчета для редактирования и отправка его дизайнеру. В дальнейшем дизайнер может запросить предварительный просмотр отчета. В этом случае текущий отчет отправляется на сервер (makePreviewByUUID), отчет выполняется и результат отправляется обратно в on-line дизайнер, который отображает полученный html в окне предварительного просмотра. Из предварительного просмотра доступна печать отчета, а также экспорт в различные форматы. При завершении редактирования отчета в дизайнере может быть подана команда на сохранение отчета на сервере. В этом случае выполняется AJAX запрос к handler (saveReportByUUIDTo) с содержимым отчета. Сервер производит обработку полученного отчета, сохраняет его во временную папку и выполняет вызов call-back страницы приложения (соответствующие параметры устанавливаются в свойствах WebReport). Важно помнить, что объект WebReport существует в кэше сервера ограниченное время, после чего удаляется из памяти. Время существования объекта WebReport в минутах определяется свойством CacheDelay и по умолчанию равно 60. Пошаговое руководство по настройке on- line дизайнера отчетов: 1. Для начала работы с on-line дизайнером нужно скопировать папку WebReportDesigner в расположение вашего web-приложения. 2. Файл web.config должен содержать настройки handler для корректной работы объекта WebReport: Для IIS6: ```   ``` Для IIS7: ```   ``` 3. Далее, необходимо проверить настройки дизайнера отчетов в файле WebReportDesigner/*.config-data.js: ``` 'getReportByUUIDFrom': '/FastReport.Export.axd?getReport=', 'saveReportByUUIDTo': '/FastReport.Export.axd?putReport=', 'makePreviewByUUID': '/FastReport.Export.axd?makePreview=', ``` Данные параметры должны содержать путь к handler FastReport относительно корня web сайта. Если ваш путь отличается от написанного, то его нужно скорректировать, например: ``` 'getReportByUUIDFrom': '/oursite/FastReport.Export.axd?getReport=', ``` 4. При использовании WebReport в разметке ASPX, кладем на страницу объект и устанавливаем свойства. При использовании в MVC пишем соответствующий код в контроллере: 4.1.    Включаем режим редактирования отчетов: ``` webReport.DesignReport = true; ``` 4.2.    Устанавливаем уникальное имя объекту WebReport, необходимое для дальнейшей идентификации в call-back странице при сохранении отредактированного отчета: ``` webReport.ID = "MyDesignReport1"; ``` 4.3.    Устанавливаем запрет редактирования скрипта отчета в on-line дизайнере, или, если нужно разрешить редактирование - присваиваем true: ``` webReport.DesignScriptCode = false; ``` 4.4.    Указываем путь к главному файлу дизайнера отчетов, папка с дизайнером должна быть скопирована в соответствующее место web-приложения: ``` webReport.DesignerPath = "~/WebReportDesigner/index.html"; ``` 4.5.    Указываем путь к call-back странице на сайте, вызов которой будет выполнен после сохранения отчета во временную папку, для MVC путь к View: ``` webReport.DesignerSaveCallBack = "~/Home/SaveDesignedReport"; ``` или, например, для ASPX: ``` webReport.DesignerSaveCallBack = "~/DesignerCallBack.aspx"; ``` При вызове call-back страницы передаются следующие параметры в GET запросе:  ``` reportID="here is webReport.ID"&reportUUID="here is saved report file name". ``` В данном контексте reportID соответствует ID объекта WebReport, а reportUUID соответствует имени файла, который сохранен во временную папку. Разработчик должен выполнить дальнейшие действия по сохранению отчета в исходный файл на диске, базу данных либо в облачное хранилище. Временный файл с именем reportUUID необходимо удалить из временной папки после сохранения. Пример кода call-back страницы будет показан в пункте 5. 4.6.    Указываем путь к временной папке, куда будут сохраняться отредактированные отчеты перед вызовом call-back, у папки должны быть установлены права на запись: ``` webReport.DesignerSavePath = "~/App_Data/DesignedReports"; ``` 4.7.    Устанавливаем время жизни объекта WebReport на сервере в минутах, по умолчанию время равно 60: ``` webReport.CacheDelay = 120; ``` 5. Создаем call-back страницу для обработки запросов сохранения отчетов. 5.1.  Если используется разметка ASPX, то в обработчике события Page_Load нужно добавить следующий код: ``` protected void Page_Load(object sender, EventArgs e) { string reportID = Request.QueryString["reportID"]; string reportUUID = Request.QueryString["reportUUID"]; // 1. Значение reportID идентифицирует объект, который вызывал дизайнер. Значение соответствует свойству webReport.ID, которое заполнялось при вызове дизайнера. // 2. Объединяя путь, который мы заполнили в свойстве webReport.DesignerSavePath при вызове дизайнера, и полученный reportUUID, мы получаем путь к сохраненному временному файлу. // 3. Данный файл можно открыть и сохранить в нужное нам место на диске, облаке или в базе данных. // 4. Временный файл нужно удалить после сохранения. } ``` 5.2. Соответственно в разметке MVC создаем метод в контроллере и пустой View. Код в контроллере: ``` public ActionResult SaveDesignedReport(string reportID, string reportUUID) { // 1. Значение reportID идентифицирует объект, который вызывал дизайнер. Значение соответствует свойству webReport.ID, которое заполнялось при вызове дизайнера. // 2. Объединяя путь, который мы заполнили в свойстве webReport.DesignerSavePath при вызове дизайнера, и полученный reportUUID, мы получаем путь к сохраненному временному файлу. // 3. Данный файл можно открыть и сохранить в нужное нам место на диске, облаке или в базе данных. // 4. Временный файл нужно удалить после сохранения. return View(); } ``` Особое внимание при создании обработчиков Call-back страниц для сохранения отчетов нужно обратить на фильтрацию и проверку получаемых в Get запросе параметров, в частности выполнить их проверку на null. На странице объект с дизайнером целесообразно разместить в нижней части страницы. Рекомендуемая ширина 100% или в пикселях не менее 930px. Высоту объекта также рекомендуется установить не менее 600px. На данный момент в on-line дизайнере отсутствует возможность редактирования источников данных, поэтому необходимо в коде приложения создать нужный источник и зарегистрировать его перед вызовом дизайнера либо в коде контроллера для MVC после загрузки шаблона в объект отчета, либо в обработчике события StartReport. Регистрация источника данных выполняется командой WebReport.Report. RegisterData(DataSet, “DataSetName”). Подробнее о регистрации источников данных можно почитать в руководстве программиста . Если стоит задача создать новый отчет в дизайнере, то нужно также позаботиться о предварительной регистрации источника данных в объекте отчета. Также вы можете загрузить какой-либо шаблон отчета из файла с ранее заданными элементами оформления. В дополнение к вышенаписанному можно посмотреть пример использования дизайнера в одном из наших демонстрационных проектов, которые идут совместно с FastReport .NET   \Demos\C#\MvcRazor , также, можно просмотреть пример работы дизайнера в он-лайне https://демо.быстрыеотчеты.рф/net-core/designer/ Готовы ответить на ваши вопросы, пишите нам на support@fastreport.ru ! Tags: ASP.NET, FastReport, .NET, Online Designer ### Использование водяных знаков в FastReport VCL URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/watermark-fastreport-vcl Summary: В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла. В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. В последних версиях FastReport VCL появился функционал по добавлению водяных знаков. Это метка, встраиваемая в электронный документ, изображение, видео, аудио или другой цифровой контент. Её цель — подтвердить авторство, защитить от копирования и отследить распространение файла.  В данной статье подробно разберем создание и использование водяных знаков в отчетах FastReport VCL. Пример использования водяных знаков имеется в Demo, поставляемом в составе FastReport VCL. Создание и редактирование Создание и редактирование водяных знаков в отчете доступно как в дизайнере отчетов, так и при предварительном просмотре отчета. Редактирование выполняется с помощью соответствующего редактора. Для вызова редактора в меню дизайнера отчетов нажмите «Отчет -> Watermarks…». Для редактирования водяных знаков в предварительном просмотре отчета на панели инструментов доступна соответствующая кнопка. Редактор водяных знаков имеет следующий вид: Сверху окна располагается панель инструментов, с помощью которой можно создать новый водяной знак, удалить существующий, и изменить его имя. Также можно перемещать водяной знак вниз или вверх по списку. Набор водяных знаков можно загрузить из файла или сохранить в файл для последующего использования в других отчетах. Последние 2 кнопки позволяют выйти из редактора водяных знаков без сохранения или с сохранением изменений. Справа расположен список имеющихся в отчете водяных знаков. Для удобства использования им можно назначать свои имена. Водяной знак можно задавать как с помощью текста, так и с помощью изображения. Допустимо одновременно использовать и то, и другое. На рисунке выше редактор на вкладке настройки текста. Видно, что можно задать сам текст, отображаемый в водяном знаке, его цвет, шрифт, поворот и прозрачность. Также можно задать расположение водяного знака – перед основным отчетом или за ним. Сам же текст, используемый в качестве водяного знака, автоматически располагается в центре страницы и имеет выравнивание по центру – это изменить нельзя. Для выбора изображения, используемого в качестве водяного знака, надо перейти на вкладку «Объект “Рисунок”». Основные кнопки и их назначение Кнопка «Загрузить» – вызывает диалог загрузки изображения из файла (поддерживаются форматы wmf, emf, gif, tiff, svg, png, ico, bmp, jpg). Кнопка «Очистить» удаляет загруженное изображение. С помощью чекбоксов можно настроить положение и размеры выбранного изображения. Флаг «По центру» – заставляет изображение располагаться по центру страницы. Если его сбросить, то изображение будет располагаться в верхнем левом углу. Флаг «Растягиваемый» – изображение водяного знака будет растянуто, чтобы заполнить всю страницу. Иначе будет использован оригинальный размер изображения. Флаг «Сохранять пропорции» – при растягивании изображения заставляет его сохранять свои пропорции для избежания искажений. Меню «Позиция» позволяет задать положение изображения: на заднем плане (на фоне) или на переднем плане. С помощью поля «Ориентация» можно задать угол поворот рисунка. Чекбоксами «Горизонтальное отражение» и «Вертикальное отражение» можно отразить изображение водяного знака по горизонтальной или вертикальной оси. Ползунком «Прозрачность» можно отрегулировать прозрачность изображения. Слева 0% прозрачности, а справа полная 100% прозрачность выбранного вами изображения. Группа переключателей «Правила отрисовки» позволяет привязать текущий редактируемый водяной знак к страницам отчета. Для правил отрисовки могут быть заданы следующие значения: «Все страницы» – в этом случае водяной знак будет располагаться на всех страницах отчета. «Название страниц дизайнера» можно задать, если отчет в режиме дизайнера содержит несколько страниц. Активизируется выбор той или иной страницы. «Индекс страниц превью» - можно задать номера страниц в построенном отчете, в том числе и диапазоны страниц. «Флаги страниц превью» – можно задать расположение водяного знака в зависимости от типа страницы готового отчета – первая или последняя, четная или нечетная. Справа вверху располагается предпросмотр водяного знака, а под ним набор флагов, которыми можно задавать видимость полученного водяного знака при предварительном просмотре, при экспорте и при печати. Работа с водяными знаками из кода Фактически водяные знаки представляют собой коллекцию TfrxWatermarks объектов типа TfrxWatermark . В отчете имеется 2 таких коллекции.  TfrxReport.Watermarks – эта коллекция содержит водяные знаки, заданные пользователем в шаблоне отчета.  TfrxReport.PreviewPages.Watermarks – эта коллекция содержит водяные знаки подготовленного отчета. Пуста, если отчет еще не выполнен или не загружен уже подготовленный отчет. В большинстве случаев эти коллекции будут совпадать, однако следует учитывать вариант, когда водяные знаки строятся или удаляются в скрипте. Также, в случае построения композитного отчета в TfrxReport.PreviewPages.Watermarks будут содержаться водяные знаки всех отчетов, входящих в композитный. Таким образом, если отчет еще не запущен на выполнение, то используйте TfrxReport.Watermarks . Если необходимо изменить уже построенный отчет, то воспользуйтесь TfrxReport.PreviewPages.Watermarks . Доступ к объектам этой коллекции можно осуществлять в коде Delphi с помощью конструкции вида: frxReport1.Watermarks.Items[1].TextSettings.Text := 'Random text'; В скрипте отчета доступна только коллекция, находящаяся в TfrxReport.PreviewPages.Watermarks . Эта коллекция копируется туда в начале выполнения метода PrepareReport(). Использовать ее в скрипте отчета можно так: PreviewPages.Watermarks.Items[1].TextSettings.Text := 'Random text'; Новый водяной знак можно добавить с помощью кода следующего кода как в Delphi, так и в скрипте: NewWatermark := Watermarks.Add  В скрипте отчета, даже если он композитный, доступны только те водяные знаки, которые находятся в текущем обрабатываемом отчете. Остальные свойства и методы класса TfrxWatermarks совпадают с такими же свойствами объекта Delphi TCollection. Кроме того, класс TfrxWatermarks обладает методами LoadFromFile, SaveToFile, LoadFromStream и SaveToStream, позволяющими читать и писать себя в файл и в поток соответственно. Класс TfrxWatermark хранит в себе данные для отображения водяного знака и имеет следующие свойства, которые можно редактировать с помощью формы редактирования водяных знаков. Свойство Описание PagesSetupMode Определяет на каких страницах будет показан водяной знак. Возможные значения: psmAll, psmDesignPagesName, psmPreviewPagesIndex, psmPreviewPagesFlags PageName Имя страницы (в дизайнере), на которой будет показан водяной знак, если PagesSetupMode = psmDesignPagesName PagesIndex Строка с индексам страниц готового отчета, на которых будет показан водяной знак. Используется, если PagesSetupMode = psmPreviewPagesIndex PagesFlags Типы страниц, на которых будет показываться водяной знак, если PagesSetupMode = psmPreviewPagesFlags. Возможные значения: pfFirstPage, pfLastPage, pfOddPages, pfEvenPages VisibilityTypes Определяет видимость водяного знака в зависимости от того, куда выводится отчет. Может содержать комбинацию следующих значений: vsPreview, vsExport, vsPrint PictureSettings Свойства изображения, используемого в качестве водяного знака. Рассматриваются ниже TextSettings Свойства текста, используемого в качестве водяного знака. Рассматриваются ниже Свойства текста, используемого в качестве водяного знака: TextSettings Свойство Описание Text Содержит отображаемый текст Font Используемый шрифт Rotation Угол поворота в градусах Position Позиция водяного знака – перед печатаемыми данными или за ними Transparency Устанавливает прозрачность водяного знака. Значение может быть от 0 (непрозрачный) до 100 (прозрачный) Свойства изображения, используемого в качестве водяного знака: PictureSettings Свойство Описание Picture Содержит отображаемое изображение Center Если True, то изображение располагается по центру страницы, иначе в левом верхнем углу Stretched Если установлено, то изображение растягивается по размеру страницы, иначе используется исходный размер изображения KeepAspectRatio Если установлено, то растягивание изображения происходит с сохранением пропорций изображения Position Позиция водяного знака – перед печатаемыми данными или за ними Transparency Устанавливает прозрачность водяного знака. Значение может быть от 0 (непрозрачный) до 100 (прозрачный) Как видим, программно из кода доступны те же самые свойства, что и в диалоге настройки водяного знака. Обратите внимание, что класс хранит в себе несколько свойств, определяющих страницы, на которых будет показываться водяной знак. Однако использоваться будет только то свойство, на которое указывает PagesSetupMode. Ещё раз подчеркнём, что PictureSettings и TextSettings это разные свойства объекта Watermark! Хоть они и очень похожи, но изменение какого-либо параметра у свойства PictureSettings никак не повлияет на текстовый водяной знак, и наоборот, изменение TextSettings не приведет к изменению параметров изображения водяного знака. Пример кода для построения водяных знаков в скриптах отчетов Для наглядности возьмем отчет 3.fr3 из Демоцентра FastReport – в нем достаточно много страниц, и на каждой странице разместим текстовый водяной знак, содержащий номер страницы. Для бэнда Band1 - TfrxPageFooter создадим обработчик OnBeforePrint и разместим там следующий код: ``` procedure Band1OnBeforePrint(Sender: TfrxComponent); var W: TfrxWatermark; P:string; begin P := IntToStr(); W:= PreviewPages.Watermarks.Add; W.Name := 'W' + P; W.PagesIndex := P; W.PagesSetupMode := psmPreviewPagesIndex; W.TextSettings.Text := 'Page_' + P; W.VisibilityTypes := vsPreview + vsPrint + vsExport; W.TextSettings.Rotation := 45; W.TextSettings.Font.Size := 72; W.TextSettings.Font.Style := fsBold; W.TextSettings.Position := wpFront; W.TextSettings.Font.Name := 'Times New Roman'; W.TextSettings.Transparency := 70; end; begin end. ``` В данном коде при печати подвала каждой страницы создается водяной знак. С помощью свойства PagesSytupMode водяному знаку назначается отображение на определенной странице готового отчета, номер страницы задается с помощью свойства PagesIndex , и далее с помощью свойства TextSettings в коде устанавливаются остальные свойства водяного знака.  Должен получиться такой отчет: Этот скрипт можно использовать и в других отчетах. Обработчик Band1OnBeforePrint должен быть назначен элементу, который печатается 1 единственный раз на каждой странице, например, TfrxPageHeader или TfrxPageFooter.  Аналогичными методами можно воспользоваться и для построения графических водяных знаков. Например, так как изображение SVG фактически является текстом, то можно генерировать изображение для каждой страницы в скрипте отчета или загружать изображения для водяного знака в зависимости от содержимого страницы. При использовании водяных знаков помните, что они могут быть не видны из-за совпадения с цветом фона. Например, серый водяной знак на сером фоне.  Дополнительные особенности При использовании водяных знаков при экспорте помните, что далеко не все экспорты поддерживают водяные знаки. Некоторые экспорты имеют поддержку водяных знаков лишь частично. Полная поддержка имеется лишь у экспортов в графические форматы: PDF и HTML5. Экспорт в документ Microsoft Word имеет лишь частичную поддержку водяных знаков — это особенность самого Microsoft Word. При экспорте в PDF, для получения полупрозрачных водяных знаков, не забудьте отметить флажок «Прозрачность» в диалоге экспорта. Заключение В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов. Описаны возможности редактора водяных знаков: настройка текстовых и графических меток, регулировка их прозрачности, поворота, расположения и видимости, а также правила отрисовки — в том числе привязка к конкретным страницам (первой/последней, чётной/нечётной, по диапазону номеров и т. д.). Приведён практический пример кода для автоматического создания текстовых водяных знаков с номерами страниц — его можно адаптировать для других отчётов. Эти инструменты позволяют гибко защищать контент и маркировать отчёты в соответствии с бизнес‑требованиями. При этом важно учитывать ограничения: не все форматы экспорта поддерживают водяные знаки полноценно. Полная поддержка есть у PDF и HTML5, тогда как экспорт в Microsoft Word обеспечивает лишь частичную совместимость.  Tags: Delphi, FastReport, HTML, PDF, Preview, VCL, Word, Дизайнер ### Использование интерактивных карт в FastReport VCL 2021 URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/interactive-maps-in-fastreport-vcl Summary: Инструкция по настройке и использованию карт в отчетах на Delphi, созданных в FastReport VCL 2021. Инструкция по настройке и использованию карт в отчетах на Delphi, созданных в FastReport VCL 2021. Инструкция по настройке и использованию карт в отчетах на Delphi, созданных в FastReport VCL 2021. Представляем вам заключительную статью по курсам образовательной программы «Академик». В предыдущих публикациях было рассмотрено построение отчётов с диалоговыми окнами и подключение отчёта к данным из Fast Report .  Компонент "Карта" (MapObject) предназначен для отображения двумерных графических карт в формате ESRI shapefile (.shp), Open Street Map (.osm), GPS-трек (GPS Exchange File, .gpx). http://ru.wikipedia.org/wiki/Shapefile https://ru.wikipedia.org/wiki/OpenStreetMap https://ru.wikipedia.org/wiki/GPX Объект "Карта" состоит из следующих элементов: Один объект "Карта" может отображать один или несколько слоев. Каждый слой содержит отдельную карту. В режиме дизайнера и в окне просмотра готового отчета вы можете управлять отображением карты с помощью мыши: ­ колесо мыши меняет масштаб карты; ­ нажав левую кнопку мыши, можно двигать карту; ­ кликнув внутри полигона, можно настроить его свойства в инспекторе объектов. Минимальное и максимальное значения масштабирования задаются в свойствах MinZoom, MaxZoom. Эти значения можно задать в инспекторе объектов. Объект "Карта" содержит большое количество настроек, которыми можно управлять, вызвав редактор объекта. Для этого сделайте двойной щелчок мышью на объекте или выберите пункт "Редактировать..." в его контекстном меню: Добавление слоёв Объект "Карта" может содержать один или несколько слоев. Список слоев отображается в левом верхнем углу редактора: Для добавления нового слоя нажмите кнопку "Добавить...". Будет показано следующее окно: На этом шаге нужно выбрать тип слоя: ­карта из файла (.shp/.dbf, .osm, .gpx). Это наиболее часто используемый тип карт. К примеру, вы можете напечатать карту мира и выделить цветом страны, в которых продажи были больше определенного значения; ­картографические данные из приложения. Ваше приложение должно предоставлять географические координаты (пару значений - широта и долгота), которые будут отображены в виде точки на карте. Точка может иметь подпись, а также быть разного размера и/или цвета, в зависимости от некоторых данных. На практике этот тип карты используется в качестве второго слоя (первый слой, базовый, берется из файла карты). Например, базовый слой отображает карту какой-либо страны, а второй слой - точки с названиями городов, в которых были продажи. Размеры и цвет точки можно настроить таким образом, чтобы был понятен уровень продаж в данном городе. Если вы выбрали слой на основе файла карты, укажите дополнительно, как хранить картографические данные: ­данные внедряются в файл отчета. При этом отчет может сильно увеличиться в размерах; ­файл отчета ссылается на файл карты, внедрения не происходит. Этот режим полезен, если у вас есть несколько отчетов, использующих одни и те же карты. Важно отметить, что карты большого объема (более 30Мб) или с большим количеством полигонов (более 20000) серьезно замедлят работу отчета. Настройка внешнего вида Для этого мы переключимся во вкладку "Внешний вид" и выберем необходимый слой:  Здесь можно настроить цвет и стиль рамки полигонов карты, а также выбрать цветовую палитру. Если вы настроили выделение полигонов цветом в зависимости от аналитических данных (об этом позднее), то палитра будет проигнорирована. На карте могут отображаться надписи, например, названия стран на карте мира. Вы можете настроить тип и внешний вид надписей во вкладке "Метки": Если выбран тип слоя - карта из файла .shp, то необходимо указать поле, из которого будет взята надпись. Как правило, это поле "NAME". Для карты мира, входящей в состав демо-программы FastReport, можно выбирать из следующих полей: - NAME (например, Russia) - ABBREV (например, Rus.) - ISO_A2 (например, RU) - ISO_A3 (например, RUS) Но для других карт список полей будет отличаться. Подключение к данным Большинство отчетов используют объект "Карта" не сам по себе, а для отображения аналитической информации. Например, это может быть объем продаж в разных странах. Для этого слой надо подключить к данным. Сделать это можно в редакторе карты, выбрав слой и переключившись на закладку "Данные". Подключение к данным различается в зависимости от типа слоя (из файла карты, или геоданные из приложения): если тип слоя указан как карта из файла, закладка "Данные" выглядит следующим образом: В этом случае приложение должно предоставить следующие данные: название (например, название страны); числовое значение (например, уровень продаж в данной стране). Допустим, у вас имеется таблица Sales со следующими полями и данными: Country        Sales Total -------           ---------- USA              500000 Germany       1200000 Russia           300000 В данном случае нужно настроить данные следующим образом: источник данных - Sales пространственные данные, столбец - выберите то поле, которое в файле карты отвечает за название страны. Как правило, это поле "NAME". пространственные данные, значение - [Sales.Country] аналитические данные, значение - [Sales.SalesTotal] аналитические данные, функция - "Сумма". Функция используется, если для данной страны есть несколько записей с разными значениями. Поле "Увеличить полигон" позволяет увеличить полигон с указанным именем на весь размер объекта "Карта". Например, чтобы увеличить страну Россия на карте мира, укажите в этом поле значение "Russia" (с кавычками). если тип слоя указан как данные, предоставляемые приложением, закладка "Данные" выглядит следующим образом: В этом случае приложение должно предоставить следующие данные: - пространственные данные - широта и долгота; - метка (например, название города); - числовое значение (например, уровень продаж в данном городе). Допустим, у вас имеется таблица Sales со следующими полями и данными: Latitude         Longitude       CityName       SalesTotal --------           ---------         --------           --------- 48.13641       11.57753        Munchen        50000 50.94165       6.95505          Koln               36000 В этом случае нужно настроить данные следующим образом: - источник данных - Sales - пространственные данные, широта - [Sales.Latitude] - пространственные данные, долгота - [Sales.Longitude] - пространственные данные, метка - [Sales.CityName] - аналитические данные, значение - [Sales.SalesTotal] - аналитические данные, функция - "Сумма". Функция используется, если для данного города есть несколько записей с разными значениями. Выделение данных цветом После того как слой подключен к данным, возникает вопрос - в каком виде выводить аналитическую информацию (например, объемы продаж в разных странах)? Самый простой способ - настроить отображение надписей так, чтобы помимо названия страны выводились и цифры продаж (см. раздел "Настройка отображаемых значений"). Однако, гораздо более наглядный способ - это раскраска стран в определенные цвета в зависимости от объема продаж. Для этого надо настроить цветовую шкалу во вкладке "Диапазоны цвета": Цветовая шкала представляет собой набор значений: минимальное значение; максимальное значение; цвет. Таких наборов (диапазонов) может быть несколько. Для настройки цветовой шкалы надо указать, сколько диапазонов она содержит, после этого настроить минимальное и максимальное значение в каждом диапазоне, а также цвет: По умолчанию все значения установлены в "Авто". В этом случае FastReport рассчитает минимальное и максимальное значения для каждого диапазона автоматически, а цвет возьмет из предустановок "Начальный цвет", "Средний цвет" и "Конечный цвет". Этот режим можно использовать в большинстве случаев. Настройка "Фактор ранжирования" меняет распределение значений по шкале. Если цветовая шкала настроена, то в нижней части карты появляется индикатор - полоска из нескольких разноцветных прямоугольников: Внешний вид и расположение индикатора можно настроить, выбрав в списке слоев элемент "Карта" и переключившись на закладку "Цветовая шкала": Выделение данных размером Если тип слоя указан как данные, предоставляемые приложением, то значения будут отображаться в виде точки с надписью. Размер точки можно привязать к данным примерно таким же способом, как это делается при выделении цветом. Сделать это можно на закладке "Диапазоны размера": Шкала размеров представляет собой набор значений: минимальное значение; максимальное значение; размер в пикселях. Таких наборов (диапазонов) может быть несколько. Для настройки шкалы надо указать, сколько диапазонов она содержит, после этого настроить минимальное и максимальное значение в каждом их них, не забыв про размер. По умолчанию все значения установлены в "Авто". В этом случае FastReport рассчитает минимальное и максимальное значения для каждого диапазона автоматически, а размер возьмет из предустановок "Начальный размер", "Конечный размер". Настройка "Фактор ранжирования" меняет распределение значений по шкале. Как использовать интерактивные карты в FastReport VCL 2021 Интерактивные карты стали очень популярными с появлением Google Map. Такие карты позволяют перемещаться по карте, увеличивать или уменьшать масштаб и многие другие функции. С выходом FastReport VCL 2021 такие карты можно внедрять в отчеты. Для этого необходимо получить карту в одном из двух доступных форматов и вставить ее в отчет с помощью объекта Map. Вы можете использовать карты в формате .shp и .osm, а также gps треки в формате .gpx. Формат .shp – ShapeFile . Это специальный формат хранения векторных геоинформационных данных. Был разработан американской компанией ESRI в 1990х. В настоящее время самый распространенный формат, применяемый в Геоинформационных системах. На самом деле ShapeFile это не одиночный файл. Помимо файла .shp набор включает еще .shx и .dbf. Первый, .shp, представляет собой геометрическое описание фигур. Файл формата .shx имеет позиционный индекс для привязки фигур друг к другу. Файл .dbf содержит информацию о фигурах из файла .shp. Так как это коммерческий продукт, некоторые карты могут быть платными. Формат .osm – OpenStreetMap . Это формат хранения географических данных основанный на xml. Из названия понятно, что это открытый проект, который поддерживается исключительно добровольцами. Этот веб-проект представляет собой глобальную карту земного шара. Волонтеры постоянно пополняют карту новыми геолокационными данными, аэрофотоснимками. Проект получил большую популярность и имеет огромное количество участников. Поэтому подробность карт находится на достаточно высоком уровне. Все карты в osm, как и в shp представлены в двумерном формате без отображения высот над уровнем моря. Так как проект бесплатный, то и карты бесплатны. Для начала нам потребуется карта. Объект Карта поддерживает три формата файлов: .shp, .osm, .gpx. Первые два представляют собой векторные карты, последний – набор маршрутов и треков для карт. Вы можете загрузить карту в одном из доступных форматов, а затем, в новом слое GPS данные. Прежде чем рассматривать объект Карта, давайте определимся, где же брать эти карты. Вы можете скачать готовые карты в интернете. Множество сайтов предоставляет как платные, так и бесплатные карты в обоих форматах. Есть еще один способ получить файл с картой. Он подходит для формата osm. Существует специальный сервис – интерактивная карта земного шара. Этот сервис позволяет выбрать нужную область и экспортировать ее в файл. Однако, есть ограничение по размеру экспортируемой области. Как правило в эту область помещается один населенный пункт, либо его часть. Давайте посмотрим, как это выглядит: Нажав кнопку «Экспортировать», браузер закачивает файл osm. Так, что, если вам требуется показать небольшую область на карте, этот сервис очень поможет. Если вы хотите просто поэкспериментировать, то можете взять готовые файлы PortoSantoTrack.osm и PortoSantoTrack.gpx из поставки FastReport VCL 2021. Создаем отчет и добавляем на страницу объект Map. К слову, вы можете размещать этот объект на любом бэнде, кроме «Данные». Добавив объект, мы сразу же увидим его редактор. Пока еще объект пуст. Мы видим только: общие настройки (general), цветовая гамма (color scale), размерная шкала (size scale). Важно отметить, что вы можете выводить всю карту в одном слое, либо разделив на несколько. В случае разделения карты на несколько слоев , каждый слой настраивается отдельно - цвет, шрифт, толщина линий и прочее. С помощью разных настроек для отдельных слоев мы можем, например, окрасить реки в синий цвет, а торговые пути в красный. Объекты карты описываются тегами в XML (OSM) файле. В каждом слое мы выбираем нужные для отображения теги (объекты). Затем, в настройках задаем параметры (цвет, шрифт, толщину и др.). В общем, послойное отображение карты позволяет нам настроить отображение как хочется. В случае, когда вы выводите карту в одном слое , настройки применяются ко всем объектам карты и вы не сможете настроить отображение отдельных ее элементов. Тут нужно сказать, что для карт в формате .shp доступно отображение только в одном слое. Чтобы добавить карту, нажимаем кнопку Add…: Появляется окно добавления слоя. Выбираем файл с картой или GPS треком. Вы можете включить файл в отчет с помощью соответствующей опции. Ниже мы видим еще два варианта добавления слоя: − пустой слой с данными из приложения – данные для построения карты могут быть не только в файле, но и в базе данных. Поэтому создаем пустой слой и настраиваем подключение к источнику данных; − пустой интерактивный слой – как я понял, это еще не реализованный функционал. Предполагается возможность создать слой вручную, с помощью примитивов. Нажимаем кнопку OK. Если мы загружаем .osm файл, то будет предложено окно выбора тэгов: Теперь внимание! Если нажать кнопку Отмена, то автоматически будут выбраны все теги для данного слоя. Но мы идем другим путем. С помощью кнопки со стрелками перемещаем тэги в правую часть. Если мы хотим отображать карту в нескольких слоях, то выбираем нужные для текущего слоя тэги. Например, в первый слой были перемещены все теги кроме highway и waterway: Внизу есть фильтр для тегов. Нажимаем кнопку Ок и получаем почти всю карту: В настройках слоя 1 на вкладке Appearance (Вид) выставим Point Size (Размер точки) в 0, чтобы не мешали: Пару слов о настройках слоя. Они представлены на пяти вкладках: Data – для варианта использования геоданных из базы; Appearance – настройки внешнего вида линий; Color Ranges – настройки цветовой палитры для автоматического закрашивания объектов на карте; Size Ranges – настройки размерной таблицы или размерной сетки; Labels – настройки меток. Добавим еще один слой таким же способом, как и ранее. На этот раз выберем лишь тег highway. На вкладке Appearance изменим Border Color на Maroon. Теперь дороги имеют малиновый цвет. Добавляем третий слой. В этот раз выбираем тэг waterway. Изменим в Border Color цвет для водных объектов на синий. А Border Width установим в значение 2. В настройках Map задаем заливку. Какой-нибудь пастельный цвет. Не хватает только названий. Выбираем первый слой. На последней вкладке Label выбираем для Вид метки (Label Kind) значение Name. И для Колонка метки (Label column) – значение name. Карту мы добавили, давайте посмотрим теперь как будет выглядеть gps трек для этой карты. Добавляем еще один слой и выбираем файл с расширением .gpx. На вкладке Appearance выбираем яркий цвет для Border Color: Карта готова. Запустим отчет: Сразу же бросается в глаза наш gsp трек ярко-розового цвета. Мы можем перемещаться по карте с помощью мыши. Можно увеличивать/уменьшать масштаб с помощью колеса прокрутки мыши. Вверху справа расположен блок фильтрации. В нем вы можете отключать слои, если они мешают. Например, отключим последний слой – трек: Есть некоторая сложность с добавлением карты по слоям. Приходится вручную добавлять нужные теги в слой. Но, зато, результат гораздо лучше, чем при добавлении всех тегов в один слой. Теперь вы знаете обо всех основных функциях FastReport VCL 2021. Проявляйте креатив и создавайте свои прекрасные отчёты. От всей компании Fast Reports желаем вам удачи! Tags: Delphi, FastReport, Lazarus, VCL, Академик, Интерактивность, Карта ### Использование линейки в RichText для FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/ruler-richtext-editor-dotnet Summary: Продолжаем совершенствовать редактор RichText для FastReport .NET с помощью линейки выравнивания данных. Продолжаем совершенствовать редактор RichText для FastReport .NET с помощью линейки выравнивания данных. Продолжаем совершенствовать редактор RichText для FastReport .NET с помощью линейки выравнивания данных. В редактор RichText была добавлена линейка. Она позволяет пользователям управлять шириной табуляции и задавать отступы от левого и правого края. Для добавления точки остановки табуляции нужно сделать двойной клик левой кнопкой мыши по горизонтальной линейке в месте, где он необходим. На выбранном участке появится «стрелка», указывающая точку остановки табуляции. При зажатии левой кнопкой мыши на этой «стрелке» перемещением мыши можно будет изменить её местоположение. При этом во время нажатия и перемещения «стрелки» будет отображаться направляющая, которая наглядно показывает будущее расположение текста после табуляции. Пример заданной точки остановки табуляции на линейке: Если табуляция не нужна, то её можно удалить, нажав по ней правой кнопкой мыши. Задать отступы можно при наведении на соответствующий отступу конец линейки. При этом курсор изменится с основного режима на режим изменения горизонтальных размеров. Как раз в момент при зажатии левой кнопки их можно будет изменять. При изменении левого отступа будет изменяться начальная позиция текста, также будут изменяться позиции уже заданных точек остановки табуляции относительно этого отступа. При изменении правого отступа будет задаваться место переноса текста. Стоит отметить, что позиция правого отступа будет изменятся относительно правого края текстового поля, если его размеры будут изменены. Пример форматированного текста без отступов: Пример форматированного текста с левым и правым отступом: Также стоит отметить работу форматирования с помощью линейки относительно всего текста и его частей. Если RichObject вначале редактирования был пустым, то заданное форматирование будет применять ко всему тексту по мере его написания. Это будет происходить до тех пор, пока курсор не будет переведен на любую строку с помощью мыши или не будет выделена какая-то часть текста. В случае, когда RichObject не был пустым, на линейке в начале редактирования будет отображаться форматирование первой строки. Если форматирование нужно применить к части текста, то нужно выделить необходимую часть и тогда на линейке будет отображено форматирование именно выделенной части. Этот фрагмент будет «чистым» в 2 случаях: - если к разным частям текста применено разное форматирование; - если форматирования вовсе нет для этого фрагмента. При изменении текста с разным форматированием - старое форматирование будет заменено новым. Выделение всего текста для форматирования с помощью линейки — это особый случай, из-за которого сразу же после любой манипуляции на линейке, выделение текста будет убрано. Дополнительно пропадёт выделение ко всему тексту, который уже есть или будет написан, а также применится форматирование, заданное в данный момент. Это изменение должно облегчить работу с созданием отчетов, расширяя возможности редактора RichText в дизайнере и уменьшая необходимость использования сторонних текстовых редакторов пользователем при создании форматированного текста. Tags: .NET, FastReport, Дизайнер, Отчет, .NET, FastReport, Дизайнер, Отчет ### Использование матричных принтеров для печати чеков URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/matrichnyj-printer-net Summary: В этой статье мы рассмотрим, как интегрировать матричный принтер в процесс создания и вывода отчетов с использованием FastReport .NET. В этой статье мы рассмотрим, как интегрировать матричный принтер в процесс создания и вывода отчетов с использованием FastReport .NET. Матричные принтеры — это устройства, которые до сих пор находят применение в различных областях, таких как печать чеков, наклеек и других документов, требующих высокой надежности. В современных приложениях на платформе .NET часто используется библиотека FastReport для генерации отчетов. В этой статье мы рассмотрим, как интегрировать матричный принтер в процесс создания и вывода отчетов с использованием FastReport .NET. Матричные принтеры — это устройства, которые до сих пор находят применение в различных областях, таких как печать чеков, наклеек и других документов, требующих высокой надежности. В современных приложениях на платформе .NET часто используется библиотека FastReport для генерации отчетов. В этой статье мы рассмотрим, как интегрировать матричный принтер в процесс создания и вывода отчетов с использованием FastReport .NET . Где сегодня используются матричные принтеры? Хоть матричные принтеры являются “пережитком прошлого” по мнению большинства людей, но на самом деле их используют довольно часто и в разных сферах. В наше время один из крупнейших пользователей матричными принтерами являются государственные учреждения и банковская сфера. Они печатают финансовые отчеты, бланки, которые требуют строгой отчетности, банковские книжки, военные билеты и паспорта. Из-за того, что матричный принтер использует иглы для печати, которые создают давление на лист, он может делать несколько копий документов одновременно. В предприятиях, где необходима печать в условиях агрессивной окружающей среды. В некоторых странах матричные принтеры использует дорожная полиция, чтобы на месте распечатывать записки для нарушителей спокойствия или правил парковки. Подготовка к работе с матричным принтером Прежде чем начать работу с матричным принтером в FastReport .NET, необходимо убедиться, что принтер установлен и правильно настроен в операционной системе. Матричные принтеры обычно поддерживают PCL (Printer Command Language) или ESC/P (Epson Standard Code for Printers) протоколы, которые используются для отправки команд на принтер. Установка драйвера принтера Установим драйвер для нашего матричного принтера. Это можно сделать через панель управления Windows или через установщик, предоставляемый производителем. Проверим настройки принтера, такие как ориентация страницы, размер бумаги и другие параметры, которые могут влиять на качество печати. Давайте разберем функционал печати в FastReport.NET. Для того, чтобы начать печать отчета, нам необходимо перейти в Preview отчета и нажать кнопку «Печать». Далее у нас появится окно печати, в котором мы можем: Выбрать сам принтер (если у нас несколько); Мы можем определять, какие страницы будут напечатаны (в том числе четные или нечетные); Указать при необходимости количество копий; Определить порядок печати (сначала или с конца); Управление дуплексом; Редактирование масштаба печати; Управление режимами печати (формат страницы, количество страниц на листе и т.д.). Стоит отметить, что мы можем перейти в «Настройки». В этом случае у нас появится окно настроек печати, но данные настройки являются системными. Иначе говоря, FastReport .NET не имеет к ним отношения. Также данные настройки «подтягиваются» из самой системы. Можно выставить значения по умолчанию в Windows, и они будут также применимы к этому окну. В целом, мы можем уже приступить к печати, если нас устраивают настройки. Давайте попробуем настроить печать с помощью кода. Настройка печати из кода Для начала нам необходимо создать проект и подключить NuGet пакет FastReport.NET последней версии. Также нам понадобится готовый отчет, который мы создали в дизайнере. Первым делом загружаем ранее созданный нами отчет:  using FastReport; // Создаем объект отчета Report report = new Report(); // Загружаем отчет из файла report.Load("path_to_your_report.frx"); Перед тем как отправить отчет на печать, нужно настроить параметры печати. В FastReport можно указать принтер, на котором будет произведена печать, а также настроить некоторые параметры страницы, такие как ориентация и масштаб. // Получаем список доступных принтеров PrintSettings printSettings = report.PrintSettings; // Устанавливаем имя принтера (например, "Epson LQ-590") printSettings.Printer = "Epson LQ-590"; // Устанавливаем ориентацию страницы (Portrait/Landscape) printSettings.Landscape = false; // Портретная ориентация // Устанавливаем масштаб printSettings.Zoom = 100; // 100% масштаб Теперь можно отправить отчет на печать. FastReport предоставляет метод Print() для выполнения этой задачи: // Выполняем печать отчета report.Print(); Особенности матричных принтеров Матричные принтеры имеют свои особенности, которые следует учитывать при создании отчетов: Шрифты.  Лучше всего использовать моноширинные шрифты, такие как Courier New или Consolas, которые лучше всего подходят для матричных принтеров. Размер страницы.  Матричные принтеры часто используют стандартные размеры страницы, такие как A4 или Letter. Необходимо убедиться, что размер страницы в отчете соответствует возможностям нашего принтера. Количество строк. Если отчёт содержит много строк, возможно, потребуется разбить его на несколько страниц. В FastReport можно настроить автоматическое разбиение страниц на основе количества строк. Давайте создадим отчет-чек, который будет соблюдать нашим требованиям. Запускаем дизайнер, создаем новый пустой шаблон. Переходим в настройки страницы, а после задаем высоту и ширину.  Далее перемещаемся в раздел «Поля» и задаем отступы. Нам нужны отступы 1.27см – 2.28см.  Теперь переходим на страницу нашего отчета. Мы сделаем простой чек и будем использовать шрифт Courier New. Наш отчёт готов и теперь его можно отправлять на печать в матричный принтер. Заключение Использование матричного принтера в FastReport .NET открывает новые возможности для создания и вывода отчетов в приложениях на платформе .NET. Следуя приведенным выше шагам, вы сможете успешно интегрировать матричный принтер в процесс работы с FastReport и обеспечить качественную и надежную печать отчетов. Tags: FastReport, .NET, Отчет, Печать ### Использование отчетов при разработке приложений MVC URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/using-reports-developing-mvc Summary: Посмотрите, как использовать web-отчеты FastReport .NET, если вы создаете проект по шаблону MVC, на примере. Посмотрите, как использовать web-отчеты FastReport .NET, если вы создаете проект по шаблону MVC, на примере. Посмотрите, как использовать web-отчеты FastReport .NET, если вы создаете проект по шаблону MVC, на примере. Если вы создаете свой веб проект по шаблону MVC возникает резонный вопрос – как использовать web-отчеты FastReport.Net? В этой статье я расскажу вам об этом. Так как в архитектуре MVC отображение отделено от логики, использовать визуальный компонент WebReport не получится. Придется работать с отчетом в коде контроллера, а затем передавать в представление (view). Для примера я использовал стандартное веб приложение MVC. Для начала подключаем нужные библиотеки к проекту: FastReport.dll; FastReport.Web.dll. Их можно найти в папке с приложением FastReport.Net. Я решил разместить отчет на странице сайта Home. Поэтому работать с отчетом будем в HomeController.cs. Объявляем библиотеки: ``` using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using FastReport.Web; using System.Web.UI.WebControls; ``` И для метода Index() добавляем следующий код: ``` public ActionResult Index() { WebReport webReport = new WebReport();   string report_path = "C:\\Program Files (x86)\\FastReports\\FastReport.Net\\Demos\\Reports\\"; System.Data.DataSet dataSet = new System.Data.DataSet(); dataSet.ReadXml(report_path + "nwind.xml"); webReport.Report.RegisterData(dataSet, "NorthWind"); webReport.Report.Load(report_path + "Simple List.frx"); ViewBag.WebReport = webReport; return View(); } ``` Рассмотрим подробнее. В первой строке мы создаем экземпляр класса WebReport. Далее создаем переменную для хранения пути к папке с отчетами. Для нашего отчета потребуются данные, поэтому мы создаем dataset и загружаем в него xml базу данных. Теперь необходимо зарегистрировать источник данных в объекте отчета с помощью метода RegisterData(). Используем метод Load() для загрузки шаблона отчета. ViewBag представляет собой обертку вокруг объекта ViewData, и предназначен для передачи данных из контроллера в представление. В данном случае мы будем передавать отчет в представление Index, которая по сути является страницей Home. Переходим к представлению: Код страницы будет таким: ``` @{ ViewBag.Title = "Home Page"; } @ViewBag.WebReport.GetHtml() ``` Я убрал ненужное и оставил лишь заголовок страницы и собственно наш отчет, представленный в формате HTML. То есть для отображения отчета на странице достаточно лишь добавить код: @ViewBag.WebReport.GetHtml() Соответствующий этой странице контроллер передаст в нее отчет. В инициализации представления нужно подключить скрипты:     ``` … @WebReportGlobals.Scripts() @WebReportGlobals.Styles() …   ``` В нашем случае в файл _Layout.cshtml: Осталось лишь подправить Web.config который лежит в папке Views. Добавляем пространства имен для веб отчетов: ``` ``` В корне проекта есть еще один Web.config. В него добавляем обработчик: ``` ``` Запускаем приложение и получаем наш отчет: Таким образом, можно использовать веб отчеты и в проектах MVC.  Tags: .NET, FastReport, ASP.NET, MVC, .NET, FastReport, ASP.NET, MVC ### Использование ресурсов для хранения отчетов FastReport URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/resources-storing-vcl-report Summary: Рассказываем о том, как спрятать темплейты FastReport отчетов от посторонних глаз через хранение внутри исполняемого файла. Рассказываем о том, как спрятать темплейты FastReport отчетов от посторонних глаз через хранение внутри исполняемого файла. Рассказываем о том, как спрятать темплейты FastReport отчетов от посторонних глаз через хранение внутри исполняемого файла. Бывают ситуации, когда нужно ограничить пользователям программы возможности изменения и копирования отчётов. Главное это реализовать так, чтобы они даже и не догадывались, что в программе используется такой замечательный продукт как FastReport. Поговорим о том, как спрятать темплейты отчетов от посторонних глаз. Идея очень проста - темплейты отчетов хранить внутри исполняемого файла, а в нужный момент извлекать и выполнять. Для начала мы создадим файлы отчетов в FastReport VCL и сохраним их в директорию ReportList. Объявляем описание ресурсов через текстовый файл со следующим содержанием: ``` TEST RCDATA ".\ReportList\Test.fr3" TEST2 RCDATA ".\ReportList\Test2.fr3" ``` Сохраняем файл с названием «TestFR.rc». После компилируем его командой BRCC32 TestFR.rc и получаем TestFR.res. В начало модуля нужно дописать строку: ``` {$R TestFR.res} ``` Можно пойти более простым путём использовав библиотеку RxLib. После его установки в меню View появится пункт Project Resources. Выбираем Project Resources->New->User Data и добавляем нужные файлы отчетов. Напишем процедуру извлечения нужного нам ресурса. ``` private { Private declarations } procedure LoadRptFromResource(Report: TfrxComponent; const ResName: string); ............... procedure TFormMain.LoadRptFromResource(Report: TfrxComponent; const ResName: string); var m: TResourceStream; begin m := TResourceStream.Create(HInstance, ResName, RT_RCDATA); try m.Position := 0; Report.LoadFromStream(m); finally m.Free; end; end; ``` Теперь напишем обработчик печати нашего отчета.    ``` procedure TFormMain.Button1Click(Sender: TObject); var Report: TfrxReport; begin   Report:= frxReportMain ; Report.Preview := nil ;   Report.Script.Variables['dDAT'] := Edit1.Text;   //Report.LoadFromFile( ExtractFilePath(Application.ExeName) + 'ReportList\Test.fr3 '); // Для отладки все таки, удобнее использовать LoadFromFile. После отладки и после // создания файла описания ресурсов отчета, можно применить процедуру LoadRptFromResource LoadRptFromResource(Report, 'Test'); // загрузка репорта из ресурсов Report.PrepareReport(True);   //Report.LoadFromFile( ExtractFilePath(Application.ExeName) + 'ReportList\Test2.fr3 '); // LoadRptFromResource(Report, 'Test2'); // загрузка репорта из ресурсов Report.PrepareReport(False);   Report.Preview:= PreviewForm.frxPreviewMain; PreviewForm.ShowModal; end; ``` Конечно, у такого решения есть недостатки. Первый - это ресурсоемкость программы, ведь исполняемый файл увеличивается в разы, но зато хорошо сжимается упаковщиками. Второй - это заторможенность построения отчета. Автор статьи: Леонтьев Олег Геннадьевич Tags: VCL, Lazarus, FastReport, Delphi, VCL, Lazarus, FastReport, Delphi ### Использование свойства PrintOnPreviousPage с бесконечными страницами URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/print-on-previous-page Summary: Посмотрите, как можно экономить бумагу при печати отчетов или же просто улучшить вид отчета, используя свойство PrintOnPreviousPage объекта ReportPage. Посмотрите, как можно экономить бумагу при печати отчетов или же просто улучшить вид отчета, используя свойство PrintOnPreviousPage объекта ReportPage. Посмотрите, как можно экономить бумагу при печати отчетов или же просто улучшить вид отчета, используя свойство PrintOnPreviousPage объекта ReportPage. В этой статье я хочу рассмотреть свойство PrintOnPreviousPage объекта ReportPage. Как оно работает? В случае, если у вас две страницы в отчете, вы можете установить это свойство в true для второй страницы, и тогда, если при печати первой страницы осталось свободное место, объекты второй страницы, частично или полностью будут перенесены на первую. Таким образом можно экономить бумагу при печати отчетов или же просто улучшить вид отчета, если пусто место на странице вызывает у вас диссонанс. Все это прекрасно работает с обычными страницами отчета. Однако, если вы используете свойство UnlimitedHeight или UnlimitedWidth, то для того, чтобы страницы соединились нужно соблюсти некоторые ограничения: Страницы должны иметь включенное свойство UnlimitedHeight или UnlimitedWidth; Если обе страницы имеют включенное свойство UnlimitedHeight, то они должны иметь одинаковую ширину, либо включенное свойство UnlimitedWidth; Для страницы, которая должна сливаться с предыдущей должно быть включено свойство PrintOnPreviousPage. Если не соблюсти эти ограничения, слияния страниц не произойдет. Функционал по слиянию безразмерных страниц стал доступен с версии 2017.1.13. А теперь немного практики. Создаем отчет с двумя страницами: И: Страницы имеют одинаковую ширину 21см. Для обеих страниц включено свойство UnlimitedHeight. Для второй страницы включено свойство PrintOnPreviousPage. Запускаем отчет: Страницы соединились в одну. А теперь для одной из страниц изменим ширину листа с 21 на 22: Страницы не соединились. А теперь, включим для обеих страниц свойство UnlimitedWidth: Страницы снова соединены. Для третьей страницы требования будут такими же, как и для второй. Если мы отключим у второй страницы свойство PrintOnPreviousPage, а у третьей оставим. То соединятся только вторая и третья страницы: Таким образом, теперь можно использовать свойство PrintOnPreviousPage и для «безлимитных» страниц, что превращает отчет с разделенными по логике страницами в действительно одностраничный. Tags: .NET, FastReport, .NET, FastReport ### Использование события CreatePage в FastReport .NET URL: https://xn--90aia9aifhdb2cxbdg.xn--p1ai/blogs/page-create-net Summary: Рассказываем о расширенных возможностях FastReport .NET в виде использований событий для свойств страниц отчета PageCreate. Рассказываем о расширенных возможностях FastReport .NET в виде использований событий для свойств страниц отчета PageCreate. Новое событие CreatePage происходит в момент создания новой страницы движком FastReport .NET. На этом этапе вы можете изменять свойства страницы. Другие события StartPage, FinishPage и ManualBuild вызывается перед началом\концом построения шаблона страницы. Так, например, можно сделать чередование страниц альбомной и книжной ориентации. Новое событие CreatePage происходит в момент создания новой страницы движком FastReport .NET. На этом этапе вы можете изменять свойства страницы. Другие события StartPage, FinishPage и ManualBuild вызывается перед началом\концом построения шаблона страницы. Так, например, можно сделать чередование страниц альбомной и книжной ориентации. Или же с помощью этого события можно создать отдельный источник данных, который будет содержать информацию о ExportAlias или другие свойства страниц. В момент выполнения события можно будет задавать параметры, а в начале следующей страницы проводить итерацию в источнике данных. Модифицированный демо – отчет с использованием события CreatePage для задания ExportAlias. Пример отчета с этим событием описан в следующем примере: ``` using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Windows.Forms; using System.Drawing; using System.Data; using FastReport; using FastReport.Data; using FastReport.Dialog; using FastReport.Barcode; using FastReport.Table; using FastReport.Utils;   namespace FastReport { public class ReportScript { private void Page1_CreatePage(object sender, EventArgs e) { if(Data1.DataSource.RowCount == 0) Data1.InitDataSource(); Page1.ExportAlias = Data1.DataSource["ProductName"].ToString().Substring(0,1); } } }