Thoughts about the Power Platform news from Microsoft Build 2023

It’s Microsoft Build time again and this year is special. We are seeing AI and co-pilot take the center stage. And unlike the the previous hype of the metaverse, this one feels different. It’s different because of 2 reasons. One, Microsoft together with OpenAI is a frontrunner in the field. And two, there are an incredible amount of applications for Large Language Models to make our life easier. In this blogpost I will give my thoughts about Power Platform announcements I’m most excited about.

But before we actually start off with the Power Platform announcements, I urge you all to look at our friends from the Data Platform side. Microsoft just released Fabric in preview. In every organization data and analytics is decoupled. Microsft Fabric brings together the best of Microsoft Power BI, Azure Synapse, and Azure Data Factory into one unified platform. Satya Nadella called this “The biggest data product announcement since SQL Server.”, making this an area to keep your eye on! On top of that there’s an incredible powerful Copilot coming to Power BI. This will help you both gain insights by asking questions on top of your report, but you can also describe the insights you need.

Copilots everywhere

Speaking of Copilots, let’s jump right into talking about this. A part of me is still overwhelmed, but slowly I’m grounded (pun intended) in what this trend means currently. First of all, having the Copilots available to you, does not mean you will not have to learn how to build apps or automation. It will only help you on your way. See the Copilots as a way to be more efficient in making the stuff that you want. Keep challenging yourself to change / improve the way you work to get the most out of these productivity tools. And I say keep challenging yourself as these tools will improve over time. What does not work great now, might work later and be a real timesaver!

Shows a snapshot of a slide from the low-code keynote at Microsoft Build showing "... And Low Code has a Copilot". AI as a real-time collaborator, that generates content, sparks creativity, automates cognitive tasks and creates user experiences.
Low code has a Copilot

For example I normally build my Power Automate Cloud Flows iteratively. Thinking about what I want while building a couple of blocks at a time. The current Cloud Flow Copilot is great when you describe in detail what you make upfront. It has incredible productivity benefits if you use it. However it was hard for me to adjust to this way of working. Luckily now we get a Copilot inside the Cloud Flow designer to help me be more productive when I work iteratively.

Secondly I think Copilots and AI are a great way to learn. To me it feels they can step into that void between using a template or tutorial and calling an expert. When I was learning I always felt I was disturbing my colleague with my dumb questions, even though I knew I wasn’t! I think getting a preposition of what you want to do from Copilot can help getting you unstuck and on your way! However, I am a bit reserved with the Power Apps Copilot. It needs quite a few iterations before it gets to that intermediate level of capabilities and learning. Singular table data models are not the reason why you will move to Dataverse. But things might move faster then I imagine, I’m hoping to be proved wrong!

Power FX Dataverse Plugins?

Something that might have gone under your radar is the Dataverse Accelerator. It is a new tool developer by the Power Customer Advisory Team. Now what that tools means to do is not really clear to me yet. I just stumbled upon it because I really want to learn more about the feature Custom plugins in Dataverse using Power Fx I saw in the Microsoft Build Book of News.

Shows a step inside the process of building Power FX Plugins using the Dataverse Accelerator
Dataverse Accelerator – Power FX Plugin

It’s experimental and you can play around with it by installing the Dataverse Accelerator in your environment. I have not played with it yet, but the possibility to take your low-code skills and write logic on the table level is exciting.

What is even more interesting is the experimental direction Microsoft takes. By creating Accelerators, Starting Kits, Creator Kits and Collaboration Controls it allows the Product Team to experiment what works. Working closely together with customers and the community it generates learnings to eventually bringing these features back in to the actual platform. Examples of these are the Modern Controls, Pipelines and Admin features.

Bot Building will never be the same

We HAVE to talk about Power Virtual Agents. First the new authoring experience is now general available. Over the last year so many new features have gone into this authoring experience, it has fulfilled the promise of combining PVA with Bot Framework composer. It is now safe to use in your production environments and you can create bots in other languages.

Then we go towards generative answers. With it’s first preview release I point it to my own website. Which already is a great way to add content quickly to your bot. But now we can point it to multiple sources. And those sources may include your own private content on SharePoint, OneDrive, Dataverse or your own custom content. Such a powerful way to add data. I’m not sure if I will ever build a FAQ agent ever again.

Shows a snapshot from the low-code keynote at Microsoft Build showing Charles Lamanna talking about his most favorite feature announcement. Bot Building will never be the same.
Bot Building will never be the same – Charles Lamanna

