19.06.2007, 11:36 | #1 |
Участник
|
Множественные сообщения из-за validateWrite
Есть така проблема, что при вводе неправильных данных, появляются множественный сообщения Infolog об этом. Например незаполнить обязяаетельные поля в записи и переклюлиться в соседний таб с другрй таблицей.
Нашел кривое решение в: Управление Персоналом\Запросы\Оплаты и удержания вот тут написано следующее: Код: ... if(! ret) this.data(this.orig()); ... |
|
19.06.2007, 12:50 | #2 |
Участник
|
Максим, а если сделать так:
перекрыть validateWrite() у датасорса на форме X++: public boolean validateWrite() { boolean ret; int line = infolog.line(); ; ret = super(); if (!ret && infolog.line() != line) infolog.viewUpdate(); return ret; }
__________________
Axapta v.3.0 sp5 kr2 |
|
19.06.2007, 13:39 | #3 |
Участник
|
1. this.reread ? хотя по сути одно и тоже
2. По аналогичной проблеме - в итоге пришел к выводу : разрешить заполнить чем хотят, но при разноске происходит проверки на корректность\ заполненность по определенной группе полей таблицы и тд.... Mandatory только ключевые поля таблиц. |
|
20.06.2007, 09:00 | #4 |
Участник
|
На сколько я понял, проблема не в выводе сообщения как такового, а в том, что Axapta некорректно отрабатывает такую ситуацию. Ходить по другому датасорсу просто не получается - постоянно выскакивают сообщения инфолога.
Кстати, начие незаполненных mandatory-полей исключает такую ситуацию. До validateWrite() дело просто не доходит
__________________
Axapta v.3.0 sp5 kr2 |
|