Hi GoodData team, was hoping to ask a question on ...
# gooddata-cloud
r
Hi GoodData team, was hoping to ask a question on a specific use case. On our platform we host surveys such as employee engagement surveys that are anonymous - in the platform you would only see anonymized responses and there are safeguards such as there needs to be a minimum # of responses to be able to see any reporting. Our customers would like to use GoodData to report and drill down on response rates for this survey by dimensions such as location and teams, but still maintaining the anonymity of the survey. In order to drill down into those dimensions, we should bring into the data model the anonymous survey respondent Id, but that would make it possible to drill down to the single user response and therefore anonymity would not be maintained. Is there any functionality in the product that would allow us to satisfy this use case? Or any suggestions you could share on how to approach this? Thanks in advance!
i
Hi Raffaella, Have you considered usage of User Data Filters, by a chance? By these UDFs you can restrict access to certain data, using a MAQL expression. I am not that familiar with your model or data itself, but you might be able to set it on workspace level as well. More information can be found here.
r
Hi Ivana, thanks for your quick response. In our case, we want this restriction to apply to all users in all our customer workspaces. So you are saying we could apply these user data filters to every workspace, so that the users wouldn't be able to get to the individual user ID?
i
You are welcome. Yes, it can be propagated to all child workspaces and affect all their users, if needed.
r
Okay, we will have a look at this solution, thanks for this
i
Fingers crossed for you, please let me know if there is anything unclear.
m
Hi Raffaella, on top of what Ivana mentioned, let me add a bit more detail, how this can be achieved in GoodData Cloud: If you want to limit reporting to cases where there are more than X responses, and you have some unique response identifier (i.e. responseID) in your data model, you can use the User Data Filter with condition like this:
COUNT({label/responseID}) > X
where X would be a number of your choice. This will cause that any query related to responses will only return rows that are aggregated from at least X+1 responses. And this will work dynamically including drill downs, filters, custom reports and metrics etc.
🙌 1
r
Thanks @Michal Hauzírek for all the info, appreciate!
m
Hi Raffaella, just a quick update here - I noticed that while this dynamic filtering seems to work well when you are working with attributes in the buckets of the insight (slicing by them), it seems it works somehow differently when you are filtering by those attributes. So by filtering I could get to a value calculated from less than X records. I raised a question to the GoodData team about this to confirm if this is a a some bug.
👀 1
r
Thanks @Michal Hauzírek