Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 13.01.2025, 16:00
Volhv Volhv вне форума
Прохожий
 
Регистрация: 14.01.2013
Сообщения: 3
Версия Delphi: XE3
Репутация: 10
По умолчанию Как выйти из режима редактирования

Вызваю форму для ввода данных в форме 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  
Старый 13.01.2025, 20:34
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,075
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

А так:
Код:
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  
Старый 13.01.2025, 22:35
Volhv Volhv вне форума
Прохожий
 
Регистрация: 14.01.2013
Сообщения: 3
Версия Delphi: XE3
Репутация: 10
По умолчанию

Спасибо но я не про это спрашивал. Post выдает ошибку.
__________________
Начинающий
Ответить с цитированием
  #4  
Старый 14.01.2025, 18:16
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,075
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Какую ошибку, какой из 2х постов? Тут телепатов нет.

ЗЫ. Кстати, как я понимаю, поле ADOTableAnketaKod_An это что-то типа автоинкремента. А кто будет за тебя получать значение этого поля в ADOTableAnketa после Post? Автоматически оно не заполняется в этом случае.

Последний раз редактировалось lmikle, 14.01.2025 в 18:19.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:21.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter