![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Вызваю форму для ввода данных в форме FormAnketa;
Код:
procedure TFormJrn.Button2Click(Sender: TObject);
begin
FormAnketa.Tag:=1;
ADOTableAnketa.Append;
ADOTableAnketaKod_Pc.Value:=ADOTablePacientKod_Pc.Value;
ADOTableAnketa.Active;
ADOTableAnketa.Post;
FormAnketa.ShowModal;
if FormAnketa.Tag=1 then
begin
ADOTableAnketaData.Value:=FormAnketa.DateTimePicker1.Date;
// Выход из редактрования ADOTable
end;
if FormAnketa.Tag=0 then ADOTableAnketa.Cancel;
end;На форме ввожу данные имя фото, дату, ну и ComboBox-ы отмечаю. Код:
procedure TFormAnketa.Button1Click(Sender: TObject);
begin
if OpenPicDialog.Execute then
begin
ADOTableFoto.Append;
ADOTableFotoKod_An.Value:=FormJrn.ADOTableAnketaKod_An.Value;
ADOTableFotoFUllName.Value:=OpenPicDialog.FileName;
ADOTableFoto.Active;
ADOTableFoto.Post;
end;
end;Таблица Anketa остается в режиме редактирования. Как выйти из режима редактирвания? Последний раз редактировалось Volhv, 13.01.2025 в 16:04. |
|
#2
|
|||
|
|||
|
А так:
Код:
procedure TFormJrn.Button2Click(Sender: TObject);
begin
FormAnketa.Tag:=1;
ADOTableAnketa.Append;
ADOTableAnketaKod_Pc.Value:=ADOTablePacientKod_Pc.Value;
ADOTableAnketa.Active;
FormAnketa.ShowModal;
if FormAnketa.Tag=1 then
begin
ADOTableAnketaData.Value:=FormAnketa.DateTimePicker1.Date;
// Выход из редактрования ADOTable
ADOTableAnketa.Post;
end;
if FormAnketa.Tag=0 then ADOTableAnketa.Cancel;
end;PS. ShowModal - это функция. Возвращает ModalResult (можно назначить на кнопку). Это что-бы с Tag не мучаться: В форме TFormAnketa на кнопку OK ставишь mrOK, на кнопку Отмена ставишь mrCancel. тогда в коде можно писать так: Код:
procedure TFormJrn.Button2Click(Sender: TObject);
begin
ADOTableAnketa.Append;
ADOTableAnketaKod_Pc.Value:=ADOTablePacientKod_Pc.Value;
ADOTableAnketa.Active; // Вот это для чего не понял...
If FormAnketa.ShowModal = mrOk
Then
begin
ADOTableAnketaData.Value:=FormAnketa.DateTimePicker1.Date;
ADOTableAnketa.Post;
end
Else ADOTableAnketa.Cancel;
end; |
|
#3
|
|||
|
|||
|
Спасибо но я не про это спрашивал. Post выдает ошибку.
|
|
#4
|
|||
|
|||
|
Какую ошибку, какой из 2х постов? Тут телепатов нет.
ЗЫ. Кстати, как я понимаю, поле ADOTableAnketaKod_An это что-то типа автоинкремента. А кто будет за тебя получать значение этого поля в ADOTableAnketa после Post? Автоматически оно не заполняется в этом случае. Последний раз редактировалось lmikle, 14.01.2025 в 18:19. |