Tag Archives: Microsoft

What is Microsoft Power Fx? An easy 10 minute Guide

Microsoft Power FX

Power FX has been around for longer than you think. Since Canvas Apps were first introduced in 2016, it has been possible to create them using the in built expression language. Everyone creating them learned the language simply by investigating the functionality, referring to the Microsoft Documentation and the various YouTube channels, Courses and Blogs that sprung up on the back of it.

At that time Power Automate was called Flow, Power Virtual Agents didn’t exists and Power BI was still in it’s infancy.

What’s different now and why is it important?

The expression language now has been given a name, and the name is Power FX. This is important among other things because content will be a little easier to find, but also because of what it means for the plaform. The future of Power FX is that wherever there exists a part of the Power Platform that doesn’t already have a native language then Power FX will become the go-to language of choice.

What this fundamentally means is that learning this language will become essential to learning the Power Platform.

Power FX is a Part of the Power Platform
Power FX is a Part of the Power Platform
The video version of Events

If you’re into videos, as I am then you may wish to take a look at this as I’ll take you through the same guide, only you don’t have to do quite so much reading!

Learn more about Power FX here!
Closely Related to Excel

The structure of the way in which you work with functions in Power FX is very similar to the way in which you would work with excel. Let’s take a basic If statement in both languages.

Power Apps:-
if(myDropdown.Selected.Value = "Apples",1,2)

As you can see from a structure perspective there is very little difference between the two of them. In the first instance in Excel we look at cell B3 and if it contains the word “Apples” then we will return a 1, otherwise it’s a 2.

In PowerApps, we’re doing something similar, only we are looking at the selected item in a dropdown. In this case if it reads “Apples” then a 1 is returned, otherwise a 2 will be returned.

As well as the above the ideas around working with text is very similar

="Hello " & "World" returns Hello World

Power FX
"Hello " & "World" returns Hello World

If you look for the functions around text they are almost identical.

No compiling required

There are lots of reasons why Excel is successful, and one of them is because there is no “compile” operation. You enter the formula and then you get an immediate response. Power FX is the same, and this is great as if you make a mistake you get to find out about it straight away.

In the case of Power FX you’ll also have the ability to navigate directly to the error that you’ve made.

Declarative Logic

The concept of declarative Logic and no compiling are closely linked – when you want to find out why an object is of a certain color, or has a particular piece of text showing all you need to do is to go to the object itself, find the relevant property and this will tell you.

Imperative Logic

It is the Imperative Logic in Power Apps and Power FX that really makes it special – essentially this means that we can click on a button and tell it to do something. Examples of Imperative functions are:-

  • Navigate – to move between screens
  • Reset – to reset a control
  • Refresh – to refresh a data source
  • Collect – to push data into an in memory table
  • SubmitForm – to submit a form
  • Patch – to send data to a data source

Dot notation

The dot notation allows us to navigate through the properties of an object. This could be as simple as


Which returns to us a color property, which we might want to use elsewhere. But we can extract many many propertties from our objects, and these depend on the object themselves.

Here are some more examples

  • Gallery1.Selected – returns an entire record
  • Gallery1.Selected.Title – returns the value in the Title field
  • TextBox1.Text – returns the text entered into a text box, and this is important as if we wish to make use of it in a patch statement to create a new record then this is the expression that we would need.

Coming to the Power Platform

This is the really BIG news. Power FX won’t be residing only in Power Apps for much longer and the intention of Microsoft is for it to fill areas of the Power Platform where the language is less well developed. At this stage we’re aware that it will be coming to :-

  • Dynamics/Dataverse calculated columns
  • Power Virtual Agents
  • Power Automate
  • Portals
Other languages remain

There are other languages in the Power Platform ecosystem and these are likely to remain as they are. These are

  • DAX – Data Analysis Expressions used in Power BI
  • M, or Power Query – Used for Extract Transform and Load activities
How to Learn More

Aside from going through Microsoft Documentation, the Microsoft Announcement and the various YouTube channels you can dive into this free course. If you already know Power Apps that just fine – you can head to the Module on Objects, or Functions. Roughly 150 of the 200 demos build from blank and have a Power FX element to them.

So what’s next?

We’re now in the watch this space moment and we’ll get more details on how this will roll out. I would expect that the programme in total will be measured in years, however we may see some changes inthe coming months. Overall the message is this – If you want to be successful with the Power Platform then Power FX needs to be in your kitbag.

Good luck!

Microsoft Dataflex and Dataflex Pro