Generative Actions in Power Virtual Agents?!

Now to top it all off Microsoft showed what they are working on with Generative Actions. By adding Plugins to your Agent the Bot will decide for itself what action to use. Plugins can be out of the box Connectors, APIs and even your own cloud flows. PVA will look through it’s libraries of Plugins to answer the users question. It will even ask follow up questions if it needs more information to complete!

After you’ve added these plugins you can test how it performs inside the Test Canvas. It will show you which plugins it picked in a “Tracing Mode”. There you can also see what information is still required for a certain action to complete. It absolutely looks like a killer feature. And it is not some future vision of the product, it actually is already available in a private preview!

Shows a snapshot from the low-code keynote at Microsoft Build showing Charles Lamanna talking about his most favorite feature announcement. Power Virtual Agents Generative Actions
Generative Actions

It looks incredible powerful, but I have some small concerns. For example will we be able to set priority on those plugins? Which plugin will take precedent over what? Will we be able to decide how answers will be presented? Multiple cards in the same response might not have the best user experience. Also the generative answers makes the bot less recognizable. When working with customers they often want their bot to stick to a certain tone.

Come to think of it, how great would it be if we can use the generative action capabilities to generate the topics with it’s node for us? If out of telemetry a certain line of questioning is often asked we could quickly add a topic based on the tracing mode of the answer and tweak it to our liking!

Copilot summary

If I had the Windows Copilot available already, it would help me summarize this blogpost about Microsoft Build. But it would also be weird to have a Copilot AI summarize a text about AI. I think there might be some AI fatigue in the community. But the conviction, commitment and adaptation from Microsoft to this latest “hype” feels like there is more merit behind it. I for one am intrigued where all these AI developments will take us. Some of it may proof troublesome, but hopefully we can utilize it for the greater good.

Release wave time for the Power Platform again!

The first release wave of features for the upcoming year are available for us to look at! Always fun to digest what’s coming. And as always, it’s important to note that these plans are subject to change. Consider them as a general guide for what’s to come. Please remember that this is an evolution of the platform, not a revolution. Microsoft typically saves major announcements and game-changing features for their big events, so don’t expect any earth-shattering developments in this wave. Nevertheless, there are still some exciting updates upcoming that are worth taking a closer look at.

Now the first important announcement is about the planner itself. The Release Planner tool is now General Available and I encourage you to use it! Create your personal list of features you are exciting for and easily see what has changed since your last visit. Or you can create one to share with your team to keep track on new features you need in your solution. This is also an excellent example of dogfooding as it is build on top of Power Pages!

Shows an image of the Release Planner. This is now General Available to view all the planned feature releases.
Release Planner

I can categorize my highlight list in 4 topics; Improvements to the UI, Maker productivity, Application Lifecycle Management and Power Pages. And if you read more, I will address them as such in this blogpost!

Continue Reading “Release wave time for the Power Platform again!”

Set up Tasks for your Model-Driven Power App

In this blogpost I will start with the basics of “Task based work”. A task system that consists of a framework to add and coordinate tasks from a Model-Driven Power App. It is not very complex to begin with, but I will add more complex functionality to it as we go. This functionality heavily depends on the integration scenario we want to implement. In this post I have summed up a few possibilities.

Scenario

A quick reminder of what we are working on. The big theme of my blog currently is the “Case of the broken screen”. A lot of my blogpost are about this business problem. A loyal customer has dropped their new and expensive phone and his screen is cracked. It is up to us to resolve this incident to satisfactory of the customer. It’s time to send out a replacement screen!

The caveat though, is a different department handles shipping. Sending a handwritten note or an e-mail to that department might get the job done, but it will not create tangible data to work with. So now we want to set out tasks to the logistic department who are not using our application. We also want to be able to track those tasks, make sure they get done and keep our customer informed of the status. Eventually you would want automation in place to be notified at the right time.

Continue Reading “Set up Tasks for your Model-Driven Power App”

Utilizing the AAD User table in an Approval Flow

You might have seen the new AAD User table appear in your environment. This table is available to us for a couple of months now. And you might wonder what it is and how you can use it. In this blog I will explain you what it is and how you can use this table to your benefit.

