Страница 1 из 1
чота не вкурю .. обновление по Tab
Добавлено: 04 июн 2013, 12:08
Masygreen
ввожу новое значение в поле таблицы
browse если нажать на стрелочку то попадаем в
cmUpdateRecord, если нажать
Tab то нет О_о ... как лечить ?
Re: чота не вкурю .. обновление по Tab
Добавлено: 04 июн 2013, 13:12
Masygreen
Re: чота не вкурю .. обновление по Tab
Добавлено: 04 июн 2013, 15:14
edward_K
вызывайте UpdateTable - Если таблица была модифицирована, то вызовет соответственно cmUpDateRecord или cmInsertRecord(vipprogr.chm). Если же вы меняете не основную таблицу окна то может бы да - придется принудительно вызвать.
Re: чота не вкурю .. обновление по Tab
Добавлено: 05 июн 2013, 11:04
Masygreen
edward_K писал(а):вызывайте UpdateTable - Если таблица была модифицирована, то вызовет соответственно cmUpDateRecord или cmInsertRecord(vipprogr.chm). Если же вы меняете не основную таблицу окна то может бы да - придется принудительно вызвать.
да вот нифига ...уже второй раз так натыкаюсь .. может конечно в статуслайнах дело ((
Код: Выделить всё
Interface inPlanMarketDoc 'План сбыта' (,, sci13478EscA), AlwaysReturn;
.....
browse br_Head (,,sci1478EnEscTreeI);
show(,9,,29);
Table pPMarkSP;
Fields
.....
tableEvent table pPMarkSP
cmUpdateRecord - не попадает по Tab и стрелкам
cmCheckField: //обработка клавиш Tab + стрелки
PutCommand(cmUpdateRecord);
Re: чота не вкурю .. обновление по Tab
Добавлено: 05 июн 2013, 11:13
edward_K
Я про то , что вместо PutCommand(cmUpdateRecord) лучше попробовать юзать UpdateTable. cmUpdateRecord хорошо работает, когда меняется поле основной таблицы и сработает при попытке ухода из этой записи - по Tab вы с нее не уходите - во всех остальных случаях update нужно вызывать принудительно.
Я вставляю сей оператор почти во все события, и разработчик делает также.
Re: чота не вкурю .. обновление по Tab
Добавлено: 05 июн 2013, 11:41
Den
Дело в том, что CmUpdateRecord генерится в Атлантисе в момент ухода с текущей записи (как правильно заметил Edward_K) - т.е. пока вы скачите (по tab или мышой ..) по полям текущей записи оно не наступает. Вы просто заполняете поля буфера текущей таблицы...