Data uit AFAS Profit inladen in Power BI en online publiceren

In een tool als Power BI kun je gemakkelijk gegevens analyseren. Een van de applicaties waar veel van onze klanten mee werken is AFAS Profit. In deze blog laat ik je zien hoe je gemakkelijk gegevens uit AFAS op kunt halen en in laad in Power BI.

Stap 1: toevoegen GetConnector en AppConnector in Afas Profit

Om data op te kunnen halen uit AFAS moet er een GetConnector(s) en een AppConnector aangemaakt worden. In de GetConnector bepaal je welke data opgehaald kan worden. Met de AppConnector bepaal je wie deze data op kan halen.

GetConnector

Het toevoegen van een GetConnector gaat via het menu Algemeen in Afas Profit. In deze blog ga ik niet dieper in op het aanmaken van een GetConnector

AppConnector

Het toevoegen van een AppConnector gaat via het menu Algemeen -> Beheer -> AppConnector

In dit scherm voeg je een nieuwe AppConnector toe.

Geef de AppConnector een herkenbare naam, bijvoorbeeld PowerBI en kies de gebruikersgroep welke toegang moet hebben tot deze AppConnector en klik op Voltooien.

In het scherm met de eigenschappen van de AppConnector zet je het vinkje ‘Geblokkeerd’ uit.

Daarna voeg je in  de tab ‘GetConnectoren’ de GetConnectoren die gebruikers van deze AppConnector op mogen vragen.

In de tab ‘Gebruikerstokens’ moet vastgelegd worden welke gebruikers toegang krijgen. Dit kan een Systeemgebruiker of een normale gebruiker zijn.
Wanneer een gebruiker in AFAS maar toegang heeft tot bijvoorbeeld nacalculatie regels van een beperkt aantal medewerkers zal deze via de GetConnector ook alleen de records te zien krijgen waar deze gebruiker rechten toe heeft.

Klik op de knop ‘Nieuw’ en selecteer een gebruiker. Geef een omschrijving voor de gebruiker en klik op volgende.
In het vervolgscherm verschijnt een token. Sla deze token veilig op (inclusief ‘<token><version>’ etc)! Deze token wordt eenmalig verstrekt. Klik daarna op ‘Voltooien’.

Sla de AppConnector op door op ‘OK’ te klikken.

Hieronder zie je deze stappen in beelden uit de webinar die ik hierover gegeven heb:

By loading this video, you agree to the privacy policy of Youtube.

Stap 2: Data inladen in Power BI

Om data op te halen vanuit AFAS moet de API aangeroepen worden. De documentatie hiervan is te vinden op: https://help.afas.nl/help/NL/SE/App_Cnr_Rest_Api.htm.

Binnen Power BI moeten 2 stappen uitgevoerd worden:

  1. Token converteren naar Base64 string
  2. Aanroepen van de GetConnector

Token converteren naar Base64 string

De token die ontvangen is uit AFAS Profit moet geconverteerd worden naar een Base64 string. Daarnaast moet er voor deze tekst ‘AfasToken ’ komen te staan.
Binnen Power BI kan de token geconverteerd worden naar een Base64 string.

  1. Open de Query Editor (knop kan ook ‘Gegevens transformeren’ heten);
  2. Klik op de knop ‘Parameters beheren’
  3. Maak een nieuwe parameter aan met de naam ‘AfasToken’ en geef als ‘Huidige waarde’ de token op die ontvangen is uit AFAS.
  4. Voeg een nieuwe ‘Lege query’ toe
  5. Open de Geavanceerde editor en overschrijf het script met:
    let

Source = “AfasToken ” & Binary.ToText( Text.ToBinary( AfasToken ) )

in

Source

  1. Geef het script een naam, bijvoorbeeld ‘AfasTokenBase64’.

Aanroepen van de GetConnector

Het aanroepen van de GetConnector gaat door middel van een Web request. Binnen Power BI bestaat hiervoor de bron ‘Web’.

Kies in het geopende scherm de optie ‘Geavanceerd’ en vul de URL in en voeg een HTTP-aanvraagheader toe.

