I have a table of requests where users can mark a request as “read.” I also track whether a request is marked as read and apply conditions like changing the row’s background color or hiding the “Mark as Read” button.

Currently, I can implement these features, but the process feels inefficient since the same checks and operations repeat every time the page refreshes. Is there a way to perform these checks once (e.g., when the page loads) and persist the “read” state for each row in the repeating group without recalculating constantly? I’m looking for a more professional and performant solution.

Hey, so when you press mark as read do you update the repeating group field in the database? Also how are you currently hiding the “Mark as Read” button and changing the rows background color?

Yes, I create a record in a separate table like User Request Action. Currently condition if Current Row is in User Request Action (with action Read) I hide button or make background color as default.

Ok, it would probably be quicker if you added a field to the repeating group database called "Marked as read? yes/no and then make your conditions IF current field’s marked as read is yes then hide the button or change the background. With your current set up you have to search two databases instead of just the one.

Yes, but 1 request can be mark as read by different users, also I have other actions as bookmark, hide, etc.

Ah I see. How are you currently doing the search for the User Request Action?

Do search User Request is current user and is read

I see, one thing you could do is put that search in a hidden variable. Create a popup called hidden variables, add a repeating group and do the search for all of that users request actions and then in your main repeating group you can change the condition to be check this if current rows search request is in that row. This would mean your only search for the users request actions once and they are found on the page load.

This topic was automatically closed after 70 days. New replies are no longer allowed.