De CompanyWatch Toolkit

companywatch, qlik, qlik sense, mendix, e-mergo.nl

In dit blog nemen we jullie mee in een interessante use case waarbij Qlik en Mendix aan te pas zijn gekomen. Samen met onze opdrachtgever CompanyWatch hebben wij een applicatie ontwikkeld voor de accountancymarkt waarbij Qlik Sense geïntegreerd wordt in een Mendix applicatie en tegelijkertijd Mendix fungeert als databron voor een Qlik Sense dashboard. Lees snel verder waarom en hoe wij dit gedaan hebben!

De CompanyWatch Toolkit

De gezamenlijk ontwikkelde toolkit komt met een basis van 7 apps, de zogenoemde Essentials, welke zijn later uit te breiden met 2 Premium apps en een Premium plus app. Het verschil in de Essentials en de Premium (plus) apps is dat de laatstgenoemden meer maatwerk functionaliteiten hebben.

companywatch, qlik, qlik sense, mendix, e-mergo.nl

De applicatie is gemaakt met het doel om Accountants en Financieel en Bedrijfseconomische adviseurs een duidelijke en gebruiksvriendelijke Toolkit met adviesapps te kunnen bieden, zodat zij hun klanten door (financiële) data gedreven adviezen kunnen geven. Zo creëren we een extra mogelijkheid voor deze doelgroep om advieskanten bij hun klanten om te zetten in rendement.

De business logica en rekenregels zijn verworven in verschillende Qlik Sense dashboards maar om de toolkit als één alomvattende applicatie aan te kunnen bieden hebben wij Mendix gebruikt. Mendix is een low-code ontwikkelplatform waarmee snel en eenvoudig applicaties ontwikkeld kunnen worden die gekoppeld kunnen zijn aan meerdere databronnen. Meer voordelen en informatie over Mendix kun je hier lezen en hier vind je al onze andere blogs over Mendix.

In deze case wordt Mendix gebruikt voor een aantal doeleinden: het bundelen en integreren van de adviestools in één applicatie, het bijhouden van klantinformatie (om deze vervolgens door Qlik uit te laten lezen), het koppelen/projecteren van grootboekschema’s op het RGS (later leg ik uit wat dit precies betekent) en het bijhouden van de hoeveelheid aangesloten klanten en licenties.

De kracht van de toolkit zit in het gebruik maken van bestaande financiële data van de gebruiker. Deze data wordt bijvoorbeeld gebruikt om een overzicht te genereren van hoe verschillende klanten in dezelfde branche het financieel ten opzichte van elkaar doen. Dit is slechts een voorbeeld van hoe data van accountants kan worden gebruikt in data-gedreven adviestools!

Mendix app als databron voor Qlik Sense dashboard

Allereerst nemen we een kijkje naar de data die in Mendix wordt bijgehouden. Deze informatie kan voor de duidelijkheid het best in tweeën worden gesplitst: data over klanten en data over het accountantskantoor. Deze gegevens worden middels een REST API uitgelezen door de verschillende adviestools in Qlik Sense.

Data over klanten

Van alle klanten kan algemene informatie worden bijgehouden, waarbij je kan denken aan bedrijfsnaam, adres, KVK-nummer et cetera. Interessanter is het indelen van klanten in hun passende bedrijfsactiviteit, waar verschillende waardes voor branche specifieke data aan zijn gekoppeld. Deze informatie is benodigd voor het goed werken van de adviestools. Hiervoor hoeft door een accountant weinig gedaan te worden (slechts een bedrijfsactiviteit voor een klant selecteren), maar het levert ontzettend veel op voor de tools.

Naast bedrijfsactiviteiten kunnen ook jaarlijks bij te houden gegevens worden bijgehouden voor een klant, zoals het aantal FTE in dienst. Ook dit is weer cruciale informatie voor de tools. De derde, laatste en zeker niet minst interessante informatie die over klanten kan worden bijgehouden is het projecteren van hun Grootboekschema op het Referentie Grootboekschema (RGS). RGS, in het kort, is het grootboekrekeningschema dat is gebaseerd op een gestandaardiseerde codering van financiële gegevens. Om de tools goed te laten werken is een soort standaard nodig, waaraan alle verschillende aangesloten kantoren en hun klanten conformeren. Deze standaard is het RGS. De verschillende grootboekrekeningen van klanten worden gekoppeld aan een RGS regel, waardoor een nieuwe categorisering van financiële boekingen ontstaat. In de tools wordt gekeken naar deze categorisering.

