Oracle 接続の種類 (Power BI Report Builder)
適用対象: Power BI Report Builder Power BI Desktop
Oracle データベースのデータをレポート内で使用するには、種類が Oracle のレポート データ ソースに基づいたデータセットが必要です。 このビルトイン データ ソースの種類は、Oracle Data Provider を直接使用し、Oracle クライアント ソフトウェア コンポーネントが必要です。 この記事では、Power BI Report Builder のドライバーをダウンロードしてインストールする方法について説明します。
重要
Oracle の Managed および Unmanaged ODP.NET ドライバーの登録に Oracle の OraProvCfg.exe ツールを使用する次のコマンドは、上記の Microsoft 製品で使用する例として提供しています。 お使いの環境に固有の ODP.NET ドライバーの構成については、Oracle のサポートに問い合わせるか、.NET 用の Oracle Data Provider の構成に関する Oracle のドキュメントを参照する必要があります。
Power BI Report Builder 用の 32 ビット ドライバー
Power BI レポート ビルダーは、ページ分割された (RDL) レポートの作成に、Managed ODP.NET を使用します。 Oracle ODAC ドライバー 12.2 以降を使用している場合は、次の手順のみが必要です。 それ以外の場合、新しい Oracle ホームのコンピューター全体ではない構成に既定でインストールされます。 これらの手順では、Power BI Report Builder がインストールされている c:\oracle32 フォルダーに ODAC 18.x ファイルがインストールされていることを前提としています。 次の手順に従って、Managed ODP.NET を登録します。
Oracle ダウンロード サイトで、Oracle "ODAC with Oracle Developer Tools for Visual Studio - OUI" (32 ビット) をインストールします。
ODP.NET Managed Client を GAC に登録します。
C:\oracle32\product\18.0.0\client_1\odp.net\bin\4\OraProvCfg.exe /action:gac /providerpath:C:\oracle32\product\18.0.0\client_1\odp.net\managed\common\Oracle.ManagedDataAccess.dll
ODP.NET Managed Client エントリを machine.config に追加します。
C:\oracle32\product\18.0.0\client_1\odp.net\bin\4\OraProvCfg.exe /action:config /force /product:odpm /frameworkversion:v4.0.30319 /providerpath:C:\oracle32\product\18.0.0\client_1\odp.net\managed\common\Oracle.ManagedDataAccess.dll
Power BI レポート ビルダー用の 64 ビット ドライバー
Note
次の手順は、Power BI レポート ビルダー バージョン 15.7.01678.0001 以降に適用されます。 15.7.01678.0001 より前のバージョンの場合は、上記の「Power BI Report Builder 用の 32 ビット ドライバー」の手順に従ってください。
Power BI レポート ビルダーは、ページ分割された (RDL) レポートの作成に、Managed ODP.NET を使用します。 Oracle ODAC ドライバー 12.2 以降を使用している場合は、次の手順のみが必要です。 それ以外の場合、新しい Oracle ホームのコンピューター全体ではない構成に既定でインストールされます。 これらの手順では、Power BI レポート ビルダーがインストールされている c:\oracle64 フォルダーに ODAC 18.x ファイルがインストールされていることを前提としています。 次の手順に従って、Managed ODP.NET を登録します。
Oracle ダウンロード サイトで、Oracle 64-bit ODAC Oracle Universal Installer (OUI) をインストールします。
ODP.NET Managed Client を GAC に登録します。
C:\oracle64\product\18.0.0\client_1\odp.net\bin\4\OraProvCfg.exe /action:gac /providerpath:C:\oracle64\product\18.0.0\client_1\odp.net\managed\common\Oracle.ManagedDataAccess.dll
ODP.NET Managed Client エントリを machine.config に追加します。
C:\oracle64\product\18.0.0\client_1\odp.net\bin\4\OraProvCfg.exe /action:config /force /product:odpm /frameworkversion:v4.0.30319 /providerpath:C:\oracle64\product\18.0.0\client_1\odp.net\managed\common\Oracle.ManagedDataAccess.dll
接続文字列
データ ソースへの接続に使用する接続情報および資格情報については、データベース管理者に問い合わせてください。 次に示す接続文字列の例では、Unicode を使用して "Oracle18" というサーバー上の Oracle データベースを指定しています。 サーバー名は、Tnsnames.ora 構成ファイルで Oracle サーバー インスタンス名として定義されたものと一致する必要があります。
Data Source="Oracle18"; Unicode="True"
さらなる接続文字列の例については、データ接続文字列の作成 - Power BI Report Builder に関する記事を参照してください。
資格情報
クエリの実行、ローカルでのレポートのプレビュー、Power BI Web ポータルでのレポートのプレビューには、資格情報が必要です。
レポートを公開した後、Power BI Gateway 接続へのバインドが必要になる場合があります。 詳細については、「データ ソースの管理 - Oracle」を参照してください
クエリ
データセットを作成するには、ボックスの一覧からストアド プロシージャを選択するか、SQL クエリを作成します。 クエリを作成するには、テキストベースのクエリ デザイナーを使用する必要があります。 詳細については、「テキスト ベース クエリ デザイナーのユーザー インターフェイス (Power BI Report Builder)」を参照してください。
結果セットを 1 つだけ返すストアド プロシージャを指定できます。 カーソル ベースのクエリは使用できません。
パラメーター
クエリにクエリ変数が含まれている場合は、対応するレポート パラメーターが自動的に生成されます。 この拡張機能では、名前付きパラメーターがサポートされます。 Oracle バージョン 9 以降では、複数値パラメーターがサポートされています。
レポート パラメーターは、既定のプロパティ値を使用して作成されます。この既定のプロパティ値は、変更が必要になることがあります。 たとえば、各レポート パラメーターのデータ型は Textです。 レポート パラメーターを作成した後に、既定値の変更が必要になる場合があります。
考慮事項と制限事項
Oracle データ ソースに接続するには、システム管理者が、Oracle データベースからのデータの取得をサポートするバージョンの .NET Data Provider for Oracle をインストールしておく必要があります。 このデータ プロバイダーは、Power BI Report Builder と同じコンピューター、および Power BI Gateway をホストするマシンにもインストールする必要があります。 詳細については、「データ ソースの管理 - Oracle」を参照してください。
ストアド プロシージャを呼び出すための回避策
Oracle データ ソースを使うときに、改ページ対応レポートにストアド プロシージャというクエリの種類が設定されている場合、Power BI Gateway の制限があるので、Power BI サービスでの実行は失敗します。 回避策として、Oracle 12 以降を使っている場合は、次の例のようにクエリの種類をテキストに設定し、ストアド プロシージャをインラインで呼び出します。
DECLARE OUT_RPT_DATA SYS_REFCURSOR;
BEGIN
SYSTEM.<Procedure_Name>(OUT_RPT_DATA);
DBMS_SQL.RETURN_RESULT(OUT_RPT_DATA);
END;
プラットフォームおよびバージョン情報
プラットフォームとバージョンのサポートの詳細については、「Power BI のページ分割されたレポートでサポートされるデータ ソース」を参照してください。