We have a qvw with potentially millions of records which allows the user to explore a what-if analysis. The steps in the workbook are as follows:
1. In the first step, one table allows the user via a variable (say x) to add a percentage to a metric (the same percentage applies to all rows).
2. The next step allows the user to override on individual rows the percentage set earlier (using an inputfield). Since this inputfield had to be set to the variable value ( x ) from step 1 in between the two steps a macro loops over all the rows and sets the inputfield value to the variable value from the first step. Due to performance of this loop we have limited the number of rows they can do this on to only 100 which is not ideal either.
3. The result from step 2 is written back to the database and fed back into the tool later.
I have been trying to think if there is another option that could achieve this. Is there any more efficient way aside from a loop to 'mass-set' the inputfield value between steps 1 and 2?
Could there be an alternative way aside from inputfields? I explored the Dynamic Data Update option, but I am worried about the concurrency and server load implications of this. Also with this option I am not sure if there is a way to select a 'set' of data - ie all the rows in the table - as the limitations of the where clause have me stumped.
I would appreciate any thoughts or suggestions on this topic!
Between Step 1 and Step 2, there is a macro that loops over the rows of the table and uses the table.SetInputFieldCell function to set the primary value of the inputfield. This loop is my main concern really.
After that yes the resulting table uses inputavg to allow the user to 'override' specific rows inputfield values.