PowerBuilder中retrieve的问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 07:27:01
为什么在代码中已经为retrieve的参数赋值了,而且在查错时我发现retrieve命令已经成功执行了,但是运行时还是会弹出窗口提示我输入retrieve的参数值呢? ... 郁闷

代码如下:
long ll_autoid
if row > 0 then
ll_autoid = dw_1.object.autoid[row]
dw_2.retrieve(ll_autoid)
end if

因为retrieve默认没有参数。你上面写的代码中加了一个参数,那么就要做相应的设置,方法如下:
1:在左边workspace树型区中,双击你的dw_2窗口,从而打开你的dw_2,然后在菜单栏中选择design-->data source,从而打开data source窗口
2:再次选择菜单栏中的design-->retrieval arguments.此时会弹出一个对话框,在其中加入你的参数和类型( name栏可以任意填写一个名字,我暂且假定你写的是autoid,一会要用到。type栏一定要和你的ll_autoid类型匹配。这和我们在其他语言中调用子程序的规则一样),然后ok.
3:往data source窗口下方看,有个where标签栏,选中它,然后在column 中选择你要retrieve的列名,operator中选择操作符,value中填入:autoid(注意冒号要加在autoid前面),然后关闭data source窗口,会弹出对话框,选择“是”就行了。这一步其实这就是sql中的select语句的的另一种表现形式,如果你对sql语句比较熟悉,这一步很容易理解。

感觉说了好多,不知道你明白了没有,呵呵。如果设置正确,应该不会弹出你说的那个窗口了。

dw_2的参数不只一个,好好检查