Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi In Prozedure auf Ereignis aus BeforePost reagieren (https://www.delphipraxis.net/80900-prozedure-auf-ereignis-aus-beforepost-reagieren.html)

Ines 17. Nov 2006 09:25


In Prozedure auf Ereignis aus BeforePost reagieren
 
Hallo,

um lästige Tipparbeit zu sparen kann der Nutzer in einem Grid mehrere Einträge markieren und einen Wert aus einer ComboBox auswählen - dieser wird dann in alle markierten Sätze eingetragen.

Beim Wechseln zum nächsten Datensatz wird die Procedure "BeforePost" durchlaufen. Dort werden einige Plausibilitätsprüfungen durchgeführt. Hat der Nutzer jetzt einen Wert ausgewählt der gegen die Plausibilität "verstößt" - so erhält er für jeden markierten Satz im Grid eine Fehlermeldung.

Delphi-Quellcode:
   
    with grid do
    begin
      grid.DataSource.DataSet.DisableControls;

      for i := 0 to SelectedList.Count - 1 do
      begin
        grid.DataSource.DataSet.GotoBookmark(SelectedList.items[i]);
        if grid.DataSource.DataSet.State in [dsBrowse] then
          grid.DataSource.DataSet.Edit;
        grid.DataSource.DataSet.FieldByName('Status').AsString := wert;
      end;
      grid.DataSource.DataSet.EnableControls;
    end;

procedure TFrm_Patient_STP.SQL_LeistungBeforePost(DataSet : TDataSet);
  if SQL_LeistungLJAHR.AsInteger >= 2006 then
  begin
    if not station_ueberpruefen(....) then
    begin
      Abort;
      Exit;
    end;

    if (not fallnummer_ueberpruefen(SQL_Leistung) then
    begin
      Abort;
      Exit;
    end;
  end;
 
  usw.....
end;
Meine Frage : Gibt es einen "eleganten" Weg, um auf die Meldungen von BeforePost reagieren zu können. Ich würde gerne nach der ersten Fehlermeldung das Abarbeiten des Grid stoppen. Oder muß ich mir mit einer Variablen (Boolean) helfen?
Danke und viele Grüße
Ines


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz