如何动态修改DATAWINDOW OBJECT的数据源

(一)通过GETSQLSELECT、SETSQLSELECT函数实现

dwcontrol.GetSQLSelect ( )

dwcontrol.SetSQLSelect ( statement )

说明:这种情况下要求新旧SELECT出来的结果列要求一致,并且SELECT语句不能有RETRIEVE ARGUMENTS。

(二)通过dw_control.Object.DataWindow.Table.Select属性实现

sqlvar = 'SELECT ... WHERE ...'

dw_1.Modify("DataWindow.Table.Select='" + sqlvar + "'")

说明:这种情况下可以使用RETRIEVE ARGUMENTS,但必须要求只能使用原来已定义的ARGUMENTS。

(三)通过CREATE函数重构DATAWINDOW来实现

dwcontrol.Create ( syntax {, errorbuffer } )

这其中的SYNTAX语法可以通过以下四种方式获取:

1、setting = dw_1.Object.DataWindow.Syntax

setting = dw_1.Describe("DataWindow.Syntax")

2、LibraryExport ( libraryname, objectname, objecttype )

3、transaction.SyntaxFromSQL ( sqlselect, presentation, err )

4、自己组合拼装SYNTAX,但这种要求开发者非常熟悉DWO对象语法

(四)通过SETFILTER函数过滤部分数据来实现

dwcontrol.SetFilter ( format )

这种方法其实是一种间接达到目的的方法。

(五)通过处理SQLPREVIEW事件来实现

这种方法也是一种间接达到目的的方法,它通过改变SQLPREVIEW事件中的sqlsyntax参数来实现修改数据源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值