Freigeben über


Details zur Implementierung

Dieser Artikel beschreibt Konvertierungsinformationen und spezifische Funktionen, die in der Implementierung 2 des Power Query SAP Business Warehouse Connectors verfügbar sind.

Wichtig

Die Version 1.0 des SAP Business Warehouse Connectors ist veraltet. Neue Verbindungen werden die Implementierung 2.0 des SAP Business Warehouse Connectors verwenden. Die gesamte Unterstützung für Version 1.0 wird in naher Zukunft aus dem Connector entfernt. Verwenden Sie die Informationen in diesem Artikel, um bestehende Berichte der Version 1.0 zu aktualisieren, damit sie die Implementierung 2.0 dieses Connectors verwenden können.

Neue Optionen für die Implementierung 2.0

Die Implementierung 2.0 unterstützt die folgenden Optionen:

  • ExecutionMode gibt die MDX-Schnittstelle an, die zur Ausführung von Abfragen auf dem Server verwendet wird. Gültige Optionen:

    • SapBusinessWarehouseExecutionMode.BasXml

    • SapBusinessWarehouseExecutionMode.BasXmlGzip

    • SapBusinessWarehouseExecutionMode.DataStream

      Der Standardwert ist SapBusinessWarehouseExecutionMode.BasXmlGzip.

      Die Verwendung von SapBusinessWarehouseExecutionMode.BasXmlGzip kann die Leistung bei hohen Latenzzeiten für große Datensätze verbessern.

  • BatchSize gibt die maximale Anzahl von Zeilen an, die bei der Ausführung einer MDX-Anweisung auf einmal abgerufen werden sollen. Eine kleine Zahl bedeutet mehr Anfragen an den Server beim Abrufen eines großen Datensatzes. Eine große Anzahl von Zeilen kann zwar die Leistung verbessern, kann aber zu Speicherproblemen auf dem SAP BW-Server führen. Der Standardwert ist 50.000 Zeilen.

  • EnableStructures gibt an, ob charakteristische Strukturen erkannt werden. Der Standardwert für diese Option ist FALSE. Beeinflusst die Liste der zur Auswahl stehenden Objekte. Wird im Modus Native Abfrage nicht unterstützt.

Die Option ScaleMeasures ist in dieser Implementierung veraltet. Das Verhalten ist nun dasselbe wie bei der Einstellung ScaleMeasures auf false, d. h. es werden immer unskalierte Werte angezeigt.

Zusätzliche Verbesserungen für Implementierung 2.0

Die folgende Liste beschreibt einige der zusätzlichen Verbesserungen, die mit der neuen Implementierung einhergehen:

  • Verbesserte Leistung.
  • Möglichkeit zum Abrufen mehrerer Millionen Datenzeilen und Feinabstimmung mithilfe des Batchgrößenparameters.
  • Wechseln der Ausführungsmodi.
  • Unterstützung für den komprimierten Modus. Besonders vorteilhaft bei Verbindungen mit hoher Latenz oder großen Datenmengen.
  • Verbesserte Erkennung von Date-Variablen.
  • Die Dimensionen Date (ABAP-Typ DATS) und Time (ABAP-Typ TIMS) werden als Datum bzw. Uhrzeit anstelle von Textwerten angezeigt. Weitere Informationen: Unterstützung für eingegebene Daten in SAP BW
  • bessere Ausnahmebehandlung. Fehler in BAPI-Aufrufen werden jetzt gemeldet.
  • Spaltenfaltung in den Modi BasXml und BasXmlGzip. Wenn die generierte MDX-Abfrage z. B. 40 Spalten abruft, die aktuelle Auswahl aber nur 10 benötigt, wird diese Anforderung an den Server weitergeleitet, um einen kleineren Datensatz abzurufen.

Ändern bestehender Berichte zur Verwendung der Implementierung 2.0

Das Ändern bestehender Berichte zur Verwendung der Implementierung 2.0 ist nur im Importmodus möglich. Führen Sie folgende Schritte aus:

  1. Öffnen Sie einen bestehenden Bericht, wählen Sie in der Multifunktionsleiste Abfragen bearbeiten und wählen Sie dann die zu aktualisierende SAP Business Warehouse-Abfrage.

  2. Klicken Sie mit der rechten Maustaste auf die Abfrage, und wählen Sie Erweiterter Editor aus.

  3. Ändern Sie im Erweiterten Editor die Anfrage SapBusinessWarehouse.Cubes wie folgt:

    Stellen Sie fest, ob die Abfrage bereits einen Optionssatz enthält, wie im folgenden Beispiel.

    Screenshot der Klartextabfrage mit einem Optionsdatensatz.

    Wenn ja, fügen Sie die Option Implementation 2.0 hinzu und entfernen Sie die Option ScaleMeasures, falls vorhanden, wie gezeigt.

    Screenshot der Klartextabfrage mit dem zusätzlichen Wert „Implementation = 2.0.“

    Wenn die Abfrage nicht bereits einen Optionsdatensatz enthält, fügen Sie ihn einfach hinzu. Für die folgende Option:

    Screenshot der Klartextabfrage mit einem hinzugefügten Optionsdatensatz.

    Ändern Sie sie einfach in:

    Screenshot der Klartextabfrage der neuen Option mit dem zusätzlichen Wert „Implementation = 2.0“

