v. 2025.2.0

FastReport .NET WEB is a universal set of components for working with reports on various platforms and operating systems. Develop your documents directly in your browser without installing additional software on your computer. The set includes all the necessary reporting tools for easy integration with your project based on ASP.NET, ASP.NET MVC, .NET Core, Angular, React, Vue, Blazor Server, and Blazor WASM.

Blazor Server

Blazor Server

When using Blazor Server technology, all application logic works on the server side, and only the user interface of the viewer and the report designer is displayed in the browser window. When interacting with the interface, the browser sends an event, the server processes it and sends back updated information.

All work with the visual part of the components, data processing, and report generation takes place on the server side, which allows you to use reporting components on almost any device. Server performance is crucial here.

Blazor WebAssembly (WASM)

Blazor WebAssembly (WASM)

Develop applications right in the browser. The visual part and event handling are configured using C# code and Razor. The application is compiled into .NET assemblies and loaded entirely into the browser using the Web Assembly.

When the report generator is running, browser resources are used, which means that the server requirements are minimal. Web Assembly is suitable for those who need to save server resources and security is not so important.

The files are saved on the client side with access to the report template. At the same time, passwords will be delivered openly, which is why we recommend creating a REST service for presenting data, and in this case using our set of WEB components as a showcase.

ASP.NET components

ASP.NET components

As technologies are evolving rapidly, our web components are designed with the needs of many developers in mind. We follow best web practices to ensure that our components can be easily integrated with server-side web APIs.

You can change or replace your server-side API implementation at any time, and then easily configure our components in Angular, React, and Vue.

Características e benefícios WEB

Embeddability in projects
Install the necessary packages from the NuGet repository, or download packages from our website and add the necessary libraries to the project. No additional modules or special extensions are required.
Reports directly in the browser
Using the Blazor Server hosting model, the app runs on the server from an ASP.NET Core app. Build reports using Blazor Server and get results right in your browser.
Saving server resources
Blazor WebAssembly apps (WASM) run client-side directly on the browser UI thread. This means you don’t have to deploy a highly loaded server for your clients.
High performance
Our components have gone through many stages of testing to truly work stably with large volumes of data. Your multi-page report will be processed in a couple of moments.
Razor Pages support
Razor Pages makes creating script codes for pages easier and more efficient than with controllers and views. The Razor engine defines the interface, and the page logic is processed in C#.
Interactive reports
In your projects, you can use dialog forms, Drill-Down reports, inherit document templates, create editable PDF questionnaires, and much more.

Report Designer right in the browser

The FastReport online report designer allows users to create, edit, and view reports from devices on the Android, iOS, or Windows platforms. The designer can be launched on any device with a modern browser, be it a computer, tablet, smartphone, game console, or TV. Full-featured operation in the browser is possible thanks to the touch-oriented design of the designer. The online designer has a familiar business user interface of an office application with full support for hotkeys. The designer does not use Flash or Java technologies, reducing loading and saving time.

Report Designer right in the browser

Data processing

The set of WEB components works with ADO.NET data sources. It supports data sorting and filtering, master-detail relationships. Everything can be configured with just a few mouse clicks. It is possible to connect to ADO, MS SQL, and XML databases. Connectors are available for connecting to other types of databases, and there is also the ability to retrieve data from business objects of the IEnumerable type.

Your report can contain data (tables, queries, database connections). Thus, you can not only use the data available in your application but also connect to any databases directly from the report. You can use the full power of .NET in your report for complex data processing, management of dialog forms, and much more.

The report can contain dialog forms to request parameters before generating the report. Dialog controls support the ability to connect to data and subsequently filter it. Filtering can be added to any report, and it does not require writing any code. Using the visual query builder, you don't need to know SQL to build a complex query from multiple tables.

Data processing

Preview and print

The pre-prepared report can be examined in detail in the Report Viewer's preview window. Our component supports working with parameters, multi-level detailing, and interactive reports. You can define a response to a mouse click on an object in the preview window. For example, you can build and display another report that shows detailed information about the object the user clicked on.

