Introduction Earlier we used to book an appointment either by using Microsoft Teams or from MS Outlook. But now we can book an appointment from in-app appointments, also we can add links, lists and other rich text in description with new rich text editor control. These features are introduced by Microsoft in Microsoft 2022 release … Continue reading Join Teams meetings from in-app appointments
Project Task opening issue resolved by Microsoft in Dynamics 365 Project Operations
We often used to face issues while opening the Project Tasks in Project Operations (PO). We had to play a lot of tricks in order to open the schedule. Microsoft is consistently putting in efforts on making Project Operations, one of its successful tools to enrich it with tons of brilliant features and make it more user friendly. One of the major feature resolutions provided in the latest release provided by Microsoft was for opening the Project Tasks (Schedule) Seamlessly. Of course there are certain tweaks to be made in order to make it work in your browser. In this blog we will look at those tweaks and settings that would be needed to enable that feature.
Dynamics 365 PSA setup and user guide
This is the post excerpt.
Building a LinkedIn Assistant in Microsoft Copilot Studio using MCP servers
The idea started with a simple question: What if we could retrieve LinkedIn-related information without having to open LinkedIn every time? With that in mind, I started exploring how we could build a LinkedIn assistant using Microsoft Copilot Studio. The goal was to create an agent that could retrieve relevant LinkedIn information directly through a … Continue reading Building a LinkedIn Assistant in Microsoft Copilot Studio using MCP servers
Understanding the GitHub Copilot Harness in Copilot Studio
While exploring the new Copilot Studio experience, I kept seeing a new word again and again, "Harness". At first, I had no idea what it meant. I also noticed that every new agent I created was now running on something called the GitHub Copilot harness. So I wanted to understand what a harness actually is, … Continue reading Understanding the GitHub Copilot Harness in Copilot Studio
Configuring Time Entry Limits and Time Zone Behavior in Dynamics 365 Project
Problem Definition: Time entries are an important part of project management because they are used to record the time spent by resources on project activities. This information can later be used for project tracking, billing, cost calculation, and reporting. However, without appropriate validation, users may enter unrealistic amounts of time for a single day. For example, a user could accidentally record more hours than they worked, which can affect the accuracy of project data and subsequent reporting. Another challenge can occur when users in different time zones access the same time-entry data. When dates are displayed according to the viewer's time zone, the same entry may appear on a different date, which can cause confusion when reviewing or managing time entries. Therefore, administrators need a way to control the maximum amount of time that can be entered for a day and, where required, control how dates are displayed across different time zones. Solution: Dynamics 365 Project Operations provides Time Entry Configuration settings that allow administrators to control how time entries are validated and displayed. As part of the 2026 Release Wave 1, Project Operations introduces the ability to configure the maximum daily time entry duration. Administrators can define the maximum number of minutes that users are allowed to record in time entries for a single day. By default, the maximum duration is 24 hours (1,440 minutes). Administrators can reduce this limit to a value that better reflects their organization's working policies. For example, an organization may configure the maximum daily duration to 9 hours (540 minutes). The configured limit is checked whenever a time entry is created, or an existing time entry is modified. Project Operations also provides a setting to control the time zone behaviour of dates displayed in time-entry grids. Administrators can use either the default Time Zone Aware behaviour or configure the grid to use Time Zone Independent behaviour. Time Entry Configuration The Time Entry Configuration section contains settings that control how time entries are handled in Project Operations. The available configurations include: •Maximum daily time entry duration. •Preferred time zone behaviour on time entry grids. These settings can be accessed by a system administrator through the Project Operations settings. Steps to Access Time Entry Configuration 1.Sign in to Project Operations as a system administrator. 2.In the left navigation panel, change the area to Settings. 3.Under General, select Parameters. 4.Open the required Organization Unit. 5.Scroll down to the Time Entry Configuration section. Figure 1: Time Entry Configuration section in Project Operations Parameters. Configure Maximum Daily Time Entry Duration By default, Project Operations allows a maximum of 24 hours (1,440 minutes) to be recorded for a single day. Administrators can change this value and configure a more suitable limit based on the organization's working policies. For example, an organization with a standard working day of 9 hours could configure the maximum daily duration as: 9 hours × 60 minutes = 540 minutes The configured value is then used to validate time entries whenever a user creates a new entry or modifies an existing one. Hands-on Implementation To understand how the configuration works, I tested the maximum daily time-entry duration in a Project Operations environment. For the demonstration, the maximum daily duration was configured to 9 hours (540 minutes). Step 1: Configure the Maximum Duration … Continue reading Configuring Time Entry Limits and Time Zone Behavior in Dynamics 365 Project
Smarter Data Exploration in Dynamics 365 Sales: Natural Language Search with Smart
Problem Definition: Sales teams work with a large number of records every day, such as leads, opportunities, and accounts. As the amount of data grows, finding the right records quickly becomes more difficult. Although Dynamics 365 provides filtering and sorting options, users often need to apply multiple conditions manually, which can be time-consuming, especially for those who are not familiar with advanced filters. For example, if a salesperson wants to view open opportunities with an estimated revenue above a certain amount, they have to open the filter panel, select the appropriate columns, define condition, and then apply them. Repeating this process multiple times throughout the day affects productivity and interrupts the user’s workflow. There is a need for a faster and more intuitive way to search, filter, and organize business data without relying on complex filter configurations or extensive navigation. Solution: Dynamics 365 Sales now enables users to interact with Smart Grids using natural language through Copilot Search. Instead of manually configuring multiple filters, users can simply describe what they are looking for in everyday language. Copilot interprets the request, applies the appropriate filters, and immediately updates the Smart Grid. This significantly improves productivity by reducing the time required to locate business-critical information. What is Smart Grid? A Smart Grid is the enhanced tabular view used in Dynamics 365 Sales for displaying business records such as: •Leads •Opportunities •Accounts •Contacts With Release Wave 1 2026, Smart Grid becomes AI-enabled through Copilot, making data exploration faster and more intuitive. javascript:''javascript:''javascript:'' Thank you, Prathamesh Desai for your valuable insights for this blog.
Generating Smart Insights Using AI Prompts
Recently, we had a requirement in our project to calculate a matching score between Projects and Lessons Learnt. We have two tables: Project and Lessons Learnt. Based on the project description, we wanted to identify which Lesson Learnt was the most relevant, along with a matching score and a clear explanation of why it was considered a good match. After exploring different approaches, we found that AI Prompts in Microsoft Power Platform could help. By using an AI prompt, we can analyse the project description semantically, compare it with the lessons learnt, and generate both a relevance score and a justification for that score. Let's walk through the steps to create and use an AI prompt. Creating an AI Prompt: 1.Sign in to make.powerautomate.com. 2.From the left navigation pane, select AI Hub. 3.Select Prompts and click Build your own prompt. Note: If the Prompts option is not available in AI Hub, go to the Power Platform Admin Center and enable the AI Prompts feature for your environment. Configure the AI Prompt: javascript:''javascript:''javascript:'' writer.editor.GO_TO_TOP writer.editor.GO_TO_BOTTOM Thank you, Nisha Pawar for the valuable insights for this blog!
Rubric Evaluation in Microsoft Foundry: A Structured Approach to AI Model Assessment
Introduction In this blog, I’m going to introduce a powerful new capability in Microsoft Foundry called Rubric Evaluation. This feature enables developers and AI engineers to evaluate model outputs using structured, criteria-based scoring instead of relying only on simple pass/fail or similarity checks. Here’s a hands-on overview of how Rubric Evaluation works and why it’s becoming an essential part of AI development workflows. Public preview: Recently introduced in Microsoft Foundry (2026) General availability: Available since June 2026 Problem Statement As AI applications grow more advanced, evaluating their outputs has become increasingly complex. Traditional evaluation methods such as exact match checks, keyword comparison, or even basic semantic similarity often fall short when dealing with: •Subjective responses (e.g., explanations, summaries) •Multi-step reasoning outputs •Creative or open-ended answers •Context-aware conversational responses This creates a challenge: How do we evaluate AI responses in a consistent, structured, and human-like way while maintaining scalability and automation? Solution: Rubric Evaluation in Microsoft Foundry Microsoft Foundry introduces Rubric Evaluation, a structured evaluation approach where AI outputs are assessed against predefined criteria (rubrics) rather than simple correctness checks. A rubric defines what “good” looks like by breaking evaluation into multiple dimensions such as: •Accuracy •Completeness •Clarity •Relevance •Tone or style •Reasoning quality Instead of just saying “correct” or “incorrect,” the model is scored across these dimensions, providing richer insights into performance. Key Benefits of Rubric Evaluation 1. Structured evaluation: Breaks down responses into measurable criteria instead of binary outcomes. 2. Human-like assessment: Mimics how humans evaluate answers . 3. Better debugging: Helps identify why a response failed, not just that it failed. 4. Flexible and customizable: You can define rubrics tailored to your use case (chatbots, summarization, Q&A, etc.). 5. Works well with LLM-based evaluation: Rubric scoring can be performed using LLM evaluators for scalable automation. How Rubric Evaluation Works Step 1: Create an Evaluator 1. Go to the Microsoft foundry portal and then click on the evaluations section on the left side panel and then click on the Create evaluator button as shown in the below picture. 2. Once Create evaluator window opens, fill in the required details, including the evaluator name, display name, and description. Then, set the evaluator type to “Rubric”. 3. Next, select a suitable model from the available options. Choose the model that best matches your evaluation requirements and is supported for rubric-based evaluation. 4. Select the agent you want to use for the evaluation. In this example, I have two agents available, so I will choose the Leave Policy Agent. 5. After configuring the required settings, click Generate rubric to start creating the rubric based on the selected evaluator setup. javascript:''javascript:''javascript:'' writer.editor.GO_TO_TOP … Continue reading Rubric Evaluation in Microsoft Foundry: A Structured Approach to AI Model Assessment
Step-by-Step Guide to Using Power Platform CLI for Power Pages
Introduction: The Power Platform Command Line Interface (CLI) is a powerful tool for developers working with Microsoft Power Pages. It allows you to efficiently download, upload, and manage website metadata, helping you streamline your workflows for Power Pages projects. Why Use Power Platform CLI for Power Pages? Using Power Platform CLI, you can: Work on … Continue reading Step-by-Step Guide to Using Power Platform CLI for Power Pages
Power Toolkit for Dynamics 365:
Introduction Working in Dynamics 365 and the Power Platform often involves repetitive tasks — fetching metadata, testing FetchXML, building Web API calls, inspecting security roles, generating C# classes, or validating form scripts. And every time, you switch between tools. Browser → XrmToolBox → Postman → Advanced Settings → Back to Code → Back to Flow → Back to Browser DevTools. The context switching alone drains productivity. The Power Toolkit is a browser-based utility designed specifically for Dynamics 365 and Dataverse developers. It allows you to interact directly with your environment — execute queries, inspect metadata, test API calls, and generate code — all from a clean interface. In this blog, I’ll walk through: •What Power Toolkit is •What features it has to offer Problem Statement In real-world D365 development: •You need entity logical names quickly. •You need to test FetchXML before using it in a plugin. •You need to check Web API responses. •You need to inspect attributes or option set values. •You need to debug security privileges. Switching tools constantly breaks workflow. There isn’t a lightweight, web-based tool that allows fast experimentation inside the browser with intuitive UI. This is where Power Toolkit becomes extremely useful. What is Power Toolkit javascript:''javascript:''javascript:'' writer.editor.GO_TO_TOP writer.editor.GO_TO_BOTTOM Thank you, Aslin for your valuable inputs to this blog.
Calculate Sum Without Apply to Each in Power Automate
Recently, we encountered a requirement in one of our projects to integrate a SQL database with Power Automate in order to retrieve records and send automated email notifications to respective managers. The objective was to calculate the total number of hours logged by resources reporting to each manager and share a consolidated summary via email. In the email, we needed to group the records by manager and show the total hours for each group. However, there were more than 1,000 records, and looping through each item to calculate the total was taking too much time. Currently, our database contains more than 9,000 records. In our Power Automate flow, we used multiple actions to transform the data, which caused the execution time to exceed 34 minutes. This was taking too long and needed optimization. To transform the data and calculate the totals, we used multiple For Each loop in the flow. However, using these loops significantly increased the execution time. Therefore, we wanted to optimize the solution by performing aggregation (such as summation) without using loops, in order to reduce the overall execution time. Now, let’s take a deeper look at the solution we used to calculate the total hours grouped by manager without using a loop. First, we used the Select action to extract and store the Manager IDs from the records. Then, we added a Compose action and used an expression to get the unique Manager IDs. After retrieving the unique Manager IDs, we used an Apply to each action to iterate through those unique IDs. Inside the loop, we added a Filter action to filter the records associated with each specific manager. Once we had the filtered records for a manager, the next step was to calculate the total of the Hours column for all resources under that manager. Instead of using another loop, we followed a different approach. Step 1: Store the filtered data in a JSON object We used a Compose action to store the filtered records in a JSON structure like this: { "data": { "rows": @{body('Filter_Resources')} } } Step 2: Convert the JSON object to XML Next, we converted this JSON object into XML format using the xml() function: xml(outputs('Convert_In_Object')) Step 3: Use XPath to calculate the total Now comes the most important part using XPath. XPath allows us to query the XML data and extract values without using a loop. With XPath, we can directly apply the sum() function to calculate the total of a specific column. Here is the expression we used: xpath( outputs('Convert_In_XML'), 'sum(//data//Hours)' ) This expression calculates the total of the Hours column for all filtered records without using an additional Apply to each loop. Conclusion: By using the XPath function, we can apply multiple operations directly on XML data. In this solution, we used XPath to calculate the total hours without using a loop. This approach helped us avoid multiple Apply to each action, reduce execution time, and improve the overall performance of the flow. javascript:''javascript:''javascript:'' writer.editor.GO_TO_TOP writer.editor.GO_TO_BOTTOM Thank you, Nisha … Continue reading Calculate Sum Without Apply to Each in Power Automate
Import Tasks from Other Projects in Project Operations
IntroductionWhile working on multiple projects, project managers often notice that multiple tasks are repeated. For example, tasks like requirement analysis, development, testing, and deployment appear in every project. Earlier, reusing these tasks was not straightforward. Managers had to either create tasks manually or copy the entire project. To solve this, Microsoft has introduced a new … Continue reading Import Tasks from Other Projects in Project Operations
