Del via


Implementeringsdetaljer

I denne artikel beskrives de konverteringsoplysninger og specifikke funktioner, der er tilgængelige i Implementering 2 af Power Query SAP Business Warehouse-connectoren.

Vigtigt

Version 1.0 af SAP Business Warehouse-connectoren frarådes. Nye forbindelser bruger Implementation 2.0 af SAP Business Warehouse-connectoren. Al support til version 1.0 fjernes fra connectoren i den nærmeste fremtid. Brug oplysningerne i denne artikel til at opdatere eksisterende version 1.0-rapporter, så de kan bruge Implementation 2.0 af denne connector.

Nye indstillinger for Implementation 2.0

Implementation 2.0 understøtter følgende indstillinger:

  • ExecutionMode angiver den MDX-grænseflade, der bruges til at udføre forespørgsler på serveren. Følgende indstillinger er gyldige:

    • SapBusinessWarehouseExecutionMode.BasXml

    • SapBusinessWarehouseExecutionMode.BasXmlGzip

    • SapBusinessWarehouseExecutionMode.DataStream

      Standardværdien er SapBusinessWarehouseExecutionMode.BasXmlGzip.

      Brug SapBusinessWarehouseExecutionMode.BasXmlGzip kan forbedre ydeevnen, når der er høj ventetid for store datasæt.

  • BatchSize angiver det maksimale antal rækker, der kan hentes ad gangen, når der udføres en MDX-sætning. Et lille antal oversætter til flere kald til serveren, mens der hentes et stort datasæt. Et stort antal rækker kan forbedre ydeevnen, men det kan medføre hukommelsesproblemer på SAP BW-serveren. Standardværdien er 50000 rækker.

  • EnableStructures angiver, om karakteristiske strukturer genkendes. Standardværdien for denne indstilling er false. Påvirker listen over objekter, der er tilgængelige til markering. Understøttes ikke i oprindelig forespørgselstilstand.

Indstillingen ScaleMeasures frarådes i denne implementering. Funktionsmåden er nu den samme som at angive ScaleMeasures til falsk og viser altid ikke-skalerede værdier.

Yderligere forbedringer til Implementation 2.0

På følgende liste beskrives nogle af de yderligere forbedringer, der følger med den nye implementering:

  • Forbedret ydeevne.
  • Mulighed for at hente flere millioner rækker med data og finjustere gennem parameteren batchstørrelse.
  • Mulighed for at skifte udførelsestilstand.
  • Understøttelse af komprimeret tilstand. Især nyttigt for forbindelser med høj ventetid eller store datasæt.
  • Forbedret registrering af Date variabler.
  • Vis Date dimensionerne (ABAP-typen DATS) og Time (ABAP-typen TIMS) som henholdsvis datoer og klokkeslæt i stedet for tekstværdier. Flere oplysninger: Understøttelse af angivne datoer i SAP BW
  • Bedre håndtering af undtagelser. Fejl, der opstår i BAPI-kald, vises nu.
  • Kolonnedelegering i tilstandene BasXml og BasXmlGzip. Hvis den genererede MDX-forespørgsel f.eks. henter 40 kolonner, men den aktuelle markering kun kræver 10, overføres denne anmodning til serveren for at hente et mindre datasæt.

Ændring af eksisterende rapporter til at bruge Implementation 2.0

Det er kun muligt at ændre eksisterende rapporter til at bruge Implementation 2.0 i importtilstand. Følg disse trin:

  1. Åbn en eksisterende rapport, vælg Rediger forespørgsler på båndet, og vælg derefter den SAP Business Warehouse-forespørgsel, der skal opdateres.

  2. Højreklik på forespørgslen, og vælg Avanceret editor.

  3. I Avanceret editor skal du ændre opkaldet SapBusinessWarehouse.Cubes på følgende måde:

    Find ud af, om forespørgslen allerede indeholder en post med indstillinger, f.eks. følgende eksempel.

    Skærmbillede, der viser en plaintext-forespørgsel med en post med indstillinger.

    Hvis det er tilfældet, skal du tilføje indstillingen Implementation 2.0 og fjerne indstillingen, hvis den ScaleMeasures findes, som vist.

    Skærmbillede, der viser en plaintext-forespørgsel med den tilføjede værdi Implementation = 2.0.

    Hvis forespørgslen ikke allerede indeholder en indstillingspost, skal du blot tilføje den. For følgende indstilling:

    Skærmbillede, der viser en plaintext-forespørgsel med en post med indstillinger tilføjet.

    Du skal bare ændre den til:

    Skærmbillede, der viser en plaintext-forespørgsel for den nye indstilling med den tilføjede værdi Implementation = 2.0.

