![]() |
#6 |
Участник
|
Извините, просто сложилось впечатление, что вы не на 100% понимаете, как все эти reread, refreshEx и т.п. методы работают, решил подбросить ссылку.
Если research работает, как насчет запомнить выделенные записи перед вызовом research, а потом выделить их из кода? X++: void clicked() { Table1 table1Local; Table1 table1ForUpdate; MultiSelectionHelper helper = MultiSelectionHelper::construct(); Set selectedRecords = new Set(Types::Record); SetEnumerator selectedRecordEnumerator; helper.parmDatasource(Table1_ds); table1Local = helper.getFirst(); while (table1Local.RecId != 0) { selectedRecords.add(table1Local.data()); ttsBegin; select firstonly forUpdate table1ForUpdate where table1ForUpdate.RecId == table1Local.RecId; table1ForUpdate.Field1 = 'some value'; table1ForUpdate.update(); ttsCommit; table1Local = helper.getNext(); } Table1_ds.research(); selectedRecordEnumerator = selectedRecords.getEnumerator(); while (selectedRecordEnumerator.moveNext()) { table1Local = selectedRecordEnumerator.current(); Table1_ds.findRecord(table1Local); Table1_ds.mark(true); } } |
|
|
|