Oracle Bi Administration Tool 似乎允许您使用“Stored Proc”表类型作为物理表的源。它允许您使用数据库特定的 SQL(例如 Oracle 12)作为初始化字符串。所有这些让我相信在这里使用 Oracle 存储过程是可行的。 你们有人知道这个选项的正确用法是什么吗?
我尝试使用 DMBS_SQL.RETURN_RESULT,如下所示:
CREATE OR REPLACE PROCEDURE BISAMPLE.RESULT_P AUTHID DEFINER AS
c1 SYS_REFCURSOR;
BEGIN
OPEN c1 FOR
SELECT NAME
, INCOME_LVL
FROM BISAMPLE.SAMP_CUSTOMERS_D;
DBMS_SQL.RETURN_RESULT (c1);
END;
/
然后在 RPD 中,我创建了物理表(2 列名称和收入),对于源,我使用“存储过程”类型并使用 exec 命令调用 BISAMPLE.RESULT_P。好像没啥作用。
实际上取决于存储过程应该返回的内容。如果其结果集是一个表,那么您可以使用此处概述的相同方法:http://obiee101.blogspot.com/2011/01/obiee-using-mssql-stored-procedure-as.html