Additional print settings. The following options are available to you: cutting large report pages into smaller ones, printing multiple small pages on one large page, or printing on a specific format with scaling. Do you need to print a report containing A3-sized pages on a regular A4 printer? Now it's not a problem!

Preview and print

Exports to convenient formats

Filters for exporting the finished report to multiple formats: PDF, RTF, XLSX, XML, DOCX, TXT, CSV, PowerPoint, HTML, MHT, XPS, JPEG, BMP, PNG, Open Document Format (ODT, ODS, ODP), XAML, Scalable Vector Graphics (SVG), DBF, PPML, etc. Cloud support: OneDrive, Google Drive, Box, Dropbox, FastReport Cloud.

The WEB components allow you to quickly convert reports with editable fields (such as text fields, combo boxes, checkboxes, radio buttons, and graphic fields) into PDF documents without connecting additional libraries. Save your reports in popular formats: PDF 1.5, PDF/A-1a, PDF/A-2a, PDF/A-2b, PDF/A-2u, PDF/A-3a, PDF/A-3b, PDF/X-3, and PDF/X-4, which are secure, accessible, and reliable.

Exports to convenient formats

This set of components is part of the Ultimate solution, with which you can create your business projects on all modern .NET, ASP.NET, Blazor, WASM, WPF, WinForms, Avalonia UI, Mono, and other platforms. With your team, you can work both in the desktop designer and directly from the browser. The Ultimate package also includes components for data visualization, namely business graphics with a set of charts and OLAP products for fast processing of large data sets.

Opções de entrega

Características
de $ 1.499
WEB
de $ 799
de $ 499
FastReport Engine
WEB components
WinForms components
Avalonia components
WPF components
Mono components
Online Designer
FastReport.Drawing (Skia)
System.Drawing (GDI)
Report script engine
Data connections
Reporting features
Report objects
Barcodes
Charts
Printing
Export in formats
Transports
Plugins
Custom plugin support
Support
Source Code

Artigos reenviados

26 de abril de 2023

How to use RFID tags in FastReport .NET

The RFID tag is an alternative to identifying goods using barcodes. There is an exception that RFID tags use radio signals, which allows the scanning of large batches of goods in short intervals of time. Also, tags are often used to identify employees in companies. The tag contains 4 data banks: 1. The reserved data bank contains two passwords (access and kill). With the first one, it is possible to control opening and closing access to some banks or parts of the memory. The second one is required for permanent disconnection or reuse (if supported by the tag). Each password must be no longer than 32 bits.2. Electronic product code bank.3. Tag ID bank.4. User data bank. All banks except the first one can have a different volume or they can be blocked by suppliers; all of the mentioned are described in the characteristics of the tag. The data formatting standards for these banks are described in this document. For local use, one can use any data formatting convenient to the user to work with them. Label in FastReport .NET is represented as a report object. To edit it, you need to double-click on the object located on the report page in the designer. The editor is divided into tabs, each containing properties for a specific memory bank and one tab with other label options.   In the tabs of banks, you can enter static data in the fields with their names. Or you can use the data column from the data sources below. But for correct work of data substitution from a source, there must be only one data bank on the page. It is this band that will use the data source. In the reserved data bank, passwords are written only as hexadecimal numbers and 8 characters in length. Also, without a set access password (with a non-zero value), the access mode control will not work. In all other banks, you can choose to write data in either hexadecimal or ASCII-encoded string format. In addition to these fields, there are other settings. For more details, see the documentation for the ZPL format at the following link. RFID tags can be programmed by some Zebra printers, so in addition to the RFID tag object itself, their export to ZPL has been added. Note: For correct export, the RFID tag object must be in a single quantity on the page. A new page object, RFID tag at FastReport .NET, allows users to use the library to create labels or cards without third-party RFID tag encoding software.
Ler
26 de abril de 2023

How to use RFID tags in FastReport .NET

