Hello and Good Evening,
Long-term lurker for about a year, and about this time last year I began my current development. I have built a custom gallery app that is powered by a Sharepoint List as the item database. The main BrowseGallery works without a hitch- that is, clicking an item in the BrowseGallery list Selects the Parent, Sets the correct Item, adds +1 to the "totalclicks" to track my Top 10 Entries, and Navigates accordingly:
Set(currentRecord, LookUp(SHAREPOINT_DB, TOPIC = ThisItem.Title));
Patch(SHAREPOINT_DB, currentRecord, {TotalClicks: currentRecord.TotalClicks + 1});
Navigate(DetailScreen1, ScreenTransition.UnCover)
And the gallery Items are populated via:
Filter((SortByColumns(Search(SHAREPOINT_DB, TextSearchBox1.Text, "ANSWER", "CATEGORY","TOPIC","HOWID","LINK"), "CATEGORY", If(SortDescending1, Descending, Ascending),"TOPIC", Ascending)),!IsBlank(TOPIC),CATEGORY in ComboBox2.SelectedItems)
However, when I am in the "Top 10 Entries" list, clicking any of the gallery Items brings me to the very first Item in my 'SHAREPOINT_DB' instead of selecting the correct entry. The Items in this "Top 10" list are populated via:
FirstN((SortByColumns(colNumberedSHAREPOINT_DB, "TotalClicks", Descending)),10)
However the OnSelect for each item in this "Top 10" BrowseGallery is the same code as above for the main BrowseGallery.
Any suggestions or solutions to why the navigation inside my "Top 10" list only navigates to the first entry in the list instead of setting the correct record and navigating accordingly?
Thank you in advance!
Solved! Go to Solution.
If the gallery with the top 10 is gallery2, the item property of the display form should be Lookup(Sharepoint_DB, ID=gallery2.Selected.ID)
If the gallery with the top 10 is gallery2, the item property of the display form should be Lookup(Sharepoint_DB, ID=gallery2.Selected.ID)
Thank you! I figured it was something easy.. I ended up using SET to create a tracking variable for whichever browsegallery I was navigating from in the OnSelect:
Set(lastScreen, "topten") or Set(lastScreen, "main")
...and then used the value of the variable with a SWITCH to determine the population of the datacards Items from the correct browsegallery:
Switch(lastScreen, "main", BrowseGallery1.Selected, "topten", BrowseGallery4.Selected)
Thanks for the suggestion and pointing me in the right direction! Works like a charm now 🙂
This training provides practical hands-on experience in creating Power Apps solutions in a full-day of instructor-led App creation workshop.
Come together to explore latest innovations in code and application development—and gain insights from experts from around the world.
User | Count |
---|---|
196 | |
69 | |
49 | |
46 | |
18 |
User | Count |
---|---|
249 | |
126 | |
84 | |
75 | |
74 |