Danke für die vielen Hinweise. Hab mal nen Tag Abstand von dem Problem genommen ( neue Baustellen aufgemacht
) und jetzt klappt es.
Wünsche noch einen schönen Tag
Grüße
Für die Interessierten hier noch der Code:
Aufruf durch folgende Procedure
Delphi-Quellcode:
procedure TAuftrag_form.Ersatzteil_sourceDataChange(Sender: TObject;
Field: TField);
begin
if Auftrag_form.Active then
begin
if not busy then
begin
BestellbtnCreate();
end;
end;
end;
und die Bearbeitung des Grids
Delphi-Quellcode:
procedure TAuftrag_form.BestellbtnCreate();
var
i:integer;
SavePlace: TBookmark;
begin
busy :=true;
SavePlace:=dbadvgrid4.DataSource.DataSet.GetBookmark;
DBAdvGrid4.DataSource.DataSet.First;
if DBAdvGrid4.DataSource.DataSet.Eof then
begin
DBAdvGrid4.RemoveButton(7,1);
end else
begin
while not DBAdvGrid4.DataSource.DataSet.Eof do
begin
if Ersatzteil_DatasetBestellt.Value then
begin
DBAdvGrid4.RemoveButton(7,DBAdvGrid4.Row);
end else
begin
DBAdvGrid4.AddButton(7,DBAdvGrid4.Row,50,15,'Bestellen',TCellHAlign(2),TCellVAlign(2));
end;
DBAdvGrid4.DataSource.DataSet.Next;
end;
end;
DBAdvGrid4.DataSource.DataSet.GotoBookmark(SavePlace);
busy:=false;
end;