The RFID tag is an alternative to identifying goods using barcodes. There is an exception that RFID tags use radio signals, which allows the scanning of large batches of goods in short intervals of time. Also, tags are often used to identify employees in companies. The tag contains 4 data banks: 1. The reserved data bank contains two passwords (access and kill). With the first one, it is possible to control opening and closing access to some banks or parts of the memory. The second one is required for permanent disconnection or reuse (if supported by the tag). Each password must be no longer than 32 bits.2. Electronic product code bank.3. Tag ID bank.4. User data bank. All banks except the first one can have a different volume or they can be blocked by suppliers; all of the mentioned are described in the characteristics of the tag. The data formatting standards for these banks are described in this document. For local use, one can use any data formatting convenient to the user to work with them. Label in FastReport .NET is represented as a report object. To edit it, you need to double-click on the object located on the report page in the designer. The editor is divided into tabs, each containing properties for a specific memory bank and one tab with other label options.   In the tabs of banks, you can enter static data in the fields with their names. Or you can use the data column from the data sources below. But for correct work of data substitution from a source, there must be only one data bank on the page. It is this band that will use the data source. In the reserved data bank, passwords are written only as hexadecimal numbers and 8 characters in length. Also, without a set access password (with a non-zero value), the access mode control will not work. In all other banks, you can choose to write data in either hexadecimal or ASCII-encoded string format. In addition to these fields, there are other settings. For more details, see the documentation for the ZPL format at the following link. RFID tags can be programmed by some Zebra printers, so in addition to the RFID tag object itself, their export to ZPL has been added. Note: For correct export, the RFID tag object must be in a single quantity on the page. A new page object, RFID tag at FastReport .NET, allows users to use the library to create labels or cards without third-party RFID tag encoding software.
Ler
14 de março de 2023

The Future of Report Generation with Blazor WebAssembly

