Dela via


Implementeringsdetaljer

Den här artikeln beskriver konverteringsinformation och specifika funktioner som är tillgängliga i Implementering 2 av Anslutningsappen för Power Query SAP Business Warehouse.

Viktigt!

Version 1.0 av SAP Business Warehouse-anslutningsappen har föråldrats. Nya anslutningar använder Implementering 2.0 av SAP Business Warehouse-anslutningsappen. Allt stöd för version 1.0 tas bort från anslutningsappen inom en snar framtid. Använd informationen i den här artikeln för att uppdatera befintliga version 1.0-rapporter så att de kan använda Implementering 2.0 av den här anslutningsappen.

Nya alternativ för implementering 2.0

Implementering 2.0 stöder följande alternativ:

  • ExecutionMode anger DET MDX-gränssnitt som används för att köra frågor på servern. Följande alternativ är giltiga:

    • SapBusinessWarehouseExecutionMode.BasXml

    • SapBusinessWarehouseExecutionMode.BasXmlGzip

    • SapBusinessWarehouseExecutionMode.DataStream

      Standardvärdet är SapBusinessWarehouseExecutionMode.BasXmlGzip.

      Användning SapBusinessWarehouseExecutionMode.BasXmlGzip kan förbättra prestanda vid långa svarstider för stora datamängder.

  • BatchSize anger det maximala antalet rader som ska hämtas samtidigt när du kör en MDX-instruktion. Ett litet tal översätts till fler anrop till servern när du hämtar en stor datauppsättning. Ett stort antal rader kan förbättra prestandan, men kan orsaka minnesproblem på SAP BW-servern. Standardvärdet är 5 0000 rader.

  • EnableStructures anger om karakteristiska strukturer identifieras. Standardvärdet för det här alternativet är falskt. Påverkar listan över objekt som är tillgängliga för markering. Stöds inte i internt frågeläge.

Alternativet ScaleMeasures har blivit inaktuellt i den här implementeringen. Beteendet är nu detsamma som att ställa in ScaleMeasures på false, och visar alltid oskalade värden.

Ytterligare förbättringar för implementering 2.0

I följande lista beskrivs några av de ytterligare förbättringar som följer med den nya implementeringen:

  • Förbättrad prestanda.
  • Möjlighet att hämta flera miljoner rader med data och finjustera genom parametern batchstorlek.
  • Möjlighet att växla körningslägen.
  • Stöd för komprimerat läge. Särskilt fördelaktigt för anslutningar med långa svarstider eller stora datamängder.
  • Förbättrad identifiering av Date variabler.
  • Exponera Date (ABAP-typ DATS) och Time (ABAP-typ TIMS) dimensioner som datum respektive tider, i stället för textvärden. Mer information: Stöd för inskrivna datum i SAP BW
  • Bättre undantagshantering. Fel som inträffar i BAPI-anrop visas nu.
  • Kolumndelegering i lägena BasXml och BasXmlGzip. Om den genererade MDX-frågan till exempel hämtar 40 kolumner men den aktuella markeringen bara behöver 10 skickas den här begäran till servern för att hämta en mindre datauppsättning.

Ändra befintliga rapporter så att de använder Implementering 2.0

Det går bara att ändra befintliga rapporter så att implementering 2.0 används i importläge. Följ de här stegen:

  1. Öppna en befintlig rapport, välj Redigera frågor i menyfliksområdet och välj sedan den SAP Business Warehouse-fråga som ska uppdateras.

  2. Högerklicka på frågan och välj Avancerad redigerare.

  3. Ändra anropet enligt SapBusinessWarehouse.Cubes följande i Avancerad redigerare:

    Ta reda på om frågan redan innehåller en alternativpost, till exempel följande exempel.

    Skärmbild som visar en klartextfråga med en alternativpost.

    I så fall lägger du till alternativet Implementation 2.0 och tar bort alternativet, om det ScaleMeasures finns, som det visas.

    Skärmbild som visar en klartextfråga med det tillagda värdet Implementation = 2.0.

    Om frågan inte redan innehåller en alternativpost lägger du bara till den. För följande alternativ:

    Skärmbild som visar en klartextfråga med en alternativpost tillagd.

    Ändra det bara till:

    Skärmbild som visar en klartextfråga för det nya alternativet med det tillagda värdet Implementation = 2.0.

