Есть код:
X++:
ttsbegin;
Table1 table1;
;
select forupdate table1 where table1.filed2 == value;
table1.Field1 = true;
table1.update();
ttscommit;
Данный код обновляет поле и, в случае, если изменяется значение поля, меняет поля ModifiedDate/Time
Следующий код:
X++:
Table1 table1;
;
update_recordset table1 setting field1 = true where table1.field2 = value;
Делает то же самое, но в отличии от предыдущего обновляет ModifiedDate/Time всегда, независимо от того изменилось значение поля или нет.
По-моему это неправильно, поля modified должны меняться только тогда, когда изменилось значение какого-нибудь поля.
Пытался отучить update_recordset от такой привычки
Этот код не меняет поля ModifiedDate/Time :
X++:
ttsbegin;
Table1 table1;
;
table1.overwriteSystemfields(true);
select forupdate table1 where table1.filed2 == value;
table1.Field1 = true;
table1.update();
ttscommit;
А этот сбрасывает в 0 оба поля
X++:
Table1 table1;
;
table1.overwriteSystemfields(true);
update_recordset table1setting field1 = true where table1.field2 = value;
В общем получилось даже хуже чем было
Ax 3.0 SP3