Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#58

AW: Procedure in Procedure aufrufen klappt nicht

  Alt 20. Jan 2020, 19:48
// hier soll die untere procedure nochmal aufgerufen werden,klappt aber nicht
Wieso nicht?
Text der Fehlermeldung oder so.

Für deine Prozeduren Methoden gibt es in der Typ-Deklaration quasi eine Forward-Deklaration, womit diese Funktion an jener Stelle natürlich bereits bekannt ist. (innerhalb des selben Typen)

PS:
[DELPHI]
dein Delphi-Code
[/DELPHI]


[EDIT]
Du willst die Funktion nicht selber aufrufen, sondern es soll "neu" gefiltert werden?
Hängt die Methde auch wirklich am DataSet.OnFilterIrgendwas dran?
Oder wenn sich das Filterkriteitum geändert hat (die Auswertung im Dbf2BestandFilterRecord), dann einfach
Delphi-Quellcode:
procedure TForm1.Pg3ausgabeExit(Sender: TObject);
begin
  Dbf2Bestand.Filtered:=false;
  Dbf2Bestand.Filtered:=true;
end;
PS: Wie bei vielen Events bekommt man das "richtige" Objekt als Parameter (z.B. oftmals das "Sender") mit rein.
Delphi-Quellcode:
procedure TForm1.Dbf2BestandFilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
  Accept := DataSet.FieldByName('ORT').AsString = 'LAGER';
end;
Ist praktischer, um solche Funktionen wiederverwenden zu konnen und knall nicht, wenn man sich mal beim Namen verschreibt (Dank Autovervollständigung den falschen Namen erwischt) oder wenn die Komponente umbenannt wurde.
$2B or not $2B

Geändert von himitsu (20. Jan 2020 um 19:58 Uhr)
  Mit Zitat antworten Zitat