如何在.NET 8.0 上安装 FastReport 并创建简单报告(下)

news2025/1/18 21:02:07

FastReport 是一款灵活而强大的报告工具。它允许用户以各种格式访问数据源并以可视化方式呈现它们。使用 FastReport 创建的报告可以在用户界面中使用拖放逻辑轻松设计,并转换为不同的格式(PDF、Excel、Word 等)。>> 如何在.NET 8.0 上安装 FastReport 并创建简单报告(上)

FastReport的报表生成器(无论VCL平台还是.NET平台),跨平台的多语言脚本引擎FastScript,桌面OLAP FastCube,如今都被世界各地的开发者所认可,这些名字被等价于“速度”、“可靠”和“品质”,在美国,欧洲和非洲不同国家均设有办事处。FastReports网站有10种不同语言的介绍,FastReports报表拥有40种语言的本地化的信息。

FastReport .Net是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案,使用FastReport .NET可以创建独立于应用程序的.NET报表,同时FastReport .Net支持中文、英语等14种语言,可以让你的产品保证真正的国际性。

FastReport.NET官方版下载

2. 创建简单报告

2.1.使用FastReport设计器

FastReport Designer 是一个简化报表设计的可视化工具。

  • FastReport Designer 界面介绍: FastReport Designer 提供了一个拖放式用户界面来设计您的报表。您可以轻松地将数据表、图表、文本框等组件添加到您的报表中。
  • 添加数据源:首先,您需要添加要连接到报告的数据源。这些源可以采用各种格式,例如 SQL 数据库、JSON 文件、XML 格式等。在 FastReport Designer 中,您可以轻松定义这些数据源并将其包含在报告中。

FastReport .NET 设计器

打开空白报告设计后,您可以通过从操作框中选择新数据源来在此处连接数据库。

来自操作框的新数据源

FastReport 不要求我们只使用 MS SQL。如果您愿意,您可以以 JSON 和 XML 等格式定义数据并创建报告。

数据向导

导入时您可以灵活使用数据库中的所有选项。除了表之外,过程和视图也可以导入到 FastReport 中并在报告中使用。

2.2. 报告版面设计

  • 创建简单的表格报告:当您开始设计报告时,可以使用表格组件来显示数据。在此示例应用程序中,我将使用包含公司人员的表格中的年龄、姓名等信息创建一份简单的报告。
  • 添加页眉、数据字段和页脚:通过向表中添加页眉行,使您的报告更具可读性。将数据字段与数据源中的数据连接起来。您可以将总计和页码等其他信息添加到页脚行。
  • 样式和格式选项:您可以使用样式和格式选项使报告看起来更专业。例如,您可以将标题设为粗体并更改数据单元格的颜色。

报告布局设计

报告布局设计

在简单的设计中,添加数据源后,只需添加文本即可创建整个报告。在打开要添加的文本的模式中,有系统变量和数据源变量以方便使用。通过选择这些,可以使用拖放功能创建整个报告。

2.3. 预览报告

  • 运行报告并在预览模式下查看: 设计报告后,您可以在预览模式下运行报告以查看设计是否正确。在此模式下,您可以以不同的格式查看报告并修复任何错误。

预览报告

预览报告

您可以通过文件预览或报告预览查看您正在处理的报告的预览。

  • 以不同格式导出报告: FastReport 允许您以不同格式导出报告,例如 PDF、Excel 和 Word。您可以在预览模式下使用“保存”按钮将报告转换为所需的格式。

以不同格式导出报告

3. .NET 代码集成和从应用程序调用报告

3.1. 使用数据库连接调用报表

将我们刚刚创建的报告保存为 .frx 后,我们可以将其作为文件传输到我们的 .net 项目中,并从此文件调用报告。在使用 mssql db 连接准备的报告中,必须安装“FastReport.Data.Mssql”包。

FastReport.数据.Mssql

我们准备从项目中调用刚刚准备的报告。我们通过 FastReport 保存 frx 文件并将其添加到我们的“BasicFastReportDotnet8”项目中,我们将其作为 .net8 控制台应用程序打开。

BasicFastReportDotnet8

我们将在此操作中使用以下软件包:

  • 快速报表
  • 快速报表.数据
  • FastReport.导出.图像

让我们打开我们的.frx扩展文件并看看;

.frx 扩展文件

事实上,我们几乎可以从这里更新报告。我们在文件中使用的元素以 XML 格式呈现,并且我们的数据源连接定义得很好。太棒了!

