Custom pages in Model-Driven Apps

A big change coming soon in model-driven apps. Stay tuned for more updates…

https://powerapps.microsoft.com/en-us/blog/better-together-introducing-custom-pages-and-the-modern-app-designer/

Problem with Queue view in Model driven App

Recently we had a problem with Queue view in model driven app. One of my colleague created a model driven app where Queue entity is also part of the app but we identified the Queue view is loading differently compare to standard CRM application.

Queue View in Standard CRM

Queue view in Model Driven App

In Model Drive App, there is no chance to look at Queue items when ever you click on Queue menu item like standard CRM. You have to open the Queue to access Queue items and there are no filters available to filter Queue items.

After a bit of research, I found the view that is loading in Standard CRM is “Queue Items” and not the “Queue”. I opened the site map designer from XrmToolBox and verified the entity that is referring in Queue menu item. The below is the screenshot from Sitemap designer

After changing the entity from Queue to Queue Item in model driven app designer, everything loaded properly.

Hope it helps…..

PowerApp Screen – OnVisible Event Not Firing

While working on one PowerApp, I observed that the code written in first screen “OnVisible” event is not executing which means OnVisible event is not firing. I found couple of workarounds for this issue.

Workaround 1: Add a welcome screen with a simple button which will navigate to your actual screen.

Workaround 2: If you don’t like the Idea of having a welcome screen, you can use this one. Place a timer control on the screen (make it invisible and sent to back) and write the code in “OnTimerEnd” event.

Properties for Timer Control

OnTimeEnd event

Hope it helps to solve this issue.

How to remove unwanted PowerApp parameters in MS Flow

Recently I worked on one PowerApp which will call the MS Flow to perform my action. Initially, I created a Flow with 8 parameters and passing the values from PowerApp but at the end I realized that I can perform my action with 6 parameters in MS Flow, so decided to delete the extra 2 parameters as my PowerApp is expecting the value for those parameters which are not required. There is no direct approach to delete the parameters in Flow, I think Microsoft still working on this issue but there is workaround to do this

Workaround:

  1. Delete the PowerApp trigger on the top of the MS Flow and you see a message box “This step and associated dynamic content will be deleted from this flow.”
  2. Click on OK (It won’t affect the actions in your flow)
  3. Add the PowerApp trigger again, this should give you a chance to provide a new dynamic content.

I know it’s not a best approach but as of now we don’t have any better way to resolve this issue. Hope it helps….

Date filters do not work for SQL Server in PowerApps

Today I faced an issue to get the records in PowerApps from SQL database by applying date filters (From and To Dates). I spent so much time to retrieve the records by using the below command “ClearCollect(FilteredWorkReports,Filter(‘[SQL_Table_Name]’, ReportDate >= FromDate.SelectedDate && ReportDate <= ToDate.SelectedDate))“, but I didn’t get the expected result. The reason is simple “Direct date filters do not work for SQL Server” based on this link from MS. So, the solution for this issue is to create a calculated column for the date column in SQL table with Integer datatype. The formula for this calculated column is “YEAR([your_date_field]) * 10000 + MONTH([ your_date_field ]) * 100 + DAY([ your_date_field ])“. The data in your table will look like below with new field

CustomerReportDateReportDateAsInt
Cust 12019-05-0120190501
Cust 22018-11-0820181108
Cust 32015-12-1520151215
Cust 42018-06-0720180607

Finally, I applied the date filter with new column like below which is working like a charm 🙂 “ClearCollect(FilteredWorkReports,Filter(‘[SQL_Table_Name]’,ReportDateAsInt >= Value(Text(FromDate.SelectedDate,”[$-en-US]yyyymmdd”)) && ReportDateAsInt <= Value(Text(ToDate.SelectedDate,”[$-en-US]yyyymmdd”))))“.

I hope it helps…..