次の方法で共有


Power BI Desktop で SAP Business Warehouse コネクタを使用する

Power BI Desktop を使用して、SAP Business Warehouse (SAP BW) データにアクセスできます。 SAP BW コネクタ実装 2.0 では、バージョン 1.0 からのパフォーマンスと機能が大幅に向上しています。

この記事では、インストール、接続のセットアップ、トラブルシューティングの手順など、Power BI Desktop で SAP BW コネクタを使用する方法と、最新のコネクタ実装を使用するように既存のレポートを更新する方法について説明します。

SAP のお客様が Power BI を SAP BW システムに接続するメリットの詳細については、Power BI と SAP BW の ホワイトペーパーを参照してください。 SAP BW での DirectQuery の使用の詳細については、DirectQuery と SAP Business Warehouse (BW)を参照してください。

重要

SAP BW コネクタのバージョン 1.0 は非推奨です。 新しい接続では、SAP BW コネクタの実装 2.0 が使用されます。 バージョン 1.0 のすべてのサポートは、近い将来コネクタから削除される予定です。 この記事の情報を使用して、コネクタの実装 2.0 を使用するように既存のバージョン 1.0 レポートを更新します。

SAP BW コネクタを使用する

SAP BW コネクタを使用してデータをインストールして接続するには、次の手順に従います。

前提

SAP Connector の実装 2.0 には、SAP .NET Connector 3.0 または 3.1 が必要です。 SAP .NET Connector 3.0 または 3.1 を SAP からダウンロードできます。 ダウンロードにアクセスするには、有効な S ユーザー サインインが必要です。

.NET Framework コネクタは、32 ビットバージョンと 64 ビット バージョンで提供されます。 Power BI Desktop のインストール バージョンと一致するバージョンを選択します。

インストールする場合は、オプションのセットアップ手順で、[アセンブリを GACにインストールする] 選択していることを確認します。

[アセンブリを GAC にインストールする] が選択されている SAP オプションのセットアップ手順のスクリーンショット。

手記

SAP BW コネクタの最初のバージョンでは、NetWeaver DLL が必要です。 現在のバージョンでは、NetWeaver DLL は必要ありません。

Power BI Desktop で SAP BW データに接続する

SAP BW コネクタを使用して SAP BW データに接続するには、次の手順に従います。

  1. Power BI Desktop で、[データの取得]を選択します。

  2. [データの取得] 画面で [データベース] を選択してから、[SAP Business Warehouse アプリケーション サーバー] または [SAP Business Warehouse メッセージ サーバー] を選択します。

    SAP の [データの取得] オプションを示すスクリーンショット。

  3. [接続] を選択します。

  4. 次の画面で、サーバー、システム、クライアントの情報を入力し、 のインポート 使用するか、DirectQuery 接続方法を するかを入力します。 詳細な手順については、以下を参照してください。

    手記

    SAP BW コネクタを使用して、SAP BW Server キューブ (既定値) からデータをインポートすることも、DirectQuery を使用してデータに接続することもできます。 DirectQuery での SAP BW コネクタの使用の詳細については、「DirectQuery および SAP Business Warehouse (BW)を参照してください。

    詳細オプション選択し、言語コード、指定したサーバーに対して実行するカスタム MDX ステートメント、その他のオプションを選択することもできます。 詳細については、「高度なオプションを使用する」を参照してください。

  5. [OK] 選択して接続を確立します。

  6. 必要な認証データを入力し、接続を選択します。 認証の詳細については、「デスクトップ アプリでの認証 」を参照してください。

  7. カスタム MDX ステートメントを指定しなかった場合は、ナビゲーター 画面に、サーバーで使用可能なすべてのキューブの一覧が表示されます。 ディメンションやメジャーなど、使用可能なキューブからアイテムをドリルダウンして選択できます。 Power BI には、Open Analysis Interfaces を介して公開されるクエリとキューブが表示されます。

    サーバーから 1 つ以上の項目を選択すると、ナビゲーター に出力テーブルのプレビューが表示されます。

    ナビゲーター画面の SAP テーブル プレビューのスクリーンショット。

    [ナビゲーターの] ダイアログには、次の表示オプションもあります。

    • [選択された項目のみ]。 既定では、ナビゲーター はすべての項目を表示します。 このオプションは、選択した項目の最終的なセットを確認するのに役立ちます。 または、プレビュー領域で列名を選択して、選択した項目を表示することもできます。
    • データ プレビューを有効にします。 この値が既定値であり、データ プレビューが表示されます。 プレビュー データを要求しなくなったサーバー呼び出しの数を減らすには、このオプションの選択を解除します。
    • [技術名]。 SAP BW では、キューブ内のオブジェクトに ユーザー定義の 技術名がサポートされます。 キューブ所有者は、オブジェクトの物理名のみを公開するのではなく、キューブ オブジェクトに対してこれらのフレンドリ名を公開できます。

    [ナビゲーター] ウィンドウの表示オプションのスクリーンショット。

  8. 必要なすべてのオブジェクトを選択したら、次のいずれかのオプションを選択します。

    • を読み込み、出力テーブルの行セット全体を Power BI Desktop データ モデルに読み込みます。 レポート ビューが開きます。 データの視覚化を開始するか、テーブル ビューまたはモデル ビュー 使用して、さらに変更を加えることができます。
    • [データの変換] を選択すると、[Power Query エディター] が開いてデータが表示されます。 行のセット全体を Power BI Desktop データ モデルに取り込む前に、より多くのデータ変換とフィルター処理の手順を指定できます。