Alla ansträngningar har gjorts för att göra Implementering 2.0 av SAP BW-anslutningsappen kompatibel med version 1. Det kan dock finnas vissa skillnader på grund av de olika SAP BW MDX-körningslägena som används. Prova att växla mellan körningslägen för att lösa eventuella avvikelser.

Stöd för inskrivna datum i SAP BW

Implementering 2.0 av SAP BW-anslutningsappen innehåller stöd för inskrivna datum och tider. Om du kör frågor mot en rapport som har dimensioner med ABAP-typer, DATS eller TIMS kan de nu matas ut som datum i stället för text.

Begränsningarna för att använda den här funktionen är:

  • Endast tillgängligt i Implementering 2.0 av SAP BW-anslutningsappen.
  • Endast tillgängligt i importläge.
  • Kontot som används för att ansluta till SAP BW-servern bör ha tillräcklig behörighet för att anropa BAPI_IOBJ_GETDETAIL.
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"

Du måste lägga till nyckeln i för att få åtkomst till det angivna datumet. Om det till exempel finns ett dimensionsattribut med namnet [0CALDAY] måste du lägga till nyckeln [20CALDAY] för att hämta det angivna värdet.

I exemplet ovan innebär det att:

  • Kalenderdag. Kalenderdagens nivå 01 [0CALDAY] kommer att vara text (en bildtext). (Läggs till som standard när dimensionen läggs till.)
  • Kalenderdag. Kalenderdagens nivå 01.Key [20CALDAY] är ett datum (måste väljas manuellt).

Om du vill lägga till nyckeln i importläge manuellt expanderar du Egenskaper och väljer nyckeln.

Välj egenskapen Nyckel i Power Query-navigatören.

Nyckelkolumnen kommer att vara av typen datum och kan användas för filtrering. Filtrering på den här kolumnen viks till servern.

Stöd för SAP BW-funktioner

I följande tabell visas alla SAP BW-funktioner som inte stöds fullt ut eller fungerar annorlunda när du använder Power Query SAP BW-anslutningsappen.

Funktion beskrivning
Lokala beräkningar Lokala beräkningar som definieras i en BEX-fråga ändrar talen så som de visas via verktyg som Bex Analyzer. De återspeglas dock inte i de tal som returneras från SAP, via det offentliga MDX-gränssnittet.

Därför matchar inte talen som visas i Power Query nödvändigtvis de för ett motsvarande visuellt objekt i ett SAP-verktyg.

När du till exempel ansluter till en frågekub från en BEx-fråga som anger att aggregeringen ska ackumuleras (till exempel löpande summa) skulle Power Query få tillbaka basnumren och ignorera den inställningen. En analytiker kan sedan tillämpa en löpande summaberäkning lokalt i till exempel Power BI, men skulle behöva vara försiktig med hur talen tolkas om detta inte görs.
Sammansättningar I vissa fall (särskilt när du hanterar flera valutor) matchar de aggregeringsnummer som returneras av det offentliga SAP-gränssnittet inte de som visas av SAP-verktygen.

Därför matchar inte talen som visas i Power Query nödvändigtvis de för ett motsvarande visuellt objekt i ett SAP-verktyg.

Summor över olika valutor skulle till exempel visas som "*" i Bex Analyzer, men summan returneras av det offentliga SAP-gränssnittet, utan någon information om att ett sådant aggregeringsnummer är meningslöst. Talet (till exempel $, EUR och AUD) skulle därför visas av Power Query.
Valutaformatering All valutaformatering (till exempel 2 300 USD eller 4 000 AUD) återspeglas inte i Power Query.
Måttenheter Måttenheter (till exempel 230 KG) återspeglas inte i Power Query.
Nyckel kontra text (kort, medel, lång) För en SAP BW-egenskap som CostCenter visar navigatören ett enda objekt på Cost Center-nivå 01. Om du väljer det här objektet inkluderas standardtexten för Cost Center i fältlistan. Värdena Nyckelvärde, Kort namn, Medelnamn och Långt namn är också tillgängliga för val i noden Egenskaper för egenskapen (om det underhålls i SAP BW).

