Ophalen data Power BI van maar 1 divisie uit Exact Online

In Invantive Cloud heb ik een database ingericht met Exact Online. Het account van Exact Online heeft toegang tot meerdere divisies. Nu heb ik als test een template voor Power BI gedownload (Exact Online – Balans).

Bij het openen van de template wordt om de bridge-URL gevraagd waarbij ik een filtering toepas op divisie (https://bridge-online.cloud/bryn-eol/odata4?$filter=DIVISION_CODE eq ‘DIVISION_CODE’). Ondanks het opgeven van de divisie code wordt data van alle divisies ingeladen.
Ik wil graag een database waarmee ik toegang heb tot alle divisies waar mijn account bij Exact Online aan gekoppeld is maar wel dat enkel data van 1 divisie in Power BI geladen wordt.

Wat me opvalt, is dat de filtering op divisie wel werkt als ik in Power BI een enkele tabel opvraag (voorbeeld gehaald van het forum).
Kan dat mogelijk de oorzaak zijn, is de selectie van een tabel een vereiste om de filter op divisie op deze manier toe te passen? Indien zo, is de filtering op divisie op in te stellen in Power BI op de manier dat ik wil of moet ik mijn database aanpassen en is een filtering bij de database in Invantive Cloud benodigd?

De Bridge Online URL uit het Power BI voorbeeld op Exact Online is een URL zonder GET-parameters, dus zonder $filter etc. Het is een prefix die voor alle daadwerkelijke OData paden. Te verwachten was dat er foutmeldingen zouden optreden, maar blijkbaar herschrijft Power BI de URL naar een geldig formaat. Dat is niet zeker, maar we meten vaker dat Power BI meerdere verschillende pogingen waagt tot een URL werkt.

Het filteren op administratie kan op vier manieren zoals beschreven in Filteren op Division in OData voor Power Query op Exact Online XML tabel - #2 door guido.leenders :

  • per query
  • voor alle queries via het use statement
  • voor alle queries gestuurd vanuit Exact Online (gebruikersrechten en/of app-rechten)

Als het filteren in Power BI gebeurt, dan zijn dient de divisiecode meegegeven te worden aan de queries:

Een voorbeeld van een dergelijk verzoek in Power BI is:

  • Voorbeeld Exact Online XML-tabel: https://bridge-online.cloud/NAAM/odata4/ExactOnlineXML.XML.Journals@eol?$filter=DIVISION_CODE eq '102673'
  • Voorbeeld Exact Online REST-tabel: https://bridge-online.cloud/NAAM/odata4/ExactOnlineREST.Cashflow.PaymentsBulk@eol?$filter=Division eq 123456

Power BI zorgt zelf voor de introductie van filter stappen in de query editor. Meer geavanceerde tips over de filtermogelijkheden zijn te vinden op How to filter data from OData query on Azure Data Factory?.