Update all rows in a Repeater column

OMG I’m just realizing how super rusty I am in Axue - that’s what happens when you don’t use it for a couple of years.

Here’s my issue: I have a repeater with ratings/scores in columns, I also have a column for ‘average score’ - the average score is calculated as an average of the individial ratings columns and changes based on how many of the individual ratings columns are selected for display - this was pretty easy. However, i want to make the average score column sortable, and (as I understand it) to do that, the values on display need to actually be in the data table, because that’s what gets sorted.

So, my question is this - when I calculate the average, how do I update so the calculated average for each row ends up in the data table?

Hmm, it sounds like you’re using a Set Text action to set the average score from your repeater columns on a widget in the average score column, is that right? If you want the average score to be included in the repeater when it’s calculated, then you could try adding an “Update Rows” action in the same case and have it apply that value that you just calculated to the repeater column in the dataset that will hold the average score. This should get the value into the dataset so that it can be sorted. Hopefully that helps! Feel free to post the file if you’d like for us to take a closer look.

that’s what I was wanting to do, but I’m struggling with how to update all the rows. I don’t want to use marked/unmarked because I’m using that for another purpose already.

never mind, I think I’ve got it.

Okay, I’ve got it working but i’s super slow. here are the events that need to happen for my repeater to display and show the correct data, and the order they’re currently in, please let me know if I need to move any of the Cases in order to speed things up

I cannot upload the RP file (confidentiality) but here’s a generic overview, here is a generalized synopsis

Repeater data table has the following columns:
Item
rating1 [territory1]
rating1 [territory2]
rating2
rating3
rating4
rating5
avg rating

the repeater has the following columns
Item
rating1 (this will display either rating1 [territory1] or rating1 [territory2] based on the selection made in a dropdown outisde the repeater
rating2
rating3
rating4
rating5
avg

Also outside the repeater are checkboxes that determine which ratings columns will display. Depending on which columns are selected, the value in the avg column should udpate

user makes their selections and clicks a button to display the repeater; the ratings column content is set using OnItemLoad

right now, I have a ‘listener’ inside the repeater that is triggered when the user clicks the button; the listener triggers the row update, but there is a lag time of 12-14 seconds before the display is updated. what can I do to make it faster?

Hi niki_h,

It sounds like your repeater may be fairly widget and interaction heavy, which could definitely be slowing down its load speed. A repeater’s “OnItemLoad” event is triggered every time the repeater is reloaded (e.g. when adding/removing/updating rows), so each of the actions within this event will be fired whenever a row is updated. It also sounds like the widget you’re using as a listener is placed inside the repeater itself, so it may be repeatedly firing whenever each repeater item is being loaded. Placing the listener outside of the repeater might help with controlling when this specific interaction is fired and with reducing the total amount of interactions within your repeater.

With that said, it’s hard to get a good idea of what may be contributing to your repeater’s slow load times without seeing the RP file. If you’d like us to take a closer look at your file, would you be able to send it over in an email to us at support@axure.com? Please know that we take privacy very seriously. Thank you!