读书人

麻烦帮小弟我看看上面几条语句为什么不

发布时间: 2013-01-22 10:23:54 作者: rapoo

麻烦帮我看看下面几条语句为什么不行?
本帖最后由 ilearn 于 2012-02-18 23:38:16 编辑 这几句不行,下面 mle_3.text和 mle_4.text 内容是一样的,也和 is_return2的内容是一样的,问题代码在我所附的完整代码第 68行
if dw_action2.setsqlselect(mle_3.text) = 1 then
dw_action2.reset()
dw_action2.retrieve()
dw_action2.setsqlselect(mle_4.text)
else
messagebox('','DW2自定义查询条件不符要求,请重新设置!')
return
end if

后来用了这几句就行

ls_syntax2 = SQLCA.SyntaxFromSQL(is_return2, "style(type=grid)", ls_err2)
IF Len(ls_err2) > 0 THEN
MessageBox("DW2自定义查询条件不符要求,请重新设置", "错误原因: " + ls_err2)
RETURN
END IF

dw_action2.Create( ls_syntax2, ls_err2)
IF Len(ls_err2) > 0 THEN
MessageBox("DW2自定义查询条件不符要求,请重新设置", "错误原因: " + ls_err2)
RETURN
END IF
dw_action2.settransobject(sqlca)
dw_action2.retrieve()
[解决办法]
这是两个概念啊!

setsqlselect 加载SQL,条件是,列都不能变,就是条件变化(where 后面)
如果光写了的条件,
要用原SQL组成一起
每次用后,还要加回原sql


第二个是动态创—W的,DW都是重建的
[解决办法]
同意二楼的说法。
先用GetSQLSelect取出原始的
string old_select, new_select, where_clause

// Get old SELECT statement

old_select = dw_emp.GetSQLSelect()

// Specify new WHERE clause

where_clause = "WHERE ..."

// Add the new where clause to old_select

new_select = old_select + where_clause

// Set the SELECT statement for the DW

dw_emp.SetSQLSelect(new_select)

读书人网 >PB

热点推荐