我是Power Builder代码的新手。我需要动态添加一个条件。任何帮助表示赞赏。非常感谢
String szdSQL,psql,sznewsql
szdSQL = "Select A, B, C, D
FROM sy_staging
LEFT OUTER JOIN fd_M
ON sy_staging.id = fd_M.id
LEFT OUTER JOIN gl_M
ON sy_staging.id= gl_M.id AND sy_staging.version = gl_M.version
WHERE sy_staging.year = :lyear AND
sy_staging.location = :llocation "
psql =" Upper(fd_M.code3)=' SMM' " 在我的新查询中,我想在连接中添加此字符串变量(psql)中存在的条件,如下所示
sznewsql = " "Select A, B, C, D
FROM sy_staging
LEFT OUTER JOIN fd_M
ON sy_staging.id = fd_M.id AND Upper(fd_M.code3) = 'SMM'
LEFT OUTER JOIN gl_M
ON sy_staging.id= gl_M.id AND sy_staging.version = gl_M.version
WHERE sy_staging.year = :lyear AND
sy_staging.location = :llocation "
答案 0 :(得分:1)
嗯......这是一个有趣的案例 - 在ON子句中添加一个参数,而不是WHERE子句。
我肯定会使用数据窗口(因为我总是这样做),但我不确定你能否在图形模式下这样做。您可能必须转换为语法,然后只需使用“:”语法将新参数添加到ON子句中。
LEFT OUTER JOIN fd_M
ON sy_staging.id = fd_M.id AND Upper(fd_M.code3) = :newStringParm
LEFT OUTER JOIN gl_M
...
然后你的PowerScript将是 dw_1.retrieve(lYear,lLocation,psql)
-Paul Horan -
答案 1 :(得分:0)
如果你只想拥有这两个不同的SQL,你可以创建两个独立的数据窗口,然后动态交换数据窗口控件中使用的那个。