Tag: PowerApps

Plot Multiple Map Points In Power Apps (Canvas Apps) with Dynamic Filters

Hi Everyone

In this vlog we will see how to see multiple points/pushpins on a map in canvas app. As always, this is a no code solution and fairly basic.

I have came across this requirement so many times in Dynamics 365 for e.g. show all customers on a map or contacts on a map or even appointments on a map. Many solutions are available for Dynamics 365 CE including add ons like Maplytics. But for canvas app, following issues persists:

  • No map components
  • Static bing/google maps can be inserted by inserting an image and then providing URL
  • Bing or Google maps API is required
  • Hard code latitude and longitude
  • If you want to show more than one push pin, you need to hard code all coordinates
  • You can’t apply dynamic filters on your maps

To me all of the above are not easy to use solution and that’s why I decided to look for something which all our #nocodemonkeys can use. This can be the fastest way you can plot all your customers on a map within canvas apps.

Prerequisites:

  • Access to Power Apps
  • Access to Power BI (Desktop and Web)
  • Super Basic Knowledge of how to create a chart/report in Power BI
  • Basic understanding of Power Apps formulas
  • Entity (accounts/contacts/appointments) must have Latitude and Longitude filled (otherwise it won’t be shown on maps

Note: You can get latitude and longitude by create a flow in Power Automate

Step 1-7 for Power BI and Step 8-12 Power Apps

Step 1: Go to your Power BI Desktop>>Create a connection>>Get data (e.g. Accounts)

Step 2: Once your data is loaded>>click on report icon and then add the visualisation type as shown below:

Step 3: Add data fields

Step 4: Save your Power BI report by clicking on the disk button on top left

Step 5: Login to Power BI web https://app.powerbi.com/

Step 6: Click on ‘Workspace’ in the left navigation and then click reports (this is where you can find the report you created in above steps)

Step 7: Click on the report to open and then click pin visual

Step 8: Login to Power Apps https://make.powerapps.com/ and pick your existing app or create a new canvas app

Step 9: Click Insert then ‘Power BI tile’

Step 10: Select Workspace, Dashboard and Tile

Dynamic Filtering- Step 11 & 12

Step 11: Apply dynamic filtering by adding new components like Text Input or Drop Downs. In my case, I have two drop downs and one text input; names below:

StateDropDown- With 5 values (you can have any values here)

CityDropDown-With 5 values (you can have any values here)

txtPostCode- Text input for ZIP/Postal Code

Step 12: Update the ‘TileURL’ of Power BI tile. Use the following sub-steps based on how many filters you need as it can go to Nth level (I am only showing three)

12a. One field filter

“Power BI TileURL” & If(!IsBlank(txtPostCode.Text),
“&$filter=accounts/address1_postalcode eq ‘” & txtPostCode.Text & “‘”)

12b. Two fields filter

“Power BI TileURL” & If(!IsBlank(txtPostCode.Text),
“&$filter=accounts/address1_postalcode eq ‘” & txtPostCode.Text & “‘”,
!IsBlank(CityDropdown.SelectedText.Value),
“&$filter=accounts/address1_city eq ‘” & CityDropdown.SelectedText.Value & “‘”)

12c. Three fields filter

https://app.powerbi.com/embed?dashboardId=ed06a838-8b0f-4445-a582-1890699df2d3&tileId=401efbc1-2194-4807-a07e-7e89567e49ce&config=eyJjbHVzdGVyVXJsIjoiaHR0cHM6Ly9XQUJJLUFVU1RSQUxJQS1FQVNULUEtUFJJTUFSWS1yZWRpcmVjdC5hbmFseXNpcy53aW5kb3dzLm5ldCJ9” & If(
!IsBlank(txtPostCode.Text),
“&$filter=accounts/address1_postalcode eq ‘” & txtPostCode.Text & “‘”,
!IsBlank(CityDropdown.SelectedText.Value),
“&$filter=accounts/address1_city eq ‘” & CityDropdown.SelectedText.Value & “‘”,
!IsBlank(StateDropdown.SelectedText.Value),
“&$filter=accounts/address1_stateorprovince eq ‘” & StateDropdown.SelectedText.Value & “‘”
)

Note: Screenshot below for better understanding

Result after dynamic filters

Video here:

Hope it helps!

Subscribe to my channel and follow my blog.

Thanks!

Let’s keep sharing!

Sharing my MVP Award with you!

Hi Everyone

A huge thank you to all for supporting me by watching my videos, subscribing to my channel and blog. it couldn’t have been possible without your support and that’s why I decided to share my MVP award with you by unboxing it together.

I received the notification of my award via email on 1st Jan 2020 and I received the actual award kit itself on 20th Jan 2020. Since I wanted to unbox it together with you, I thought I will wait until I can make a video. It was hard to see the box but not be able to open it but I was happy that I am sharing it with you guys.

I shared the news on Linkedin and received 35000+ views on my post and that’s just amazing for me. Follow me on linkedin, twitter and if you’ve not subscribed to my channel, do it now. 🙂

Unboxing video here:

Subscribe to my channel and follow my blog.

Thanks!

Let’s keep sharing!

Populating ‘Item Link’ In Approvals (Power Automate/MS Flow)

Hi Readers

This is a quick tip on how to generate a link to the item you want to be approved.

Scenario: Whenever a quote is created a approval request must be sent out with a link/URL of quote to be approved.

