在PB中如何实现数据模糊查询(一)

在PB中如何实现数据模糊查询(一),第1张

    本文主要介绍如何在pb中根据数据窗口中的字段对数据窗口进行模糊查询 本系统的代码示例采用Power Builder 进行演示

    代码及设计

     新建一个窗口 命名为w_query 在窗口中放入一个数据窗口控件 命名为dw_master 在dw_master中放入一个数据窗口 放置一个按钮 命名为cb_query 见下图

     新建一个结构(structure)命名为str_result_column 其参数如下

     在dw_master增加两个用户事件 命名为ue_action_query ue_action_refresh

     在cb_query中增加如下代码

     在窗口的Open事件中增加如下代码

    dw_master setTransObject(sqlca)

     在dw_master的ue_action_query中增加如下代码

    str_result_column lstr_     //结构str_result_column的成员adw_result指查询结果所产生作用的dw    // 成员adw_column指在本窗口查询条件所要显示的dw    lstr_ adw_result = this    lstr_ adw_column = this    OpenWithParm(wroot_dw_query lstr_ )     在dw_master的ue_action_refresh事件中增加如下代码

    dw_master retrieve()

     新建一个窗口 命名为wroot_dw_query 该窗口用以进行模糊查询 其设计完成后界面如下所示

    其中 执行 按钮名为 cb_exec 返回 按钮名为 cb_exit 返回 按钮下的数据窗口名为dw_column 其dataObject为d_column_set 中间的数据窗口名为dw_where 其dataObject为d_where

     d_column_set的设计完成界面如下所示

     其sql为

     dw_where的设计完成界面如下

     其sql为

    在PB中如何实现数据模糊查询(二)

    在PB中如何实现数据模糊查询(三)

    在PB中如何实现数据模糊查询(四)

lishixinzhi/Article/program/SQL/201311/16318

选择题12题是C和B

填空第一个应该说的是编辑,调试那4个阶段。

第7体应该是创建,连接数据库,配制DB,其他不清楚了。

我也是以前学的,现在没什么映像了,PD已经淘汰了差不多了!

在dw_1doubleclicked事件里写

string ls_para

ls_para = thisgetitemstring(row,'单据号C')

//w_1dw_2设置检索变量为 字段单据号C

if isvalid(w_1) then

w_1dw_2retrieve(ls_para)

else

openwithparm(w_1,ls_para)

//在w_1的open事件里获取参数,然后dw_2retrieve

end if

您好,

首先,窗口与窗口的参数传递使用 openwithparm(),然后因为你传的是一组数据,可以有下面处理意见

1、数据表的关键字为单列,像‘单据编号’,这个比较简单,grid 中把关键字 读到一个数组中,把数组传递到另一个窗口

2、关键字比较多,表格比较复杂,可以考虑,grid中,先把你需要的数据按条件filter,然后使用string ls_parm 变量来保存数据

ls_parm = dw_1describe("datawindowdata")

在另一个窗口放一个与grid一样结构的DW(当然如果你的freeform型DW的结构是一样的,这个步骤可以省略),来improtstring()来还原数据

传用,openwithparm(w_1,aaa)

接收用messagestringparm

messagenumberparm

messagepowerobjectparm

接收不同的数据类型

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

原文地址: http://outofmemory.cn/langs/12177629.html

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

发表评论

登录后才能评论

评论列表(0条)

保存