かなり基本的なはずのSSRSに問題があります。IIFステートメントなどに関するいくつかの回答を見てきましたが、これには完全には対応していません.
私はSSRSが初めてなので、PLSQLを使用してデータセクションで使用できるコード/構文がわかりません。
私がやりたいのは、パラメーターが null かどうかに基づいた 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;