Цитата:
Сообщение от
Kadawrik
Теперь при попытке покинуть измененную карточку клиента выдается сообщение об ошибке. НО! тем не менее изменения сохраняются и если мы еще раз выйдем из карточки клиента, то уже система не "мявкает",т.к. по ее логике уже ничего и не поменялось. В рез-те имеем: измененное поле в карточке клиента, которое на самом деле менять было нельзя. ;-/
Что делать?
Переносить-такии код в др.место или ...? Какие есть варианты? Где я опять накосячила?
1. Косяк в коде один есть:
надо писать не
xFldRef := xRecRef.FIELDINDEX(65); //65 - Index vom Feld "Resposibility Center"
а
xFldRef := xRecRef.FIELD(65); //65 - Index vom Feld "Resposibility Center"
2. Я на вскидку вставил в моей БД в CU 423 ваш код (с корректировкой в П 1.):
После подтверждения ошибки система возвращает в поле прежнее значение (до изменения), как и должно быть после ERROR, всё работает.
Ошибка вылетает после изменения в поле при попытке перейти к другому customer или закрыть карточку.
Важное примечание: после любых изменений в коде (т. е. в программном коде, имеющем отношение к CU 423):
---- в открывайте навижен сновa, чтобы CU 423 заметил эти изменения: CU423 это SingleInstanece-Codeunit.