Hallo...
wieso benutzt Du 2 TTable Komponenten ?
es reicht eine...
MainForm:
- TTable 'Table1' ( DatabaseName / TableName auf File setzen )
- TDatasource 'Datasource1' ( Datasource auf Tabelle Table1 setzen )
Form2:
- DbGrid 'DbGrid1' ( Datasource auf Datasource1 setzen )
Edits auf Form1 wie gehabt...
Code wie gehabt...
Delphi-Quellcode:
procedure TfrmEditArt.Button1Click(Sender: TObject);
begin
Table1.Append;
Table1.FieldValues['ArtNr'] := edtArtNr.text;
Table1.FieldValues['ArtBez1'] := edtArtBez1.text;
Table1.FieldValues['ArtBez2'] := edtArtBez2.text;
Table1.FieldValues['MwSt'] := FloatToStr(mwst);
Table1.FieldValues['Nettopreis'] := edtPreisNetto.text;
Table1.Post;
end;
...das einzige: beim Start des Programmes Table1.Active:= True, beim Beenden False.
Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
begin
Table1.Active:= True;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Table1.Active:= False;
end;
Das ganze Active:= True / False und Refresh kannst du dir schenken.
durch Post wird automatisch Refresh aufgerufen....
Ich denke, das das Durcheinander zustande kommt wegen der 2 Tabellenkomponenten, welche noch auf das gleiche File verbunden sind.