Страница 1 из 1

Проверка данных в Form

Добавлено: 08 Апрель 2008, 15:37
Игорь Столяров
Привет всем !

Есть обычный Browse, в нем самая обычная Form'а в которую вводятся данные.
При добавлении или изменении данных нужно при нажатиии кнопки ДА (Сохранить),
проверить, что навводил юзер в полях и если данные неправильные выдать сообщение
и остаться в режиме добавления (редактирования) карточки с данными.

Помниться в Legacy шаблонах просто вставлялся под кноку Embed:
If ErrorData() then Message('Проверяем еще раз данные !'); Cycle.
И все. А в шаблонах ABC этот номер (по крайне мере у меня) не проходит ...
Подскажите как можно в ABC выкрутится с такой комбинацией ?!

Re: Проверка данных в Form

Добавлено: 11 Апрель 2008, 8:53
Леонид
В методе TakeCompleted перед вызовом родителя, пишем что-то типа:
IF ADW8:Insurance
IF Rules::CheckInsurance(ADW8:Insurance, ADW8:ControlNumber)
BEEP(BEEP:SystemExclamation)
MESSAGE('Страховой номер внесен неправильно.|' & |
'Исправьте...', 'Внимание!', ICON:Exclamation)
SELECT(?ADW8:Insurance)
RETURN LEVEL:Notify
END
END

Re: Проверка данных в Form

Добавлено: 11 Апрель 2008, 12:42
Yufil
Можно и в ABC сделать в точности то же самое. Повесить обработчик на кнопу OK. Единственное условие - ДО стандартного обработчика. Даже Cycle сработает...

Re: Проверка данных в Form

Добавлено: 11 Апрель 2008, 16:09
Леонид
Yufil писал(а):Можно и в ABC сделать в точности то же самое. Повесить обработчик на кнопу OK. Единственное условие - ДО стандартного обработчика. Даже Cycle сработает...
Можно, но данный код не сработает, если управление формой размещено на Toolbar-е