SAP BW キューブのデータと共に、Power BI Desktop で他のさまざまなデータ ソースからデータをインポートし、それらを 1 つのレポートに結合することもできます。 この機能は、SAP BW データに基づいてレポートと分析を行う多くの興味深いシナリオを示します。

SAP BW 実装 2.0 の新しいオプション

このセクションでは、SAP BW コネクタ実装 2.0 の機能と機能強化の一部を示します。 詳細については、「実装の詳細を参照してください。

詳細オプション

SAP BW 接続画面の 詳細オプションで、次のオプションを設定できます。

  • 実行モード は、MDX インターフェイスがサーバーでクエリを実行する方法を指定します。 次のオプションが有効です。

    • BasXml
    • BasXmlGzip
    • DataStream

    既定値は BasXmlGzipです。 このモードでは、低待機時間または大量のクエリのパフォーマンスを向上させることができます。

  • バッチ サイズ では、MDX ステートメントの実行時に一度に取得する行の最大数を指定します。 数が少ない場合は、大規模なセマンティック モデルを取得するときに、サーバーへの呼び出しが増えます。 値が大きいとパフォーマンスが向上する可能性がありますが、SAP BW サーバーでメモリの問題が発生する可能性があります。 既定値は 50000です。

  • 特性構造を有効化ナビゲーター の特性構造の表示方法が変更されます。 このオプションの既定値は false、またはオフです。 このオプションは、選択できるオブジェクトの一覧に影響し、ネイティブ クエリ モードではサポートされていません。

その他の機能強化

次の一覧では、実装 2.0 のその他の機能強化について説明します。

  • パフォーマンスの向上。
  • 数百万行のデータを取得し、バッチ サイズ パラメーターを使用して微調整する機能。
  • 実行モードを切り替える機能。
  • 圧縮モードのサポート。待機時間の長い接続や大規模なセマンティック モデルに特に役立ちます。
  • Date 変数の検出が改善されました。
  • Date (ABAP 型 DATS) および Time (ABAP 型 TIMS) ディメンションは、テキスト値ではなく日付と時刻として公開されます。 詳細については、「SAP BW の型指定された日付のサポート」を参照してください。
  • 例外処理の改善。 BAPI 呼び出しで発生したエラーが表示されるようになりました。
  • BasXml モードと BasXmlGzip モードでの列の折りたたみ。 たとえば、生成された MDX クエリで 40 個の列が取得され、現在の選択に必要な列が 10 個しかない場合、この要求はサーバーに渡され、より小さなセマンティック モデルが取得されます。

