千家信息网

大清单报表的打印?

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,我们谈了大清单报表的呈现方法,其实有时候这些报表还需要打印,比如银行打印流水对账单。那么,打印是不是也要像呈现那样做一个缓存机制呢?没有这个必要。打印和浏览不同,一般是从头到尾过一遍就行了,过程中没有
千家信息网最后更新 2025年12月03日大清单报表的打印?

我们谈了大清单报表的呈现方法,其实有时候这些报表还需要打印,比如银行打印流水对账单。

那么,打印是不是也要像呈现那样做一个缓存机制呢?


没有这个必要。打印和浏览不同,一般是从头到尾过一遍就行了,过程中没有翻页的需求。这样,只要流式读入数据逐步生成打印页就可以了,不会发生内存溢出的问题。

但这个做法仍然比较麻烦,特别是现代浏览器加强了安全控制,applet等插件经常被禁用,打印功能常常不能直接由报表工具提供,而要采用flash或PDF方式来实现。用flash可以做到流式读取,但并不简单,还会导致插件与后台耦合性过高,影响安全性;而PDF方式就是一次性生成一个文档,没办法实现这种机制了。


我们来算算打印100万行记录是什么情况。

假设一页纸能打印50行记录(这已经算多了),100万行记录就意味着2万页纸。2万页的连续打印,有多少打印机能做到这个指标?你的用户真有这样的设备吗?2万页纸大概有2米厚,什么打印机能把这些纸放进去?商用快速打印机一分钟也就30几页,就按50页/分钟算,2万页也需要7个钟头!作为一个机械设备能连续工作这么久是不容易的。

而100万行记录需要占多大内存呢?一条记录算1K已经很大(毕竟一页要打印50行的),100万行也就1G内存。这对于前端用于打印的普通PC来讲并不难满足。

这还是只算了100万记录的情况,如果把100万增加到500万,内存仍然可以承受,而打印机是万万吃不消了。也就是说,在现代计算机的内存容量下,打印这个功能采用全内存方式是没有问题的,几乎找不到需要流式读取的情况。作为一个要重复销售的商业软件,报表工具没必要去支撑这种极为罕见甚至根本不存在的应用场景。


这个计算结果,看起来有点荒唐,读者可能会觉得可笑。但这确实是和用户沟通需求时真实发生过的事情,实际上喊的记录行数比500万要大很多,而用户并没有认真计算过它意味着什么。经过一些常规计算我们就会发现,虽然有些用户在叫,大清单报表的打印其实是个伪需求。

大数据领域还有些类似的事,比如说10T数据想要3秒返回结果,用户却不会想到这很可能意味着1万块硬盘。

严谨认真一点,会推出许多想不到的有趣结论 :)。


报表 内存 用户 情况 意味 数据 方式 需求 清单 安全 必要 功能 工具 打印机 插件 机制 机能 结果 设备 问题 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 2022石家庄拆迁数据库 网易软件开发在哪个城市 塔式服务器机箱内怎么加大硬盘 基层警务技术职位网络安全管理 易语言用web服务器验证 关于网络安全的发言提纲 什么网易服务器最好 软件开发负责人岗位工作 扬州做互联网软件开发 网络安全第一课心得 2022魔兽世界经典怀旧服哪个服务器人多 管家婆生产软件开发 没有网络可以访问服务器吗 保护网络安全主题 安广网络技术支持交流 APP无法连接网络服务器 嵌入式软件开发 数据库 我的世界最破烂的服务器是什么 什么是服务器名称 现在有没有网络安全专业的大学 网络安全信息对抗专业 北京融信诚互联网科技有限公司 取服务器上的文件 网络安全最好的手机 三级网络技术题型分数 济源仓库管理软件开发 邓白氏数据库价格 孝义晋京互联网科技 产品网络安全之身份验证 我的世界最破烂的服务器是什么
0