| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Редактирование данных в таблице |
| Автор: NiJazz 3.4.2004, 15:18 |
| Есть таблица на диске. В программе есть компонент TTable или TQuery, связанный с ней. Через DataSource связана таблица с компонентами Data Controls. Если менять модержимое, например, TDBEdit, то меняется сразу и содержимое таблицы. Можно сделать так, чтобы не менялось, но менялось лишь содержимое поля Text? Может, свойство какое есть. Не хочется использовать OldValue набора данных. |
| Автор: Vit 3.4.2004, 15:35 |
| Использовать обычный TEdit, а переброску данных туда-сюда делать уже в коде. |
| Автор: NiJazz 3.4.2004, 15:52 |
| Vit А с TDBEdit никак? |
| Автор: Akella 5.4.2004, 11:08 |
| в языке SQL есть понятие OLDVALUE или что в этом роде. Может есть такое понятие в еомпоненте TTable или TQuery а можно запоминать значение поля перед редактированием. А можно использовать такой код procedure TfmMain.actAptAddExecute(Sender: TObject); Var RecNum:Integer; begin//добавляем поставщика with tApt do begin RecNum:=tApt.RecNo; ... что-то делаем перед добавлением или редактирование Append;//или Edit; fmAptEdit - форма с компонентами DBControls fmAptEdit:=TfmAptEdit.Create(self); fmAptEdit.Caption:='Добавить нового поставщика'; if fmAptEdit.Showmodal=mrOK then begin Post; end else begin Cancel; RecNo:=RecNum; end; FreeAndNil(fmAptEdit); end;//with end; |
| Автор: Serggggg 5.4.2004, 12:50 |
| NiJazz, в принципе, до POST'а никакие изменения в таблицу не вносятся. Во всяком случае, можешь попробовать использовать обработчик BeforePost для этой таблицы. Например, диалог "Не хотите ли сохранить?". Тогда OK=Post, Cancel=Rollback. |