Today, to coincide Microsoft Inspire 2020 a fundamental development of the “Common Data Service” was announced. Firstly the Common Data Service is being renamed as Dataflex Pro, and and a NEW product has been created called Dataflex.

An Introduction to Dataflex and Dataflex Pro

So what is Dataflex?

You would be forgiven for thinking that this is just a ploy to address some of the confusion that has surrounded the original naming of the Common Data Service, but in this case there is quite a lot more to it than meets the eye.

Firstly, the Common Data Service is coming to Teams. Under the hood this means each Team has the right to 1 Dataflex Environment. An environment is essentially a container for both Data, Data Model, Apps and Power Automate Flows.

The integration within Teams is fundamental as you can author your apps within Teams, and deploy them directly to your team without leaving the teams experience. On one level this might seem trivial, however it does create a very streamlined process for creating productivity tools.

Why is this important?

Because up until now the only “free” data source for Teams members has been Sharepoint, which for all that it has been successful, is based on some quite old technology, born on-premise nearly 20 years ago.

When building apps we feel sharepoint pain in the following ways:-

  • Our ability to filter large datasets is limited
  • Sharepoint is not a relational database, which can be problematic when linked to the above
  • There are only a limited number of field types available to us
  • The security model can be cumbersome, and frankly unable to provide the necessary permissions
  • Sharepoint does not include simple Development, Test and Production scenarios.
  • The “grow up” story to move an application from Sharepoint onto other data platforms is problematic
  • Sharepoint does not contain the same trigger types for Power Automate as does Dataflex

How do I create an App?

Well – whilst Dataflex is in private preview the best I can offer at this stage is a look at the Dataflex Pro experience (I’ll be calling it the Common Data Service). Dataflex is a much more sanitised and cleaner version of what I’m demonstrating below.

For a much more trivial app, you can take a look here – in this app we don’t use any data at all.

Do I get anything else?

Actually yes. Surprisingly you have access to Bots, essentially virtual agents that you program in a low-code way that enable people IN YOUR TEAM ONLY (in this case) to get answers to the questions that they have.

We are also expecting to get Power BI integration in due course.

Is there a catch?

I’m afraid so, you’re limited to 1m rows of data and 2 GB of storage.

To get this into perspective, the entire works of Shakespeare fit onto an app that weighs only 10mb, the size of a medium to large photo. So for many teams they will never feel any ill effects from these limitations.

Additionally, the teams environment is limited to Teams members. By all accounts guest access does exist, but we need to learn more about this.

You get 1 environment per team, so no scope for Dev, Test and Prod.

You may not get ALL data types, but this remains to be seen.

Why bother upgrading to Dataflex Pro

The easiest way of explaining this is that Dataflex pro is just a renamed version of the Common Data Service, which is in turn Dynamics Customer Engagement, which has been around for many years and is used by organisation such as Coca Cola. What this means is you get a tried and tested ENTERPRISE GRADE platform with all the complex security measures, multiple clients, full Application Management Lifecycle, all data types, virtual entities, business rules and business logic and full integration with the Azure stack.

You should also bear in mind that you can upgrade directly from Dataflex to Dataflex pro.

In many respects the aim of the product is to enable the data platforms available to Teams grow up significantly. Sharepoint lists have been for many years data repositories for organisations, in spite of all their limitations, however Sharepoint was never made to have been extended to the extent that has been the case.

It’s worth noting that there are some instances where DataFlex pro licensing is seeded to users by virtue of some arrangements such as Dynamics 365, so this feature is worth bearing in mind.

So how does old Common Data Service fit into all of this?

The Common Data Service lives on, and is subject to a name change and the licensing has not been altered, so keep doing what you are doing in that space.

I’ve heard about Microsoft Lists – what’s all that about?

Essentially Microsoft Lists are Sharepoint Lists repackaged with quite a nice front end with Microsoft App on Mobile and tablet that sits in alongside Excel and friends. Ultimately, they will always be Sharepoint lists for good or ill, but that doesn’t mean you can’t be effective with them. You can find out more below:-

Where can I find out more?

Sign up for the blog here – I’ll be keeping on top of this.

Also – go and check out the Power Apps Blog post here.

Good Luck – and keep Power Apping.

Microsoft Teams Ipad Tutorial for Beginners – Updated


Microsoft Teams is the best tool for online collaboration and works very well on the iPad. This is an update to my original Teams Ipad video, which had only been intended to go out to a handful of people. In this session we cover every part of teams on an Ipad – at least all the things I can think of. If you want to skip to creating a meeting you’ll need to head over to the 16 minute mark.