Es wurden alle Anstrengungen unternommen, um die Implementierung 2.0 des SAP BW Connectors mit der Version 1 kompatibel zu machen. Aufgrund der verschiedenen SAP BW MDX-Ausführungsmodi kann es jedoch einige Unterschiede geben. Versuchen Sie, zwischen den Ausführungsmodi zu wechseln, um Inkompatibilitäten zu beheben.

Unterstützung für eingegebene Daten in SAP BW

Die Implementierung 2.0 des SAP BW Connectors enthält Unterstützung für eingegebene Daten und Zeiten. Wenn Sie einen Bericht abfragen, der Dimensionen mit ABAP-Typen, DATS oder TIMS enthält, können diese jetzt als Datumsangaben anstelle von Text ausgegeben werden.

Die Grenzwerte für die Nutzung dieser Funktion sind:

  • Nur in der Implementierung 2.0 des SAP BW Connectors verfügbar.
  • Nur im Importmodus verfügbar.
  • Das Konto, das für die Verbindung zum SAP BW-Server verwendet wird, sollte über ausreichende Berechtigungen verfügen, um BAPI_IOBJ_GETDETAIL anzufragen.
let
   Source = SapBusinessWarehouse.Cubes("sapbwtestserver", "00", "837", [ExecutionMode=SapBusinessWarehouseExecutionMode.BasXmlGzip, Implementation="2.0"]),
   #"$INFOCUBE" = Source{[Name="$INFOCUBE"]}[Data],
   #"$0D_DECU" = #"$INFOCUBE"{[Id="$0D_DECU"]}[Data],
   #"Added Items" = Cube.Transform(#"$0D_DECU",
   {
      {Cube.AddAndExpandDimensionColumn, "[0CALDAY]", {"[0CALDAY].[LEVEL01]"}, {"Calendar day.Calendar day Level 01"}},
      {Table.AddColumn, "Calendar day.Calendar day Level 01.Key", each Cube.AttributeMemberProperty([Calendar day.Calendar day Level 01], "[20CALDAY]")},
      {Cube.AddMeasureColumn, "Billed Quantity", "[Measures].[0D_INV_QTY]"}
   }) 
in
     #"Added Items"

Sie müssen den Schlüssel hinzufügen, um auf das eingegebene Datum zugreifen zu können. Wenn es zum Beispiel ein Dimensionsattribut namens [0CALDAY] gibt, müssen Sie den Schlüssel [20CALDAY] hinzufügen, um den eingegebenen Wert zu erhalten.

In dem obigen Beispiel bedeutet dies, dass:

  • Kalender day.Calendar Tag Level 01 [0CALDAY] ist ein Text (eine Beschriftung). (Wird standardmäßig hinzugefügt, wenn die Dimension hinzugefügt wird.)
  • Kalender day.Calender Tag Level 01.Key [20CALDAY] wird ein Datum sein (muss manuell ausgewählt werden).

Um den Schlüssel im Importmodus manuell hinzuzufügen, erweitern Sie einfach Eigenschaften und wählen den Schlüssel aus.

Auswählen der Schlüssel-Eigenschaft im Power-Query-Navigator.

Die Spalte mit dem Schlüssel hat den Typ Datum und kann zum Filtern verwendet werden. Wenn Sie nach dieser Spalte filtern, werden die Daten auf dem Server abgelegt.

Unterstützung für Funktionen von SAP BW

In der folgenden Tabelle sind alle SAP BW-Funktionen aufgeführt, die nicht vollständig unterstützt werden oder sich anders verhalten, wenn Sie den Power Query SAP BW Connector verwenden.

Funktion BESCHREIBUNG
Lokale Berechnungen Lokale Berechnungen, die in einer BEX-Abfrage definiert sind, verändern die Zahlen, die von Tools wie Bex Analyzer angezeigt werden. Sie spiegeln sich allerdings nicht in den von SAP über die öffentliche MDX-Schnittstelle zurückgegebenen Zahlen wider.

Daher stimmen die in Power Query angezeigten Zahlen nicht notwendigerweise mit denen einer entsprechenden Grafik in einem SAP-Tool überein.

Wenn Sie beispielsweise eine Verbindung zu einem Cube aus einer BEx-Abfrage herstellen, bei der die Aggregation auf Kumuliert eingestellt ist (z. B. laufende Summe), erhält Power Query die Basiszahlen zurück und ignoriert diese Einstellung. Ein Analytiker könnte dann lokal, z. B. in Power BI, eine laufende Summenberechnung durchführen, müsste aber bei der Interpretation der Zahlen Vorsicht walten lassen, wenn dies nicht geschieht.
Aggregationen In einigen Fällen (insbesondere bei mehreren Währungen) stimmen die von der öffentlichen SAP-Schnittstelle zurückgegebenen aggregierten Zahlen nicht mit denen überein, die von den SAP-Tools angezeigt werden.

Daher stimmen die in Power Query angezeigten Zahlen nicht notwendigerweise mit denen einer entsprechenden Grafik in einem SAP-Tool überein.

Zum Beispiel würden Summen über verschiedene Währungen in Bex Analyzer als „*“ angezeigt, aber die Summe würde von der öffentlichen SAP-Schnittstelle zurückgegeben werden, ohne dass eine Information darüber vorliegt, dass eine solche aggregierte Zahl bedeutungslos ist. So würde die Zahl (die z. B. $, EUR und AUD zusammenfasst) von Power Query angezeigt werden.
Formatierung von Währungen Jede Währungsformatierung (z. B. $ 2.300 oder 4.000 AUD) wird in Power Query nicht berücksichtigt.
Maßeinheiten Maßeinheiten (z. B. 230 kg) werden in Power Query nicht berücksichtigt.
Schlüssel versus Text (kurz, mittel, lang) Für ein SAP BW-Merkmal wie CostCenter zeigt der Navigator ein einzelnes Element Cost Center Level 01 an. Wenn Sie dieses Element auswählen, wird der Standardtext für Kostenstelle in die Feldliste aufgenommen. Außerdem stehen die Werte Schlüsselwert, Kurzer Name, Mittlerer Name und Langer Name im Knoten Eigenschaften für das Merkmal zur Auswahl (falls in SAP BW gepflegt).

Beachten Sie, dass dies nur für den Modus Importieren von Verbindungen gilt. Im DirectQuery-Modus wird nur der Standardtext in den Datensatz aufgenommen.
Attribute Die Attribute eines Merkmals werden in den Eigenschaften des Merkmals zur Auswahl stehen. Dies gilt nur für den Modus Importieren von Verbindungen. Im DirectQuery-Modus sind die Attribute nicht verfügbar.
Mehrere Hierarchien eines Merkmals In SAP kann ein Merkmal mehrere Hierarchien haben. Wenn ein Merkmal in Tools wie BEx Analyzer in eine Abfrage eingeschlossen wird, kann der Benutzer die zu verwendende Hierarchie auswählen.

In Power BI werden die unterschiedlichen Hierarchien in der Feldliste als verschiedene Hierarchien der gleichen Dimension angezeigt. Wenn Sie jedoch mehrere Ebenen aus zwei verschiedenen Hierarchien in derselben Dimension auswählen, werden von SAP leere Daten zurückgegeben.
Behandlung von unausgeglichenen Hierarchien SAP BW unterstützt ausgefranste Hierarchien, bei denen z. B. Ebenen fehlen können:

   Continent
      Nord-, Mittel- und Südamerika
         Kanada
         USA
   Nicht zugewiesen
      Australien

In Power BI erscheint dies mit (Blank) auf der fehlenden Ebene:

   Continent
      Nord-, Mittel- und Südamerika
         Kanada
         USA
   Nicht zugewiesen
      (Leer)
         Australien
Skalierungsfaktor/Umkehrung des Vorzeichens In SAP kann für eine Kennzahl ein Skalierungsfaktor (z. B. 1.000) als Formatierungsoption definiert werden, was bedeutet, dass alle Anzeigen um diesen Faktor skaliert werden.

Ebenso kann für sie eine Eigenschaft festgelegt werden, die das Vorzeichen umkehrt. Die Verwendung einer solchen Kennzahl in Power BI (in einer Grafik oder als Teil einer Berechnung) führt dazu, dass die unskalierte Zahl verwendet wird (und das Vorzeichen nicht umgekehrt wird). Der zugrunde liegende Skalierungsfaktor steht nicht zur Verfügung. In visuellen Elementen von Power BI können die auf der Achse (K, M, B) angezeigten Skalierungseinheiten beim Formatieren des visuellen Elements gesteuert werden.
Hierarchien, in denen Ebenen dynamisch angezeigt/nicht mehr angezeigt werden Bei der Verbindung mit SAP BW werden zunächst die Informationen über die Ebenen einer Hierarchie abgerufen, was zu einer Reihe von Feldern in der Feldliste führt. Dies wird zwischengespeichert, und wenn sich die Menge der Ebenen ändert, dann ändert sich die Menge der Felder erst, wenn Refresh aufgerufen wird.

Dies ist nur in Power BI Desktop möglich. Eine solche Aktualisierung, die Änderungen an den Ebenen widerspiegelt, kann im Power BI-Dienst nach der Veröffentlichung nicht mehr aufgerufen werden.
Standardfilter Eine BEX-Abfrage kann Standardfilter enthalten, die vom SAP Bex Analyzer automatisch angewendet werden. Diese sind nicht offengelegt, so dass die entsprechende Verwendung in Power Query standardmäßig nicht dieselben Filter anwendet.
Ausgeblendete Kennzahlen Eine BEX-Abfrage kann die Sichtbarkeit von Kennzahlen steuern. Diejenigen, die ausgeblendet sind, werden im SAP BEx Analyzer nicht angezeigt. Dies wird von der öffentlichen API nicht reflektiert, sodass solche versteckten Kennzahlen weiterhin in der Feldliste erscheinen. Sie können dann jedoch in Power Query ausgeblendet werden.
Numerische Formatierung Jede numerische Formatierung (Anzahl der Dezimalstellen, Dezimalpunkt usw.) wird nicht automatisch in Power Query übernommen. Es ist jedoch möglich, eine solche Formatierung in Power Query zu steuern.
Versionskontrolle von Hierarchien Mit SAP BW können verschiedenen Versionen einer Hierarchie verwaltet werden, z.B. die Cost Center-Hierarchie von 2007 und 2008. In Power Query ist nur die aktuellste Version verfügbar, da die öffentliche API keine Informationen über Versionen bereitstellt.
Zeitabhängige Hierarchien Wenn Sie Power Query verwenden, werden zeitabhängige Hierarchien zum aktuellen Datum ausgewertet.
Währungskonvertierung SAP BW unterstützt die Währungskonvertierung auf Grundlage der im Cube enthaltenen Kurse. Solche Funktionen werden von der öffentlichen API nicht zur Verfügung gestellt und sind daher in Power Query nicht verfügbar.
Sortierreihenfolge Die Sortierreihenfolge (nach Text oder nach Schlüssel) für ein Merkmal kann in SAP definiert werden. Diese Sortierreihenfolge wird in Power Query nicht berücksichtigt. Beispielsweise können Monate als „April“, „Aug“ usw. dargestellt werden.

Es ist nicht möglich, diese Sortierreihenfolge in Power Query zu ändern.
Technische Namen Im Navigator können sowohl die Merkmals-/Maßnahmebezeichnungen (Beschreibungen) als auch die technischen Namen mit Hilfe des Auswahlschalters Anzeigeoptionen angezeigt werden. Die Feldliste enthält die Namen der Merkmale/Messungen (Beschreibungen).
Einstellung der Sprache des Endbenutzers Das Gebietsschema, mit dem die Verbindung zu SAP BW hergestellt wird, wird im Rahmen der Verbindungsdetails festgelegt und spiegelt nicht das Gebietsschema des letztendlichen Berichtnutzers wieder.
Text-Variablen In SAP BW können Feldnamen Platzhalter für Variablen enthalten (z.B. "$YEAR$ Actuals"), die dann durch den ausgewählten Wert ersetzt werden. Zum Beispiel erscheint das Feld in den BEx Tools als „2016 Actuals“, wenn das Jahr 2016 für die Variable ausgewählt wurde.

Der Name der Spalte in Power Query wird in Abhängigkeit vom Variablenwert nicht geändert und würde daher als „$YEAR$ Actuals“ erscheinen. Der Name der Spalte kann dann jedoch in Power Query geändert werden.
Customer Exit Variablen Customer Exit-Variablen werden von der öffentlichen API nicht zur Verfügung gestellt und werden daher von Power Query nicht unterstützt.

Leistungsaspekte

Die folgende Tabelle enthält eine zusammenfassende Liste von Vorschlägen zur Verbesserung der Leistung beim Laden und Aktualisieren von Daten aus dem SAP BW.

