当前位置: 代码迷 >> PB >> 数据窗口Retrieve速度的有关问题
  详细解决方案

数据窗口Retrieve速度的有关问题

热度:42   发布时间:2016-04-29 10:01:57.0
数据窗口Retrieve速度的问题
我在PL/SQL里 和 PB数据窗口的设计界面里Retrieve 的时间差不多,大约为12秒左右.

但在程序运行里写代码 DW.retrieve(有参数) 需要三分钟,请问这是为什么呢,可以缩短时间吗?

------解决方案--------------------
那会影响速度的!
也就是DW的设计中的运行时间啊!

你DW中那几个retrievexxx事件写代码了吗?
------解决方案--------------------
如果你的数据量一起检索过千行,这段代码能让你的用时减少很多,数据量越大越明显
不管有没有颜色判断等
不知道你试了这个没有,我预计你去掉颜色判断等以后
dw.setredraw(false) 
DW.retrieve(有参数) 
dw.setredraw(true)
用的时间不会超过30秒
------解决方案--------------------
是否有过多计算列或表达式
------解决方案--------------------
1、你的数据窗口里面是否有对字段进行计算或加函数之类的比较?比如日期转换比较之类的
2、retrieve前dw_1.setredraw(False),retrieve后dw_1.setredraw(true)
可以加一段测试代码,如下
long ll_cpu
ll_cpu = cpu()
dw_1.retrieve()
messagebox('',cpu() - ll_cpu)
这里面可以测出来时间是花在检索数据上还是其他耗资源的地方,比如数据窗口重绘之类~~
  相关解决方案