Showing results for 
Search instead for 
Did you mean: 
Not applicable

Show a list of properties for an array of objects in a matrix presentation

Suppose you have entity 'Company' filled with a growing number of companies. Further suppose that a field in the Company entitity is an action list (which is an entity with a number, e.g. 90 different actions).


The business process is that you track the progress of each action from the list for any of the companies. Progress status is being monitored as '0%' (meaning not yet started), '50%' (meaning work on the action is started), '100%' (meaning the action is completed), or 'n/a' (meaning that this particular ac tion is not relevant for the considered company).


Done so far:

I made the entities as CDS entities. I use O365, premium. I can show the companies and edit the status of each action. Done by using the simple 3-screen solution for a standard canvas app (but based on CDS entities).


Where I need some suggestions:

What I want to achieve is to make an overview screen in PowerApps that shows in matrix form the status (color coded) of each of the actions for any of the companies. I would like to see kind of a dashboard as dots or squares, with companies as header columns and actions as header rows. And coloured dots or squares as status indicator of the action. List may scroll vertically, the number of companies shown should ideally also be scrollable


Does anybody have a tip on how to best approach this visualisation as matrix? Showing actions vs companies as a matrix is the central problem that I want to solve. Any further improvements, like filtering or grouping of actions or companies, are nice to have, but not essential.

Community Support
Community Support

HI @Anonymous ,

Could you please share a bit more about the data structure of your CDS Entity?

Do you want to display your CDS reocrds using a matrix table, and use companies as header columns and actions as header rows?


I suppose that you want to create a matrix table based on your CDS Entity records within your app as below:2.JPG

Is it true?


If the needs you want to achieve just like that as above, I afraid that there is no direct way to achieve your needs in PowerApps currently.

As an alternative solution, I think the Gallery control could achieve your needs. I have made a test on my side, please take a try with the following workaround:3.JPG







Within your app, add three Gallery controls as above. On my side, set the OnStart property of the App control to following:

            {CompanyName: "Company A", ActionName: "Action1", ProgressStatus: "0%"},
            {CompanyName: "Company B", ActionName: "Action1", ProgressStatus: "50%"},
            {CompanyName: "Company C", ActionName: "Action1", ProgressStatus: "100%"},
            {CompanyName: "Company D", ActionName: "Action1", ProgressStatus: "50%"},
            {CompanyName: "Company A", ActionName: "Action2", ProgressStatus: "50%"},
            {CompanyName: "Company B", ActionName: "Action2", ProgressStatus: "0%"},
            {CompanyName: "Company C", ActionName: "Action2", ProgressStatus: "100%"},
            {CompanyName: "Company D", ActionName: "Action2", ProgressStatus: "0%"},
            {CompanyName: "Company A", ActionName: "Action3", ProgressStatus: "100%"},
            {CompanyName: "Company B", ActionName: "Action3", ProgressStatus: "100%"},
            {CompanyName: "Company C", ActionName: "Action3", ProgressStatus: "0%"},
            {CompanyName: "Company D", ActionName: "Action3", ProgressStatus: "n/a"}

Set the Items property of the Gallery1 to following:

Distinct(CompanyRecords, CompanyName)

Add a Label control within Gallery1, set the Text property to following:


Set the Items property of the Gallery2 to following:


Add a Label control within Gallery2, set the Text property to following:



Set the Items property of the Gallery3 to following:

Distinct(CompanyRecords, ActionName)  /* <-- Same as that in Gallery2 */

Add four Label controls within Gallery3, set the Text property of each Label controls to following:

LookUp(CompanyRecords, ActionName=ThisItem.Result && CompanyName="Company A", ProgressStatus)
LookUp(CompanyRecords, ActionName=ThisItem.Result && CompanyName="Company B", ProgressStatus)
LookUp(CompanyRecords, ActionName=ThisItem.Result && CompanyName="Company C", ProgressStatus)
LookUp(CompanyRecords, ActionName=ThisItem.Result && CompanyName="Company D", ProgressStatus)

Please check the following GIF screenshot for more details:Test.gif

Please take a try with above solution, then check if it could achieve your needs.


Best regards,

Community Support Team _ Kris Dai
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Not applicable

Dear Kris,


Thank you very much for your elaborate reply, wonderful! I understand your approach,  and yes, the resultof your solution is very close to wht I was looking for (the only pint is that I would like to use colour coded results. Red - 0%, orange 50% and green 100%)

I'll give it try, and for that, I need to find a way to populate the CompanyRecords in your solution; which is clear when I would have informed you with some more detail of the data structure of the CDS entity that I made:

- the number of actions is 100; the ActionsList CDS entity has several fields that are dropdown values,

- Another CDS entity is the Compamny, which consists of three simpel text field.

- and finally, there in one CDS named ActualActions which holds values for the ActionList for each record of the Company CDS.


So the final challenge now is how to populate the CompanyRecords, given the CDS structure as sketched above.... if you have another tip for how that can be done ... that would be great!


Helpful resources

PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!


Are Your Ready?

Test your skills now with the Cloud Skill Challenge.


Demo Extravaganza is Back!

We are excited to announce that Demo Extravaganza for 2021 has started!

MBAS on Demand

Microsoft Business Applications Summit sessions

On-demand access to all the great content presented by the product teams and community members! #MSBizAppsSummit #CommunityRocks

Top Solution Authors
Top Kudoed Authors
Users online (70,219)