PB中datawindow 怎么实现查询报表

PB中datawindow 怎么实现查询报表,第1张

首先新建一个datawindow数据窗口
写好你的sql
窗口中把你新建的datawindow放上去
在查询中写读取数据的代码如:
dw_1settransobject(sqlca)
dw_1retrieve()
如果有参数的话写成这样的格式dw_1retrieve(参数1,参数2,)

这个应该不难吧?
你的窗口上的两个数据窗口,虽然说项目和科目有对应,但是从两个数据窗口上看,应该是各自显示各自的数据吧?更像是一个基础数据的显示,对吧?
然后,你要左右各选择一行,通过一个按钮对应,来实现二者的对应并存储到后台表中,是这个意思么?
那就在对应这个按钮的点击事件中写代码就差不多了。
比如科目的数据窗口是dw_1,项目的数据窗口是dw_2
对应的点击事件:
if dw_1GetRow() <= 0 then return //dw_1没有选择行
if dw_2GetRow() <= 0 then return //dw_2没有选择行
string ls_acct, ls_project //定义变量
ls_acct = dw_1objectacct_no[dw_1GetRow()] //获取当前点击的科目值
ls_project = dw_2objectproject_no[dw_2GetRow()]//获取当前点击的项目值
insert into 对应关系表(科目编号, 项目编号) values (:ls_acct, :ls_project); //插入表
if sqlcasqlcode = 0 then //插入成功
commit; //提交确认
else
rollback; //插入失败,回滚事务
end if
这样你的对照关系就插入成功了,如果你的窗口上还有一个现实对应关系的数据窗口,在这之后直接做retrieve,就能刷新对应的关系在数据窗口显示了。

可以在background color 中 自定义 if(currentrow()=getrow(),rgb(255,205,0),if(mod(getrow(),2)=1, rgb(255,255,255) , rgb(255,255,255)))


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13352311.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-20
下一篇 2023-07-20

发表评论

登录后才能评论

评论列表(0条)

保存