Hello Jim,
Yes, you did find a previously unknown bug in the table. Although one would expect the changes to be lost if you programmatically change the value of the
cell being edited, the fact that they are also lost when you change a
different cell is unexpected, and is a bug.
The bug will be fixed in the next version of CVI. In the meanwhile, there is a workaround that might help: before you run your loop, you need to check the state of the table, and if it's set to VAL_EDIT_STATE, you should change it:
SetCtrlAttribute (panel, PANEL_TABLE, ATTR_TABLE_RUN_STATE, VAL_SELECT_STATE)Changing the state will commit the pending changes from the edit session. After your loop runs, you can then set it back to VAL_EDIT_STATE. The only caveat is that the cursor position within the cell will have been lost (I believe the whole cell will be highlighted) which could be a bit disruptive to the person doing the editing. Also, keep in mind that you will still have to avoid setting the value for the cell that was being edited, of course.
Let me know if have any questions.
Luis