报表引擎 - 研究润乾报表的实现
使用过很多公司的报表试用版本,个人觉得润乾报表 是一个非常灵活的产品,虽然目前的设计器还只能适用于开发人员:)
在试用润乾报表过程中,认真揣摩她的核心概念,发现自己也可以实现一个类似的报表引擎,所以自己也使用Delphi实现了一个显示报表的核心部分的报表引擎(还未添加填报功能),可以看看我以前写的《交叉表的报表设计》示例
实现报表引擎需要使用用到以下两个个核心技术和概念:
- 数学表达式引擎
- 报表扩展模型
准备重新实现一个.Net下的报表引擎,可以基于它之上进行表单设计、查询窗体、报表、处理数据分析
就像以上说的需要基于两个核心技术,所以会先实现一个表达式引擎。我在以前的文章Antlr实现表达式引擎的语法文件中写了使用Antlr实现的一个示例的主要语法文件。后期我会使用Antlr编写一个数学表达式计算引擎,到时会和大家分享。
网上还有其他可以参考的文章和资料,大家可以参考。例如:
- State of the Art Expression Evaluation
- An extensible math expression parser with plug-ins
- Implementing an Excel-like formula engine
- Flee - Fast Lightweight Expression Evaluator
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架