1

我试图弄清楚如何分配从 Oracle Reports 数据库中的表中提取的变量值。此代码位于我的用户参数之一中:

function Project_idValidTrigger return boolean is
begin
:project_id := 'BMDSA';
SELECT VALUE into project_id from WOS_REPORT_PARAM where parameter = 'PROJECT_ID'and SEQUENCE_NUM := sequenceNum;

return (TRUE);
end;

数据库中的表由 4 列组成:SEQUENCE_NUM、SYS_DATE、VALUE、PARAMETER。

我想做的是用我的表中具有指定参数和sequenceNum的值设置我的用户参数“Project_ID”,sequenceNum由另一个用户参数提供。

希望我能正确传达我需要做的事情,Oracle Reports 和 SQL 对我来说仍然很新。

4

1 回答 1

0

我认为这就是您正在寻找的(考虑project_id并且sequenceNum是您的报告参数 -

function Project_idValidTrigger return boolean is
begin

 :project_id := 'BMDSA'; 

  SELECT VALUE 
    INTO :project_id   --gets value into the parameter
    FROM WOS_REPORT_PARAM 
   WHERE parameter = 'PROJECT_ID'
     AND SEQUENCE_NUM = :sequenceNum;  --uses the parameter value in the AND clause

  return (TRUE);
end;

要记住的要点 -:=用于分配,因此简而言之不能在SQL查询中使用。:报表参数在参数名称前由运算符表示的函数内充当绑定变量。

于 2012-08-24T00:54:45.140 回答