Observera att detta endast gäller för importanslutningsläge. För DirectQuery-läge inkluderas endast standardtexten i datauppsättningen.
Attribut Attributen för en egenskap kommer att vara tillgängliga för val i Egenskaperna för egenskapen. Detta gäller endast för importanslutningsläge. För DirectQuery-läge är attribut inte tillgängliga.
Flera hierarkier för en egenskap I SAP kan en egenskap ha flera hierarkier. När en egenskap ingår i en fråga i verktyg som BEx Analyzer kan användaren sedan välja den hierarki som ska användas.

I Power BI kan de olika hierarkierna visas i fältlistan som olika hierarkier i samma dimension. Om du väljer flera nivåer från två olika hierarkier i samma dimension kommer dock tomma data att returneras av SAP.
Behandling av ojämna hierarkier SAP BW stöder ojämna hierarkier, där nivåer kan missas, till exempel:

   Kontinent
      Nord- och Sydamerika
         Kanada
         USA
   Inte tilldelad
      Australien

I Power BI visas detta med (Tom) på den saknade nivån:

   Kontinent
      Nord- och Sydamerika
         Kanada
         USA
   Inte tilldelad
      (Tom)
         Australien
Skalningsfaktor/omvänd tecken I SAP kan en nyckelfigur ha en skalningsfaktor (till exempel 1 000) definierad som ett formateringsalternativ, vilket innebär att alla skärmar skalas med den faktorn.

Den kan på samma sätt ha en egenskapsuppsättning som omvänt tecknet. Användning av en sådan nyckelfigur i Power BI (i ett visuellt objekt eller som en del av en beräkning) resulterar i att det oskalade talet används (och tecknet är inte omvänd). Den underliggande skalningsfaktorn är inte tillgänglig. I visuella Power BI-objekt kan de skalningsenheter som visas på axeln (K,M,B) styras som en del av den visuella formateringen.
Hierarkier där nivåer visas/försvinner dynamiskt När du ansluter till SAP BW hämtas informationen om nivåerna i en hierarki, vilket resulterar i en uppsättning fält i fältlistan. Detta cachelagras och om uppsättningen nivåer ändras ändras inte fältuppsättningen förrän Uppdatering anropas.

Detta är endast möjligt i Power BI Desktop. En sådan uppdatering för att återspegla ändringar i nivåerna kan inte anropas i Power BI-tjänst efter Publicering.
Standardfilter En BEX-fråga kan innehålla standardfilter som tillämpas automatiskt av SAP Bex Analyzer. Dessa exponeras inte, så motsvarande användning i Power Query använder inte samma filter som standard.
Dolda nyckelfigurer En BEX-fråga kan styra synligheten för nyckeltal och de som är dolda visas inte i SAP BEx Analyzer. Detta återspeglas inte via det offentliga API:et, så sådana dolda nyckeltal visas fortfarande i fältlistan. De kan dock sedan döljas i Power Query.
Numerisk formatering Numerisk formatering (antal decimaler, decimaltecken och så vidare) återspeglas inte automatiskt i Power Query. Det är dock möjligt att sedan styra sådan formatering i Power Query.
Versionshantering av hierarki MED SAP BW kan olika versioner av en hierarki underhållas, till exempel kostnadsställehierarkin 2007 jämfört med 2008. Endast den senaste versionen är tillgänglig i Power Query eftersom information om versioner inte exponeras av det offentliga API:et.
Tidsberoende hierarkier När du använder Power Query utvärderas tidsberoende hierarkier vid det aktuella datumet.
Valutakonvertering SAP BW stöder valutakonvertering baserat på priser som finns i kuben. Sådana funktioner exponeras inte av det offentliga API:et och är därför inte tillgängliga i Power Query.
Sorteringsordning Sorteringsordningen (efter text eller nyckel) för en egenskap kan definieras i SAP. Den här sorteringsordningen återspeglas inte i Power Query. Till exempel kan månader visas som "April", "Aug" och så vidare.

Det går inte att ändra den här sorteringsordningen i Power Query.
Tekniska namn I navigatören kan både egenskaps-/måttnamn (beskrivningar) och tekniska namn visas med väljaren Visningsalternativ. Fältlistan innehåller namnen på egenskaperna/måttet (beskrivningar).
Språkinställning för slutanvändare Det språk som används för att ansluta till SAP BW anges som en del av anslutningsinformationen och återspeglar inte språket för slutrapportkonsumenten.
Textvariabler MED SAP BW kan fältnamn innehålla platshållare för variabler (till exempel "$YEAR$ Actuals") som sedan ersätts av det valda värdet. Fältet visas till exempel som "2016 Actuals" i BEx-verktyg, om året 2016 valdes för variabeln.

