Pages

Friday, September 14, 2018

Timing in PowerApps

Just for fun I tried to build a PowerApp, to be embedded in D365 FinOps, that would show some PDFs for at particular item.

I keep the PDFs in a SharePoint document library and use ItemId as a key.



And resulting the app looks like this:



Of course I need to filter the SharePoint list to only show entries related to the current item, and I added the following to OnStart of the app, like described on docs:

If(!IsBlank(Param("EntityId")), Set(FinOpsInput, Param("EntityId")), Set(FinOpsInput,""));

And here is what I have put in Items of the Gallery showing the SharePoint data:

If(!IsBlank(FinOpsInput),SortByColumns(Filter(ProductPDFs,ItemId=FinOpsInput),"ItemId",Ascending),SortByColumns(ProductPDFs,"ItemId",Ascending))

A problem I have spent hours on, was that the filtering was very flaky. Sometimes it would flicker, showing all my items and then apply the filter, and sometimes it just didn't apply the filter until I manually refreshed the list.

It seems like things run i parallel when you open an app, so it would actually start to load data from SharePoint before or while the OnStart trigger is executed. And in some cases it wouldn't know about the FinOpsInput variable yet when applying my filter.

A solution could be to add a variable to OnStart, letting you know if that is finished, and make a bogus filter until it is done. Like this:

If(!IsBlank(Param("EntityId")),Set(FinOpsInput,Param("EntityId")),Set(FinOpsInput,""));Refresh(ProductPDFs);Set(AppIsStarted, true)

And change Items of the gallery to this:
If (AppIsStarted, If(!IsBlank(FinOpsInput),SortByColumns(Filter(ProductPDFs,ItemId=FinOpsInput),"ItemId",Ascending),SortByColumns(ProductPDFs,"ItemId",Ascending)), Filter(ProductPDFs,ItemId="BOGUS"))

This video explains what you need to know to build the app

Monday, September 10, 2018

A collection of links releated to Dynamics 365 FinOps and PowerApps

A collection of links releated to Dynamics 365 FinOps and PowerApps. Please comments if I have left put something important.

Embed PowerApps apps
How to embed PowerApps in Dynamics 365 for Finance and Operations Video
Getting started with canvas apps
Sample app for looking up exchange rates
Sample app for generating product labels
PowerApps Host control
PowerApps dashboard
PowerApps Documentation
https://docs.microsoft.com/en-us/powerapps/
Environment and tenant app migration through Packaging
https://docs.microsoft.com/en-us/powerapps/administrator/environment-and-tenant-migration
Free PowerApps Plan 2 trial
PowerApps Community Plan Signup
PowerApps Community Plan Details
Environments overview
PowerApps community
Microsoft Flow community

Wednesday, September 5, 2018

Comparison of Azure prices

It just needed to do a new deployment though my Visual Studio Azure subscription, and as usual I couldn't remember the price variance between regions and types of machines.

I stumbled over this site which gives a good overview: https://azureprice.net/ 

I don't know how accurate they are, but I was able to see variances and that was what I was looking for.