Problem: “Item Link” field only shows the GUID of the quote

There’s no URL field for selection so you select the Unique Identifier of the quote, thinking it might work.
Approval looks like this so you can’t go to the actual item from here.

Solution: Combine the URL of your model driven app (prefix) and record GUID (suffix)

Model driven app’s URL and unique identifier of quote/record. This works.
This is how your approval form looks, click on the link to check the actual approval item/record.

Hope it helps!

Subscribe to my channel and follow my blog.

Thanks!

Let’s keep sharing!

Using Timer Control In PowerApps (with problem scenarios and Business use cases)

Hello Readers and Viewers

This blog/video is part of my quick tip series. We are going to look at how we can force a screen to be visible to a user irrespective of the transition, in other words delay screen transition.

Skip to the video, if you don’t want to read

Example Problem 1: if we want to Navigate to more than one screen back to back only the last screen mentioned in navigate formula is visible to the user; that means one navigate screen is skipped. for e.g. look at the formula below:

Select(Parent);SubmitForm(checkinform_1);ResetForm(checkinform_1);Navigate(Success,ScreenTransition.Fade);Navigate(lstMembers)

If you apply the above formula to your Power Apps, users will always end up seeing “Navigate(lstMembers)” and the success screen is skipped.

Example Problem 2: if we remove the last bit of the formula and have only one ‘navigate’ as shown below:

Select(Parent);SubmitForm(checkinform_1);ResetForm(checkinform_1);Navigate(Success,ScreenTransition.Fade)

if you apply the above formula, users will have to touch on the success screen somewhere to be able to see any other screen. (assuming success button in below screen will have navigate formula)

b1

Solution to both the example problems: First of all remove the last navigate from the formula and only have one navigate, shown below:

Select(Parent);SubmitForm(checkinform_1);ResetForm(checkinform_1);Navigate(Success,ScreenTransition.Fade)

Note: I am not saying you must use the exact same formula as above, you need to change the formula as per your need but only have one navigate in the formula.

Now on your success screen add a timer by going to Insert>>Input>>Timer

b2.JPG

Set AutoStart to true

Set the duration of the timer by clicking on the timer on screen (Completely on your requirements, for how long you want a user to see a screen)

1000=1 second 5000=5 seconds 30000=30 seconds

Set OnSelect to false

b3b4b5

Set the second navigation on your ‘TimerEnd’ property

b6

Now hide the timer, so your users can’t see it

b7

And all done, your users will now be navigated to the screen of choice without having to click anywhere.

Business Use Case: You want your users to see a success screen for ‘n’ seconds and then auto-redirect to a list or another form.

Video here:

Let me know your thoughts!

Subscribe to my channel and follow my blog.

Thanks!

Let’s keep sharing!

#TGIF Episode 3: Most Common ODATA Filter Queries

Hi Readers and Viewers

This episode is to summarise my blog post “Every Power Automate Filter Query You Ever Wanted To Know“.

We will look at the following combinations of ODATA queries:

Contains and does not contains for text fields

Contains and does not contains for Option Sets

  1. Is blank and is not blank
  2. Contains with OR/AND conditions
  3. Check two or more option set values
  4. Starts with/Ends with
  5. Greater than/Less than
  6. Greater than or equal to/Less than or equal to

Video here:

Fundraising for Rural Aid Australia- TGIF Shirts, here.

Let me know your thoughts!

Subscribe to my channel and follow my blog.

Thanks!

Let’s keep sharing!

#TGIF Episode 2: Building Your First Flow

Hi Readers and Viewers

In this episode, we will deep dive into Power Automate and will create our first flow. We are also going to see different types of flows available within Power Automate. We will look at the following scenario to create our flow:

Scenario: Assign Territory to a customer based on the ‘Address 1: ZIP/Postal Code’ field in CDS/D365. (Address 1: ZIP/Postal Code is a text field)

Out of the box what’s available: Territories are related to ‘postal codes’ as 1: N relationship. Both Territory and Postal Code are available OOTB in CDS/D365. But on Account form, ZIP/Postal Code is a text field so how do we perform this action without any coding efforts.

Solution before Power Automate (MS Flow): If flow wasn’t there, we would have to create a plugin which will trigger post-operation/ record creation and check the value of ‘Address 1: ZIP/Postal Code’ in the data table of Postal Code and then pick up a related territory to update that territory on account form and the efforts required to that plugin would not be less than 4 hours.

Solution after Power Automate: Thank God it’s Flow! with the help of flow you can achieve the results in 5 minutes or less.

Watch the video here:

Fundraising for Rural Aid Australia- TGIF Shirts, here.

Descriptive blog post here.

Let me know your thoughts!

Subscribe to my channel and follow my blog.

Thanks!

Let’s keep sharing!

TGIF Swag Shop is now live!

Hello Everyone

Thank God it’s Flow Shirts are now available.

Please note that it is in association with spreadshirts and I only get commission out of each shirt sold. And every cent of the commission earned will be donated to ‘Rural Aid Australia’

“Rural Aid is one of the largest rural charities in Australia. A nationwide charity, it was founded by Charles and Tracy Alder in 2015. Its focus is twofold – to provide support to farmers and rural communities in times of natural disaster as well as supporting the sustainability of the agricultural sector.”

*Shop here*

*All items here*

This is for a good cause and your support will be appreciated.

Let’s keep sharing!