Also, wenn ich das richtig verstehe ist nach:
Delphi-Quellcode:
procedure TFramePlannung.TimerPlanungTimer(Sender: TObject);
begin
DatamodulePlannung.DataModule5.IBDataSetGridPlannung.Close;
end;
das Grid leer.
Was ist denn dann mit:
Delphi-Quellcode:
procedure TFramePlannung.TimerPlanungTimer(Sender: TObject);
begin
DatamodulePlannung.DataModule5.IBDataSetGridPlannung.Close;
ShowMessage('isetnuleer?');
Datamodule5.IBDatabasePlannung.DatabaseName := dbpfad;
DatamodulePlannung.DataModule5.IBDataSetGridPlannung.Open;
ShowMessage('Jetzsehemerwiederwatt?');
end;
Ist das Grid beim ersten ShowMessage leer und beim zweiten wieder gefüllt?
Dann geht das Neuladen wohl ohne die ShowMessages so schnell, dass man es nicht sieht.
Und wenn sich nix an den Daten geändert hat, dann sieht man halt auch keinen Unterschied.
Ansonsten mal ein bisserl ändern:
Delphi-Quellcode:
procedure TFramePlannung.TimerPlanungTimer(Sender: TObject);
begin
Screen.Cursor := crSQLWait;
DatamodulePlannung.DataModule5.IBDataSetGridPlannung.Close;
Datamodule5.IBDatabasePlannung.DatabaseName := dbpfad;
DatamodulePlannung.DataModule5.IBDataSetGridPlannung.Open;
Screen.Cursor := crDefault;
end;
Wenn dann die
SQL-Sanduhr übrig bleibt, ist (eventuell) irgendwo eine
Exception (meldungslos) abgefangen worden und die Routine wird nicht vollständig ausgeführt.
Allerdings würd' ich dann bei 'nem erfolgreichen Close ein leeres Grid erwarten.