Create a Power BI dataflow with Business Central data

Completed

In the previous unit, you've seen how to develop API page and API query objects. Power BI can then connect to the Business Central web services and import the data.

You can now access data from Business Central in a more seamless and proficient way by creating dataflows that you share across different reports and dashboards.

The Business Central connector is now available in Power Query Online (Power BI Datamarts and Dataflows). So you can create far more performant and flexible data source configurations, not least when multiple users access or refresh data from Business Central.

As data volume continues to grow, so does the challenge of wrangling that data into well-formed, actionable information. We want data that's ready for analytics, to populate visuals, reports, and dashboards, so we can quickly turn our volumes of data into actionable insights. With self-service data prep for big data in Power BI, you can go from data to Power BI insights with just a few clicks.

Diagram showing the flow of data.

Dataflows are designed to support the following scenarios:

  • Create reusable transformation logic that many datasets and reports inside Power BI can share. Dataflows promote reusability of the underlying data elements, preventing the need to create separate connections with your cloud or on-premises data sources.

  • Expose the data in your own Azure Data Lake Gen 2 storage, enabling you to connect other Azure services to the raw underlying data.

  • Create a single source of the truth by forcing analysts to connect to the dataflows, rather than connecting to the underlying systems. So you have control over which data is accessed, and how data is exposed to report creators. You can also map the data to industry standard definitions, enabling you to create tidy curated views, which can work with other services and products in the Power Platform.

  • If you want to work with large data volumes and perform ETL at scale, dataflows with Power BI Premium scales more efficiently and gives you more flexibility. Dataflows supports a wide range of cloud and on-premises sources.

  • Prevent analysts from having direct access to the underlying data source. Since report creators can build on top of dataflows, it may be more convenient for you to allow access to underlying data sources only to a few individuals, and then provide access to the dataflows for analysts to build on top of. This approach reduces the load to the underlying systems and gives administrators finer control of when the systems get loaded from refreshes.

Once you've created a dataflow, you can use Power BI Desktop and the Power BI service to create datasets, reports, dashboards, and apps that use the Common Data Model. These tools help you gain deep insights into your business activities. Dataflow refresh scheduling is managed directly from the workspace in which your dataflow was created, just like your datasets.

A dataflow is a collection of tables that are created and managed in workspaces in the Power BI service. A table is a set of columns that are used to store data, much like a table within a database. You can add and edit tables in your dataflow, and manage data refresh schedules, directly from the workspace in which your dataflow was created.

To create a dataflow, launch the Power BI service in a browser then select a workspace (dataflows aren't available in my-workspace in the Power BI service) from the nav pane on the left, as shown in the following screen. You can also create a new workspace in which to create your new dataflow.

Screenshot showing how to start a dataflow.

Using the Define new tables option lets you define a new table and connect to a new data source.

When you select a data source, you're prompted to provide the connection settings, including the account to use when connecting to the data source.

Once connected, you can select which data to use for your table. When you choose data and a source, Power BI reconnects to the data source. It does so in order to keep the data in your dataflow refreshed, at the frequency you select later in the setup process.

Once you select the data for use in the table, you can use dataflow editor to shape or transform that data into the format necessary for use in your dataflow.

Users can create Dataflows in a Premium workspace, with a Pro license, or with a Premium Per User (PPU) license.

To create a Power BI dataflow that connects to Business Central data, follow these steps:

  1. Go to your Power BI Service.

  2. Create a new workspace.

    Screenshot of Power BI Workspaces with Create a workspace highlighted.

  3. Enter a Workspace name and select Save.

    Screenshot of Create a workspace with Workspace name highlighted.

  4. In your Power BI workspace select New, Dataflow.

    Screenshot of Power BI with New expanded and Dataflow highlighted.

  5. Select Add new tables.

    Screenshot of Start creating your dataflow with Add new tables highlighted.

  6. Select Dynamics 365 Business Central as the data source.

    Screenshot of Choose data source with Business Central highlighted.

  7. Next, enter the Environment, Company and API category, or leave them blank.

    Screenshot of Connect to data source.

  8. Enter your credentials in the connection, if asked.

  9. Then select Next.

  10. In the next screen you can see the Business Central APIs and Web services, per Environment and Company:

    Screenshot of Power BI Choose data with Business Central APIs and web services expanded.

  11. Connect to one of the APIs you have developer in the previous unit, or connect to a standard API:

    Screenshot of Choose data.

  12. Now select Transform Data:

    Screenshot of Transform data.

  13. In the window that opens, you can see a typical Power Query interface. Here you can, if you need to, perform data transformations, apply filters, create new columns,...

  14. Select Save & Close.

  15. Give a name to the dataflow, for example Customers:

    Screenshot of Save your dataflow.

  16. Then select Save.

  17. You can now add other tables to the dataflow, if you want to.

  18. Select Add tables and in the window that opens, filter on Business Central:

    Screenshot of add tables.

  19. Select the Business Central connector and select Next.

  20. In the window that opens now select the customerLedgers API:

    Screenshot of choose data again.

  21. Select Transform Data:

    Screenshot of transform data again.

  22. Then select Save & Close.

  23. You now have two APIs in your Customers dataflow:

    Screenshot of customers dataflow.

  24. Select Close.

  25. Now refresh the dataflow.

    Screenshot of refreshed dataflow.

  26. Your Power BI dataflow is now ready.

Once you create a dataflow, you can use Power BI Desktop and the Power BI service to create datasets, reports, dashboards, and apps that are based on the data you put into Power BI dataflows. So you gain insights into your business activities.

With dataflows, you can unify data from multiple sources and prepare that unified data for modeling. Whenever you create a dataflow, you're prompted to refresh the data for the dataflow. Refreshing a dataflow is required before it can be consumed in a dataset inside Power BI Desktop, or referenced as a linked or computed table.

To consume a Power BI dataflow in Power BI Desktop, follow these steps:

  1. In Power BI Desktop, select Get data, Dataflows.

    Screenshot of Get data expanded to show Dataflows.

  2. In the Navigator that opens, open your Workspace and dataflow. Then select the tables from the dataflow:

    Screenshot of Navigator with customerLedgers selected.

  3. Select Load to load the data in Power BI Desktop:

  4. Your tables are now created:

    Screenshot of the tables connected.

  5. Now you can consume the data in the tables, as if you would develop any other Power BI report.

More information about dataflows is available here: