This started out as one post and then I tested some more things and my question evolved. So here's where we'll start.
Example: Take a grid where the query has a WHERE Order_Processed = 'No'. The user opens the record detail view, marks the control to make Order_Processed = 'Yes'. The user hits save and the the detail view closes. Here are the options for Detail View Properties "Row refresh method after edits":
1) Single row: quick, but the record remains in the grid even though Order_Processed now equals 'Yes'. If the user tries to re-open this row, they get an error "Fatal error running a5_ajax_grid(): Result set row requested not found while getting result set data column..."
2) Minimal and Auto-Select seem to have the same behavior as Single Row in this scenario.
3) Full Refresh: the row won't be displayed any longer, which is good, but the grid has to do a full refresh. With a couple of joins and a few parameters in the WHERE statement, this is overkill on the server to have to do the entire query every time a user edits a record.
I'll say too that I have one grid that is editable and just displays one record at a time, which works fine. But there are other needs where users need to see these records because they are time-sensitive but they also need to be able to see all the records in the grid if they need to look for certain record types.
After further testing, I found that if I take the WHERE Order_Processed = 'Yes' out of the query and put a control in the Search Part to search only on records where Order_Processed = 'Yes', then the Single row refresh method leaves the record in the grid but there's not an error if the user tries to re-open the record.
Is this a bug, just the nature of the beast, and/or does anyone have an idea for what I'd really like to see, which is that the single row would remove itself from the queue without the grid having to do a full query?
Any and all thoughts are welcomed.
Example: Take a grid where the query has a WHERE Order_Processed = 'No'. The user opens the record detail view, marks the control to make Order_Processed = 'Yes'. The user hits save and the the detail view closes. Here are the options for Detail View Properties "Row refresh method after edits":
1) Single row: quick, but the record remains in the grid even though Order_Processed now equals 'Yes'. If the user tries to re-open this row, they get an error "Fatal error running a5_ajax_grid(): Result set row requested not found while getting result set data column..."
2) Minimal and Auto-Select seem to have the same behavior as Single Row in this scenario.
3) Full Refresh: the row won't be displayed any longer, which is good, but the grid has to do a full refresh. With a couple of joins and a few parameters in the WHERE statement, this is overkill on the server to have to do the entire query every time a user edits a record.
I'll say too that I have one grid that is editable and just displays one record at a time, which works fine. But there are other needs where users need to see these records because they are time-sensitive but they also need to be able to see all the records in the grid if they need to look for certain record types.
After further testing, I found that if I take the WHERE Order_Processed = 'Yes' out of the query and put a control in the Search Part to search only on records where Order_Processed = 'Yes', then the Single row refresh method leaves the record in the grid but there's not an error if the user tries to re-open the record.
Is this a bug, just the nature of the beast, and/or does anyone have an idea for what I'd really like to see, which is that the single row would remove itself from the queue without the grid having to do a full query?
Any and all thoughts are welcomed.
Comment