Tag Archives: CDS

Make Project For The Web “Data” Friendly: Centralize Project data with Power BI Dataflows


Project for the web data is stored as entities within Common Data Service. Besides Project entities, CDS stores standard and custom entities of other apps. Storing in CDS platform gives opportunity to customize, extend using Power Platform (Power Apps, Power Automate, Power Virtual Agent, Power BI)

Let say we, the project managers, want to turn this information into actionable insights. How do we do it?

Power BI Common Data Service connector allows us to connect directly to CDS entities, and build reports and dashboards on Power BI desktop and Power BI service. Yet, this work requires we need go beyond the data stored in Project entities. The good news is this information is available either on cloud (in CDS, other data sources) or on premise (SQL Server, Files, Folders, etc) and we have connectors for those too.

Are we correct in bringing all information directly to Power BI?

Will this approach offer a standard, easy and fast insights?

Let’s start with Common Data Service. CDS is a transactional database and not a data warehouse. It has plenty of “deliberate” constraints. These constraints are imposed to prevent any one action having too detrimental an impact on the rest of the system and, therefore, on users. Along with these constraints, increase in data volume will impact the performance of CDS, its apps and reports.

No Common Data Service data operations, either internal or part of code customizations, work completely in isolation.

All Common Data Service data operations interact with the same database resources, either at a data level or an infrastructure level such as processor, memory, or I/O usage.

To protect against conflicting changes, each request takes locks on resources to be viewed or changed.

Those locks are taken within a transaction and not released until the transaction is committed or aborted.

Source: https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/scalable-customization-design/database-transactions

The second challenge is Project data is stored in many entities with relationships. Citizen developers, like project managers, will need support and time to understand these relationships. If not, we may apply a wrong filter and miss creating relationships resulting in incorrect data in visuals.

The third challenge is data from other data sources could be fragmented, incomplete and complex making data preparation difficult.

Final challenge is project managers should provide the environment URL for the CDS for Apps environment and have permission to access that environment.

In this post, I offer a solution these challenges. Read on and let me know your thoughts.

Continue reading Make Project For The Web “Data” Friendly: Centralize Project data with Power BI Dataflows

Make Project For The Web Human: Build your Project bot with Power Virtual Agents (Detailed!)


If you are new to Power Virtual Agents (PVA), I recommend do a quick read at https://docs.microsoft.com/en-us/power-virtual-agents/fundamentals-get-started#create-your-first-bot to know the terms to be used in this post.

In my previous post, I gave a feel of how PVA simplified the way of managing projects!

Today, I spent 6 hours writing this post to give a complete step-by-step process of building this Project bot. So, don’t miss to read this till the end.

Bot: I am waiting!

When the user sends a message, bot matches the message with the right topic based on trigger phrases. In this case, the below topic is matched and the user is greeted with the message “Sure. I can help you. Please login to identify your projects.” . What happens next is important?

This post goes deeper into the authentication process combined with Microsoft Graph and new Project to personalize conversations.

How is this done? Read on.

Continue reading Make Project For The Web Human: Build your Project bot with Power Virtual Agents (Detailed!)

Make Project For The Web Smarter: Auto delete zero duration projects


Project for the web is simple, and this simplicity also creates problems 🙂

In my earlier blog, I discussed about notifying team members of their late tasks. As I started working on the new Project, I observed it is very easy to create a project. If I grant Project Plan 1 / 3 / 5 subscription to users, they may end up creating projects without tasks.

It is important to periodically review all projects and delete zero duration projects. Otherwise, the reports generated either through Power BI or other tools will present wrong information. (Do you know about Project for the web Power BI Template)

Advantage of the new Project is all project data is stored in CDS. I can automate this cleanup process through Power Automate. Yet, I don’t want to risk deleting zero duration projects that might created for future need. So, how about flow asking the project manager for approval through Teams and on approval delete the project.

Continue reading Make Project For The Web Smarter: Auto delete zero duration projects

Make Project For The Web Bigger: Automate and integrate with Flow and Teams


Project for the web data is stored in entities within Dynamics 365 Common Data Services (CDS).

With data in CDS, you can customize these entities, build new entities, create relationships as per your business needs. Also, you can extend its benefits by building apps in Power Apps, automate tasks in Power Automate (earlier called as Microsoft Flow).

In this blog, I will use CDS, Power Automate and Teams to notify team members when their tasks is late at regular intervals like the one below

Continue reading Make Project For The Web Bigger: Automate and integrate with Flow and Teams

Roadmaps! Is it available for all Project plans?


Brian smith has written a great blog post on roadmaps here. I would recommend you to read his blog post before continuing.

Project Online comes in three flavors.

They are not chocolate, vanilla and strawberry :). They are Project Online Essentials, Project Online Professional and Project Online Premium.

Continue reading Roadmaps! Is it available for all Project plans?