SFS rapportagedata

Doel

In de SFS database staat per klantomgeving operationele data, historische data en andere data. Klantomgevingen zijn strict gescheiden. Een klant heeft één of enkele klantomgevingen. Klanten van de software as a service (SAAS) SFS hebben geen toegang tot de database. Klanten willen in voorkomende gevallen rapportages doen op basis van SFS data. Voor dit doel maakt SFS extern raadpleegbare rapportagedata beschikbaar.

Route

SFS data en data uit de SFS database legt de volgende route af:

  1. SFS gebruikt de eigen data om een rapportagedatabase te vullen. Klanten hebben geen toegang tot de rapportagedatabase. De rapportagedatabase bevat één of meerdere klantomgevingen. Klantomgevingen zijn strict gescheiden, net als in SFS.
  2. De SFS rapportage application programming interface (API) biedt klanten toegang tot de inhoud van de rapportagedatabase. De API is secure bereikbaar over internet, via https. De API implementeert het open data protocol (OData): vragen via de query string, antwoorden in de vorm van json. Een klant authenticeert zich via een API key of via gebruikersnaam / wachtwoord. De API autoriseert voor de juiste klantomgeving.
  3. De klant gebruikt op OData gebaseerde toepassingen voor verdere verwerking van de rapportagedata. Een voorbeeldtoepassing is Power BI, voor data visualisatie en business intelligence.

SFS data verschilt van rapportagedata

SFS gebruikt de eigen data om de rapportagedata te onderhouden. De eigen data verschilt van de rapportagedata.

  • Transformaties en aggregaties zijn mogelijk bij het aanmaken van rapportagedata. Ten opzichte van het SFS datamodel is er een ander rapportage datamodel. De aparte datamodellen evolueren onafhankelijk van elkaar.
  • Een subset van de SFS data is beschikbaar voor rapportagedoeleinden. Welke data en in welke vorm is een evolutie.
  • SFS versleutelt privacygevoelige data. Rapportagedata is niet versleuteld. SFS maakt privacygevoelige data niet beschikbaar als rapportagedata. 
  • SFS hanteert bewaartermijnen. SFS data kan op enig moment vervallen. Al overgenomen overeenkomstige rapportagedata kan blijven bestaan, ten behoeve van analyses over een langere periode.

Configuratie voor een klantomgeving

SFS maakt de rapportagedata uitsluitend aan als dat geconfigureerd is. De stappen in de SAAS SFS zijn:

  • Maak een rapportagedatabase aan, of richt een bestaande rapportagedatabase in met een extra klantomgeving. In beide gevallen komt aan de orde: een database schema, het datamodel, instellen van de rechten.
  • Stel in SFS in de klantconfiguratie de naam van de rapportagedatabase in. Pas dan gaat SFS rapportagedata aanmaken.
  • Richt in de API de API key en/of gebruikersnaam en wachtwoord in, of meerdere daarvan, in overleg met de klant.

Management information events

In de rapportagedata zijn management information events te vinden.

Het gaat hier in de eerste plaats om de miEvents en de miEventTypes. Een miEventType FORM_START is bijvoorbeeld het type event voor het beginnen met het invullen van een formulier. miEvents bevat de daadwerkelijke events. Een event kan refereren naar het product waar het formulier bijhoort. Producten staan ook in de rapportagedata. Aandachtspunten:

  • Een kolom IsProduction geeft met 0 aan dat het data in de acceptatieomgeving is en geeft met 1 aan dat het data in de productomgeving is.
  • De kolom IsActual geeft met 0 aan dat de data niet meer bestaat in SFS, bijvoorbeeld want opgeschoond na het verlopen van een bewaartermijn. 1 geeft aan dat de data nog steeds bestaat in SFS.

OData

De OData koppeling ondersteunt een groot aantal bevragingen. Zie de OData standaard. Bijvoorbeeld gegeven de basisurl van de SFS rapportage API:

  • odata/$metadata: gedetailleerde beschrijving, in json, van bovenstaand datamodel.
  • odata/mieventtypes: alle miEventTypes.
  • odata/mievents?$orderby=Id desc&$top=10: de 10 meest recente events, geordend op aflopende Id
  • odata/mievents(963095): een bepaald event.

Power BI

Gebruik in Power BI de OData bron.

  • Get Data, Other, OData Feed, Connect
  • Geef de url van de API, van https t/m odata
  • Kies Basic voor basic authentication. Als deze optie niet geboden wordt dan heeft Power BI eerdere settings vastgehouden. Tussenstap in dat geval: File, Options and settings, Data source settings, Clear permissions, Clear All Permissions. Hierna: opnieuw Basic proberen, en geef de gebruikersnaam en het wachtwoord in.
  • De Navigator toont het bovenstaande datamodel, verkregen via een OData $metadata bevraging. Hierna is het mogelijk data uit de API op te halen en analyses in Power BI te doen.

Hasher

Voor de toegang via de API is een api key of gebruiksnaam- en wachtwoord nodig. De api key en het wachtwoord staan niet direct in de configuratie van de API. In plaats daarvan staat de hash van de api key of van het wachtwoord in de configuratie. Een commandline tool is beschikbaar om de api key, of een wachtwoord, of een andere string te hashen.