Kolumnnamnet i Power Query ändras inte beroende på variabelvärdet och visas därför som "$YEAR$ Actuals". Kolumnnamnet kan dock ändras i Power Query.
Kundavslutsvariabler Variabler för kundavslut exponeras inte av det offentliga API:et och stöds därför inte av Power Query.

Saker att tänka på gällande prestanda

Följande tabell innehåller en sammanfattningslista med förslag för att förbättra prestanda för datainläsning och uppdatering från SAP BW.

Förslag beskrivning
Begränsa egenskaper och egenskaper (attribut) Den tid det tar att läsa in data från SAP BW till Power Query ökar med storleken på datauppsättningen, det vill: antalet kolumner och rader i den utplattade resultatuppsättningen. Om du vill minska antalet kolumner väljer du bara de egenskaper och egenskaper i navigatören som du så småningom vill se i rapporten eller instrumentpanelen.
Använd parametrar Att använda filter/parametrar bidrar till att minska storleken på resultatuppsättningen, vilket avsevärt förbättrar frågekörningarna.

Parametrar är särskilt värdefulla när de används med stora dimensioner, där det finns många medlemmar, till exempel kunder, material eller dokumentnummer.
Begränsa antalet nyckeltal Att välja många nyckeltal från en BEx-fråga/BW-modell kan ha en betydande prestandapåverkan under frågekörningen på grund av den tid som ägnas åt att läsa in metadata för enheter. Inkludera endast de nyckeltal som du behöver i Power Query.
Dela upp mycket stora frågor i flera, mindre frågor För mycket stora frågor mot InfoCubes- eller BEx-frågor kan det vara fördelaktigt att dela upp frågan. En fråga kan till exempel hämta nyckeltalen, medan en annan fråga (eller flera andra frågor) hämtar egenskapsdata. Du kan ansluta de enskilda frågeresultaten i Power Query.
Undvik virtuella leverantörer (MultiProviders eller InfoSets) VirtualProviders liknar strukturer utan beständig lagring. De är användbara i många scenarier, men kan visa långsammare frågeprestanda eftersom de representerar ytterligare ett lager ovanpå faktiska data.
Undvik användning av navigeringsattribut i BEx-fråga En fråga med ett navigeringsattribut måste köra ytterligare en koppling, jämfört med en fråga med samma objekt som en egenskap för att komma fram till värdena.
Använda RSRT för att övervaka och felsöka långsamma frågor SAP-administratören kan använda Frågeövervakaren i SAP BW (transaktions-RSRT) för att analysera prestandaproblem med SAP BW-frågor. Mer information finns i SAP-1591837.
Undvik begränsade nyckeltal och beräknade nyckeltal Båda beräknas under frågekörningen och kan sänka frågeprestandan.
Överväg att använda inkrementell uppdatering för att förbättra prestanda Power BI uppdaterar den fullständiga datauppsättningen med varje uppdatering. Om du arbetar med stora mängder data kanske det inte är optimalt att uppdatera den fullständiga datauppsättningen för varje uppdatering. I det här scenariot kan du använda inkrementell uppdatering, så du uppdaterar bara en delmängd data. Mer information finns i Inkrementell uppdatering i Power BI.

Jämförelse med Analysis for Office (AFO)

Det finns grundläggande skillnader mellan verktyget Analysis for Office (AFO) och Power Query SAP Business Warehouse-anslutningsappen, så datautdata kan skilja sig åt. AFO använder inte MDX, utan använder i stället ett proprietärt protokoll som utvecklats av SAP och som inte är tillgängligt för tredje part, till exempel Anslutningsappen för Power Query SAP Business Warehouse. SAP certifierar endast anslutningsappar som använder MDX-gränssnittet. AFO använder en flerdimensionell frågestrategi som navigerar i data på olika sätt medan Power Query SAP Business Warehouse-anslutningsappen måste platta ut data så att de kan representeras som en tabell. Så även om det är samma data efterfrågas, representeras och matas ut på ett annat sätt.

Se även