Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Kontrolle vorm speichern (https://www.delphipraxis.net/93231-kontrolle-vorm-speichern.html)

MCOP2001DE 2. Jun 2007 23:55

Datenbank: Access • Version: 2003 • Zugriff über: ADO

Kontrolle vorm speichern
 
Hallo

Ich habe folgendes Problem.

Ich muss vor dem Speichern des Datensatzes die Felder Überprüfen ob diese Ausgefüllt werden da ein speichern sonst nicht möglich ist. Ich habe mir einen Label L_Freigabe angelegt indem ich bei jedem ausgefüllten Feld + 1 addiren möchte so das ich am ende auf 22 komme und nur dan soll die Speicherung erfolgen. Es wird aber keine Rechnung vorgenommen ich bekomme dan auch von dem Progamm keine Fehlermeldung.

Der Code sieht so aus:

Delphi-Quellcode:
procedure TServicedetails.B_SpeichernClick(Sender: TObject);
begin
if L_Freigabe.Caption < '22' then
 begin
 if E_Serviceberichtnr.Text = '2000' then
  begin
   Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Serviceberichtnr.';
   Mainframe.Fehlermeldung.L_Zusatz.Caption := 'ergänzen';
   Mainframe.Fehlermeldung.Show;
  end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

 if CB_Zustand.Text = '' then
  begin
   Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Zustand';
   Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste Auswählen';
   Mainframe.Fehlermeldung.Show;
  end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

 if E_Maengel.Text = '' then
  begin
   Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Endeckte Mängel';
   Mainframe.Fehlermeldung.L_Zusatz.Caption := 'eintragen';
   Mainframe.Fehlermeldung.Show;
  end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

 if CB_Taupunkt.Text = '' then
  begin
   Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Taupunktmessung';
   Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
   Mainframe.Fehlermeldung.Show;
  end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_L1.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'L1';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'oder eine 0 eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_L2.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'L2';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'oder eine 0 eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_L3.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'L3';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'oder eine 0 eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_N.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'N';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'oder eine 0 eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_PE.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'PE';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'oder eine 0 eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Wartungssiegel.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Wartungssiegel';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_naechste_Wartung.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'nächste Wartung';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'im Datumsformat TT.MM.JJJJ eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

   if CB_Komponenten.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Komponenten auf Verschleiß...';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Elektische.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Elektrische Komponenten...';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Schrauben.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Schraub- und Steckverbindungen...';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Pneumatische.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Pneumatische Einrichtungen...';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Ventilgruppen.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Ventilgruppen geprüft ...';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Dichtungen.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Dichtungen geprüft';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Filter.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Filter gereinigt ggf. erneuert';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Schlaeuche.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Schläche überprüft';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if CB_Grundreinigung.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Grundreinigung';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'aus der Liste auswählen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_Bemerkungen.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Bemerkungen';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'oder "keine" eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;

  if E_Reparaturzeit.Text = '' then
   begin
    Mainframe.Fehlermeldung.L_Bezeichner.Caption := 'Reparaturzeit';
    Mainframe.Fehlermeldung.L_Zusatz.Caption := 'oder 0 eintragen';
    Mainframe.Fehlermeldung.Show;
   end
 else;
  Begin
   L_Freigabe.Caption := L_Freigabe.Caption + '1';
  end;
  end
 else;
  begin
 if L_Freigabe.Caption = '' then
  begin
   Tabellen.TAB_Servicebericht.Active := True;
   Tabellen.TAB_Servicebericht.Insert;
   Tabellen.TAB_Servicebericht.FieldByName('Anlagen_ID').Value     := Mainframe.Hauptseite.DBT_Anlagen_ID.Caption;
   Tabellen.TAB_Servicebericht.FieldByName('Datum').AsDateTime     := DTP_Datum.Date;
   Tabellen.TAB_Servicebericht.FieldByName('Zustand').Value        := CB_Zustand.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Maengel').Value        := E_Maengel.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Taupunkt').Value       := CB_Taupunkt.Text;
   Tabellen.TAB_Servicebericht.FieldByName('L1').Value             := E_L1.Text;
   Tabellen.TAB_Servicebericht.FieldByName('L2').Value             := E_L2.Text;
   Tabellen.TAB_Servicebericht.FieldByName('L3').Value             := E_L3.Text;
   Tabellen.TAB_Servicebericht.FieldByName('N').Value              := E_N.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Erde').Value           := E_PE.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Wartungssiegel').Value := CB_Wartungssiegel.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Datumnaechste').Value  := E_Naechste_Wartung.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Komponenten').Value    := CB_Komponenten.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Elektrische').Value    := CB_Elektrische.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Verbindungen').Value   := CB_Schrauben.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Pneumatische').Value   := CB_Pneumatische.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Ventilgruppen').Value  := CB_Ventilgruppen.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Dichtungen').Value     := CB_Dichtungen.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Filter').Value         := CB_Filter.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Schlaeche').Value      := CB_Schlaeuche.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Grundreinigung').Value := CB_Grungreinigung.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Wartungs_ID').Value    := L_Warungsarbeiten_ID.Caption;
   Tabellen.TAB_Servicebericht.FieldByName('Arbeiten_ID').Value    := L_Arbeiten_ID.Caption;
   Tabellen.TAB_Servicebericht.FieldByName('Berichtnummer').Value  := E_Serviceberichtnr.Text;
   if Mainframe.Ersatzteile1.L_Verbrauchs_ID1.Caption > '0' then
    begin
     Tabellen.TAB_Servicebericht.FieldByName('Ersatzteil_ID1').Value := Mainframe.Ersatzteile1.L_Verbrauchs_ID1.Caption;
    end;
   if Mainframe.Ersatzteile1.L_Verbrauchs_ID2.Caption > '0' then
    begin
     Tabellen.TAB_Servicebericht.FieldByName('Ersatzteil_ID2').Value := Mainframe.Ersatzteile1.L_Verbrauchs_ID2.Caption;
    end;
   if Mainframe.Ersatzteile1.L_Verbrauchs_ID3.Caption > '0' then
    begin
     Tabellen.TAB_Servicebericht.FieldByName('Ersatzteil_ID3').Value := Mainframe.Ersatzteile1.L_Verbrauchs_ID3.Caption;
    end;
   if Mainframe.Ersatzteile1.L_Verbrauchs_ID4.Caption > '0' then
    begin
     Tabellen.TAB_Servicebericht.FieldByName('Ersatzteil_ID4').Value := Mainframe.Ersatzteile1.L_Verbrauchs_ID4.Caption;
    end;
   if Mainframe.Ersatzteile1.L_Verbrauchs_ID5.Caption > '0' then
    begin
     Tabellen.TAB_Servicebericht.FieldByName('Ersatzteil_ID5').Value := Mainframe.Ersatzteile1.L_Verbrauchs_ID5.Caption;
    end;
   Tabellen.TAB_Servicebericht.FieldByName('Bemerkung').Value    := E_Bemerkungen.Text;
   Tabellen.TAB_Servicebericht.FieldByName('Reparaturzeit').Value  := E_Reparaturzeit.Text;
   Tabellen.TAB_Servicebericht.Post;
   Mainframe.Ersatzteile1.L_Zaehler.Caption := '';
   Mainframe.Ersatzteile1.L_Verbrauchs_ID1.Caption := '';
   Mainframe.Ersatzteile1.L_Verbrauchs_ID2.Caption := '';
   Mainframe.Ersatzteile1.L_Verbrauchs_ID3.Caption := '';
   Mainframe.Ersatzteile1.L_Verbrauchs_ID4.Caption := '';
   Mainframe.Ersatzteile1.L_Verbrauchs_ID5.Caption := '';
   B_Ersatzteile.Enabled := True;
   CB_Zustand.Text := '';
   E_Maengel.Text := '';
   CB_Taupunkt.Text := '';
   E_L1.Text := '';
   E_L2.Text := '';
   E_L3.Text := '';
   E_N.Text := '';
   E_PE.Text := '';
   CB_Wartungssiegel.Text := '';
   E_Naechste_Wartung.Text := '';
   CB_Komponenten.Text := '';
   CB_Elektrische.Text := '';
   CB_Schrauben.Text := '';
   CB_Pneumatische.Text := '';
   CB_Ventilgruppen.Text := '';
   CB_Dichtungen.Text := '';
   CB_Filter.Text := '';
   CB_Schlaeuche.Text := '';
   CB_Grungreinigung.Text := '';
   L_Warungsarbeiten_ID.Caption := '';
   L_Arbeiten_ID.Caption := '';
   E_Bemerkungen.Text := '';
   E_Reparaturzeit.Text := '';
   E_Serviceberichtnr.Text := '2000';
   B_Drucken.Enabled := True;
  end;
