Admin

Jeel Bhatt

I'm working as a Senior Software Developer at MagnusMinds IT Solution. Having 4+ years of experience in C#, MVC, .Net, Web API, SQL Server, Javascript, jQuery, and the MSBI technologies like SSIS, SSRS, and PowerBI.

Posts by Jeel Bhatt

Microsoft Power Automate
Feb 15, 2024

Microsoft Power Automate Microsoft Power Automate is a cloud-based automation platform that lets users create workflows to automate repetitive tasks and streamline business processes without extensive coding knowledge. Users can connect different applications and services to design workflows visually. Power Automate improves efficiency by automating manual tasks.   How Does Power Automate Work? Power Automate workflow, or flows, are based on triggers and actions. A Trigger initiates the flow, such as receiving an email from a key project stakeholder. An Action is what occurs once the flow is triggered. This may involve creating a task when an email marked as high-importance is received. A flow can have one or more actions.   There are five main types of Power Automate flows, categorized as cloud flows, desktop flows, or business process flows. Cloud flows include: Automated, a flow triggered by an event, for example, sends an email if an item in a SharePoint list is changed. Instant  flows allow users to manually trigger a flow from the mobile or desktop app with the click of a button. As an example, easily send a reminder email to your team before a meeting. Scheduled, which runs at certain times.  Desktop flows are used to automate tasks on the web or your desktop with Power Automate Desktop. Business process flows provide a guide for individuals to complete tasks efficiently. They offer a streamlined user experience, guiding users through organizational processes defined for interactions needing advancement to a specific conclusion. An example of a business process might be "Client Onboarding."   Power Automate Use Cases   You can generate your flow by adding information about what you want to automate.   There are three ways to create your automated flow. You can create your flow from scratch.   Automate tasks or processes using custom templates for cloud flows in Power Automate.   Easily connect to your apps, data, and services using connectors    The Scenario  Our product's effectiveness relies on swift order processing. To achieve this, we've automated the retrieval of new orders from our database's Orders table, ensuring instant access to updated information. This enhances our ability to monitor and manage orders efficiently, optimizing our workflow for seamless operations.   Step-by-Step Guide Microsoft Power Automate provides a pre-built task for sending an email when an item is created in SQL Server. Note: - If your data is stored on-premises, the gateway should be in active mode with the same user logged in. Add New SQL Connection: -  Configure with SQL Server, adding the required details along with the gateway (If your data is stored on-premises).   Add the required parameters to the action.   Add the SQL Server name, and database name, along with the table data you want to include in the email. Schedule the flow as per requirements   Set the email address and dynamic SQL fields you want to send in a mail. The flow is ready. When new data is updated in the table, the flow is triggered at the selected time, and an email will be sent to the users.   Conclusion: By automating the retrieval of newly added order details from our database's Orders table, we have streamlined our order processing workflow significantly. This automated process ensures timely access to updated order information, enabling us to monitor and manage our orders more efficiently. As a result, our organization can better meet customer demands, improve overall productivity, and enhance the quality of our services.

Ranking by Group using DAX in Power BI
Feb 06, 2024

