Проблема в том, что Axapta выполняет обновление данных только в том случае, если было изменено хотя бы одно из НЕ системных полей. В противном случае команда UPDATE на сервер просто не уходит, поскольку Axapta считает, что ничего не было изменено. Незачем лишний раз посылать на сервер "пустую" команду.
Другими словами, Вам надо добавить изменение какого-либо еще НЕ системного поля. Любого.
X++:
// Чтобы подействовало изменение системных полей необходимо изменить НЕ системное поле
priceDiscTable.Amount += 0.01;
priceDiscTable.doUpdate();
priceDiscTable.overwriteSystemfields(true);
modifiedDate = str2date('05.10.2011',123);
priceDiscTable.(fieldnum(PriceDiscTable, modifiedDate)) = modifiedDate;
// Возвращаем значение НЕ системного поля в исходное значение
priceDiscTable.Amount -= 0.01;
priceDiscTable.doUpdate();
Пожалуй, наиболее корректным решением было бы добавить в таблицу поле-примечание и делать запись в нем, указывая причину изменения системных полей.
PS: Не заметил ответ
AndyD. Он это уже написал