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

Вниз

Как сделать, чтобы TTable позволял редактировать запись, но не по   Найти похожие ветки 

 
ghrup   (2004-08-29 19:05) [0]

Как сделать, чтобы TTable позволял редактировать запись, но не позволял вставлять новую запись?
ReadOnly не подходит, он запрещает и редактирование, и новую запись.


 
AndB ©   (2004-08-29 19:22) [1]

procedure TForm1.Table1BeforeInsert(DataSet: TDataSet);
begin
  EDatabaseError.Create("Злобный автор не позволил дабавлять");
end;


 
Zacho ©   (2004-08-29 19:27) [2]

А если не нужно сообщение об ошибке, то просто:
procedure TForm1.Table1BeforeInsert(DataSet: TDataSet);
begin
 Abort;
end;


 
Anatoly Podgoretsky ©   (2004-08-29 19:52) [3]

Zacho ©   (29.08.04 19:27) [2]
Сообщение надо :-)


 
ghrup   (2004-08-29 19:54) [4]

Большое спасибо!
Объясните суть приема, как это работает.
Это где нибудь описано в официальной документации?
Работает ли в разных версиях Delphi?


 
Zacho ©   (2004-08-29 20:06) [5]


> Anatoly Podgoretsky ©   (29.08.04 19:52) [3]

Ну, автор исходного поста ничего по этому поводу не сказал :-)

> ghrup   (29.08.04 19:54) [4]

Суть в том, что инициируется исключение. Работает во всех версиях Дельфи. Подробно описано в стандартном хелпе.


 
ghrup   (2004-08-29 21:36) [6]

>Zacho
>Суть в том, что инициируется исключение.
А что происходит после?
Каким образом прерывается Insert?
Ведь событие BeforeInsert нужно для того чтобы выполнить действие до вставки
в таблицу, а не прерывать вставку, так ведь?

А если вызвать исключения в Before... BeforeClose,BeforeEdit и т.п.,
можно ли тоже прервать эти действия Close,Edit...?

Если вызвать ислючения в After... AfterInsert,AfterPost что произойдет?


 
Ozone ©   (2004-08-30 05:24) [7]

ghrup   (29.08.04 21:36) [6]

http://delphimaster.net/view/3-1093463113/


 
ghrup   (2004-08-30 11:30) [8]

>procedure TForm1.Table1BeforeInsert(DataSet: TDataSet);
>begin
>  EDatabaseError.Create("Злобный автор не позволил дабавлять");
>end;

Не работает. всё разрешает, сообщение не  выводится.
С Abort работает.


 
Romkin ©   (2004-08-30 12:00) [9]

raise EDatabaseError.Create("Злобный автор не позволил добавлять");



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

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

Наверх




Память: 0.48 MB
Время: 0.041 c
1-1094643170
Snip
2004-09-08 15:32
2004.09.26
Кто разбираеться в DLL


4-1091191488
dms_main
2004-07-30 16:44
2004.09.26
Имя текущего пользователя системы


14-1094779713
Думкин
2004-09-10 05:28
2004.09.26
С днем рождения! 10 сентября


1-1094572239
Klopan
2004-09-07 19:50
2004.09.26
Memo


1-1095086370
Lord de Mon
2004-09-13 18:39
2004.09.26
ShellExecute