开始觉得水晶报表做报表简单,胡搞了近1月,被领导说了一句:水晶报表不能满足我们要求而告失败。
失败了,有点教训:一定要用成熟的东西,不要别人说好就认为很好,(有人做过,并且与自己的工程相似才是真理我没有能力搞什么科研!)。几个主要问题是:
1、 部署win98相当困难,开发是在win2000下通过的,
Rpt_OrderMaterialStatic newrep = new Rpt_OrderMaterialStatic();
a. 先显示报表再打印是好的
crystalReportViewer1.ReportSource = newrep;
crystalReportViewer1.PrintReport(); //弹出打印框
b. 不显示报表直接打印问题就有了
newrep.PrintToPrinter(1,false,1,1); //直接打印
打印出来的就是有几个中文字叠加再一起的。网上有人反映过,但没有人解答。
2、打印纸的设置是固定的,只能选择不能设置。
正好客户打印送货单之类的东西是9in*11in的纸张,利用水晶报表是弄不出来的。
打印纸的尺寸只能是选择PaperSize 中的纸张大小。如:
DefaultPaperSize 打印机驱动程序中设置的默认大小。 Paper10x14 纸张大小为 254 x 355.6 毫米。 Paper11x17 纸张大小为 279.4 x 431.8 毫米。等等。没办法灵活设置。
不能自己New一个,真是。
3、程序拷贝到其他地方,重新运行程序是必须进行数据库的验证。报表空白处右键-----选择数据库-----验证数据库,并且要手工制定路径。不然你的数据源XML文件路径还在以前程序那里。
你会对的当前.xsd的搞了半天,而报表毫无反应。
4、部署时,要加很多合并模块,程序比较大,第一次启动非常慢,往往是超过客户忍受界限的。
这事过去7、8个月了,现有人问起水晶报表,就把记忆较深几点跟大家说说。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架