|
![]() |
#1 |
Участник
|
Набрел на похожую проблему, но forceWrite() почему-то не помогает.
Сценарий такой: На форме две таблицы: t1 и t2. t2 подцепленна по InnerJoin к t1. Связь - 1:1. Навигация в форме идет по таблице t1. В событии t1.create() идет вызов класса, где после диалога пишутся модификации в обе таблицы. При этом mandatory поле в t2 класс не заполняет. Заканчивается работа класса вызовом t1.reread(); t1.refresh(); В конце t1.create() делаю вызов t2_ds.forceWrite(true) - никаких эмоций, то есть, t2.validatewrite() не отрабатывает. Если же вместо этого сделать любое присвоение любого поля в t2, то проверка отработает. Как заставить проверить mandatory поля в t2 без изменения полей? AX2009 |
|
![]() |
#2 |
Участник
|
Цитата:
У вас сама вставка записи в t2 происходит? Метод t2_ds.write() не перекрыт? |
|
![]() |
#3 |
Участник
|
![]() Цитата:
X++: public void create(boolean _append = false) //create a rec in t1 { super(_append); SomeRunBaseClass::DoWork(...); if (t2.RecId != 0) { t2_DS.forceWrite(true); // не вызывает валидации при последующем уходе с записи t1 //t2.SoeField = "blablabla" ; // так валидация будет вызвана } } |
|
Теги |
заполнение, проверка |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|