end;
Kann mir jemand helfen??

Danke in voraus

Mcop2001de

inherited 3. Jun 2007 00:00

Re: Kontrolle vorm speichern
 
Doppelpost: http://www.delphipraxis.net/viewtopi...=730610#730610

DeddyH 3. Jun 2007 00:00

Re: Kontrolle vorm speichern
 
Hallo, wieso so umständlich? Deklariere doch einfach eine Integer-Variable, die Du dann hochzählst. Bei der Vorgehensweise
Delphi-Quellcode:
L_Freigabe.Caption := L_Freigabe.Caption + '1';
erreichst Du nur, dass an den String L_Freigabe.Caption eine 1 angehangen wird. Das sieht dann z.B. so aus:

Wert: 1
Wert: 11
Wert: 111
etc.

Cyberbob 3. Jun 2007 00:14

Re: Kontrolle vorm speichern
 
Als anmerkung. Einfach durch
Delphi-Quellcode:
L_Freigabe.Caption := StrToInt(L_Freigabe.Caption) + 1;
ersetzen

DeddyH 3. Jun 2007 00:16

Re: Kontrolle vorm speichern
 
Wenn, dann
Delphi-Quellcode:
L_Freigabe.Caption := IntToStr(StrToInt(L_Freigabe.Caption) + 1);
Funktioniert allerdings nur, wenn die Beschriftung rein numerisch ist.

MCOP2001DE 3. Jun 2007 00:26

Re: Kontrolle vorm speichern
 
Hallo

Danke erstmal für die schnelle Antwort

Die Beschriftung ist rein nummerisch aber beim ausführen bekomme ich jetzt die Fehlermeldung ist kein gültiger Integerwert


Mcop2001de

DeddyH 3. Jun 2007 00:34

Re: Kontrolle vorm speichern
 
Was ist kein gültiger Integer-Wert? Hast Du evtl. Leerzeichen n der Beschriftung o.ä?

MCOP2001DE 3. Jun 2007 00:37

Re: Kontrolle vorm speichern
 
Nein das Caption des Labels ist leer oder muss ich dort eine 0 eintragen?

MCOP2001de

Cyberbob 3. Jun 2007 01:52

Re: Kontrolle vorm speichern
 
Ja, im Caption uss unbedingt eine ZAHL stehen. Sobald du dort einen String oder nichts stehen hat, bekommst du ne Fehlermeldung!

MCOP2001DE 3. Jun 2007 08:16

Re: Kontrolle vorm speichern
 
Ja Danke
es funktioniert

Mcop2001de


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:15 Uhr.
Seite 1 von 2  1 2      

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