DirectQuery と SAP Business Warehouse (BW)DirectQuery and SAP Business Warehouse (BW)

SAP Business Warehouse (BW) データ ソースへは、DirectQuery を使用して直接接続することが可能です。You can connect to SAP Business Warehouse (BW) data sources directly using DirectQuery. SAP BW は OLAP/多次元的な性質があるため、SAP BW での DirectQuery と SQL Server などのリレーショナル ソース間では多数の重要な違いがあります。Given the OLAP/multidimensional nature of SAP BW, there are many important differences between DirectQuery over SAP BW versus relational sources like SQL Server. これらの相違点は次のとおりです。These differences are summarized as follows:

  • リレーショナル ソースを使用する DirectQuery では、フィールド リストで使用できるデータを論理的に定義する ([データの取得] または [クエリ エディター] ダイアログで定義される) 一連のクエリがあります。In DirectQuery over relational sources there are a set of queries (as defined in the Get Data or Query Editor dialog) that logically define the data that is available in the field list. これは、SAP BW などの OLAP ソースに接続するときには該当しませんThis is not the case when connecting to an OLAP source such as SAP BW. 代わりに、[データの取得] を使用して SAP サーバーに接続する場合、インフォキューブまたは BEx クエリのみが選択されます。Instead, when connecting to the SAP server using Get Data, just the Infocube or BEx Query is selected. すると、選択されたインフォキューブ/BEx クエリのすべての主要な指標とディメンションがフィールド リストで使用できるようになります。Then all the Key Figures and dimensions of the selected Infocube/BEx Query will be available in the field list.
  • 同様に、SAP BW に接続する場合には、[クエリ エディター] はありません。Similarly, there is no Query Editor when connecting to SAP BW. (サーバー名などの) データ ソースの設定は、[クエリを編集]、[データ ソース設定] を選択して変更できます。The data source settings (for example, server name) can be changed by selecting Edit Queries > Data source settings. これらの任意の変数の設定は、[クエリを編集]、[変数を編集] を選択して変更できます。The settings for any Variables can be changed by selecting Edit Queries > Edit Variables.
  • OLAP ソースには、DirectQuery の通常の制限のみでなく、この他にも、それ固有の性質ゆえにある (モデリングと視覚エフェクトの両方の) 制限があります。Given the unique nature of OLAP sources, there are additional restrictions (for both modelling and visualizations) that apply, in addition to the normal restrictions imposed for DirectQuery. これらの制限については、この記事の後半で説明します。These restrictions are described later in this article.

また、Power BI ではサポートされない SAP BW の機能が多数あり、SAP BW へのパブリック インターフェイスの性質のため、Power BI で表示される結果が SAP ツールを使用した場合の結果と一致しない重要なケースがあることを理解しておくことが非常に重要です。In addition, it is extremely important to understand that there are many features of SAP BW that are not supported in Power BI, and that because of the nature of the public interface to SAP BW, there are important cases where the results seen through Power BI will not match those seen when using an SAP tool. これらの制限については、この記事の後半で説明します。These limitations are described later in this article. これらの制限と動作の違いには慎重になり、SAP のパブリック インターフェイスによって返される Power BI に表示される結果が、正しく解釈されることを確認する必要があります。These limitations and behavior differences should be carefully reviewed, to ensure that the results seen through Power BI, as returned by the SAP public interface, are interpreted correctly.


SAP BW で DirectQuery を使う機能は、Power BI Desktop の 2018 年 3 月の更新までプレビューでした。The ability to use DirectQuery over SAP BW was in preview until the March 2018 update to Power BI Desktop. プレビュー期間中のフィードバックや改善提案を基に、そのプレビュー バージョンを使って作成されるレポートに影響を与える変更が行われました。During the preview, feedback and suggested improvements prompted a change that impacts reports that were created using that preview version. SAP BW での DirectQuery が一般公開 (GA) されたことで、GA 前バージョンで作成された、SAP BW での DirectQuery を使う既存の (プレビュー ベースの) レポートをすべて破棄する "必要があります"。Now that General Availability (GA) of DirectQuery over SAP BW has released, you must discard any existing (preview-based) reports using DirectQuery over SAP BW that were created with the pre-GA version. SAP BW での DirectQuery の GA 前バージョンで作成されたレポートでは、更新を呼び出すと、基になっている SAP BW キューブに変更のあるメタデータを更新しようとするため、エラーが発生します。In reports created with the pre-GA version of DirectQuery over SAP BW, errors will occur with those pre-GA reports upon invoking Refresh, as a result of attempting to refresh the metadata with any changes to the underlying SAP BW cube. このようなレポートは、SAP BW での DirectQuery の GA バージョンを使って、空のレポートから作り直してください。Please re-create those reports from a blank report, using the GA version of DirectQuery over SAP BW.

