Главная страница
    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.037 c
14-1121556828
anonym
2005-07-17 03:33
2005.08.07
HOWTO


14-1121171902
GLFox
2005-07-12 16:38
2005.08.07
Resource editor


9-1113965646
Xeno
2005-04-20 06:54
2005.08.07
Отсечение объектов вне обзора камеры в GLScene


1-1121740073
Sour
2005-07-19 06:27
2005.08.07
кодировка ip адреса


14-1121171225
Bless
2005-07-12 16:27
2005.08.07
Как передать большой объем информации через Инет?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский