Einzelnen Beitrag anzeigen

EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
415 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#13

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 16:16
nach den Vorschlägen von K.H sieht meine Procedure für den neuen Testbutton so aus:
Delphi-Quellcode:
procedure TMainFrm.btnTestInput1Click(Sender: TObject);
var
  CurrentCustomerID: string;
begin
  qryMain.SQL.Clear;
  qryMain.Params.Clear;
   if IsEdit then
begin
  CurrentCustomerID := lvProductList.Selected.Caption;
  qryMain.SQL.Text := 'UPDATE WARENVERKAUF1 SET KDNR=:KDNR,NAME=:NAME,VORNAME=:VORNAME,FIRMA=:FIRMA,PRODUKT=:PRODUKT,ANZAHL=:ANZAHL,PREIS=:PREIS WHERE ID = 2';
  qryMain.ParamByName('ID').AsString := CurrentCustomerID;
  qryMain.ParamByName('Anzahl').asInteger:=strtoint(edtTestInput.text);
  qryMain.ExecSQL;
  qryMain.Close;
  qryMain.SQL.Text := 'SELECT ID,KDNR,NAME,VORNAME,FIRMA,PRODUKT,ANZAHL,PREIS FROM WARENVERKAUF1';
  qryMain.Open;
   while not qryMain.EOF do
   begin
     CurrentCustomerID:=qryMain.Fields.Fieldbyname('ID').asstring;
        edtCustomerNumber.Text := qryMain.FieldByName('KDNR').AsString;
        EdtName.Text := qryMain.FieldByName('NAME').AsString;
        EdtVorname.Text := qryMain.FieldByName('VORNAME').AsString;
        EdtFirma.Text := qryMain.FieldByName('FIRMA').AsString;
        EdtProdukt.Text := qryMain.FieldByName('PRODUKT').AsString;
        EdtAnzahl.Text := qryMain.FieldByName('ANZAHL').Asstring;
        EdtPreis.Text := qryMain.FieldByName('PREIS').Asstring;
        qryMain.Next;
   end;
    qryMain.close;
  qryMain.ExecSQL;
  RefreshItems(CurrentCustomerID, edtCustomerNumber.Text, EdtName.Text, EdtVorname.Text, EdtFirma.Text, EdtProdukt.Text, EdtAnzahl.Text, EdtPreis.Text);
end;
end;
Hoffentlich ist das richtig. Er läuft jedenfalls durch.
Mein Debug-Versuch ist gescheitert, denn er durchläuft mit F7 (einzelne Schritte) den Weg bis nach Wladiwostock. Ein Haltepunkt auf die obige Proc. brachte auch nichts, denn da geht es um die Eingaben. und ich kann sogar "Hundehütte" eingeben, wenn ich das Wort in Integer umwandeln könnte. Die Anzahl bei Lehmann bleibt immer gleich.Habe ich die Update - Where-Bedingung und nachfolgend die ParamByName Werte richtig eingesetzt?
Wo ist der Hund für die Hundehütte?
Norbert
  Mit Zitat antworten Zitat