Showing results for 
Search instead for 
Did you mean: 
Impactful Individual
Impactful Individual

Deep Link to Record





I am attempting to follow a tutorial by the great Shane Young on deep linking to a specific record, but am having trouble. I'm tagging Hardit, but would welcome help from anyone if he is otherwise occupied. 


Here is my OnStart formula:

Set(varProjectID, Value(Param("ProjectID")));If(varProjectID<>0, Set(varRecord, LookUp('Tool Design Support Requests',ID=varProjectID));Navigate('Edit Request Screen'))


Here is my gallery nav icon formula where the varRecord variable is set:

Set(varRecord,ThisItem);Navigate('Edit Request Screen',Transition.None)


And finally, here is the OnSuccess formula of my form which resides on the Edit Request Screen. The formula works in the sense that it sends the email with the proper formatting, but when the link is clicked it takes me to the home screen of the app versus the edit screen for the record. 


I have removed the actual GUID and Tenant ID references for the sake of confidentiality, but of course they are present in the app. This screen has 4 tabs/4 forms so I would love to deposit the user on the Designer tab if possible. Can you let me know if that is a possibility?


If(Not(varProjectStatus = varNewProjectStatus),
Office365Outlook.SendEmailV2(varUser.Email,"Tool Support Design Request: " & txtRequestTitle.Text & " project status has changed",
"The status of your tool design support request has changed to " & varNewProjectStatus & ". Here is a <a href='" & varRecord.ID & "'>link to the project</a>. Please take a look at your earliest convenience.",{Importance:"High"}))


The correct Project Name comes through in the email and the correct Project ID is in the url of the link (Chicken Coop SharePoint ID is 170) so I feel like I am close. I've attached screenshots of the email and url for your review. If you could help me get over the last hurdle, I would be very grateful. 


Kind regards,


Not applicable


The label idea was just a way of checking the ID was getting set as a value when coming 'in from your email' ... not going out from your app. From your earlier replies, it appears that it is getting set correctly so there's no real need for the label anymore.


However, if you want to understand what I was trying to do, maybe this will help:

- add a label, set the Text to varProjectID - 1

- Save & publish the App

- use the app as intended, and send original email

- click email link

- check the label output, this should be the record ID from the third step minus 1


Remember, varProjectID will only get set to a value other than zero if the URL has an ID parameter attached. If it doesn't then varProjectID = 0.


Hope this makes sense? If you are still unsure, simply remove the label and all should be well with your world/app 🙂 


Hi Eelman,


I didn't think to save and publish my app so I just did that. But not I have a couple of major problems. My gallery is not showing any records and my colors are gone. I've attached a screenshot. Can you please take another look at my OnStart menu and let me know what needs to be adjusted in order to get my app working again? Thanks!


Set(varProjectID,Value(Param("ProjectID")));If(varProjectID<>0,Set(varRecord,LookUp('Tool Design Support Requests',ID=varProjectID));Set(varFormTab, “Designer”);Navigate('Edit Request Screen'));Concurrent(Set(varUser,User()),Set(varColors,{TealDark:RGBA(0,98,129,1),TealBright:RGBA(28,181,216,1),GrayCharcoal:RGBA(62,67,74,1),GrayMedium:RGBA(215,215,215,1),GrayLight:RGBA(245,245,245,1)}),Set(isAdmin,CountRows('Tool Request Admins')>0),ClearCollect(colRequests,'Tool Design Support Requests'),ClearCollect(colStatus,"Status All"));Collect(colStatus,Choices('Tool Design Support Requests'.'Request Status'))


Not applicable


This has nothing to do with the Deep Linking code you added. It will be to do with how you app works.


If I am to help here I'd need to:

- see your app Tree View

- get an understanding of the Flow of your app eg User lands on Home --> presses button --> goes to gallery ... or whatever this process is. It needs to make sense when looking at your treeview

- the Items property of your gallery


You may also have an empty gallery if you've come into the app from your email link without a valid / existing record ID.


Plenty of things could be happening but from my read of your OnStart code it won't be that.


Hello Eelman,


Thank you for your latest post. Screenshots of my tree and screens are attached. The tree is compressed so once you have a chance to look at the screens and get a sense of the flow, let me know if there is anything specific you would like to see in regards to controls, formulas, variables, etc. The Gallery Items formula is long so I attached it into an editable Word doc as opposed to pasting it into this post. I need to add the ability to filter on the people columns. I don't expect you to solve that one for me as I have other people giving me advice on that, but I just wanted you to be aware that it will grow in size and complexity before I am done developing this app.