Der er gjort alt for at gøre Implementation 2.0 af SAP BW-connectoren kompatibel med version 1. Der kan dog være nogle forskelle på grund af de forskellige SAP BW MDX-udførelsestilstande, der bruges. Prøv at skifte mellem udførelsestilstande for at løse eventuelle uoverensstemmelser.

Understøttelse af indtastede datoer i SAP BW

Implementering 2.0 af SAP BW-connectoren omfatter understøttelse af angivne datoer og klokkeslæt. Hvis du forespørger en rapport, der har dimensioner med ABAP-typer, DATS eller TIMS, kan de nu være output som datoer i stedet for tekst.

Begrænsningerne for brug af denne funktionalitet er:

  • Kun tilgængelig i Implementation 2.0 af SAP BW-connectoren.
  • Kun tilgængelig i importtilstand.
  • Den konto, der bruges til at oprette forbindelse til SAP BW-serveren, skal have tilstrækkelige tilladelser til at kalde 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 skal tilføje nøglen i for at få adgang til den angivne dato. Hvis der f.eks. er en dimensionsattribut kaldet [0CALDAY], skal du tilføje nøglen [20CALDAY] for at få den angivne værdi.

I eksemplet ovenfor betyder det, at:

  • Kalenderdag. Kalenderdag Niveau 01 [0CALDAY] vil være tekst (en billedtekst). (Tilføjet som standard, når dimensionen tilføjes).
  • Kalenderdag. Kalenderdag Niveau 01.Key [20CALDAY] vil være en dato (skal vælges manuelt).

Hvis du vil tilføje nøglen manuelt i importtilstand, skal du blot udvide Egenskaber og vælge nøglen.

Valg af egenskaben Nøgle i Power Query-navigatoren.

Nøglekolonnen vil være af typen dato og kan bruges til filtrering. Filtrering på denne kolonne foldes til serveren.

Understøttelse af SAP BW-funktioner

I følgende tabel vises alle SAP BW-funktioner, der ikke understøttes fuldt ud eller fungerer anderledes, når du bruger Power Query SAP BW-connectoren.

Funktion Beskrivelse
Lokale beregninger Lokale beregninger, der er defineret i en BEX-forespørgsel, ændrer tallene, som vist via værktøjer som Bex Analyzer. De afspejles dog ikke i de tal, der returneres fra SAP, via den offentlige MDX-grænseflade.

Derfor stemmer de tal, der ses i Power Query, ikke nødvendigvis overens med tallene for en tilsvarende visualisering i et SAP-værktøj.

Når du f.eks. opretter forbindelse til en forespørgselskube fra en BEx-forespørgsel, der angiver, at sammenlægningen skal akkumuleres (f.eks. løbende sum), får Power Query basisnumrene tilbage og ignorerer denne indstilling. En analytiker kan derefter anvende en løbende sumberegning lokalt i f.eks. Power BI, men skal være forsigtig med, hvordan tallene fortolkes, hvis dette ikke gøres.
Sammenlægninger I nogle tilfælde (især når der er tale om flere valutaer), svarer de aggregerede tal, der returneres af den offentlige SAP-grænseflade, ikke til dem, der vises af SAP-værktøjer.

Derfor stemmer de tal, der ses i Power Query, ikke nødvendigvis overens med tallene for en tilsvarende visualisering i et SAP-værktøj.

Totaler over forskellige valutaer vises f.eks. som "*" i Bex Analyzer, men totalen returneres af den offentlige SAP-grænseflade uden oplysninger om, at et sådant aggregeret tal er meningsløst. Dermed vises tallet (f.eks. $, EUR og AUD) af Power Query.
Valutaformatering Al valutaformatering (f.eks. $2.300 eller 4000 AUD) afspejles ikke i Power Query.
Enheder Måleenheder (f.eks. 230 KG) afspejles ikke i Power Query.
Nøgle i forhold til tekst (kort, mellem, lang) For en SAP BW-egenskab, f.eks. CostCenter, viser navigatoren en enkelt vare Omkostningssted niveau 01. Hvis du vælger dette element, medtages standardteksten for Omkostningssted på feltlisten. Værdierne Nøgleværdi, Kort navn, Mellemnavn og Langt navn er også tilgængelige til markering i noden Egenskaber for egenskaben (hvis de vedligeholdes i SAP BW).

Bemærk, at dette kun gælder for importforbindelsestilstand. I DirectQuery-tilstand er det kun standardteksten, der medtages i datasættet.
Attributter Attributterne for en egenskab vil være tilgængelige til valg i Egenskaber for egenskaben. Dette gælder kun for importforbindelsestilstand. I DirectQuery-tilstand er attributterne ikke tilgængelige.
Flere hierarkier af en egenskab I SAP kan en egenskab have flere hierarkier. I værktøjer som BEx Analyzer kan brugeren derefter vælge det hierarki, der skal bruges, når en egenskab er inkluderet i en forespørgsel.

I Power BI kan de forskellige hierarkier ses på feltlisten som forskellige hierarkier på den samme dimension. Hvis du vælger flere niveauer fra to forskellige hierarkier i den samme dimension, returneres tomme data af SAP.
Behandling af ujævne hierarkier SAP BW understøtter ujævne hierarkier, hvor niveauer kan gå glip af f.eks.:

   Kontinent
      Nord- og Sydamerika
         Canada
         USA
   Ikke tildelt
      Australien

I Power BI vises dette med (Blank) på det manglende niveau:

   Kontinent
      Nord- og Sydamerika
         Canada
         USA
   Ikke tildelt
      (Tom)
         Australien
Skaleringsfaktor/omvendt fortegn I SAP kan et nøgletal have en skaleringsfaktor (f.eks. 1000), der er defineret som en formateringsindstilling, hvilket betyder, at alle skærme skaleres med den pågældende faktor.

Det kan på samme måde have et egenskabssæt, der fortryder fortegnet. Brug af et sådant nøgletal i Power BI (i en visualisering eller som en del af en beregning) vil resultere i, at det ikke-skalerede tal bruges (og fortegnet vendes ikke). Den underliggende skaleringsfaktor er ikke tilgængelig. I Power BI-visualiseringer kan de skalaenheder, der vises på aksen (K,M,B), styres som en del af den visuelle formatering.
Hierarkier, hvor niveauer vises/forsvinder dynamisk Når du opretter forbindelse til SAP BW, hentes oplysningerne om niveauerne i et hierarki, hvilket resulterer i et sæt felter på feltlisten. Dette cachelagres, og hvis sættet af niveauer ændres, ændres sættet af felter ikke, før Opdatering aktiveres.

Dette er kun muligt i Power BI Desktop. En sådan opdatering, der afspejler ændringer af niveauerne, kan ikke aktiveres i Power BI-tjeneste efter Publicer.
Standardfilter En BEX-forespørgsel kan indeholde standardfiltre, som automatisk anvendes af SAP Bex Analyzer. Disse vises ikke, og derfor anvender det tilsvarende forbrug i Power Query ikke de samme filtre som standard.
Skjulte nøgletal En BEX-forespørgsel kan styre synligheden af nøgletal, og dem, der er skjulte, vises ikke i SAP BEx Analyzer. Dette afspejles ikke via den offentlige API, og derfor vises sådanne skjulte nøgletal stadig på feltlisten. De kan dog skjules i Power Query.
Numerisk formatering Enhver numerisk formatering (antal decimalpositioner, decimaltegn osv.) afspejles ikke automatisk i Power Query. Det er dog muligt at styre denne formatering i Power Query.
Versionering af hierarki SAP BW gør det muligt at vedligeholde forskellige versioner af et hierarki, f.eks. omkostningsstedshierarkiet i 2007 i forhold til 2008. Det er kun den nyeste version, der er tilgængelig i Power Query, da oplysninger om versioner ikke vises af den offentlige API.
Tidsafhængige hierarkier Når du bruger Power Query, evalueres tidsafhængige hierarkier på den aktuelle dato.
Valutaomregning SAP BW understøtter valutakonvertering baseret på satser, der findes i kuben. Sådanne egenskaber vises ikke af den offentlige API og er derfor ikke tilgængelige i Power Query.
Sorteringsrækkefølge Sorteringsrækkefølgen (efter tekst eller efter nøgle) for en egenskab kan defineres i SAP. Denne sorteringsrækkefølge afspejles ikke i Power Query. Måneder kan f.eks. vises som "April", "Aug" osv.

Det er ikke muligt at ændre denne sorteringsrækkefølge i Power Query.
Tekniske navne I navigatoren kan navne på egenskaber/målinger (beskrivelser) og tekniske navne begge vises ved hjælp af vælgeren Visningsindstillinger. Feltlisten indeholder navne på egenskaber/målinger (beskrivelser).
Indstilling for slutbrugersprog Den landestandard, der bruges til at oprette forbindelse til SAP BW, er angivet som en del af forbindelsesoplysningerne og afspejler ikke landestandarden for den endelige forbruger af rapporten.
Tekstvariabler SAP BW tillader, at feltnavne indeholder pladsholdere for variabler (f.eks. "$YEAR$ Faktiske værdier"), der derefter erstattes af den valgte værdi. Feltet vises f.eks. som "2016 Actuals" i BEx-værktøjer, hvis året 2016 blev valgt for variablen.

