Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.025 c
3-1093593752
12345
2004-08-27 12:02
2004.09.26
Программное выделение строк в DBGrid


6-1090299208
Eagle
2004-07-20 08:53
2004.09.26
ServerSocket


1-1094627427
Gepard
2004-09-08 11:10
2004.09.26
TOpenDialog


4-1092213118
TPotokShell
2004-08-11 12:31
2004.09.26
Как отличить поток ?


4-1092550731
DillerXX
2004-08-15 10:18
2004.09.26
Как изменить положения курсора мыши, но




   Наверх