hab jetzt das ganze WE damit verbracht den fehler zu beheben:
eigentlich hat alles funktioniert(post usw.)
plötzlich führt er den post aber nicht mehr aus
hier der
code:
Delphi-Quellcode:
function TFrmKategorieErstellen.SaveNew(TblKat,TblFarb:TADOTable; EdtName:TEdit):Boolean;
var
HoechsteNr: Integer;
begin
TblKat.Active := True;
TblFarb.Active := True;
TblKat.Append;
TblFarb.Append;
TblKat.FieldByName('
KategorieName').AsString := Edtname.Text;
TblKat.FieldByName('
KategorieArtEinnahme').AsBoolean := rdbEinnahme.Checked;
//KategorieNr ermitteln
with Datamodule1.AdoQuery1
do
begin
active := false;
Sql.Clear;
Sql.Add('
Select Max(KategorieNr) As HoechsteNr');
Sql.Add('
from TblKategorie');
active := true;
HoechsteNr := FieldByName('
HoechsteNr').AsInteger;
end;
TblKat.FieldByName('
KategorieNr').AsInteger := (HoechsteNr + 1);
TblFarb.FieldByName('
FarbcodeNr').AsInteger := clb.ItemIndex;
TblFarb.FieldByName('
FarbCodeText').AsString := ColorToString(clb.selected);
TblKat.FieldByName('
FarbCode').AsInteger := TblFarb.FieldByName('
FarbCodeNr').AsInteger;
try
TblKat.Post;
TblFarb.Post;
Result := True;
except
on E:
Exception do
begin
Application.MessageBox('
Farbe bereits in Verwendung!','
Warnung',48);
TblKat.Cancel;
TblFarb.Cancel;
Result := False;
end;
end;
end;
beim debuggen bleibt er bei der ersten post anweisung stehen...
keine ahnung warum...