Kolonnenavnet i Power Query ændres ikke afhængigt af variabelværdien og vises derfor som "$YEAR$ faktiske værdier". Kolonnenavnet kan dog ændres i Power Query.
Kundeafslutningsvariabler Kundeafslutningsvariabler vises ikke af den offentlige API og understøttes derfor ikke af Power Query.

Overvejelser i forbindelse med ydeevne

Følgende tabel indeholder en oversigt over forslag til forbedring af ydeevnen for dataindlæsning og -opdatering fra SAP BW.

Forslag Beskrivelse
Begræns egenskaber og egenskaber (attribut) markering Den tid, det tager at indlæse data fra SAP BW i Power Query, øges med størrelsen af datasættet, dvs. antallet af kolonner og rækker i det flade resultatsæt. Hvis du vil reducere antallet af kolonner, skal du kun vælge egenskaberne og egenskaberne i navigatoren, som du til sidst vil se i din rapport eller dit dashboard.
Gør brug af parametre Brug af filtre/parametre bidrager til at reducere størrelsen af resultatsættet, hvilket forbedrer forespørgselskørslen markant.

Parametre er især værdifulde, når de bruges med store dimensioner, hvor der er mange medlemmer, f.eks. kunder, materialer eller dokumentnumre.
Begræns antallet af nøgletal Hvis du vælger mange nøgletal fra en BEx-forespørgsel/BW-model, kan det have en betydelig indvirkning på ydeevnen under udførelse af forespørgsler på grund af den tid, der bruges på at indlæse metadata for enheder. Medtag kun de nøgletal, du har brug for, i Power Query.
Opdel meget store forespørgsler i flere mindre forespørgsler For meget store forespørgsler mod InfoCubes- eller BEx-forespørgsler kan det være en fordel at opdele forespørgslen. En forespørgsel kan f.eks. hente nøgletallene, mens en anden forespørgsel (eller flere andre forespørgsler) henter data med egenskaber. Du kan joinforbinde de enkelte forespørgselsresultater i Power Query.
Undgå virtuelle udbydere (MultiProviders eller InfoSets) VirtualProviders ligner strukturer uden vedvarende lager. De er nyttige i mange scenarier, men kan vise langsommere forespørgselsydeevne, fordi de repræsenterer et ekstra lag oven på de faktiske data.
Undgå brug af navigationsattributter i BEx-forespørgsel En forespørgsel med en navigationsattribut skal køre en ekstra joinforbindelse sammenlignet med en forespørgsel med det samme objekt som en egenskab for at nå frem til værdierne.
Brug RSRT til at overvåge og foretage fejlfinding af forespørgsler, der kører langsomt Dine SAP-Administration kan bruge Forespørgselsovervågning i SAP BW (transaktion RSRT) til at analysere problemer med ydeevnen med SAP BW-forespørgsler. Gennemse SAP-note 1591837 for at få flere oplysninger.
Undgå begrænsede nøgletal og beregnede nøgletal Begge beregnes under udførelse af forespørgsler og kan gøre forespørgslen langsommere.
Overvej at bruge trinvis opdatering for at forbedre ydeevnen Power BI opdaterer det komplette datasæt med hver opdatering. Hvis du arbejder med store mængder data, er det muligvis ikke optimalt at opdatere det fulde datasæt for hver opdatering. I dette scenarie kan du bruge trinvis opdatering, så du kun opdaterer et undersæt af data. Du kan finde flere oplysninger ved at gå til Trinvis opdatering i Power BI.

Sammenligning med Analysis for Office (AFO)

Der er grundlæggende forskelle mellem værktøjet Analysis for Office (AFO) og Power Query SAP Business Warehouse-connectoren, så outputtet af data kan variere. AFO bruger ikke MDX, men bruger i stedet en beskyttet protokol, der er udviklet af SAP, og som ikke er tilgængelig for tredjeparter, f.eks. Power Query SAP Business Warehouse-connectoren. SAP certificerer kun connectors, der bruger MDX-grænsefladen. AFO bruger en flerdimensionel forespørgselsstrategi, der navigerer i dataene forskelligt, hvorimod Power Query SAP Business Warehouse-connectoren skal fladgør dataene, så de kan repræsenteres som en tabel. Så selvom det er de samme data, forespørges, repræsenteres og skrives i sidste ende anderledes.

Se også