如何创建类似报表引擎的服务器端COM控件(服务),高分酬谢!!
我们已经有了这样一个c/s模式的报表系统,意即报表的设计和显示等的所有功能
都集中于一身。它的报表设计信息包括两部分,一部分是报表的格式,以文件形式存放于安装报表的机器上,另一部分是报表设计的设置信息,与具体的报表相关,存放在大型数据库中。
然而,作为一个独立的报表系统,它就具有如下的缺点:
1、不能进行分布式处理。如果要在多台机器上同时安装的话,由于报表格式的定义
是以文件方式保存的,不能保证报表格式的一致性。
2、如果通过远程调用,调用方并不能看到远程报表的显示格式,只能被动打印,不能所见既所得,无法实时调整。
解决上述问题的方法,就是实现WEB报表,具体而言,就是在报表服务器(唯一的一台机器)提供这样的报表引擎服务(COM),并有相关的接口。客户端浏览器可以向WEB服务器发出调用一个报表的需求,然后WEB服务器调用报表引擎服务的接口,获得报表的内容,实现WEB页面,并发送会客户端。
如上的难题就是COM的设计。由于报表的格式是以文件存放的(Excel,cell文件),COM服务必须打开这些文件进行处理。
如果客户同时有大量报表查询的需求,如何控制报表格式文件的读取?报表服务器的负荷是不是很大?
在COM中如何读取文件,以多线程吗?
请设计和实现过COM的高手给予指导。
谢谢。