![]() |
#5 |
Участник
|
Вообще в системе свойство mandatory может быть задано на разных уровнях.
- на поле таблицы - на поле источника данных - на элементе управления Для вашего случая подойдёт уровень источника данных. Уровень таблицы будет недостаточным, так как не позволит динамически включать и выключать это свойство, а уровень элемента управления будет избыточным. Вообще обращаться напрямую к элементу управления не принято, разве что когда он не связан с источником данных. 1) Нужно уметь из кода менять свойства у полей источника данных. Это делается так: FormDataSourceName_ds.object(FieldId).mandatory(value), где FieldId - это идентификатор поля. Он у вас либо уже есть, раз вы используете inventDimParm, либо его можно получить при помощи функции fieldNum(). 2) Нужно понимать в какой момент это делать. Где написать этот код? Самый простой вариант - это метод Active источника данных. Он срабатывает каждый раз при получении строкой фокуса ввода. Если интересно то почитайте ещё про событие LinkActive. В вашем случае подойдёт и оно. |
|