その他のモデリングの制限Additional Modelling Restrictions

Power BI で DirectQuery を使用して SAP BW に接続する場合のモデリング上のその他の主要な制限は次のとおりです。The primary additional modelling restrictions when connecting to SAP BW using DirectQuery in Power BI are the following:

  • 計算列のサポートがない: 計算列を作成する機能は無効です。No support for calculated columns: The ability to create calculated columns is disabled. これは、計算列を作成するグループ化とクラスタリングも使用できないことを意味します。This also means that Grouping and Clustering, which create calculated columns, are not available.
  • メジャーのその他の制限: メジャーで使用できる、SAP BW のサポート レベルを反映する DAX 式の制限がこの他にもあります。Additional limitations for measures: There are additional limitations imposed on the DAX expressions that can be used in measures, to reflect the level of support offered by SAP BW.
  • リレーションシップの定義のサポートがない: リレーションシップは外部 SAP ソースに内在しており、モデルではリレーションシップを追加定義できません。No support for defining relationships: The relationships are inherent in the external SAP source, and additional relationships cannot be defined in the model.
  • データ ビューがない: [データ ビュー] は、通常詳細レベル データをテーブルに表示します。No Data View: The Data View normally displays the detail level data in the tables. SAP BW などの OLAP のソースの性質から、このビューは SAP BW では使用できません。Given the nature of OLAP sources like SAP BW, this view is not available over SAP BW.
  • 列とメジャーの詳細は固定: フィールド リストにある列とメジャーの一覧は、基になるソースによって固定されており、変更できません。Column and measure details are fixed: The list of columns and measures seen in the field list are fixed by the underlying source, and cannot be modified. たとえば、列を削除したり、そのデータ型を変更したりすることはできません (ただし、名前変更は可能です)。For example, it is not possible to delete a column, nor change its datatype (it can, however, be renamed).
  • DAX のその他の制限: メジャーの定義で使用できる DAX には、ソースの制限と一致する制限がこの他にもあります。Additional limitations in DAX: There are additional limitations on the DAX that can be used in measure definitions, to reflect limitations in the source. たとえば、テーブルに集計関数は使用できません。For example, it is not possible to use an aggregate function over a table.

視覚エフェクトのその他の制限Additional Visualization Restrictions

Power BI で DirectQuery を使用して SAP BW に接続する場合の視覚エフェクトのその他の主要な制限は次のとおりです。The primary additional restrictions in visualizations when connecting to SAP BW using DirectQuery in Power BI are the following:

  • 列集計ができない: ビジュアルでは列の集計の変更はできません。常に [集計しない] です。No aggregation of columns: It is not possible to change the aggregation for a column on a visual; ;it is always Do Not Summarize
  • メジャーのフィルターは無効: SAP BW でのサポートと一致するようにメジャーのフィルターは無効になっています。Measure filtering is disabled: Measure filtering is disabled to reflect the support offered by SAP BW.
  • 複数選択と含める/除外する: ビジュアルでは、複数の列の値である場合、データ ポイントを複数選択する機能は無効です。Multi-select and include/exclude: The ability to multi-select data points on a visual is disabled if the points represent values from more than one column. たとえば、凡例にカテゴリがある、国別の売上を示す棒グラフがある場合、(USA, Bikes) と (France, Clothes) のポイントを選択できません。For example, given a bar chart showing Sales by Country, with Category on the Legend, it would not be possible to select the point for (USA, Bikes) and (France, Clothes). これと同様に、(USA, Bikes) のポイントを選択し、それをビジュアルから除外することはできません。Similarly, it would not be possible to select the point for (USA, Bikes) and exclude it from the visual. いずれも、SAP BW でのサポートと一致するよう制限されています。Both limitations are imposed to reflect the support offered by SAP BW.

