About the data:
I am using a SQL Server Connector and the data have a Person table that has " ID, firstName, and lastName and I have a student table that uses the same ID as the person table and doesn't have the name data in it.
I have a Dropdown That shows "ID - FirstName LastName" but I only want to show the students
Concatenate(ShowColumns(Student;"personID");" - ";ShowColumns('[dbo].[Person]';"firstName");" ";ShowColumns('[dbo].[Person]';"lastName"))
this is the code of my dropdown list. It may seem crude but this is all I got. Currently what I get are the StudentIDs and all the names. I am new to the developing world and I am stuck I would gladly accept any recommendations.
Solved! Go to Solution.
Luckily you are not in the development world as PowerApps is a no-code app designer! 😁
Are you stating that the formula you provided is on the Items property of your dropdown??
If you want your dropdown to only show the students and the names are all in the person table, AND there is no other identifying column in the person table to indicate a student, then you will need to do this for your Items property of the Dropdown:
ForAll(Student As _student;
With(LookUp('[dbo].[Person]'; personID = _student.personID);
{
personID: personID;
firstName: firstName;
lastName: lastName;
displayValue: personID & " - " & firstName & " - " & lastName
}
)
)
Set the display field for the dropdown to displayValue
I included the other fields from your source because usually you will want to reference the selected information in a more structured way. Ex. yourDropdown.Selected.personID
I hope this is helpful for you.
Luckily you are not in the development world as PowerApps is a no-code app designer! 😁
Are you stating that the formula you provided is on the Items property of your dropdown??
If you want your dropdown to only show the students and the names are all in the person table, AND there is no other identifying column in the person table to indicate a student, then you will need to do this for your Items property of the Dropdown:
ForAll(Student As _student;
With(LookUp('[dbo].[Person]'; personID = _student.personID);
{
personID: personID;
firstName: firstName;
lastName: lastName;
displayValue: personID & " - " & firstName & " - " & lastName
}
)
)
Set the display field for the dropdown to displayValue
I included the other fields from your source because usually you will want to reference the selected information in a more structured way. Ex. yourDropdown.Selected.personID
I hope this is helpful for you.
Thank you so much! That worked great! But I have another question, is there a reason why this takes a lot of time to display? When I entered the app it takes 3 to 5 minutes for the dropdown to start working is there a way to make it quicker?
That depends on how large your data sources are.
You are going to have a fairly good amount of time in waiting for this to populate as each item is making a call to the datasource.
This is why I pointed out "AND there is no other identifying column in the person table to indicate a student" - in other words, this is better done in the data layer. If your data indicates students, then you can filter for that instead and it would be much faster.
Your other option, since this is SQL based, is to create a view on the SQL server to give you the results...it would be much faster.
The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.
This training provides practical hands-on experience in creating Power Apps solutions in a full-day of instructor-led App creation workshop.
User | Count |
---|---|
183 | |
52 | |
41 | |
40 | |
34 |
User | Count |
---|---|
253 | |
81 | |
71 | |
68 | |
66 |