The AAD User table lists all users in your Azure Active Directory. It does not show AAD Groups. Did you know that the data of this table does not reside in your dataverse storage? It is actually a Virtual Table! Virtual Tables are tables that do not reside inside Dataverse, but instead reference a table from a different storage mechanism. It is incredibly powerful as it does not require you to copy data from another system. You can find if a table is virtual by looking at the type column of the table overview. So why is this interesting and what can you do with it?

Shows the Power Apps solution explorer where the table overview is highlighted. In it we highlight the AAD User as this is of the type Virtual.
AAD User Virtual Table
Continue Reading “Utilizing the AAD User table in an Approval Flow”

Set out Tasks in a Microsoft 365 and Power Platform World

This is the start of our next chapter in our Business Process Flow and asynchronous work journey. How can our team keep track of tasks we need a different department to execute? In this post I want to explore different architectural choices you can make and what considerations there are. This of course depends on a lot of variables and I will try to give you some points what to think about. In other words I try to explain my thoughts whenever I say “It depends” as an answer!

Shows a meme of a person tapping the side of his head. The text above sais: "It depends". The text below reads: "Yeah.. Now I Don't have to explain anything"

This blogpost is part of a series where I explore how to support Asynchronous Work with Business Process Flows. The Business Process Flow is an old tool in our toolbelt. But coupled with all modern Power Platform and Microsoft 365 Collaboration capabilities it helps keep track of processes. Now we are on the topic of setting out tasks and keeping track of them.

Continue Reading “Set out Tasks in a Microsoft 365 and Power Platform World”

Top 8 picks for the Power Platform Release Wave 2

It is that time of the year again, the release wave is announced. Here we get a glimpse on what is on the backlog of the product teams. Of course everything on this list is subject to change and Microsoft reserves their major announcements for their big events. However it is still fun going through these items in bulk. So in this post I will give you my top 8 picks and interpretation for this release wave.

Shows the Modern Advanced Find
Modern Advanced Find

Now let me first start that my interpretation is not always the best! For release wave 1 I was skeptical how fast the Modern advanced find would reach the same features as the old advanced find. Boy was I wrong! Not only is it already a great modern update to the interface, it also has all the features you would want. Including the ability to download the FetchXML! It is time to tell your end-users about this as this will be turned on by default in October.

Continue Reading “Top 8 picks for the Power Platform Release Wave 2”

Synchronous and On-demand Flow inside Model Apps!

Let me first start of with wishing you all a happy new year. I hope you all had a lovely holiday season. I enjoyed a few days off and spent it with my family. On to the subject at hand, synchronous and On-demand Flow in Model Apps. As most of you know Microsoft prefers us using Power Automate Flow instead of Classic Workflow. However there are still some gaps in functionality between the two.

When developing solutions I follow Microsoft guidelines as much as possible. This ensures that the solution is durable and I create the least technical debt. With that in mind, I now keep away from Classic Workflow and use Flow whenever I can. Last few weeks I tried to fulfill business requirements within these restrictions.

Continue Reading “Synchronous and On-demand Flow inside Model Apps!”

Embedded Canvas App – Replacing dialogs – Part 2

In my previous blog post I started making an embedded canvas app to replace dialogs. I started off by creating the app, the screen, some basic navigation and the form. Finally, I added patch logic to save the screen. If you have not read part 1, do not worry this video shows the functionality. The patch logic shows the Relate function, which is very useful, so I would recommend to check that first.

In this post I want to focus on setting the owner of the task. Setting the owner of the task is important because this allows us to distribute tasks to teams or individuals. An entire team could then process the task assigned to them and work them to completion. In this case the credit check that the finance team has to perform will help us resolve the case.

I wasn’t able to set the owner of the task using standard functionality. The PowerApps CDS connector does not allow for updating the owner field. Neither does the Relate function work after the record is created. But of course I have a solution, we can create a synchronous Flow!

Continue Reading “Embedded Canvas App – Replacing dialogs – Part 2”

PCF – Iban Validator

My first blog post is about my experience with the PowerApps Component Framework so far.

What excites me about this framework is that it provides developers with a native way to integrate development into Model-driven PowerApps / Dynamics 365 Customer Engagement. No longer are we restricted by IFrame’s where we have little connection to the app. It promises to provide us with the same API’s the Microsoft development team uses. Last but not least, this framework will come to canvas apps soon.

I created an IBAN validator. This is validation we build for a lot of customers, so this is a good component to start with.

Continue Reading “PCF – Iban Validator”