top of page



Power BI is an exceptional business intelligence tool that offers a variety of visualizations, making data interpretation and interaction seamless. As we know, good data is essential for transforming information effectively. One of the first critical decisions in your Power BI project is how to connect to your data: through Direct Query or Import.


Direct Query: Real-Time Data Access

Direct Query enables your reports to execute queries directly against your data source in real time. This means you always access the most current data, significantly reducing the need for frequent refreshes. Here are some advantages of using Direct Query:

  • Reduced File Size: Since data isn’t cached, Power BI Desktop files remain smaller and quicker to load.

  • Frequent Refreshes: You can schedule data refreshes as often as every 15 minutes, making it ideal for environments requiring up-to-date information.

  • No Dataset Size Limits: You’re not constrained by dataset sizes, allowing for more extensive data exploration.

However, there are trade-offs to consider:

  • Limited DAX and ETL Functions: Direct Query has restrictions on certain DAX formulas and ETL capabilities, assuming your data is nearly ready for analysis.

  • No Calculated Tables or Quick Insights: Features like calculated tables and automatic insights are not supported, which may hinder in-depth analysis.


Import Method: Comprehensive Data Analysis

The Import Method, on the other hand, creates a snapshot of your data, caching it within Power BI. This approach allows for greater flexibility and power in analysis:

  • Full Access to DAX and ETL Functions: With Import, you can utilize a wider range of DAX formulas and ETL capabilities, making it easier to prepare and analyze data.

  • Row-Level Security: This method supports row-level security, ensuring users only see data relevant to them.

  • Multiple Data Source Support: You can connect to various data sources, including SQL, Excel, and CSV files.

  • Quick Insights: The Import Method enables quick insights, allowing you to analyze data trends and patterns on the fly.

However, it does come with limitations:

  • Dataset Size Constraints: Datasets must be smaller than 1GB, which may not suit all organizations.

  • Refresh Limitations: You’re limited to a maximum of 8 data refreshes per day, so scheduling becomes crucial.


Choosing the Right Method

Ultimately, the choice between Direct Query and Import depends on your organization's needs and the specific project requirements.

  • Direct Query is typically favored for larger datasets and broader audiences due to its real-time capabilities and quicker refresh rates.

  • Import Method is often better suited for smaller datasets and audiences, where in-depth analysis and flexibility are paramount.


Whichever method you choose, understanding the limitations and advantages of each is essential for effective data analysis in Power BI. Remember, switching from Direct Query to Import is irreversible, so weigh your options carefully.

Approve or reject from the canvas app or Power Automate Approvals?




In any organization, you're bound to encounter at least one business process requiring approval. Whether simple or complex, the steps involved typically boil down to "request" and "approve." The Power Platform provides two main paths for managing approvals: In-App Approvals and Power Automate Approvals. While both methods achieve the same goal, they cater to different organizational needs, much like choosing a pair of shoes that fit your style and requirements.


In-App Approvals

In-App Approvals are integrated directly within a canvas PowerApp. For example, imagine your organization has a process for requesting IT equipment. When an employee submits a request, PowerApps checks if the cost exceeds $500. If it does, an email notification is sent to the employee's supervisor with the request details and a link to the PowerApp. Once the supervisor opens the link, they can easily approve or reject the request without leaving the application.

Benefits of In-App Approvals:

  • Customization: Organizations can tailor the approval experience, including visually tracking where a request is in the approval chain.

  • Reduced Email Clutter: By centralizing the approval process within the app, the number of emails sent to stakeholders is minimized.

  • Seamless Experience: Users can make decisions without navigating away from the application, enhancing efficiency.


Power Automate Portal Approvals

Power Automate, on the other hand, is a robust workflow application that supports more complex approval scenarios. When an approval workflow is triggered, recipients receive an email notification containing the request details and a link to the Power Automate approvals page. Here, they can view all pending approvals and, depending on the setup, may even approve or reject requests directly from their email.

Key Features of Power Automate Approvals:

  • Versatile Approval Logic: Organizations can implement various approval types, including:

    • Everyone Must Approve: All recipients must provide approval.

    • First to Respond: Approval is granted based on the first person to reply.

    • Custom Responses: All recipients must respond with specified custom options.

  • Multi-Channel Notifications: Notifications are also sent to recipients’ Microsoft Teams feeds, allowing for approvals from multiple platforms.

Setting up these functionalities in Power Automate is straightforward, whereas recreating similar logic for In-App approvals might require the expertise of a "Citizen Developer" or IT support.


Making the Right Choice

Both In-App and Power Automate approvals rely on email notifications and application links, so organizations must implement processes to ensure important emails don’t get overlooked. Ultimately, the choice between In-App and Power Automate approvals depends on your organizational preferences:

  • In-App Approvals: Opt for this method if you seek a customized experience with fewer email notifications.

  • Power Automate Approvals: Choose this for complex approval workflows that benefit from multi-channel notifications and varied approval logic.

 

In conclusion, both options can effectively facilitate approval processes, so long as your approvers can make their decisions with ease. Just remember that some configurations may require staff with more advanced IT skills or citizen developer experience.



Solutions are a key mechanism for utilizing the Application Lifecycle Management (ALM) cycle. ALM is integral to enterprise and agile development infrastructures and ultimately makes governance, maintenance, and development manageable for teams.

Solutions contain all of your projects assets such as Power Apps, Power Pages, Power Automate, Dataverse, and other web resources and enable organizations to develop easily deployable and portable products. Due to the portability, organizations can easily setup their deployment environments such as development, staging, and production with just a few clicks. This also allows developers to independently create a project in their own tenant and provide a packaged solution to an external client on a different tenant. In instances where solutions are not used, developers are required to export each component associated with the project individually and import it. This increases the risk of erroneously importing older components which may result in your environment(s) becoming out of sync. However, utilizing Microsoft's solutions counters this risk and provides additional benefits for your deployments:


  • Patches

  • Roll-backs

  • Version control

There are two types of solution deployments available to users: unmanaged and managed. Unmanaged solutions are used for development and test environments. They allow developers to continue modifying the components within the solution. Managed solutions are non-editable deployments. They are solutions that are ready to be deployed and installed in your stage and production environments. Managed solutions cannot be exported. Keep in mind, Microsoft does not allow you to import a managed solution into the same environment as an unmanaged solution that you export from. As such, it creates the need for another environment to import and test your managed solution.

 

Solutions are your go to for streamlining your deployments and the contents within them. But, more importantly, solutions offer organizations the ability to manage the ALM without the need for third-party applications for version control like Git. Lastly, building with solutions allows organizations to monetize their application. Once an application is created once, then it can be deployed to "x" number of tenants, each with the potential of variations to suit that client and their unique needs.

 

When you look at solutions from the client perspective where there are often multiple service providers providing development services for different pieces of functionality. Solutions enable the multiple service providers to develop and deploy their deliverable alongside one another without interfering with one another. In addition future needs for solutions developed by a previous service provider can easily be accessed and updated by another service provider.

1
2
bottom of page