Валидация поля

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
2
36
Россия, Калуга
#1
Как лучше делать валидацию вычисляемого поля ? Т.е. проверить на пустоту.
Есть три варианта:
1. Делать в QuerySave. Через MessageBox. Но там окошко слегка отличается. Плюс надо учитывать мультиязычность клиента. Т.е. чтобы было красиво, то делать сразу для всех полей.
2. Делать проверку в другом поле. Но курсор установится в него, если не пройдет валидация вычисляемого поля.
3. Сделать специальное скрытое поле, где и делать проверку. Поле не сохранять с документом.

По-моему третий вариант самый лучший. Поделитесь опытом. Есть ли другие способы ?
 
F

Fugitive

Гость
#2
Расскажи поподробнее про третий вариант, пожалуйста.
Я тупо все в querysave делаю :)
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
2
36
Россия, Калуга
#3
Есть вычисляемое поле MyField. Создаем редактируемое скрытое поле tmpValidation, где и пишем формулу валидации @If(@IsNull(MyField) & @IsDocBeingSaved; @Failure("Пусто"); @Success)
В QuerySave пишем, чтобы поле не сохранялось:
Код:
Dim ni As NotesItem
Set ni = Source.Document.GetFirstItem("tmpValidation")
ni.SaveToDisk = False