Data visualization and analysis in today's fast-paced business environment require not only precision but also a deep understanding of the tools at our disposal. Power BI, a potent tool in Microsoft's suite, stands out for its ability to handle complex data scenarios. One such scenario is ranking data with multiple grouping dimensions, such as state, city, and revenue. This blog post will guide you through this process in Power BI.    Understanding the Basics  Before we dive into the specifics, let's ensure we have a clear understanding of some key Power BI concepts:    Ranking: This involves sorting data in ascending or descending order. In Power BI, we can use DAX functions like RANKX to achieve this.  Grouping: This refers to categorizing data into segments. Power BI allows grouping in visuals or more advanced grouping in DAX.  DAX (Data Analysis Expressions): A library of functions and operators used in Power BI for creating custom calculations.    The Scenario  Imagine we have a dataset containing sales information across different states and cities over several years. Our objective is to rank these cities within each state based on their annual revenue.    Step-by-Step Guide  Prepare Your Data: Ensure your dataset is properly structured with columns for State, City, Year, and Revenue.  Load Data into Power BI: Import your dataset into Power BI Desktop.  Creating the Rank Measure:  Go to the Data view.  Create a new Measure to calculate the rank. You can do this by using the DAX formula:    Building the Visual:  Switch to the Report view.  Create a table or matrix visual.  Add State, City, Revenue, and the newly created Rank column to the visual.  Conclusion  Ranking and grouping in Power BI offer powerful ways to dissect and understand your data more effectively. By following the steps outlined in this blog, you can now rank cities within states based on revenue, offering valuable insights into regional sales performance.  Remember, the key to mastering Power BI lies in practice and experimentation, so don’t hesitate to try different variations of rankings and groupings to suit your specific data needs.   

POWER BI Implement Row Level Security
Dec 15, 2022

While working on an Embedded Power BI report, I got a requirement to implement Row Level Security.  E.g. Region heads can see data of their Region only. This report is accessible from the .Net MVC application. Locations are assigned to users from the application. This report is hosted on Power BI Server and authenticated by a .Net Application with predefined credentials. Sample Data: There are two tables: Finance Users   Figure 1:-  finance Table   Figure 2:- User   Multiple Options to achieve the same with Power BI We have found out following options to implement the same: RLS (Row Level Security) Through Query String Control report filters that will use in embedded code There are certain limitations with Option#1 and Option#2 (I will describe them later), so moving on with Option#3 “Control report filters”   Implementation with “Control report filters that will use in embedded code” When you embed a Power BI report, you can apply filters automatically during the loading phase, or you can change filters dynamically after the report is loaded. For example, you can create your own custom filter pane and automatically apply those filters to reports to show user-specific insights. You can also create a button that allows users to apply filters to the embedded report.   Step 1: First Identify the filter based on your requirement There are five types of filters available Basic - IBasicFilter Advanced - IAdvancedFilter Top N - ITopNFilter Relative date - IRelativeDateFilter Relative time - IRelativeTimeFilter Based on my requirement I have used a Basic filter and you can use others based on your need. If wants to know more about others click here Here in this blog I am continuing with the #1 basic filter method   Step 2: Determine the table and column that you wants to filter In my case, I want to filter the table ‘finance’ and my column was ‘country’ because when particular user login the country column must be filtered For example:- user G1 login the country = ‘Germany’ and this column in table ‘finance’ Table:- ‘finance’   AND Column:- ‘country’   Step 3: Put this two things in this code   Step 4:  Make Dynamic You can see into this code that there is ‘values’ where I pass “USA” and “Canada” that is hardcode but we want that dynamic values that have to be changed based on which user is login That’s why I made variable that contain ‘country’ name which is assigned to particular login user, For example:- the variable name is ‘Array’ If user G1 login this variable return the value [“Germany”] and set this variable to value Like:   Note: if login person has multiple locations than that variable should return values like [“Germany”, ”USA”, ”India”] Note: if login person is manger or CEO they can see all the country data for that Variable has to return Null instead of blank array [ ]   Step 5:  Put This code into embedded code. Step 5.1: Identify your Method User-owns-data( Embed For your Organization) App-owns-data (Embed for your customer) Step 5.2: According to your method put this code in the given place For the #1 method Add this code into [EmbedReport.aspx] file   Figure 3: User-owns-data   For the #2 method Add this code into [EmbedeReport.cshtml] file Figure 4: App-owns-data   Figure 5: Sample   And that’s it. Now, try to run the report from the application and it should work as expected. Feel free to reach out to me, if you face any issues.   Conclusion I Hope I’ve Shown You How Easy It Is To Implement Row Level Security, So far we have learned step by step process of it. We started with identifying the filter and then finding out the actual table and column that we want to filter on and generating the code. last but not least put this code into our embedded code.