既存の実装 1.0 レポートを更新する

既存のレポートは、インポート モードでのみ実装 2.0 を使用するように変更できます。

  1. Power BI Desktop の既存のレポートから、リボンの [データの変換] を選択し、更新する SAP Business Warehouse クエリを選択します。

  2. クエリを右クリックし、[詳細エディター]選択します。

  3. 詳細エディターで、SapBusinessWarehouse.Cubes の呼び出しを次のように変更します。

  4. 次の例を参照として使用して、クエリにオプション レコードが既に含まれているかどうかを確認します。

    オプション レコードを含むプレーンテキスト クエリを示すスクリーンショット。

    その場合は、[Implementation 2.0] オプションを追加し、ScaleMeasures オプションを削除します。

    実装 = 2.0 の値が追加されたプレーンテキスト クエリを示すスクリーンショット。

    手記

    この実装では、ScaleMeasures オプションは非推奨です。 コネクタでは、常にスケーリングされていない値が表示されるようになりました。

  5. クエリにオプション レコードがまだ含まれていない場合は、追加します。 たとえば、次のエントリを変更します。

    オプション レコードが追加されたプレーンテキスト クエリを示すスクリーンショット。

    宛先:

    新しいオプション「実装 = 2.0」のプレーンテキストクエリを示すスクリーンショット。

手記

SAP BW コネクタの実装 2.0 は、バージョン 1 と互換性がある必要があります。 ただし、SAP BW MDX 実行モードが異なるため、いくつかの違いがある場合があります。 不一致を解決するには、実行モードを切り替えてみます。

トラブルシューティング

このセクションでは、SAP BW コネクタのトラブルシューティングの状況と解決策について説明します。 詳細については、SAP Business Warehouse コネクタのトラブルシューティングを参照してください。

SAP BW からの数値データが誤って書式設定された数値データを返す

この問題では、SAP BW はコンマではなく小数点を持つ数値データを返します。 たとえば、1,000,000 は 1.000.000 として返されます。

SAP BW は、小数点区切り記号としてコンマまたはピリオドを含む 10 進データを返します。 小数点区切り記号に SAP BW で使用する必要があるこれらの文字のうち、どれを指定するために、Power BI Desktop ドライバーは BAPI_USER_GET_DETAILを呼び出します。 この呼び出しは、DEFAULTSと呼ばれる構造体を返します。この構造体には、Decimal Format Notation を次のいずれかの値として格納する DCPFM というフィールドがあります。

  • ' ' (スペース) = 小数点はコンマ: N.NNN,NN
  • 'X' = 小数点はピリオド: N,NNN.NN
  • 'Y' = 小数点は N: NNN NNN,NN

この問題では、誤って書式設定されたデータを取得する特定のユーザーに対する BAPI_USER_GET_DETAIL の呼び出しが失敗し、次のメッセージのようなエラー メッセージが表示されます。

 You are not authorized to display users in group TI:
     <item>
         <TYPE>E</TYPE>
         <ID>01</ID>
         <NUMBER>512</NUMBER>
         <MESSAGE>You are not authorized to display users in group TI</MESSAGE>
         <LOG_NO/>
         <LOG_MSG_NO>000000</LOG_MSG_NO>
         <MESSAGE_V1>TI</MESSAGE_V1>
         <MESSAGE_V2/>
         <MESSAGE_V3/>
         <MESSAGE_V4/>
         <PARAMETER/>
         <ROW>0</ROW>
         <FIELD>BNAME</FIELD>
         <SYSTEM>CLNTPW1400</SYSTEM>
     </item>

このエラーを解決するには、SAP 管理者が Power BI SAP BW ユーザーに BAPI_USER_GET_DETAIL実行する権限を付与する必要があります。 また、ユーザーのデータに正しい DCPFM 値があることを確認します。