SAP BW の機能のサポートSupport for SAP BW features

次の表では、完全にはサポートされていない、または Power BI を使用した場合に異なる動作をする SAP BW のすべての機能を示します。The following table lists all SAP BW features that are not fully supported, or will behave differently when using Power BI.

おすすめFeature 説明Description
ローカル計算Local calculations BEX クエリで定義されているローカル計算は、BEX アナライザーなどのツールによって表示されるよう数値を変更します。Local calculations defined in a BEX Query will change the numbers as displayed through tools like Bex Analyzer. ただし、これはパブリックの MDX インターフェイスを介して返される、SAP から返される数値には反映されません。However, they are not reflected in the numbers returned from SAP, through the public MDX interface.

そのため、Power BI のビジュアルに表示される数値は、SAP ツールの対応するビジュアルのものとは必ずしも一致しません。As such, the numbers seen in a Power BI visual will not necessarily match those for a corresponding visual in an SAP tool.

たとえば、集計が累積される (集計の実行などの) クエリ キューブに BEx クエリから接続する場合、Power BI はこの設定を無視して底の数値を返します。For example, when connecting to a query cube from a BEx query that sets the aggregation to be Cumulated (i.e. running sum), Power BI would get back the base numbers, ignoring that setting. もちろんアナリストは Power BI でローカルで実行中の合計の計算を適用できますが、これが行われていない場合は、数値がどのように解釈されるか、注意する必要があります。An analyst could certainly then apply a running sum calculation locally in Power BI, but would need to exercise caution in how the numbers are interpreted if this is not done.
集計Aggregations 場合によっては (特に複数の通貨を扱う場合)、SAP パブリック インターフェイスによって返される集計数が SAP ツールで表示されるものと異なる場合があります。In some cases (particularly when dealing with multiple currencies), the aggregate numbers returned by the SAP public interface do not match those shown by SAP tools.

そのため、Power BI のビジュアルに表示される数値は、SAP ツールの対応するビジュアルのものとは必ずしも一致しません。As such, the numbers seen in a Power BI visual will not necessarily match those for a corresponding visual in an SAP tool.

たとえば、Bex アナライザーではさまざまな通貨の合計は "*" と表示されますが、SAP パブリック インターフェイスでは、そのような集計数には意味がないという情報は表示しないまま、合計数が返されます。For example, totals over different currencies would show as "*" in Bex Analyzer, but the total would get returned by the SAP public interface, without any information that such an aggregate number is meaningless. つまり、($、EUR、および AUD などの集計) 数値が Power BI で表示されます。Thus the number (aggregating, say, $, EUR, and AUD) would get displayed by Power BI.
通貨の書式設定Currency formatting Power BI では、通貨のいかなる書式設定 (たとえば、$2,300 または 4000 AUD) も反映されません。Any currency formatting (for example, $2,300 or 4000 AUD) is not reflected in Power BI.
測定単位Units of measure Power BI では、測定単位 (たとえば、230 KG) は反映されません。Units of measure (for example, 230 KG) are not reflected in Power BI.
キーとテキスト (短い、中間、長い)Key versus text (short, medium, long) CostCenter など SAP BW の指標には、フィールド リストで CostCenter という列が 1 つ表示されます。For an SAP BW characteristic like CostCenter, the field list will show a single column Cost Center. その列を使用すると、既定のテキストが表示されます。Using that column will display the default text. 非表示のフィールドを表示すると、一意の名前列を確認することも可能になります (これでは、SP BW によって割り当てられた、一意であることの基準である、固有の名前が返されます)。By showing hidden fields, it will also be possible to see the unique name column (that returns the unique name assigned by SP BW, and is the basis of uniqueness).

