一些复杂的报表数据可能会从一个复杂的存储过程计算得来的,但是如何控制一次性返回的数据量呢?如果一个用户传递的参数返回的是一个超大的数据集,则一次性返回到客户端则可能引起大麻烦,客户的漫长等待,甚至可能超时,也有可能数据会超出一次性传输数据最大字节。反正直接从服务端返回一个大数据到客户端是一个糟透的设计,在iModel中则采用了这样一种方法,从服务端返回的数据集会暂存在临时数据库中,返回给用户的是临时库的名字和表名字,当然,这些表都具有唯一名字的表,客户端在取得这些表的名称后再通过分页取数据的办法获取报表数据,而在用户使用完后会iModel自动清理掉临时数据。
实际在iModel建造一个报表是非常简单的一件事,因为系统内已经准备了报表插件,你只需要建立报表对象的定义、报表条件对象定义、书写报表数据存储过程和设置几个简单的报表插件参数就可以建立一个功能强大的报表界面。
iModel官方网站:www.saifing.com