Hi All,
I'm Currently Optimising some of our Cell-Count Intensive Reporting Modules, I've an almost working solution except for this limitation I'm facing.
We've around 5-6 Reporting modules in our model which is Dimensioned by Levels of Promo Hierarchy X Users, promo Customer Hierarchy X users. Since the promo customer and promo product list grows in size with every promo raised, and mind it we could have mulitple products, customers selection for a single promo. This against Users (~183 Users) blows the model size up and the rate of growth is also noticeable.
The solution is moving from a full Users list to a custom User list subset. Which updates the subset dynamically based on a Boolean tick to enable subset on the UX.
The reason to use the custom user list subset and not the native user subset is because of the manual maintenance required by WSA on the subset. This way data is displayed only for active users using these dashboards at a given time. These dashboards are not daily used so this approach works.
We already have a selective access enabled custom user list which we use for audit, so I leveraged the same list and created a subset which is updated dynamically based on the selection in the UX.
In the custom user list, Selective write access is enabled for the users to only the list item corresponding to their email/Native user list. This way the users see only the data specific to their filter selections in the UX (I map the filter selections from the native user list to the custom list). So it works exactly like the native user list but dynamically only for the users who are using the UX at that time.
However, when a Non WSA user runs the subset update from UX, the action is failing. I learnt this is not permitted.
One way I can think of is to run the subset update from our integration service account. But this needs to happen instantly and not scheduled. Allowing API calls from the UX can be specifically helpful for cases like this.
Any Suggestions and work arounds to tackle this scenario?
Thanks in Advance