キーとその他のテキスト フィールドは使用できません。The key and other text fields are not available.
指標の複数の階層Multiple hierarchies of a characteristic SAP では、指標には複数の階層を持たせることが可能です。In SAP, a characteristic can have multiple hierarchies. そのようにすると、BEx アナライザーなどのツールでは、指標がクエリに含まれると、ユーザーが使用する階層を選択できるようになります。Then in tools like BEx Analyzer, when a characteristic is included in a query, the user can select the hierarchy to use.

Power BI では、このさまざまな階層は、同じディメンションの別の階層として、フィールド リストに表示されます。In Power BI, the various hierarchies can be seen in the field list as different hierarchies on the same dimension. ただし、同じディメンションの 2 つの異なる階層のレベルを複数選択すると、SAP によって空のデータが返されます。However, selecting multiple levels from two different hierarchies on the same dimension will result in empty data being returned by SAP.
不規則な階層の処理方法Treatment of ragged hierarchies
スケール係数/符号の反転Scaling factor/reverse sign SAP では、主要な指標に、書式設定オプションで定義する (1000 などの) スケール係数を持たせることができます。これは、すべての表示はその係数を使用してスケールされることを意味します。In SAP a key figure can have a scaling factor (for example, 1000) defined as a formatting option, meaning that all display will be scaled by that factor.

同様に、符号を逆にするプロパティ セットを持たせることもできます。It can similarly have a property set that reverses the sign. Power BI で (ビジュアルで、または計算の一部として) このようなキーとなる数値を使用すると、スケーリングされない数値が使用される結果となります (そして符号は反転されません)。Use of such a key figure in Power BI (in a visual, or as part of a calculation) will result in the unscaled number being used (and the sign is not reversed). 基になるスケール係数は使用されません。The underlying scaling factor is not available. Power BI ビジュアルでは、軸 (K、M、B) に表示されるスケール ユニットは、ビジュアルの書式設定の一部として制御することができます。In Power BI visuals, the scale units shown on the axis (K,M,B) can be controlled as part of the visual formatting.
レベルが動的に表示/非表示となる階層Hierarchies where levels appear/disappear dynamically SAP BW に初めて接続するとき、階層のレベルの情報が取得され、その結果、フィールド リストにフィールドのセットが表示されます。Initially when connecting to SAP BW, the information on the levels of a hierarchy will be retrieved, resulting in a set of fields in the field list. これはキャッシュされ、レベルのセットが変更された場合、フィールドのセットは更新が呼び出されるまで変更されません。This is cached, and if the set of levels changes, then the set of fields do not change until Refresh is invoked.

これは Power BI Desktop でのみで可能です。This is only possible in Power BI Desktop. レベルに変更を反映するこのような更新は、発行後は、Power BI サービスでは呼び出せません。Such Refresh to reflect changes to the levels cannot be invoked in the Power BI service after Publish.
既定のフィルターDefault filter BEX クエリには、SAP Bex アナライザーによって自動的に適用される既定のフィルターを含めることができます。A BEX query can include Default Filters, which will be applied automatically by SAP Bex Analyzer. これらは公開されないため、Power BI で同じように使用した場合、既定で同じフィルターは適用されません。These are not exposed, and hence the equivalent usage in Power BI will not apply the same filters by default.
非表示の主要指標Hidden Key figures BEX クエリでは主要な指標を表示するかどうかを制御でき、非表示のものは SAP BEx アナライザーでは表示されません。A BEX query can control visibility of Key Figures, and those that are hidden will not appear in SAP BEx Analyzer. これらはパブリック API を使用した場合は反映されず、したがってこのような非表示の主要指標はフィールド リストに表示され続けます。This is not reflected through the public API, and hence such hidden key figures will still appear in the field list. ただし、その後 Power BI で非表示にできます。However, they can then be hidden within Power BI.
数値の書式設定Numeric formatting Power BI には、数値のいかなる書式設定 (たとえば、小数の桁数、小数点など) も自動では反映されません。Any numeric formatting (number of decimal positions, decimal point etc.) will not automatically be reflected in Power BI. ただし、Power BI 内でこの書式を制御することはできます。However, it is possible to then control such formatting within Power BI.
階層のバージョン管理Hierarchy versioning SAP BW では、たとえば、コスト センターの 2007 年と 2008 年の階層など、さまざまなバージョンの階層を維持できます。SAP BW allows different versions of a hierarchy to be maintained, for example, the cost center hierarchy in 2007 versus 2008. Power BI では、パブリック API がバージョン情報を公開しないため、最新のバージョンのみ使用できます。Only the latest version will be available in Power BI, as information on versions is not exposed by the public API.
時間依存の階層Time dependent hirarchies Power BI を使用する場合、時間依存の階層は現在の日付で評価されます。When using Power BI, time dependent hierarchies are evaluated at the current date.
通貨の換算Currency conversion SAP BW では、キューブで保持されている率に基づく、通貨換算がサポートされています。SAP BW supports currency conversion, based on rates held in the cube. このような機能は、パブリック API では公開されず、Power BI では使用できません。Such capabilities are not exposed by the public API, and are therefore not available in Power BI.
並べ替え順序Sort Order SAP では、指標の (テキストまたはキーを使用した) 並べ替え順序を定義できます。The sort order (by Text, or by Key) for a characteristic can be defined in SAP. この並べ替え順序は Power BI では反映されません。This sort order is not reflected in Power BI. たとえば、月は、“April”、“Aug” などと表示されます。For example, months might appear as “April”, “Aug”, and so on.

