2015-01-09 6 views
0

Я хочу создать условие, которое проверяет другое поле таблицы в том же источнике данных перед изменением/обновлением данных таблицы.Измененное значение таблицы

Например, у меня есть ученик таблицы, поле в этой таблице - это «статус», «имя» и «оценка». Статус - тип перечисления, а значение по умолчанию - «не разрешено». Пользователь может изменить поле состояния, используя форму сетки данных.

Я хочу создать условие, которое Статус может изменить, чтобы «разрешить», если оценка> 50 иначе это не может быть изменено. Thanks

ответ

0

Как уже писал Ян, одним из способов решения этой проблемы было бы переписать метод вашей таблицы учеников validateField. Этот метод вызывается каждый раз, когда поле таблицы изменяется пользователем в виде таблицы. В методе вы можете написать некоторый код для обработки изменений в поле Status, например, например.

public boolean validateField(FieldId _fieldId) 
{ 
    boolean ret; 

    ret = super(); 

    switch (_fieldId) 
    { 
     case fieldNum(MyStudentTable, Status): 
      if (this.Status == MyStatus::Allow 
      && this.Score <= 50) 
      { 
       ret = checkFailed("Score must be greater than 50 to Change the Status."); // TODO create a label 
      } 
      break; 
    } 

    return ret; 
} 
0

Как насчет использования валидации?

Используя validateField или validateWrite на таблице или источнике данных, вы можете проверить, действительно ли выбранное значение.

Также может использоваться метод проверки подлинности на источнике данных или контроле.

Поиск таблиц или форм узла AOT для тысяч примеров.

This answer применяется к большинству «проверьте значение введенного поля».

Смежные вопросы