SAP BEx クエリの接続が必要

次の図に示すように、Release for External Access プロパティを有効にすると、Power BI Desktop で BEx クエリを実行できます。

外部アクセスのリリースの有効化を示すスクリーンショット。

この問題では、Navigator はデータ プレビューを表示せず、代わりにオブジェクトのインスタンスに設定されていない オブジェクト参照 エラー メッセージを表示します。

SAP ユーザーは、メタデータを取得し、SAP BW の InfoProviders からデータを取得するために、次の特定の BAPI 関数モジュールにアクセスする必要があります。

  • BAPI_MDPROVIDER_GET_CATALOGS
  • BAPI_MDPROVIDER_GET_CUBES
  • BAPI_MDPROVIDER_GET_DIMENSIONS
  • BAPI_MDPROVIDER_GET_HIERARCHYS
  • BAPI_MDPROVIDER_GET_LEVELS
  • BAPI_MDPROVIDER_GET_MEASURES
  • BAPI_MDPROVIDER_GET_MEMBERS
  • BAPI_MDPROVIDER_GET_VARIABLES
  • BAPI_IOBJ_GETDETAIL

この問題を解決するには、ユーザーが MDPROVIDER モジュールと BAPI_IOBJ_GETDETAILにアクセスできるかどうかを確認します。

トレースを有効にする

これらの問題や同様の問題をさらにトラブルシューティングするには、トレースを有効にします。

  1. Power BI Desktop で、[ファイル]>[オプションと設定]>[オプション] の順に選択します。
  2. [オプション]で [診断]を選択し、[診断オプション]で [トレースを有効にする] を選択します。
  3. トレースがアクティブな状態で SAP BW からデータを取得し、トレース ファイルを調べて詳細を確認してください。

SAP BW 接続のサポート

次の表では、SAP BW に対する現在の Power BI サポートについて説明します。

製品 モード 認証 コネクタ SNC ライブラリ サポート対象
Power BI Desktop どれでも ユーザー/パスワード アプリケーション サーバー N/A はい
Power BI Desktop 任意 ウィンドウズ アプリケーション サーバー sapcrypto + gsskrb5/gx64krb5 はい
Power BI Desktop 任意 借用による Windows アプリケーション サーバー sapcrypto + gsskrb5/gx64krb5 はい
Power BI Desktop どれでも ユーザー/パスワード メッセージ サーバー N/A はい
Power BI Desktop 任意 ウィンドウズ メッセージ サーバー sapcrypto + gsskrb5/gx64krb5 はい
Power BI Desktop 任意 借用による Windows メッセージ サーバー sapcrypto + gsskrb5/gx64krb5 はい
Power BI ゲートウェイ 輸入 Power BI Desktop と同じ
Power BI ゲートウェイ ダイレクトクエリ ユーザー/パスワード アプリケーション サーバー N/A はい
Power BI ゲートウェイ DirectQuery 偽装による Windows (固定ユーザー、SSO なし) アプリケーション サーバー sapcrypto + gsskrb5/gx64krb5 はい
Power BI ゲートウェイ DirectQuery [DirectQuery クエリに Kerberos 経由で SSO を使用する] オプション アプリケーション サーバー sapcrypto + gsskrb5/gx64krb5 はい
Power BI ゲートウェイ ダイレクトクエリ ユーザー/パスワード メッセージ サーバー N/A はい
Power BI ゲートウェイ DirectQuery 偽装による Windows (固定ユーザー、SSO なし) メッセージ サーバー sapcrypto + gsskrb5/gx64krb5 はい
Power BI ゲートウェイ DirectQuery [DirectQuery クエリに Kerberos 経由で SSO を使用する] オプション メッセージ サーバー gsskrb5/gx64krb5 いいえ
Power BI ゲートウェイ DirectQuery [DirectQuery クエリに Kerberos 経由で SSO を使用する] オプション メッセージ サーバー sapcrypto はい