Microsoft has long introduced a framework for creating an interactive web interface with C#, HTML and CSS. It comes in two versions: Server-side (Blazor Server) and Client-side (Blazor WebAssembly). WebAssembly is particular because it is executed right in the user’s browser and accesses the remote server only for the libraries required for code execution. FastReport .NET already supports Blazor technology as part of the FastReport.Web package (more). However, until now, we have only supported Server-side rendering (Blazor Server). It took us a long time to get FastReport .NET working right in the user’s browser because we needed Skia support for stable work. Starting with version 2023.2, we are pleased to announce Blazor WebAssembly support as part of the FastReport.Blazor.Wasm package. This package is available as part of a FastReport .NET Enterprise subscription and higher (including Ultimate).  Attention! Blazor WebAssembly support is currently in beta. Some reports and functionality may not work. Read the documentation and restrictions carefully before using. Creating a demo application Let’s create a test demo application to see the work of FastReport in WebAssembly. First, install WebAssembly Build Tools to build your project with WebAssembly. If it is not installed, then run the following commands on the command line, depending on the TargetFramework of your application: For .NET 6: dotnet workload install wasm-tools-net6 For .NET 7: dotnet workload install wasm-tools Now let’s create a simple Blazor WebAssembly demo project from a template. You can do this using Microsoft Visual Studio 2022 or the dotnet CLI. For simplicity, let’s use the command: dotnet new blazorwasm -n BlazorWasmDemo Let’s edit the csproj of our project and add the latest FastReport.Blazor.Wasm package: <ItemGroup> <PackageReference Include="FastReport.Blazor.Wasm" Version="2023.2.0" /> </ItemGroup> Now, if you want to prepare your report in the browser (.frx), you must disable Trimming, as it interferes with the report script compilation. You can do this in the following way: <PropertyGroup> <PublishTrimmed>false</PublishTrimmed> </PropertyGroup> Now we add the native SkiaSharp libraries as part of our application. Depending on the TargetFramework we need to add: For .NET 6: <ItemGroup> <NativeFileReference Include="$(HarfBuzzSharpStaticLibraryPath)\2.0.23\*.a" /> <NativeFileReference Include="$(SkiaSharpStaticLibraryPath)\2.0.23\*.a" /> </ItemGroup> For .NET 7: <ItemGroup> <NativeFileReference Include="$(HarfBuzzSharpStaticLibraryPath)\3.1.12\*.a" /> <NativeFileReference Include="$(SkiaSharpStaticLibraryPath)\3.1.12\st\*.a" /> </ItemGroup> In the _Imports.razor file, similarly to the Blazor Server components, add the necessary namespace to view the FastReport components: @using FastReport.Web @using FastReport.Web.Blazor.Components Register FastReport services in our DI container (file Program.cs): builder.Services.AddScoped(_ => new HttpClient{ BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) }); builder.Services.AddFastReport(); Note that for FastReport to work in WebAssembly, you must have a configured HttpClient in a DI container that can access root to load the necessary dlls builds. If you need to override HttpClient for your use, you can just set a separate HttpClient only for FastReport needs: builder.Services.AddFastReport(options => options.HttpClient = new HttpClient{ BaseAddress = new Uri(builder.HostEnvironment.BaseAddress)}); We have almost completed our long journey of preparing FastReport in WebAssembly, but there are just a few finishing touches. In the standard wwwroot\index.html file, we need to add the loading of js scripts for the proper work of FastReport: <script src="./_content/FastReport.Web/scripts.js"></script> Font registration FastReport must interact with the user’s fonts since FastReport works with reports and the font is an integral part of any report with text. This is what happens when the report generator runs on Windows or Linux. However, the information about installed fonts on the user’s computer becomes unavailable when FastReport runs in a browser. Thus, our application must register the fonts that we will use in our reports. In our application, we will use a font that we will embed in our library as an embedded resource (EmbeddedResource) in advance. For this, specify in our project (.csproj): <ItemGroup> <EmbeddedResource Include="Fonts\**"> <Link>Fonts\%(RecursiveDir)%(Filename)%(Extension)</Link> </EmbeddedResource> </ItemGroup> Let’s put all the fonts we need in the Fonts folder and register them in our Program.cs. Let’s create this method and call it immediately: 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(); Data registration That’s quite difficult. Few database connectors can work directly from the user’s browser. Therefore, we leave this to the discretion of our users. For example, you can request data from some third-party resource via HTTP and then register this data in a report before preparing it. In our application, for demonstration, we use the data from the xml file, which we put in wwwroot together with the report. Attention! Do not use this method for the final project publication because hackers can easily steal your data. Using WebReportContainer component Finally, let’s change the file Index.razor to use our WebReportContainer component. It will require the following code: @page "/" @using FastReport @using System.Data; @inject HttpClient HttpClient   @if (isReady) { <WebReportContainer WebReport="myWebReport" /> }   @code{ WebReport myWebReport; private bool isReady = false;   protected async override Task OnParametersSetAsync() { // We receive a report var reportBytes = await HttpClient.GetByteArrayAsync("Simple List.frx"); var reportStream = new MemoryStream(reportBytes); var report = Report.FromStream(reportStream);   // Get xml database and register it var dataBytes = await HttpClient.GetByteArrayAsync("nwind.xml"); var dataSet = new DataSet(); dataSet.ReadXml(new MemoryStream(dataBytes)); report.RegisterData(dataSet, "NorthWind");   // Create a WebReport and assign a report to it myWebReport = new WebReport() { Report = report, EmbedPictures = true }; isReady = true; } } Everything went well if we saw our report in the browser: As a reminder, Blazor WebAssembly currently has beta support. At the time of the 2023.2.0 build, it does not support the following: exports, online designer, database connectors, and Trimming applications (if you use frx reporting). However, we are actively working on improving our WebAssembly component. If you have any questions, write to our support at support@fast-report.com.
Ler
Fast Reports
  • 800-985-8986 (English, US)
  • +31 97 01025-8466 (English, EU)
  • +49 30 56837-3928 (German, DE)
  • +55 19 98147-8148 (Portuguese, BR)
  • info@fast-report.com
  • 66 Canal Center Plaza, Ste 505, Alexandria, VA 22314

© 1998-2025 Fast Reports Inc.