Planning with Power BI 

January 2026

Planning with Power BI 

It is now also possible to write values back to Microsoft Fabric using Power BI. In this blog, we want to highlight what this feature can do and whether we can already call it planning. 

To do this, we will look at the options for writing values back using the Power BI tool itself and using Excel. We will show what is already possible and for which requirements this technology is suitable. 

Introduction 

With Translytical Task Flow Power BI provides a powerful new feature that allows targeted end-user interactions to be integrated directly into reports. This allows classic, purely analytical reports to be expanded into interactive applications in which user input is actively incorporated into processing logic.  

In combination with Microsoft Fabric User Data Functions , it is now possible for the first time to write values from Power BI reports back to Fabric databases in a controlled manner. This write-back scenario is a long-awaited feature for many customers and thus lays the foundation for planning functionality, which is why the feature has become a direct focus for us. The Fabric User Data Functions act as a server-side, user-defined logic layer within Microsoft Fabric and can be quickly implemented using Python functions. They enable the validation, transformation, and persistent storage of user input while providing a clean separation between the front end (Power BI) and back end (Fabric). Thanks to native integration into the Fabric ecosystem, existing artifacts such as lakehouses, warehouses, or other data stores can be used directly, and a package from Microsoft provides developers with tools that, for example, return error states and validation problems to the client in a standards-compliant manner via HTTP response codes.

Detailed information to the concepts, possible applications, and current limitations of the feature can be found in the official Microsoft documentation:
https://learn.microsoft.com/en-us/power-bi/create-reports/translytical-task-flow-overview 

In our previous blog post, 

Databricks and Planning or Simple Inputs

we described the requirements that a tool must meet to map simple or complex planning scenarios. In this blog post, we will examine which of these are possible with the new features in Power BI and where the limitations lie. 

User Entry using the Power BITool 

Using Translytical Task Flow, a trigger can be added to the Save button that calls a previously developed user data function with the values from the text box parameterized. The corresponding context is taken from the selected row of a report and also transferred.  

Here you can already see that there is a separation between the values in the table and the value to be written back, which I have to read from a separate field. The second point is that I only have one field for the return and cannot return a table. 

Illustration 1: Power BI Layout with an input ready field to write back data

This makes it possible to technically write back a value. However, it is currently not possible to change multiple values in an existing table. This means that this interface is currently only suitable for entering individual values or texts in this way. Please note that when implementing user data functions, only simple input data types should be expected in the function set. If even one function is defined with a complex input data type such as a list, Power BI will no longer recognize any of the defined functions.

Data input using Excel 

Although Power BI is becoming increasingly popular, planning via Excel as an interface remains very popular. In addition to integration with Power BI, User Data Functions also provide a Rest API interface that we can use for data transfer from Excel. To do this, authentication must first be implemented. Unlike other programming languages such as Python, VBA does not have a standard library from Microsoft that handles authentication with Microsoft Entra ID, which is why authentication must be implemented in VBA itself at this point.   

Next, a user data function implemented in Fabric is required to receive the values from Excel, process them, and then write or update them in a table. At this point, the database in Microsoft Fabric offers the preferred data storage because Fabric warehouses are not currently optimized for selective write access and updates. Currently, an unnecessary number of file operations are still being created in the background, which significantly affects performance. 

Illustration 1: Actions for data entry via Excel

In addition to the write functionality, other necessary checks or functionalities can be implemented in the user data function. For example, it would be possible to ensure that figures can only be written back within certain time periods or checked against a central planning lock.

Illustration 1: Possible layout for data entry via Excel and API 

Unlike Power BI, this solution allows entire tables to be written back, making it ideal for situations where the figures are already being prepared in an Excel workbook. All functions required during data entry, such as displaying locked months and performing calculations during data entry, must be implemented in Excel. Functions that can only be performed during saving can be stored in the User Data Function. In general, it is preferable to implement most of the logic centrally in the user data function so that the code in the client application cannot be manipulated and changes can be managed centrally. It is also possible to implement fundamental planning functions such as splash down in the API, thereby significantly expanding the range of functions offered by the solution. The possibilities are vast, but always involve development effort, while the standard functions remain limited. 

Conclusion

Complex planning, as described in our blog Databricks and planning or simple inputs , is not yet possible with Power BI. Parameters, e.g., for control purposes, can be entered easily via the Power BI interface. Tables created in Excel with self-developed functions can be loaded via a self-developed API. We would be happy to help you develop these APIs or find the right solution for your use case.

For complete and complex solutions, you still need to use additional tools (e.g., https://www.pmone.com/technologie/acterys/ ) 

Contact

Frank Liebrand
Head of Sales
Ilya Kirzner
Consultant
Dr. Ulrich Meseth
Senior Consultant
Dominik Dussa
Consultant
Michael Ochmann
Michael Ochmann
Consultant
Michael Ochmann
Sebastian Moritz
Consultant
Burcin Ince
Consultant
Ahmet-Ömer Özgen
Consultant
biX Consulting
Privacy overview

This website uses cookies so that we can provide you with the best possible user experience. Cookie information is stored in your browser and performs functions such as recognizing you when you return to our website and helps our team to understand which sections of the website are most interesting and useful to you.