Vorschlag Beschreibung
Auswahl der Grenzwerte und Eigenschaften (Attribute) Die Zeit, die für das Laden von Daten aus SAP BW in Power Query benötigt wird, steigt mit der Größe des Datensatzes, d. h. mit der Anzahl der Spalten und Zeilen in der reduzierten Ergebnismenge. Um die Anzahl der Spalten zu reduzieren, wählen Sie im Navigator nur die Merkmale und Eigenschaften aus, die Sie letztendlich in Ihrem Bericht oder Dashboard sehen möchten.
Verwenden Sie die Parameter Die Verwendung von Filtern/Parametern trägt dazu bei, die Größe der Ergebnismenge zu verringern, was die Runtime der Abfrage erheblich verbessert.

Parameter sind besonders wertvoll, wenn Sie mit großen Dimensionen arbeiten, in denen es viele Mitglieder gibt, z.B. Kunden, Materialien oder Dokumentnummern.
Grenzwerte für die Anzahl der Kennzahlen Die Auswahl vieler Kennzahlen aus einem BEx Query/BW-Modell kann die Leistung bei der Ausführung der Abfrage erheblich beeinträchtigen, da die Zeit für das Laden der Metadaten für die Units verwendet wird. Nehmen Sie nur die Kennzahlen auf, die Sie in Power Query benötigen.
Teilen Sie sehr große Abfragen in mehrere kleinere Abfragen auf Bei sehr großen Abfragen gegen InfoCubes oder BEx-Abfragen kann es von Vorteil sein, die Abfrage aufzuteilen. So kann eine Abfrage beispielsweise die Kennzahlen abrufen, während eine andere Abfrage (oder mehrere andere Abfragen) die Merkmalsdaten abruft. Sie können die einzelnen Abfrageergebnisse in Power Query zusammenführen.
Vermeiden Sie virtuelle Anbieter (MultiProvider oder InfoSets) VirtualProvider sind ähnlich wie Strukturen ohne persistenten Speicher. Sie sind in vielen Szenarien nützlich, können aber eine langsamere Abfrageleistung aufweisen, da sie eine zusätzliche Schicht über den eigentlichen Daten darstellen.
Vermeiden Sie die Verwendung von Navigationsattributen in der BEx Abfrage Eine Abfrage mit einem Navigationsattribut muss im Vergleich zu einer Abfrage mit demselben Objekt als Merkmal einen zusätzlichen Join ausführen, um zu den Werten zu gelangen.
Verwenden Sie RSRT, um langsam laufende Abfragen zu überwachen und Fehler zu beheben Ihr SAP-Administrator kann den Query Monitor in SAP BW (Transaktion RSRT) verwenden, um Performance-Probleme mit SAP BW-Queries zu analysieren. Lesen Sie den SAP-Hinweis 1591837 für weitere Informationen.
Vermeiden Sie eingeschränkte Kennzahlen und berechnete Kennzahlen Beide werden während der Abfrageausführung berechnet und können die Abfrageleistung verlangsamen.
Erwägen Sie die Verwendung einer inkrementellen Aktualisierung, um die Leistung zu verbessern. Power BI aktualisiert den gesamten Datensatz bei jeder Aktualisierung. Wenn Sie mit großen Datenmengen arbeiten, ist es möglicherweise nicht optimal, den gesamten Datensatz bei jeder Aktualisierung zu aktualisieren. In diesem Szenario können Sie die inkrementelle Aktualisierung verwenden, sodass Sie nur eine Teilmenge der Daten aktualisieren. Weitere Einzelheiten finden Sie unter Inkrementelle Aktualisierung in Power BI.

Vergleich mit Analyse für Office (AFO)

Es gibt grundlegende Unterschiede zwischen dem Tool Analyse für Office (AFO) und dem Power Query SAP Business Warehouse Connector, sodass die Datenausgabe unterschiedlich ausfallen kann. AFO verwendet kein MDX, sondern ein proprietäres, von SAP entwickeltes Protokoll, das für Drittanbieter nicht verfügbar ist, wie z. B. der Power Query SAP Business Warehouse Connector. SAP zertifiziert nur Connectoren, die die MDX-Schnittstelle verwenden. AFO verwendet eine multidimensionale Abfragestrategie, die die Daten anders navigiert, während der Power Query SAP Business Warehouse Connector die Daten reduzieren muss, damit sie als Tabelle dargestellt werden können. Obwohl es sich also um dieselben Daten handelt, werden sie anders abgefragt, dargestellt und schließlich ausgegeben.

Weitere Informationen