现在,由于我们在此报告中使用了 mssql 连接,因此我们需要去指定它:

部分程序代码

这样,我们就表明报告已经准备好了数据,无需准备过程。剩下的就是小菜一碟了!

部分程序代码

  • 首先,创建一个新的报告实例并创建我们的报告对象。
  • 然后将准备好的frx文件加载到相关报告中。
  • 下达准备报告的命令。
  • 最后,决定以何种格式保存它。

让我们看看报告结果如何:

准备好的报告

3.2. 通过应用程序提供数据来调用简单报告模板

这些操作也可以使用空模板执行。我们可以在准备好的操作之前向报告对象发出“report.RegisterData”命令,对所需对象重复相同的操作。

部分程序代码

结论

FastReport 为小型项目和大型应用程序提供快速有效的报告解决方案。得益于其用户友好的界面和 .NET 集成,可以轻松进行报告设计和管理。此外,能够随时从数据库中提取记录,通过分离服务器端和数据库操作,可以提高报告分析的速度。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2256103.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

NLP算法具备技能

摘要:好久不看理论,最近把自己学过以及用到过的东西都列了出来,主要是这个大纲体系,详细的内容部分是使用LLM来辅助编写的。 一、大模型 1.1 常用大模型 1.1.1 Qwen ‌Qwen大模型‌是由阿里巴巴开发的系列大语言模型&#xff…

Unity中使用Sqlite存储本地数据

sqlite-net sqlite下载页 我的环境:win11、unity团结1.3.4 1.下载sqlite-net,将SQLite.cs脚本导入Unity 2.下载各平台依赖项,如dll、aar等。导入Unity并设置 3.简单列子,打包测试 using System; using System.IO; using SQLi…

OpenWRT下深入了解IPv6——IPv6 地址结构、前缀划分、子网的概念

一、IPv6地址结构、命名与分类 IPv6 地址由 128 位组成,通常以 : 分隔为 8 组 16 位。 1.IPv6地址压缩 1).前导0可以省略 2).全为0的组可以用::替代 2.IPv6地址分类 3.EUI-64最新标识接口的方法 比mac地址更多 插入FFFE 将第7bit进行反转…

数据结构 ——无头单链表

数据结构 ——无头单链表 一、无头单链表的定义与特性 1、单链表简介 单链表是一种常见的基础数据结构,它由一系列节点组成,每个节点包含数据部分和指向下一个节点的指针。无头单链表是单链表的一种变体,其特点是没有明确的头节点&#xff0…

阿拉丁论文助手:一键点亮学术之路

在学术研究的海洋中,每一位学者都渴望拥有一盏能够照亮前行道路的神灯。阿拉丁论文助手,正是这样一盏神奇的灯,它以其先进的人工智能技术和丰富的学术资源,为学者们的学术写作提供了全方位的支持。 一、阿拉丁论文助手简介 阿拉丁…

大语言模型应用Text2SQL本地部署实践初探

