我在使用 SSRS 时遇到了一些问题,我认为这应该是非常基本的。我已经看到了一些关于 IIF 声明和其他声明的答案,但没有完全解决这个问题。
我是 SSRS 的新手,所以我不确定您可以在使用 PLSQL 的数据部分中使用什么代码/语法。
我想要做的就是有一个基于参数是否为空的 if 语句。我尝试了各种语法,但它不断抛出错误。有什么建议么?
就像是:
IF (:start_date IS NULL) THEN
SELECT wo.wonum, wo.worktype, wo.description wo_description, wo.targcompdate, wo.assetnum,
s.siteid, s.description s_description,
round((wo.targcompdate - sysdate), 0) DaysTillDue
FROM workorder wo
INNER JOIN site s on wo.siteid = s.siteid
WHERE
(wo.targcompdate - sysdate) >= :Low_Day
and (wo.targcompdate - sysdate) <= :High_Day
and wo.siteid = :site_param
and wo.worktype = :worktype_param;
ELSE
SELECT wo.wonum, wo.worktype, wo.description wo_description, wo.targcompdate, wo.assetnum,
s.siteid, s.description s_description,
round((wo.targcompdate - sysdate), 0) DaysTillDue
FROM workorder wo
INNER JOIN site s on wo.siteid = s.siteid
WHERE
(wo.targcompdate - sysdate) >= :Low_Day
and (wo.targcompdate - sysdate) <= :High_Day
and wo.siteid = :site_param
and wo.worktype = :worktype_param
and targcompdate between :start_date and :end_date;
END;