Topic: Дублирование записей, если кнопка сохранения не закрывает форму

Есть форма с TableGrid со списком проектов и форма редактирования проекта.
На форме редактирования проекта есть кнопка Save.
Снимаем на ней флаг "Закрыть текущую форму после сохранения".
Открываем какую либо запись из TableGrid для редактирования проекта.
Жмем несколько раз на кнопку сохранения проекта. Форма, естественно, не закрывается.
Но, в БД появляются дубли записи данного проекта в количестве равным кол-ву нажатий - 1!!!
Очевидно, кнопка "Сохранить" помнит id нужной записи только при первом нажатии.
На всех последующие нажатия она вставляет новую запись!!!
Это не особенность именно моего кода - это общая проблема.
Проверил на тестовых примерах.
Как побороть это?

Re: Дублирование записей, если кнопка сохранения не закрывает форму

ну все правильно у Вас открыта форма для добавления новой записи, соответсвенно логично при нажатии сохранить создается новая запись. это не общая проблема это принцип работы. что вы хотите в итоге: чтоб бы не записывался дубль, или чтобы изменялись измененые значения (тогда надо открывать запись для редактирования)

Re: Дублирование записей, если кнопка сохранения не закрывает форму

pt.82 - читайте внимательно: форма бала открыта для редактирования записи, а не для создания новой. Если нажали Сохранить без закрытия, то режим редактирования не должен сам переключаться на создание новой записи!

Re: Дублирование записей, если кнопка сохранения не закрывает форму

Создайте событие OnClick для кнопки с действием "Сохранить запись", это предотвратит создание дубликатов.

procedure Form1_buttonSave_OnClick (Sender: string; Action: string);
begin
    Form1.buttonSave.dbDontResetID := True; 
end;
Dmitry.

Re: Дублирование записей, если кнопка сохранения не закрывает форму

Ок.
Работает.
Спасибо!