Data over het accountancykantoor

Dan is het nu tijd voor de accountancykantoren. Het interessante wat voor kantoren wordt bijgehouden zijn de inloggegevens voor hun boekhoudpakket(ten). Dit kan overigens ook weer op klantniveau worden gedaan, maar ik wilde het na de uitleg van RGS koppeling niet al te erg laten duizelen.

De Qlik Sense dashboards lezen direct de verschillende boekhoudpakketten uit. De authenticatie voor het uitlezen van deze pakketten gebeurt middels het oAuth2.0 protocol. Dit is dezelfde manier van authenticatie die schuilgaat achter de ‘log in met facebook’ of ‘log in met google’ knoppen die je tegenwoordig op veel plekken op het web tegen komt. De logica hierachter hebben wij volledig in de Mendix applicatie ingebouwd. De gebruiker hoeft enkel op de knop ‘inloggen bij boekhoudpakket’ te drukken, zich in te loggen op de pagina waarnaar hij wordt doorgestuurd en de applicatie doet de rest. ‘De rest’ is hier het ophalen van een access- en refresh token en deze op te sturen naar de Qlik Sense dashboards. Deze tokens worden gebruikt om vanuit Qlik Sense te authentiseren bij het boekhoudpakket zodat de data kan worden opgehaald.

Integratie Qlik in Mendix

companywatch, qlik, qlik sense, mendix, e-mergo.nlMendix is een mooi platform voor applicaties en portalen, maar minder geschikt voor datavisualisaties. Qlik daarentegen is een expert op dit gebied! Daarom is gekozen voor een hybride oplossing, waarbij Qlik Sense dashboards in de Mendix applicatie worden getoond. Deze Qlik Sense dashboards, oftewel adviestools, worden allemaal in Mendix getoond. Hierbij is de styling dusdanig op elkaar afgestemd dat het geheel oogt als één applicatie.

Het authentiseren bij de Qlik Sense server vanuit de Mendix app gebeurt geheel en al onderwater en de gebruiker merkt hier niks van. Aan het account van de gebruiker wordt in de Mendix applicatie een Qlik Sense licentie gekoppeld, waarmee vervolgens aan de Qlik server wordt meegegeven ‘wie’ de informatie wilt zien. Op deze manier wordt enkel de data getoond die voor de ogen van de huidige gebruiker (met de daaraan gekoppelde licentie) zijn bestemd.

Met deze oplossing hebben we een volledige applicatie die het beste van Mendix en Qlik combineert! De invoer van data en de navigatie door de app wordt in Mendix gedaan, terwijl het berekenen en visualiseren van data weer in Qlik Sense wordt bewerkstelligd. Een mooi voorbeeld van hoe onze productlijnen goed samen werken.

De architectuur

We hebben nu gekeken naar de verschillende onderdelen van de oplossing, namelijk de Qlik Sense adviestools en het overkoepelende Mendix portaal. Om een helder holistisch beeld te schetsen van architectuur hebben we dit visueel gemaakt.

companywatch, qlik, qlik sense, mendix, e-mergo.nl

In de afbeelding hierboven worden de verschillende onderdelen van de applicatie getoond:

  • De administratie: dit is het boekhoudpakket van de gebruiker
  • RGS: Dit is het referentie grootboekschema, een standaard voor grootboekschema’s
  • Qlik: Hierin worden alle visualisaties gemaakt en berekeningen op de data uitgevoerd
  • Mendix: Hierin wordt data ingevoerd, ingelezen en getoond

Kom vrijblijvend met ons in gesprek

Ben jij ook op zoek naar een hybride oplossing zoals hier wordt omschreven? Of wil je simpelweg meer weten over hoe deze oplossing tot stand is gekomen? Kom direct en vrijblijvend met ons in gesprek om de mogelijkheden te verkennen!

Dit blog is geschreven door Steve Jonk
Mendix Developer bij E-mergo