AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi cout(*) anweisung hat fehler...
Thema durchsuchen
Ansicht
Themen-Optionen

cout(*) anweisung hat fehler...

Ein Thema von Sulustaner2004 · begonnen am 17. Mär 2004 · letzter Beitrag vom 19. Mär 2004
 
Sulustaner2004

Registriert seit: 14. Jan 2004
106 Beiträge
 
Delphi 7 Professional
 
#18

Re: cout(*) anweisung hat fehler...

  Alt 18. Mär 2004, 10:40
sorry aber ich steh heute ein bischen neben mir...was meintest du jetzt ???

Delphi-Quellcode:
 SetCount := 0;
  // Arraylänge auf Anzahl der TEdits
  SetLength(SetVals, CompNames.Count);
  With ADOQuery1 Do
  Begin
    // Gibt es Einträge zu diesem Bearbeiter?
    SQL.Text :=
      'SELECT Count(*)' + #10 +
      'FROM dbo_VFL_VERZ_TEMP t' + #10 +
      'WHERE t.Bearbeiter = :i_Bearbeiter';
    Prepared := True;
    Parameters.ParamByName('i_Bearbeiter').Value := TB_Bearbeiter.Text;

    // Ausführen
    Open;
    If Eof Or (Fields[0].AsInteger = 0) Then
      ProcessedRecs := 0
    Else
      ProcessedRecs := Fields[0].AsInteger;
    SetStr := '';
    For i := 0 To pred(CompNames.Count) Do
    Begin
      With FindComponent(CompNames[i]) As TEdit Do
        If Text <> 'Then
        Begin
          // Wenn Edit <> '' -> Wert in den Array & Spalte kommt mit in die SET-Clause...
          SetVals[SetCount] := Text;
          // Einträge > 0 UPDATE sonst INSERT
          If ProcessedRecs > 0 Then
            SetStr := SetStr + ',' + #10 + ' ' + Fieldnames[i] + ' = :i_F' + IntToStr(SetCount)
          Else
            SetStr := SetStr + ',' + #10 + ' ' + Fieldnames[i];

          inc(SetCount);
        End;
    End;

    // Wenn ein INSERT benötigt wird, dann muss hier noch die Liste mit Parametern stehen
    If ProcessedRecs = 0 Then //hier gleich null lassen und was soll ich mit der count abfrage machen ???
    Begin
      // Bearbeiter muss auf jeden Fall eingefügt werden
      SetStr :=
        'INSERT INTO dbo_VFL_VERZ_TEMP ' + #10 +
        ' (Bearbeiter ' + SetStr + ')' + #10 +
        'VALUES ( :i_Bearbeiter' + #10;
      // Fülle die Value liste mit Parametern (für jeden geänderten Wert
      For i := 0 To pred(SetCount) Do
        SetStr := SetStr + ',' + #10 + ':i_F' + IntToStr(i);

      SetStr := SetStr + ')'

      // Das INSERT-Statement sollte dann so aussehen...
      //INSERT INTO dbo_VFL_VERZ_TEMP t
      // (Bearbeiter
      // ,Feld1
      // ,Feld2
      // ...)
      //VALUES ( :i_Bearbeiter,
      // ,:i_F1
      // ,:i_F2
      // ... )

    End
    Else
      SetStr :=
        'UPDATE dbo_VFL_VERZ_TEMP t' + #10 +
        'SET ' + Copy(SetStr, 10, Length(SetStr)) + #10 +
        'WHERE t.Bearbeiter = :i_Bearbeiter';

    // Das UPDATE-Statement sollte dann so aussehen...
    //UPDATE dbo_VFL_VERZ_TEMP t
    //SET Feld1 = :i_F1
    // ,Feld2 = :i_F2
    // ...
    //WHERE t.Bearbeiter = :i_Bearbeiter

    // Wenn SetCount > 0 -> Führe Abfrage aus...
    If Setcount = 0 Then
    Begin
      SQL.Text := SetStr;
      Prepared := True;
      Parameters.ParamByName('i_Bearbeiter').Value := TB_Bearbeiter.Text;
      // Werte der Paramter :i_F(1 - ...)
      For i := 0 To pred(SetCount) Do
        Parameters.ParamByName('i_F' + IntToStr(i)).Value := SetVals[i];
      // Ausführen
      ExecSQL;
      //memo1.Text:=adoquery1.SQL.Text;
    End;
  End;
sollte diese If ProcessedRecs = 0 Then anweisung gleich null sein oder auf was wolltest du raus ???
Und das leben geht weiter.....
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:12 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