I have a table with one (1) row, 3 columns.|
Column 1 = Type is text = “Summary”
Column 2 = Roll up count of number of entries in table AAA - Value 5
Column 3 = Roll up count of number of entries in table bbb- Value 4
Column 4 = Roll up count of number of entries in table ccc - Value 2
Column 5 = Roll up count of number of entries in table ddd - Value 3
Created a new layout and used the big numbers component.
When i use the big numbers component it only displays the value of “1” for each of the big numbers as opposed to displaying “5”, “4”, “2” and “3”
Computed columns, such as the Rollup column, are computed directly on the user’s device with whatever data is available. The device will only download data that is owned by the user or available to all users. This means the Rollup can only count rows that you are the owner of because that is the only data that is available to it. If you are only seeing a count of 1, that probably means you are the owner of only 1 row in each table.
So you want to securely protect the data using row owners, but still share summary data with every single user that uses your app? If it was a just few people, such as Admins, I would normally say to apply a role to those admin users and create a second row owner column in those tables granting access to the Admin role. But, since you mentioned that you want all users to see summary data it will require a much different approach. Instead of Rollup columns, you would probably need basic number columns in you Summary table. Whenever a form is submitted, you would need to increment the appropriate number column in that summary table.
I would like to summarize all the data in the app and perform some analytics on the data then display that summary to all the users. Is there a straight forward way to do this?
The straightforward and easy way would be remove row owners, but I don’t know if that’s what you want, since it does potentially expose everyone’s responses to everyone else.
The second easiest option is to add a second row owner and use roles, but that only makes sense if you are only allowing access to a handful of users. Kind of pointless is you use Row Owners, but grant access to everyone.
The third option is like I said in my previous post. Whenever a form is submitted, aggregate certain data in a separate table using an On Submit Increment action or write limited data to a separate table to aggregate later.
Overall, the problem is that you are trying to aggregate data that you just do not have access to due to row owners. Either provide access to the data, or put it somewhere else, or find a different way to aggregate it.
If all you are doing is counting rows in each table, I would just use an On Submit Increment action when the form is submitted.