自从两年前OpenAI公司发布ChatGPT后,大模型(Large Language Model,简称LLM)相关技术在国内外可谓百家争鸣,遍地开花,在传统数据挖掘、机器学习和深度学习的基础上,正式宣告进入快速发展的人工智能(Artificial Intellig…

【UE5 C++课程系列笔记】07——使用定时器实现倒计时效果

使用定时器实现如下倒计时效果 效果 步骤 1. 新建一个Actor类,这里命名为“CountDownTimerActor” 2. 在头文件中先定义倒计时时间和更新剩余时间的函数方法 前向声明一个文本渲染组件 3. 在源文件中引入文本渲染组件 创建文本渲染组件并进行一些设置 实现Update…

synchronized的特性

1.互斥 对于synchronized修饰的方法及代码块不同线程想同时进行访问就会互斥。 就比如synchronized修饰代码块时,一个线程进入该代码块就会进行“加锁”。 退出代码块时会进行“解锁”。 当其他线程想要访问被加锁的代码块时,就会阻塞等待。 阻塞等待…

STM32之SDIO通讯接口和SD卡(九)

STM32F407 系列文章 - SDIO-To-SD Card(九) 目录 前言 一、SDIO接口 二、SD卡 三、实现程序 1.SD卡结构体参数说明 2.头文件定义 3.函数sd_init() 4.函数HAL_SD_MspInit() 5.函数get_sd_card_info() 6.函数get_sd_card_state() 7.函数sd_read…

Vue 提供了Transition,可以帮助你制作基于状态变化的过渡和动画

官方文档&#xff1a;https://cn.vuejs.org/guide/built-ins/transition.html Transition​ Vue 提供了两个内置组件&#xff0c;可以帮助你制作基于状态变化的过渡和动画&#xff1a; <Transition> 会在一个元素或组件进入和离开 DOM 时应用动画。本章节会介绍如何使用…

04 创建一个属于爬虫的主虚拟环境

文章目录 回顾conda常用指令创建一个爬虫虚拟主环境Win R 调出终端查看当前conda的虚拟环境创建 spider_base 的虚拟环境安装完成查看环境是否存在 为 pycharm 配置创建的爬虫主虚拟环境选一个盘符来存储之后学习所写的爬虫文件用 pycharm 打开创建的文件夹pycharm 配置解释器…

鸿蒙UI开发——渐变色效果

1、概 述 ArkTs可以通过颜色渐变接口&#xff0c;设置组件的背景颜色渐变效果&#xff0c;实现在两个或多个指定的颜色之间进行平稳的过渡。 目前提供三种渐变类型&#xff1a;线性渐变、角度渐变、径向渐变。 我们在鸿蒙UI布局实战 —— 个人中心页面开发中&#xff0c;默认…

渗透测试--数据库攻击

这篇文章瘾小生其实想了很久&#xff0c;到底是放在何处&#xff0c;最终还是想着单拎出来总结&#xff0c;因为数据库攻击对我们而言非常重要&#xff0c;而且内容众多。本篇文章将讲述在各位获取数据库权限的情况下&#xff0c;各个数据库会被如何滥用&#xff0c;以及能够滥…

Java——异常机制(上)

1 异常机制本质 (异常在Java里面是对象) (抛出异常&#xff1a;执行一个方法时&#xff0c;如果发生异常&#xff0c;则这个方法生成代表该异常的一个对象&#xff0c;停止当前执行路径&#xff0c;并把异常对象提交给JRE) 工作中&#xff0c;程序遇到的情况不可能完美。比如…

Idea Spring Initializr没有 Java 8选项解决办法

问题描述 在使用IDEA中的Spring Initializr创建新项目时&#xff0c;Java 版本近可选择Java17,21 。不能选择Java8;SpringBoot 版本也只有 3.x 问题原因 Spring 官方&#xff08; https://start.spring.io/&#xff09;不再提供旧版本的初始化配置 解决方案 方案 1 使用阿里…

npm发布插件到私有仓库保姆级教程

在开发项目的过程中&#xff0c;我们经常需要安装插件依赖&#xff0c;那么怎么把自己开发的组件封装成一个插件&#xff0c;并发布到npm 插件市场或者上传到私有仓库里面呢&#xff1f;今天总结下自己发布插件到私有仓库的记录&#xff1a; 一、创建组件 执行命令创建一个空…

渗透测试---burpsuite(5)web网页端抓包与APP渗透测试

声明&#xff1a;学习素材来自b站up【泷羽Sec】&#xff0c;侵删&#xff0c;若阅读过程中有相关方面的不足&#xff0c;还请指正&#xff0c;本文只做相关技术分享,切莫从事违法等相关行为&#xff0c;本人与泷羽sec团队一律不承担一切后果 视频地址&#xff1a;泷羽---bp&…

关闭windows11的“热门搜索”

win10搜索栏热门搜索怎么关闭&#xff1f;win10搜索栏热门搜索关闭方法分享_搜索_onecdll-GitCode 开源社区 注册表地址是&#xff1a;计算机\HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Windows\ 最后效果如下&#xff1a;

【MySQL】视图详解

视图详解 一、视图的概念二、视图的常用操作2.1创建视图2.2查询视图2.3修改视图2.4 删除视图2.5向视图中插入数据 三、视图的检查选项3.1 cascaded&#xff08;级联 &#xff09;3.2 local(本地) 四、视图的作用 一、视图的概念 视图&#xff08;View&#xff09;是一种虚拟存…

数据结构 (22)哈夫曼树及其应用

前言 哈夫曼树&#xff08;Huffman Tree&#xff09;&#xff0c;又称最优二叉树或最优树&#xff0c;是一种特殊的二叉树结构&#xff0c;其带权路径长度&#xff08;WPL&#xff09;最短。 一、哈夫曼树的基本概念 定义&#xff1a;给定N个权值作为N个叶子结点&#xff0c;构…