What are the critical points for implementing a new client on Power BI?

Go to Dutch version

Users with a free consultancy subscription of Invantive for Invantive Cloud, Power BI and Exact Online often connect multiple customers. These often involve the same points of interest. This topic serves to give an overview of the points that can be checked during the implementation or upon delivery whether they have been included or left out.

Using Power BI Templates

Power BI Templates (pbit).

Power BI makes it possible to capture a report without the data. This makes it easy to realize a headstart by reusing a template in a subsequent project. Templates (*.pbit) can be stored and retrieved centrally. They can be used both with Power BI Desktop and Power BI Service. More information about pbit templates can be found in:

Power BI-sjabloon (pbit): Power BI rapport zonder data (Dutch)

Making database URL variable

Omitting the data is easy, but it is also necessary to make the data connection variable. This is easily done by using a Power BI parameter such as P_INVANTIVE_URL to configure the OData feed connector. When first using the Power BI template, the user is then prompted to set their specific URL. Working with Power BI parameters for templates and reports is described in:

Don’t use a gateway

Using the Power BI gateway is not necessary. Invantive Cloud works without locally installed software. We strongly recommend connecting PowerBI.com directly to Invantive Cloud for security, cost and performance reasons. More background can be read in:

Heeft Invantive Cloud Power BI Gateway nodig? (Dutch)

User Management

Service account

To avoid malfunctions when employees leave service or change roles, it is wise to run the repetitive refresh of Power BI reports under a service account (“service account”). A service account is (for security reasons) limited in terms of permissions and can also serve few interactive functions. Creating a service account is further explained in:

Delegation

It is convenient as soon as the customer wants to start using the report to register a subscription. However, due to the limitations of Exact Online introduced in 2021, it is laborious to access the same database in multiple environments. Therefore, under the customer subscription, register the Exact Online database and access that database by switching to the customer environment via delegation as described in:

Reliability

Power BI Premium per User License (PPU).

For more complex environment with a lot of data, it is recommended that the customer work with a Power BI Premium per User subscription for reliable overnight update from Power BI Service.

Timeout

Invantive Cloud does not use a gateway because it runs entirely through the default OData connector. OData’s default setting for timeouts is only 10 minutes. For large environments with millions of bookings, this is often too short to receive all the data. Therefore, run all queries in the Advanced Editor and make sure that the timeout and other settings are added between the square brackets at the OData feed as described in Avoid timeout error on Power BI OData download.

Accounting and Client Specific Reports

Client ID per Customer

For accountancy use, multiple end clients are processed for internal use. However, when serving multiple separate end customers with client specific dashboards and reports from one Invantive Cloud environment (always coordinate this with the security officer for applicable security policies) it is wise to create a separate database for each end customer in Invantive Cloud as described in (Dutch):

Prevent itgenscr590 message about single authentication identifier

When registering two or more databases with the same Exact Online user using the standard Invantive Cloud app or a proprietary client ID, an error message will occur:

itgenscr590
There can be at most one data container in all databases in all organizations with the single authentication identifier ‘…#…’.

This is avoided by following the advice from the previous section to register a separate client ID for each database.

Fixing such an itgenscr590 after registering multiple same databases, possibly spread across multiple organizations, requires some attention. More background and tips can be found in:

Performance

For optimal performance, it is wise, for example, to set filtering steps as close as possible to loading the data; this ensures that query folding remains possible. An overview of performance tips for Power BI can be found in:

Exact Online

Specifically for Exact Online, we recommend using the so-called “incremental” tables. These are up to 1,000x faster. More information on this can be found in:

Snel en met minder API-calls Exact Online uitlezen met de incrementele "sync API"-tabellen (Dutch)

Also we recommend accounting firms on Exact Online to start with smaller numbers of companies, like 5 or 10, as described in (Dutch):

Frequently used tables

An overview is available for a number of connectors in terms of most commonly used tables. This helps in finding the right table. These overviews can be found at:

Overzicht meestgebruikte tabellen per driver (Dutch)