Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.27;
Скачать: CL | DM;

Вниз

Почему появляется ошибка "Dataset not in edit or inser mode"   Найти похожие ветки 

 
MakedoneZ ©   (2005-01-31 17:40) [0]

Почму выдает ошибку "Dataset not in edit or inser mode"
Это из-за Table.Post,да?
Он добавляет последнее значение введенное в TDBGrid,но все равно выдает ошибку.
Как исправить?

procedure TfrmWomen.btnSaveAndCloseClick(Sender: TObject);

begin

 Table.Post;
 {Освобождаем ресурсы}
 Table.Close;
 Table.Free;
 DataSource.Free;
 HALT;
end;


 
Desdechado ©   (2005-01-31 17:58) [1]

Post нужен только после Edit или Insert
поэтому поставь проверку
if( Table.State in [dsEdit, dsInsert] ) then
 Table.Post;
а вместо Halt лучше Application.Terminate, хотя тоже грубо


 
Соловьев ©   (2005-01-31 18:02) [2]


> а вместо Halt лучше Application.Terminate, хотя тоже грубо

Тут все грубо :)
где блок try?
Какой смысл генерить таблицу? Уж лучше TQuery.


 
MakedoneZ ©   (2005-01-31 18:20) [3]

Огромное спасибо!


 
msguns ©   (2005-01-31 18:40) [4]

Каким образом Post освобождает ресурсы ?
И зачем free ? Да еще два раза ?

Очень напоминает как убивали Гришку Распутина: сначала обкормили стрихнином, затем изрешетили пулями, а потом уже бросили под лед в Неву. И все равно, по заключению врачей, он жил еще под водой довольно долго.


 
MakedoneZ ©   (2005-01-31 19:58) [5]

Я делитант! Не хрена не умею! И вообще не имею права называться программистом. В Delphi вообще ничего не понимаю. Мое дело печатать документы и то не редактировать,а просто набирать текст.Так просто разбираюсь в компьютерах.
Это хотели слышать. Теперь приятно?


 
Anatoly Podgoretsky ©   (2005-01-31 20:24) [6]

Нет мы хотели услышать причины такого странного кода, вот тогда может быть подскали правильное решение. На мой взгляд здесь только одна строчка нормальная Table.Close;, но это так предположение, может так и нужно, но весьма сомнительно - особенно HALT, прямой путь к разного рода неприятностям.
Хотя если не хочешь рассказывать, то не рассказывай, а продолжай наезды, в то время когда народ к тебе с душой отнесся.
Можно и мне наезд? А то несправедливо. делитант надо писать так дилетант.


 
MakedoneZ ©   (2005-01-31 20:42) [7]

Anatoly Podgoretsky >
Мне нравиться ваш подход к делу :-) :-)
Да вы правы,тут я лишнего сказал,просто вспылчивый.

Halt заменил на Application.Terminate и добавил if( Table.State in [dsEdit, dsInsert] ) then
Table.Post;
А остальное поверьте нужно.

Извиняюсь.
Просто понимаете...часто я задаю вопрос,а те кто отвечают говорят "грубо,примитивно,почему так почему этак",так и неответив на вопрос.
На сколько бы кто-то не был умным,всегда найдеться кто-то умнее.
И что если он будет над вами смеяться? Будет ли вам приятно?

PS. А насчет орфографии я живу в Азербайджане.
   И очевидно Русский язык знаю неважно.


 
Anatoly Podgoretsky ©   (2005-01-31 21:02) [8]

MakedoneZ ©   (31.01.05 20:42) [7]
Это просто пример где грубость, а где нет.

Уже лучше, особенно if. Нудно ли остальное или нет, сказать можешь только ты, но скрывая подробности, ты возможно не получишь более правильного решения.
Вероятнее всего
Table.Close;
Table.Free;
DataSource.Free;
Лишнее, поскольку ты далее закрываешь приложение и все эти действия будут выполнены автоматически.

а те кто отвечают говорят а нечего сказать, поскольку подробности скрыты и это единственно корректный ответ, другой же гадания с определенными последствиями. Я бы задумался почему мне так сказали, видимо из-за того, что я где то неправ или не конкретен и мне просто нечего сказать более конкретного. Ну далее по разному, или я попытаюсь уточнить информацию, дать объяснение или уйду обиженным и голодным.

Насчет орфографии, да не по этому я написал это, а чтобы продемонстрировать, как на наезд могут реагировать. Так что считай или шуткой или учебой, по вкусу.


 
MakedoneZ ©   (2005-01-31 21:41) [9]

Спасибо.



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

Текущий архив: 2005.02.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.064 c
14-1107847788
gn
2005-02-08 10:29
2005.02.27
Фильтры больше не смогут защитить пользователей от спама


14-1107504610
Тульский
2005-02-04 11:10
2005.02.27
Хасавьюрт-2


3-1106645923
Diks
2005-01-25 12:38
2005.02.27
Списание товара со склада


14-1107817812
Yozh_Programmer
2005-02-08 02:10
2005.02.27
Помогите найти песню


3-1106688163
MakedoneZ
2005-01-26 00:22
2005.02.27
Про компонент DBGrid и тип данных Boolean.