In mijn geval heb ik de URL opgeknipt in meerdere delen. Hierdoor kun je later gemakkelijk onderdelen hiervan vervangen door een parameter.
Veld 1 bevat de tekst ‘https://’;
Veld 2 bevat het Afas deelnemernummer;
Veld 3 bevat de omgeving. Voor een AFAS productie omgeving moet hier ‘.rest’ ingevuld worden in plaats van ‘.resttest’;
Veld 4 bevat de link naar de GetConnectoren;
Veld 5 bevat de naam van de GetConnector.

Bij de HTTP-aanvraagheaders heb ik de volgende gegevens toegevoegd:

Authorization: <AfasTokenBase64> -> Vervangen door je eigen Base64 token.

Klik op ‘OK’.

In het volgende scherm kies je voor Anoniem en dan ‘Verbinden’

Als resultaat krijg je een lijst met daarin 3 items: skip, take en rows. In de regel rows staat een list met alle resultaten.

Klik op gele tekst ‘List’. Een lijst met alle records wordt zichtbaar. Deze lijst moet geconverteerd worden naar een tabel. Gebruik hiervoor de functie ‘Naar tabel’.

Klap daarna de records uit:

De data uit AFAS staat nu als tabel in de Query Editor. Voer nu eventueel een aantal stappen uit om de data verder voor te bereiden voor je datamodel in Power BI. Denk hierbij aan het aanpassen van de kolommen naar het juiste gegevenstype. Dit is voornamelijk belangrijk voor getallen en datumvelden.

Hieronder zie je deze stappen in beelden uit de webinar die ik hierover gegeven heb:

By loading this video, you agree to the privacy policy of Youtube.

Stap 3: Publiceren van het rapport naar de Power BI Service + automatisch herladen instellen

Wanneer het rapport klaar is om te publiceren kun je deze uploaden naar de Power BI Service (online omgeving van Microsoft). Hiervoor klik je op de knop ‘Publiceren’ in Power BI desktop.

Log in met je Microsoft Account (zakelijk) en publiceer het rapport in een werkruimte.

