2016-10-20 18 views
0

SAP Business Objectsにストアドプロシージャのレポートを取得させようとしています。私は運がなかったので、今私はオンラインで見つけた方法の例/チュートリアルで試していますが、それを動作させることはできません。SAP BO - ストアドプロシージャからのレポート

私は次のようだ: https://irfansworld.wordpress.com/2012/11/17/what-you-should-know-about-stored-procedure-universe-in-bi-4-0/

ここに示したように、私は、まったく同じように示されているオブジェクトを作成しました:

create or replace package emp_package 
as type emp_row_type is ref cursor return emp%rowtype; 
end emp_package; 
/

create or replace 
procedure getEmployeesByDepartment 
(
    return_rows_cursor in out emp_package.emp_row_type, 
    dept_parameter in emp.deptno%type 
) 
as begin 
    open return_rows_cursor for 
    SELECT * 
    FROM emp 
    WHERE emp.deptno = dept_parameter; 
    end; 
/

を、私は戻って良い結果を得る:

コンパイル パッケージEMP_PACKAGEを

手順GETEMPLOYEESBYDEPARTMENTをコンパイル

ここでは、目立つ違い...私にとっては、アウト/リターンのパラメータだけが必要で、入力パラメータであるかのように促します。

my sap input params

私はこれに「OK」と言っていても...それは私がレポートに表示するためのフィールドとして、「アウト」カーソル内のフィールドを認識しません。

私は、カーソルのパラメータを「インアウト」から「アウト」に変更しようとしましたが、まだ運がありません。

私はこの例を私のために働かせることができない理由についてのアイデアはありますか?

SAPユニバーサルデザインツール4.1を使用する。

Oracle 11g

答えて

1

これは実際の回答ではありませんが、コメントには長すぎます。

BI4.1 SPパッチ5でこれを試したところ、SPエディタは期待どおりに表示されました(DEPT_PARAMETERパラメータのみを表示)。私はあなたが見ているさまざまな行動のための考えることができる

2つの可能性:

一つはパラメータについてBOを混乱のデータベース・ミドルウェアのクライアントで起こって何かがあるということです。私はOracle 11gクライアントを使用しており、BO(つまりODBCまたはJDBCではなく)でOracleネイティブ接続を使用しています。 ODBCまたはJDBC接続を使用している場合は、代わりにネイティブ・クライアントを試してください。

使用しているUDTの特定のバージョンのバグである可能性があります。 SAPのサポートをアップグレードするか、それが既知の問題かどうかを確認することをお勧めします。

+0

この問題は、ODBCドライバを使用してOracleネイティブ接続に切り替えた後に修正されました。 – user542103

関連する問題