глюки с TSQLQuery.Append

Модератор: Модераторы

глюки с TSQLQuery.Append

Сообщение RusDeveloper » 10.05.2016 16:53:13

есть TSQLQuery, к нему через TDataSource привязаны TRxDBGrid и TDBEdit (для редактирования данных). еще есть меню TMainMenu, TToolBar, кнопка TButton (у последних трех при нажатии отрабатывает TSQLQuery.Append). Так вот когда щелкаю на кнопку TButton, а затем становлюсь на TDBEdit - все хорошо (Append отрабатывает, начинаю редактировать новую запись). А вот когда щелкаю по меню или по кнопке на TToolBar Append тоже отрабатывает, но при вводе крусора (становлении) на TDBEdit новая пустая строка из грида пропадает и начинается редактирование существующей записи, а не добавленной! Что это за глюк и что с ним делать? Или это какой-то общеизвестный глюк компонентов TMainMenu и TToolBar?
RusDeveloper
новенький
 
Сообщения: 92
Зарегистрирован: 06.04.2016 12:02:43

Re: глюки с TSQLQuery.Append

Сообщение Vadim » 10.05.2016 19:15:06

Пример сюда не хотите выложить?
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: глюки с TSQLQuery.Append

Сообщение RusDeveloper » 11.05.2016 17:40:16

изложил суть вопроса в другой теме с примером. там еще не понятно, с чем проблема...
http://www.freepascal.ru/forum/viewtopic.php?f=5&t=11027#p97619
RusDeveloper
новенький
 
Сообщения: 92
Зарегистрирован: 06.04.2016 12:02:43

Re: глюки с TSQLQuery.Append

Сообщение pupsik » 11.05.2016 19:08:30

Append = Post ???

п.с.
Или я что то упустил и лыжи не едут :mrgreen:

Добавлено спустя 4 минуты 20 секунд:
Вроде лыжи на месте и едут:
Существуют два метода, названные Append и Insert, который Вы можете использовать всякий раз, когда Вы хотите добавить новую запись в DataSet. Очевидно имеет больше смысла использовать Append для DataSets которые не индексированы, но Delphi не будет генерировать exception если Вы используете Append на индексированной таблице. Фактически, всегда можно использовать и Append, и Insert.


Тем не менее, даже если Вы не работаете со транзакциями, Вы можете все же отменить результаты вашего редактирования в любое время, до тех пор, пока не вызвали напрямую или косвенно метод Post. Например, если Вы перевели таблицу в режим редактирования, и изменили данные в одном или более полей, Вы можете всегда вернуть запись в исходное состояние вызовом метода Cancel.


Тогда:
Что это за глюк и что с ним делать?
очевидный ответ :wink:
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Рейтинг@Mail.ru