I removed all Deep Link references from the app yesterday afternoon before logging off and the navigation is now working perfectly. I believe you that our deep link formulas are good, but I wanted to let you know that my nav has also stopped working correctly before on another occasion when I attempted to add columns to a Collection for the sake of filtering on people columns. I'm told that introducing filtering should not present a conflict so I'm starting to wonder if the location of the varRecord variable is the problem.


The Deep Link formula goes in OnStart of the app. The varRecord variable is set on the nav arrow of the Gallery. Would I have less issues if the varRecord variable was set in the OnStart of the App or OnVisible of the home screen? Where do you usually put your record variables?


Thanks again for your help. 


Kind regards,


Not applicable


You've given me a lot to review here and I wanted to give it my full attention before I replied. I've been smashed at work the last few days so waited until the weekend before doing that ... always PowerApp'ing lol


Firstly, to address an issue from the first page, the mismatch between Title Header (on the Edit Screen) vs the data in your forms:


Chicken Coop vs Coax Tip.jpg

My guess is that this is caused by the Header using 'Gallery.Selected' as it's reference and the Form is using varRecord as it's reference. Basically, once you start using variables from your gallery navigation (ie varRecord) everything ... and I mean EVERYTHING ... that uses the Gallery.Selected reference must be changed to the varRecord reference. Using varRecord is a much better way to move around your app as well because you can set it anywhere in your app using a LookUp() and then simply navigate to the required screen.


Secondly, from the attached docs, it seems you need to send 2 emails, ie

1. a 'Call to Action' email which is to set up a new Item, and

2. an 'Updated Status' email where user can edit an existing record

 ... is this correct?


If so,

For 1,

- create a new parameter inside your email URL, call it NewProject (or similar), and set it to Yes

eg URL: ...AppGUID...&NewProject=Yes...

- then do a similar check in the App OnStart to what we did for ProjectID

- if this parameter is present then navigate the User to "New Request Screen"

- if the parameter isn't present then this process is ignored


For 2,

- I believe that this is the App OnStart code we worked on earlier, simply add this back in

- If I recall correctly, you were saying that the link wasn't going to the Designer tab, is that correct? If so, maybe you have some 'OnVisible' code for that screen that sets the FormTab variable to "Request"? You will probably need to set this variable from your Gallery Nav to avoid the mismatch

- If the issue was that no records were showing, see my spiel above re: setting EVERYTHING that is relevant in your App to reference varRecord. I suspect this maybe the issue.


If the above doesn't sort your issues we may need to look deeper into your setup eg Item properties of all your Forms, plus some other things I can't think of at the moment 🙂


Anyway, let me know how you get on and my apologies again for this late reply.





Hi Eeelman,


No need to apologize at all! I'm just grateful to have your help. Everything you said in your last post makes a lot of sense. I live in Oregon where we have a lot of wildfires burning at the moment. Not sure if it is the thick blanket of smoke, but my internet is slow and spotty so it might be a day or two before I can get back to the app as I'm having trouble bringing it up. At least there is rain in the forecast.


Thanks again for taking time to advise me. I really appreciate it. I'll try what you mentioned and get back to you as soon as possible.


Kind regards,


Not applicable

Wow Oregon, that looks crazy right now!! Never mind about the app, just take care of yourself and get back to it when you can. 


Stay safe and our thoughts are with you and your community right now.

All the best from me as well Theresa - keep well and get back to the couple you  have with me when you are able.




Hello there! The air is still filled with smoke, but my house is still standing and I haven't had to evacuate (knock on wood) so life is good at the moment. I'm still struggling to get my form header and forms to match up. I've attached a Word doc that shows all the varRecord references and also my Edit Screen OnVisible formula in case that helps. I have a meeting with the engineers Thurs, Sept 17 at 2pm so I would love to get this solved before then if possible, but if you can't reply right away no problem. I know you have busy lives too! I just wish I could figure out why I'm having so many problems syncing up my records.


I'll work on the Deep Linking advice you gave me tomorrow morning while I'm waiting to hear back from you. Take care and have a nice evening!



Not applicable


Great to hear you and your property is OK. Here's hoping it stays that way!


What do you mean when you say " ... I get Microscope Mount which is the latest form I worked on. ..."? How were/are you working on this item/record? There maybe a clue here.


My first thought was that the Items property wasn't set to varRecord but you have confirmed that it is so there goes that idea.


What about the code for the various tabs? Is that setting Gallery.Selected or some other code ... clutching at straws here.

Helpful resources

Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Top Solution Authors
Top Kudoed Authors
Users online (1,621)