Ga naar de Power BI service (https://app.powerbi.com) en navigeer naar de werkruimte waar het rapport gepubliceerd is:

Klik op de knop voor ‘Vernieuwen plannen’ achter het gegevensset. Open hier de optie: ‘Gegevensbronreferenties’ en klik op de knop ‘Referenties bewerken’.

Kies voor Verificatiemethode ‘Anonymous’ en geen bij Privacyniveau het van toepassing zijne Privacyniveau aan. Belangrijk is om het vinkje ‘Testverbinding overslaan’ aan te zetten.

Stel daarna de geplande vernieuwing in. Power BI zal op de gewenste tijden de data opnieuw ophalen uit AFAS en tonen in Power BI.

Hieronder zie je deze stappen in beelden uit de webinar die ik hierover gegeven heb:

By loading this video, you agree to the privacy policy of Youtube.

We zijn benieuwd naar de dashboards die je gemaakt hebt. Laat in de reacties weten welke data je uit AFAS gehaald hebt en hoe dit dashboard ingezet worden binnen je organisatie.

Heb je vragen of kom je er niet uit? Stuur ons je vraag via de Contact pagina!

Meer weten over onze oplossingen?

Onze consultants hebben veel ervaring binnen een grote verscheidenheid aan branches.
Eens verder brainstormen over de mogelijkheden voor jouw organisatie?

Maak kennis met onze specialist Arnoud van der Heiden.

Wellicht herkent u een van deze vraagstukken.

Inmiddels hebben wij ruime ervaring opgedaan met Business Intelligence. Wij staan ook u graag te woord bij vragen of opmerkingen.

Business Intelligence (BI) is het technologie gedreven proces van gegevensanalyse dat bedrijven in staat stelt om waardevolle inzichten te halen uit hun gegevens. BI-oplossingen kunnen helpen bij het verzamelen, analyseren en presenteren van bedrijfsgegevens om betere beslissingen te nemen en concurrentievoordeel te behalen.

BI richt zich op het verzamelen, analyseren en presenteren van historische en huidige gegevens om bedrijfsprestaties te meten en te rapporteren. BA daarentegen richt zich meer op het voorspellen van toekomstige trends en mogelijkheden door geavanceerde analysemethoden en -modellen toe te passen op gegevens.

Het gebruik van BI-oplossingen kan bedrijven helpen om hun prestaties te verbeteren, betere beslissingen te nemen en concurrerend te blijven. Het kan hen helpen om inzicht te krijgen in klantgedrag, trends te identificeren, kosten te verlagen, de efficiëntie te verbeteren en nieuwe zakelijke kansen te ontdekken.

Growteq biedt verschillende BI-oplossingen aan, waaronder Power BI van Microsoft, QlikView en Qlik Sense, Tableau en SAP BusinessObjects. Elk van deze oplossingen heeft zijn eigen sterke punten en functies, en kan worden aangepast aan de behoeften van een bedrijf.

Ja, Growteq kan bedrijven helpen bij het implementeren van BI-oplossingen door het bieden van strategisch advies, consultancy en implementatiediensten. Ze werken samen met klanten om oplossingen op maat te maken die aan hun specifieke behoeften voldoen en hen helpen om waarde te halen uit hun gegevens.

De kosten van BI-oplossingen kunnen variëren afhankelijk van de grootte van het bedrijf, de omvang van de implementatie en de gekozen oplossing. Growteq werkt samen met klanten om oplossingen te vinden die passen bij hun budget en behoeften. De voordelen van het gebruik van BI-oplossingen kunnen echter vaak opwegen tegen de kosten, omdat ze bedrijven kunnen helpen om hun prestaties te verbeteren en hun concurrentievoordeel te behalen.

De implementatie van een BI-oplossing omvat meestal de volgende stappen:

  • Definiëren van de doelstellingen en vereisten van het BI-project
  • Verzamelen en integreren van relevante gegevens uit verschillende bronnen
  • Het ontwikkelen van een datawarehouse om de gegevens op te slaan in een logisch model
  • Implementatie van dashboards, KPI’s en visualisatie voor gegevenspresentatie
  • Training van medewerkers
  • Continue monitoring en optimalisatie van de BI oplossing

BI maakt verschillende soorten analyses mogelijk, waaronder:

  • Descriptive analyse: Hierbij worden historische gegevens gebruikt om te begrijpen wat er in het verleden is gebeurd.
  • Diagnostische analyse: Hierbij wordt onderzocht waarom bepaalde gebeurtenissen of trends zich hebben voorgedaan
  • Voorspellende analyses: Hierbij worden gegevens en modellen gebruikt om toekomstige gebeurtenissen en trends te kunnen voorspellen
  • Prescriptive analyse: Hierbij worden aanbevelingen gedaan over mogelijke acties op basis van analyse en voorspelling

Enkele populaire BI-tools zijn o.a.:

  • Microsoft Power BI
  • QlikView
  • Qlik Sense
  • Tableau
  • MicroStrategy
  • IBM Cognos

Business Intelligence (BI) kan gegevens uit verschillende bronnen gebruiken, zoals:

  • Interne databases en systemen (bijv. CRM-systemen, ERP-systemen)
  • Externe gegevensbronnen (bijv. marktonderzoekgegevens, sociale media)
  • Gestructureerde gegevens (bijvoorbeeld databases en spreadsheets)
  • Ongestructureerde gegevens (bijv. tekstuele gegevens, e-mails, logboeken etc.)
  • Big data-bronnen (bijv. sensorgegevens, weblogs)

Growteq heeft ervaring met al deze bronnen.

Selfservice BI verwijst naar het vermogen van niet-technische gebruikers om zelfstandig gegevens te verkennen, te analyseren en rapporten en dashboards te maken met behulp van gebruiksvriendelijke BI-tools. Enkele voordelen van selfservice BI zijn o.a.:

  • Verminderde afhankelijkheid van IT-afdelingen voor rapportage en analyses
  • Snellere besluitvorming doordat gebruikers direct toegang hebben tot benodigde gegevens
  • Verhoogde flexibiliteit en aanpasbaarheid bij het verkennen van gegevens
  • Stimuleert gegeven gestuurde cultuur binnen de organisatie

15 reacties. Leave new

  • Paul Hopstaken
    25 april 2022 15:36

    Beste Growteq,
    Mooie oplossing. deze hebben we nu ook gebouwd om onze AFAS gegevens in Powerbi te importeren.
    Dat gaat prima op onze on premise reportserver. het enige wat we hier op de reportserver niet aan kunnen vinken is skiptestConnection, want deze optie hebben we niet. Nu gaat de scheduled refresh hierop fout. Heeft u een optie om dit op te lossen, misschien als parameter meegeven.

    Met vriendelijke groet

    Paul Hopstaken

    RIVAS zorggroep

    Beantwoorden
  • Ons advies is om het web request te splitsen in twee delen. Deel 1 moet als een harde url worden ingevoerd. Hierbij zou je een parameter kunnen gebruiken, maar geen variante waardes. Het geheel zou er als volgt uit moeten zien en dan werken:


    let
    Source =
    Json.Document(
    Web.Contents(
    “HTTPS://[afas key].rest.afas.online”,
    [
    RelativePath = “/profitrestservices/connectors/[name connector]”,
    Headers = [
    Authorization = “[Token]”
    ]
    ]
    )
    )
    in
    Source

    Beantwoorden
  • Mooi en duidelijke uitleg!

    Wat moet er gedaan worden om een wijziging doorgevoerd in de Getconnector ook zichtbaar te krijgen in Power BI? Na het instellen van de web source heb ik een veld toegevoegd en deze krijg ik niet zichtbaar in Power BI.

    Beantwoorden
    • Bedankt voor je reactie!
      Wanneer je nieuwe velden op wilt halen uit de AFAS GetConnector moet je de dataset herladen in Power BI Desktop.
      Als het veld daar toch niet zichtbaar wordt zul je de toegepaste stappen in de Power Query Editor na moeten kijken. Mogelijk dat hier een selectie van kolommen in zit waarbij de nieuwe kolom uitgesloten worden.

      Beantwoorden
  • Beste,

    Hoe loop je door de data heen wanneer je meer dan 100K rijen hebt. Wanneer ik de take aanpas van 100 naar 100k doet hij het nog, echter heeft deze meer dan 100k aan regels, pas ik deze aan naar 1M klapt hij er uit.

    Beantwoorden
    • Beste Ties, bedankt voor je reactie!

      Je zou hiervoor gebruik kunnen maken van de functie List.Generate().
      Voor deze blog gaat het te ver om hier dieper op in te gaan. Mochten we je ergens bij kunnen ondersteunen dan horen we het graag. 1 van onze collega’s helpt je graag verder.

      Beantwoorden
  • Perfect, precies wat ik nodig had.
    Dank en hulde

    Beantwoorden
  • Super duidelijke uitleg! Dan hiervoor.
    Ik probeer nu alleen de meest recente data op te halen, bijvoorbeeld afgelopen 5 jaar. Hoe kan ik dit doen?

    Beantwoorden
  • Duidelijk verhaal, hier heb ik veel aan!

    Je benoemd echter, dat als je token niet meegeeft hij standaard op 100 gaat. Hoe zorg ik ervoor dat alle data, danwel in batches, inlaad?

    Alvast dank!

    Beantwoorden
    • Robert Jan Quist
      20 maart 2023 13:03

      Beste Tessa,
      Ik denk dat je hetzelfde bedoelt als wat Ties op 12 september vroeg.
      Mocht je op basis hiervan toch niet verder komen of verdere ondersteuning nodig hebben neem dan gerust contact met mij op.

      Beantwoorden
  • Richard Kruithof
    21 oktober 2023 20:42

    Hi Robert Jan,

    Top uitleg, het werkt allemaal dus dank daarvoor!
    Ik krijg alleen het aantal regels niet gewijzigd waardoor er maar 100 records worden opgehaald. Weet jij waar en hoe ik dit wijzigen kan?

    Alvast dank,
    groet Richard Kruithog

    Beantwoorden

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Fill out this field
Fill out this field
Geef een geldig e-mailadres op.

Categorieën

Categorieën

Vragen?

Onze specialisten geven graag antwoord op uw vragen!