动态修改CrossTab数据窗口的SQL,RETRIEVE()后结果不变?

wuhao_delphi 2003-08-20 05:19:47
该crosstab从单表获取数据;
retrieve语句是这样的:
dw_result.Object.DataWindow.Table.Select = is_oldsql + newsql
dw_result.settransobject(sqlca)
rtn = dw_result.retrieve()

...全文
53 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunboy_hb 2003-11-14
  • 打赏
  • 举报
回复
dw_1.dataobject="..." //your dw
settransobject(sqlca)

...

retrieve()
wuhao_delphi 2003-08-21
  • 打赏
  • 举报
回复
settransobject(sqlca)是一定得要的,否则报错。

谢谢楼上的兄弟们,但是......
我retrieve后,
s = dw_result.Object.DataWindow.Table.Select
messagebox('',s)
看到的是修改后的select语句,但是DW中的结果一点没有变!
Crosstab中没有分组。怎么办?

fiend_terminator 2003-08-21
  • 打赏
  • 举报
回复
利用setsqlselect()
如果sql语句有误,系统会提示你!
workhand 2003-08-21
  • 打赏
  • 举报
回复
可能是分组的问题。重新settransobject(sqlca)试试。
klbt 2003-08-20
  • 打赏
  • 举报
回复
你原来的数据窗口是否有分组、排序?
dydywd 2003-08-20
  • 打赏
  • 举报
回复
用MODIFY方法试试
dw_result.modify(DataWindow.Table.Select = is_oldsql + newsql)
nhdj 2003-08-20
  • 打赏
  • 举报
回复
首先你要保证原来数据窗口有的列,你都select了,至于where、order等就随便加了
runsoft 2003-08-20
  • 打赏
  • 举报
回复
看看传递的SQL语句是否正确
prain2003 2003-08-20
  • 打赏
  • 举报
回复
用dw_1.setsqlselect(is_oldsql + newsql)试试
fengzeng 2003-08-20
  • 打赏
  • 举报
回复
messagebox('',is_oldsql + newsql)看看语法变了没有。dw_result.settransobject(sqlca)好像不必要

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