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…..

MS Flow is an alternative for Dialog

We all know that dialogs should be replaced with either BPF or Canvas App as dialogs were deprecated in Dynamics 365 CE, but what if we want a simple dialog which will accept some custom parameters and use those values to process the business logic? The best alternative for this scenario is MS Flows. We can create a Flow and call explicitly from “Flow” button on the CRM record. For this, we need to create a Flow with the trigger “Common Data Service –> When the record is selected”. Take an example to convert a lead to opportunity based on some parameters. The below is the Flow that I developed.

After the Flow creation, you can see this Flow from the Lead entity records like below.

The Flow will open the dialog like below with set of questions that we defined above once you click on “Qualify Lead” button.

Click on “Run Flow” button to execute the Flow

Your flow executed successfully and created an opportunity record.

With this, we can create simple dialogs very easily with out any extra efforts. Hope this will be useful for other developers.

How to find parent record with at least one child record or with no child records from Advanced Find

Now it is very easy to get the parent records with at least one child record or with no child records from Advance Find like below

Before this feature got introduced, it was not possible to query the records from Advanced Find, you have to download the fetchxml and modify the filter type to “outer” and create a view or report with the modified fetchxml.

Hope it makes easier everyone’s life……

Microsoft Dynamics 365 for Outlook is unable to render entity views (web pages)

After installing the August 2018 Office update, we are struggling with the error message “Waiting for a page to be retrieved from a Microsoft Dynamics 365 server…” when using Microsoft Dynamics 365 for outlook app.

Solution

As a workaround while this issue is under investigation, navigate to the following location within Outlook:

File -> Options -> General -> User Interface Options -> When using multiple displays

Change the value of this setting to “Optimize for compatibility” (it will also notify you an application restart is required).

Outlook Multi-monitor optimization

Once Outlook is restarted, the webpages within the Microsoft Dynamics 365 for Outlook will be able to render webpages again. 

This can also be enforced through GPO via the following registry location (ensure to restart Outlook if running while this is set):

[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Office\16.0\Outlook] “ForceLegacyDpiAwarenessMode”=dword:00000001 

CRUD Operations with javascript from V9.0

Microsoft introduced an awesome feature for developers with V9.0 called Xrm.WebApi. With this feature it is very easy to perform CRUD operations using javascript code. Earlier to v9.0, to perform CRUD operation in Dynamics CRM we need to create our own library or used other third party libraries or used XmlHttpRequest and ajax request. Example code to perform CRUD operations using Xrm.WebApi feature

  1. Create
This image has an empty alt attribute; its file name is image.png

2. Update

3. Delete

4. Retrieve