Power BI では、この並べ替え順序は変更できません。It is not possible to change this sort order in Power BI.
技術名Technical names [データの取得] には、指標/メジャー名 (説明)、および技術名の両方があります。In Get Data, the characteristic/measure names (descriptions) and technical names can both be seen. フィールド リストには、指標/メジャー名 (説明) のみが含まれます。The field list will contain just the characteristic/measure names (descriptions).
属性Attributes Power BI 内で指標の属性にアクセスすることはできません。It is not possible to access the attributes of a characteristic within Power BI.
エンドユーザーの言語設定End user language setting SAP BW への接続に使用されるロケールは、接続の詳細の一部として設定されるもので、レポートの最終コンシューマーのロケールとは一致しません。The locale used to connect to SAP BW is set as part of the connection details, and does not reflect the locale of the final report consumer.
テキストの変数Text Variables SAP BW では、("$YEAR$ Actuals" など) 変数のプレースホルダーをフィールド名に含めることができます。これは、その後、選択した値で置き換えられます。SAP BW allows field names to contain placeholders for variables (for example, "$YEAR$ Actuals") that would then get replaced by the selected value. たとえば、変数に 2016 年を選択した場合、BEX ツールでは、フィールドに "2016 Actuals" と表示されます。For example, the field appears as "2016 Actuals" in BEX tools, if the year 2016 were selected for the variable.

Power BI の列名は、変数の値によっては変わらず、したがって "$YEAR$ Actuals" と表示されます。The column name in Power BI will not be changed depending on the variable value, and therefore would appear as "$YEAR$ Actuals". ただし、Power BI で列名を変更することはできます。However, the column name can then be changed in Power BI.
Customer Exit 変数Customer Exit Variables Customer Exit 変数はパブリック API では公開されず、Power BI では使用できません。Customer Exit variables are not exposed by the public API, and are therefore not supported by Power BI.
特性構造Characteristic Structures 基礎となる SAP BW ソースの特性構造の結果として、Power BI にはメジャーの ‘エクスプロージョン’ が公開されます。Any Characteristic structures in the underlying SAP BW source will result in an ‘explosion’ of measures being exposed in Power BI. たとえば、Sales と Costs という 2 つのメジャーと、Budget と Actual を含む 1 つの特性構造がある場合、Sales.Budget、Sales.Actual、Costs.Budget、Costs.Actual という 4 つのメジャーが公開されます。For example, with two measures Sales and Costs, and a characteristic structure containing Budget and Actual, four measure will be exposed: Sales.Budget, Sales.Actual, Costs.Budget, Costs.Actual.

次の手順Next steps

DirectQuery の詳細については、次のリソースを参照してください。For more information about DirectQuery, check out the following resources: