Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];

Вниз

Почему Table is read only   Найти похожие ветки 

 
Валерий   (2005-06-28 15:10) [0]

На форме : Query, в нем SQL.text :
select treaty_id, treaty_num from treaty_arenda.
В таблице одно ключевое поле, identity нет.
В Query поставлено RequestLive и CachedUpdates в true.
В SQLUpdates на Modyfi все сформировано корректно: одно ключевое поле, одно для редактирования.
Редактирую в Gride поле, и стрелкой вниз .
OnAfterPost стоит Query1.ApplyUpdates; а
OnUpdateRecord - UpdateSQL1.Apply (UpdateKind);
Вот на этой последней строке оно и вырубается при нажатии стрелки

В UpdatesSQL на Modify имею:

update treaty_arenda
set
treaty_num = :treaty_num
where
treaty_id = :OLD_treaty_id

В процедурках:

procedure TForm1.FormShow(Sender: TObject);
begin
Query1.Open;
end;

procedure TForm1.Query1AfterPost(DataSet: TDataSet);
begin
Query1.ApplyUpdates ;
end;

procedure TForm1.Query1UpdateRecord(DataSet: TDataSet;
UpdateKind: TUpdateKind; var UpdateAction: TUpdateAction);
begin
UpdateSQL1.Apply (UpdateKind);
end;

Причем UpdateKind = ukModify !!!

и строку она эту UpdateSQL1.Apply (UpdateKind); проходит
а вырубается только на END;
с сообщением table is read only
Уважаемые знатоки, что я делаю неправильно, объясните пожалуйста начинающему осваивать Delphi.


 
Johnmen ©   (2005-06-28 15:19) [1]

>Вот на этой последней строке оно и вырубается при нажатии стрелки

Ну да. Она же бессмысленна, и просто вредна...:)


 
Валерий   (2005-06-28 15:22) [2]

забыл важное: реально, несмотря на ошибку поле редактируется (проверял - выходил из проги, входил), и еще странность: после всех прожатий реакции на ошибку остаюсь в том же отредактированном поле, хотя была нажата стрелка вниз.


 
Валерий   (2005-06-28 15:29) [3]

Johnmen:
Пробовал без UpdateSQL1.Apply (UpdateKind);
вырубается уже на Query1.ApplyUpdates, т е раньше, причем в этом случае та же ошибка и кроме того реально НЕ редактирует


 
evvcom ©   (2005-06-29 08:30) [4]


> т е раньше

Не раньше. Просто у тебя в этом случае нет твоего кода, выполняющегося между ApplyUpdates и ошибкой, а в первом случае был.

> несмотря на ошибку поле редактируется

А я уж хотел предложить посмотреть не ReadOnly ли файл?


 
Валерий   (2005-06-29 09:32) [5]

Похоже, что достаточно только Query1.ApplyUpdates без
SQLUpdates1.Apply(UpdateKind).Да и нельзя его ставить после поста. Повесил его на кнопку - все срабатывает даже без компонента SQLUpdates (таблица в нем всего одна), лишь бы Query был кешируемый.


 
Johnmen ©   (2005-06-29 09:39) [6]

Про работу с кешируемыми НД очень подробно и с примерами написано в F1. Странно, что ты начал не с неё...:)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.04 c
10-1098798905
}|{yk
2004-10-26 17:55
2005.08.07
Никто не подскажет, почему при передаче в Excel я получаю


1-1121667918
rus9
2005-07-18 10:25
2005.08.07
Управление доступом


1-1121412739
zorik
2005-07-15 11:32
2005.08.07
Печать текста модуля


14-1121526833
Kerk
2005-07-16 19:13
2005.08.07
Почему при использовании файрвола...


14-1121352024
Step[B.M.]
2005-07-14 18:40
2005.08.07
Цифровая АТС (АОН - Caller ID) как получить результат АОН на COM





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский