AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken gesonderte Ergebnisberechnung in DB-Tab eingeben

gesonderte Ergebnisberechnung in DB-Tab eingeben

Ein Thema von EdAdvokat · begonnen am 11. Apr 2017 · letzter Beitrag vom 13. Apr 2017
Antwort Antwort
Seite 2 von 3     12 3   
EdAdvokat

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

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 15:39
Hoffentlich stelle ich mich nicht zu blöd an. So sieht nun die neue ButtonClick-Procedure 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.SQL.Text := 'SELECT ID,KDNR,NAME,VORNAME,FIRMA,PRODUKT,ANZAHL,PREIS FROM WARENVERKAUF1';
  qryMain.ExecSQL;
  RefreshItems(CurrentCustomerID, edtCustomerNumber.Text, EdtName.Text, EdtVorname.Text, EdtFirma.Text, EdtProdukt.Text, EdtAnzahl.Text, EdtPreis.Text);
end;
end;
Ich bin nicht sicher, ob ich Dein Hinweis richtig aufgenommen habe.
Zwischenzeitlich habe ich eine völlig neue Tabelle "Warenverkauf1" geschrieben. Dort ist der Lehmann (Beispiel) mit der ID 2 aufgeführt.
Reichen diese Angaben zum 2. Testbutton? Zusätzlich wie angemahnt ein SELECT eingefügt.
Norbert
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#12

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 15:51
in dem UPDATE muß es dann heißen Where ID=2 und für den SELECT
Delphi-Quellcode:
   qryMain.SQL.Text := 'SELECT ID,KDNR,NAME,VORNAME,FIRMA,PRODUKT,ANZAHL,PREIS FROM WARENVERKAUF1';
   qryMain.Open;
   while not qryMain.EOF do begin
     { hier die Werte übernehmen}
     idfeld:=qryMain.Fields.Fieldbyname('ID').asstring;
     ......
     qryMain.Next;
   end;
und ich packe immer vor und hinter jede Query noch ein .Close also
Delphi-Quellcode:
   qryMain.Close;
   qryMain.SQL.Text := 'SELECT ID,KDNR,NAME,VORNAME,FIRMA,PRODUKT,ANZAHL,PREIS FROM WARENVERKAUF1';
   qryMain.Open;
   while not qryMain.EOF do begin
     { hier die Werte übernehmen}
     idfeld:=qryMain.Fields.Fieldbyname('ID').asstring;
     ......
     qryMain.Next;
   end;
   qryMain.Close;
damit ich mir keinen Dreck einhandele.

Gruß
K-H

P.S.
das .Close natürlich auch vor das Update-Statement.
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (11. Apr 2017 um 15:54 Uhr)
  Mit Zitat antworten Zitat
EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
414 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
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#14

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 16:26
Zunächst:
Delphi-Quellcode:
   end;
     qryMain.close;
   qryMain.ExecSQL; {---------- das ist Quark!!}
   RefreshItems(CurrentCustomerID, edtCustomerNumber.Text, EdtName.Text, EdtVorname.Text, EdtFirma.Text, EdtProdukt.Text, EdtAnzahl.Text, EdtPreis.Text);
end;
dann würde ich den Update auf das/die Felder beschränken, die Du wirklich übergibst.
und er müßte Dich gewaltig anmeckern, da es keinen Parameter ":ID" mehr gibt, da ist irgendetwas oberfaul!

hab ich erst jetzt bemerkt, was hat es mit IsEdit auf sich?
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
EdAdvokat

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

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 16:53
das qryMain.ExecSQL habe ich reingenommen, um die SELECT - Anweisung auszuführen. Muss man nicht schreiben? Als wieder raus.
Die isEdit Var. dient lediglich der Button-Sichtbarkeit.
Aus der UPDATE Anweisung habe ich schon die Memos rausgenommen. Welche sollten noch raus. Es könnte doch später mal sein, dass auch ein Name oder ein Produkt verändert werden, oder sehe ich das falsch. Nehmt es mir nicht krumm.
Ich bin sowas von unbeleckt und schwebe zur Zeit ohne festen Boden nahe der Cloud 4 also noch vor Wolke 7, denn noch ist der Hund nicht gefangen.
Er meckert an keiner Stelle. Ím Anhang ist auch das ausführbare Kompilat und sollte so lauffähig sein.
Da ich die Daten sowohl der Tabelle Warenverkauf als auch Warenverkauf1 sowohl in den Editfeldern als auch in der ListView sehe, ist doch eine Verbindung zur Datenbank und zur dortigen Tabelle hergestellt.
Jetzt wäre es doch nach meinem Verständnis nur eine Frage der Selection des Datensatzes und des Feldes, dass mit der Neueingabe über das TestEditfeld manipuliert werden soll. Hierzu wäre doch nichts
in den TQSL-Komponenten einzustellen. Auch die Datenbanktabelle ist soweit unbedenklich. Sicher mache ich den Fehler bei der Selection oder der Zuweisung der entsprechenden Daten. Könnte ich
testweise welche Daten rausnehmen?
Ich danke Euch für Eure Geduld.
Norbert
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.288 Beiträge
 
Delphi 12 Athens
 
#16

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 18:52
Hallöle...
Zitat:
das .Close natürlich auch
immer wieder interessant wie sich manche Aussagen halten. Das CLOSE muß nicht hin. Die Query macht intern ein automatisch ein CLOSE im Ausführen vor dem Setzen des SQL.Text
Umkehrschluß: Ich habe noch nie ein Close benötigt.

Zitat:
hab ich erst jetzt bemerkt, was hat es mit IsEdit auf sich?
...aus seinem letzten Testprojekt...ein Flag für den Bearbeiten Modus. Hier nicht relevant.

Delphi-Quellcode:
procedure TMainFrm.btnTestInput1Click(Sender: TObject);
var
  CurrentCustomerID: string;
begin
  // qryMain.SQL.Clear; ! nicht notwendig -> raus
  // qryMain.Params.Clear; ! nicht notwendig -> raus
  if IsEdit then // Ist das Flag gesetzt?
  begin
  //richtig wenn die Selected.Caption auch die "2" enthällt. (Debugger)
  CurrentCustomerID := lvProductList.Selected.Caption;
  // es fehlen Parameter (die "2" wieder auf Parameter gesetzt)
  // benenne die Parameter mit 3 stelligen Kürzeln. Da siehst du was ist ein Parameter...
  // die Parameter im SQL müssen vorhanden sein
  
  // ENTWEDER bei kompletten Update
  qryMain.SQL.Text := 'UPDATE WARENVERKAUF1 SET KDNR = :KNR, NAME = :NAM, VORNAME = :VNA, FIRMA = :FIR,
                                    PRODUKT = :PRO, ANZAHL = :ANZ, PREIS = :PRE WHERE ID = :CID
';
  // das ist die ID für die Auswahl des Datensatzes (WHERE ID = :CID)
  qryMain.ParamByName('CID').AsString := CurrentCustomerID;
  // Hier gehören die Eingabefelder hin als Quelle für das UPDATE
  qryMain.ParamByName('KNR').AsString := edtCustomerNumber.Text;
  qryMain.ParamByName('NAM').AsString := edtName.Text;
  qryMain.ParamByName('VAN').AsString := edtVorname.Text;
  qryMain.ParamByName('FIR').AsString := edtFirma.Text;
  qryMain.ParamByName('PRO').AsString := edtProdukt.Text;
  qryMain.ParamByName('ANZ').AsInteger := StrToInt(edtTestInput.Text);
  qryMain.ParamByName('PRE').AsString := edtPreis.Text;
  
  // ODER nur die Anzahl
  qryMain.SQL.Text := 'UPDATE WARENVERKAUF1 SET ANZAHL = :ANZ WHERE ID = :CID';
  // das ist die ID für die Auswahl des Datensatzes (WHERE ID = :CID)
  qryMain.ParamByName('CID').AsString := CurrentCustomerID;
  qryMain.ParamByName('ANZ').AsInteger := StrToInt(edtTestInput.Text);
  
  // Ausführen des Updates
  qryMain.ExecSQL;
  // qryMain.Close; ! nicht notwendig -> raus
  
  // Alle Daten neu holen
  qryMain.SQL.Text := 'SELECT ID, KDNR, NAME, VORNAME, FIRMA, PRODUKT, ANZAHL, PREIS FROM WARENVERKAUF1';
  qryMain.Open;
  // Aktualisierung ListView
  while not qryMain.EOF do
    begin // Der "Datenszeiger" wird auf den nächsten Datensatz gesetzt
      RefreshItems(qryMain.FieldByName('ID').AsString;,
                   qryMain.FieldByName('KDNR').AsString,
                   qryMain.FieldByName('NAME').AsString,
                   qryMain.FieldByName('VORNAME').AsString,
                   qryMain.FieldByName('FIRMA').AsString,
                   qryMain.FieldByName('PRODUKT').AsString,
                   IntToStr(qryMain.FieldByName('ANZAHL').AsInteger),
                   qryMain.FieldByName('PREIS').AsString);
      // nächsten Datensatz auswählen
      qryMain.Next;
    end;
    //qryMain.close; ! nicht notwendig -> raus
    //qryMain.ExecSQL; ! nicht notwendig -> raus
  end;
end;
  Mit Zitat antworten Zitat
EdAdvokat

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

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 21:02
So nun der nächste Versuch Procedure btnTestInput1Click, also der neue Button für das neue InputEdit:
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.SQL.Text:= 'UPDATE Warenverkauf1 SET KDNR = :KNR, NAME = :NAM, VORNAME =: VNA, FORMA = : FIR, PRODUKT = : PRO, ANZAHL =: ANZ, PREIS = :PRE WHERE ID =CID';
  qryMain.ParamByName('CID').AsString := CurrentCustomerID;
  qryMain.ParamByName('NAM').AsString := EdtName.text;
  qryMain.ParamByName('VAN').AsString := EdtVorname.text;
  qryMain.ParamByName('FIR').AsString := EdtFirma.text;
  qryMain.ParamByName('PRO').AsString := EdtProdukt.text;
  qryMain.ParamByName('ANZ').asInteger:=strtoint(edtTestInput2.text);
  qryMain.ParamByName('PRE').AsString := EdtPreis.text;
  qryMain.ExecSQL;

  qryMain.SQL.Text := 'SELECT ID,KDNR,NAME,VORNAME,FIRMA,PRODUKT,ANZAHL,PREIS FROM WARENVERKAUF1';
  qryMain.Open;
   while not qryMain.EOF do
   begin
     RefreshItems(qryMain.FieldByName('ID').AsString,
                  qryMain.FieldByName('KDNR').AsString,
                  qryMain.FieldByName('Name').AsString,
                  qryMain.FieldByName('VORNAME').AsString,
                  qryMain.FieldByName('FIRMA').AsString,
                  qryMain.FieldByName('PRODUKT').AsString,
                  Inttostr(qryMain.FieldByName('ANZAHL').AsInteger),
                  qryMain.FieldByName('PREIS').AsString);
     qryMain.Next;
   end;
end;
end;
Es läuft wieder alles gut durch. (Kleinere Schreibfehler beseitigt). Ergebnis ist leider gleich. Geprüft, ob sich am Zeitstempel der Datentabelle nach der Eingabe was ändert. Es ändert sich nichts. Der Zeitstempel bleibt auf den Zeitpunkt der Erstellung 16:10 Uhr. Also in die Datenbank wird nichts Neues geschrieben über den gewählten Zugang. Leider. Es gibt auch keine Fehlermeldung an die man sich halten könnte. Ich kenne keine weitere Stellschraube, wo man prüfen oder ändern könnte. Ist das von mir angeregte Problem so exzotisch? Ich dachte, dass so etwas durchaus üblich wäre oder denke ich da völlig daneben?
Norbert
  Mit Zitat antworten Zitat
EdAdvokat

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

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 11. Apr 2017, 21:42
So nun die letzte Variante für heute:
Delphi-Quellcode:
procedure TMainFrm.btnTestInput1Click(Sender: TObject);
var
  CurrentCustomerID: string;
begin
  //if IsEdit then
begin
  CurrentCustomerID := lvProductList.Selected.Caption;
  qryMain.SQL.Text:= 'UPDATE WARENVERKAUF1 SET ANZAHL = :ANZ WHERE ID= :CID';
  //qryMain.SQL.Text:= 'UPDATE Warenverkauf1 SET KDNR = :KNR, NAME = :NAM, VORNAME = : VNA, FIRMA = : FIR, PRODUKT = : PRO, ANZAHL =: ANZ, PREIS = :PRE WHERE ID = :CID';
  qryMain.ParamByName('CID').AsString := CurrentCustomerID;
  //qryMain.ParamByName('KNR').AsString := edtCustomerNumber.text;
  //qryMain.ParamByName('NAM').AsString := EdtName.text;
  //qryMain.ParamByName('VNA').AsString := EdtVorname.text;
  //qryMain.ParamByName('FIR').AsString := EdtFirma.text;
  //qryMain.ParamByName('PRO').AsString := EdtProdukt.text;
  qryMain.ParamByName('ANZ').asInteger:=strtoint(edtTestInput2.text);
  //qryMain.ParamByName('PRE').AsString := EdtPreis.text;
  qryMain.ExecSQL;

  qryMain.SQL.Text := 'SELECT ID,KDNR,NAME,VORNAME,FIRMA,PRODUKT,ANZAHL,PREIS FROM WARENVERKAUF1';
  qryMain.Open;
   while not qryMain.EOF do
   begin
     RefreshItems(qryMain.FieldByName('ID').AsString,
                  qryMain.FieldByName('KDNR').AsString,
                  qryMain.FieldByName('Name').AsString,
                  qryMain.FieldByName('VORNAME').AsString,
                  qryMain.FieldByName('FIRMA').AsString,
                  qryMain.FieldByName('PRODUKT').AsString,
                  Inttostr(qryMain.FieldByName('ANZAHL').AsInteger),
                  qryMain.FieldByName('PREIS').AsString);
     qryMain.Next;
   end;
end;
end;
Also isEdit war wohl ein Störenfried. Habe ihn rausgenommen. in der Variante nur ID für Anzahl (s.o.) klappt es!!!
Er reagiert auf die Eingabe im Editfeld mit 66666 so, dass er mir die Datensätze kopiert und in der Kopie die Eingabe von 66666 aufführt. Beim Neustart ist dann in der Tabelle die 66666 exakt enthalten. Ist zwar komisch, doch es geht erst einmal.
Mit allen Feldern wollte er nicht und hat bereits bei VNA gemeckert, dass er VNA nicht kennen würde. Also dann zur Variante 2 - nur Anzahl übergegangen und hier das Ergebnis. Morgen will ich mir die Sache nochmals genauer ansehen.
Nochmals vielen Dank bislang. Wenn ihr eine Erklärung für das Verhalten haben solltet, wäre ich dankbar.
Jedenfalls klappt es mit dem obigen Code wie beschrieben.
Norbert
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.288 Beiträge
 
Delphi 12 Athens
 
#19

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 12. Apr 2017, 06:05
Halleluja...
Zitat:
if IsEdit then // Ist das Flag gesetzt?
...hatte ich doch gesagt.

Was fällt dir in den 3 Codeauszügen auf?
Delphi-Quellcode:
qryMain.SQL.Text := 'UPDATE WARENVERKAUF1 SET KDNR = :KNR, NAME = :NAM, VORNAME = :VNA, FIRMA = :FIR, PRODUKT = :PRO, ANZAHL = :ANZ, PREIS = :PRE WHERE ID = :CID';
...
RICHTIG (weil von mir): Leerzeichen als Abtrennung "Name = AR", Jeder Paramater ist ein : gefolgt von einem Kürzel "ID = :CID"
Delphi-Quellcode:
qryMain.SQL.Text:= 'UPDATE Warenverkauf1 SET KDNR = :KNR, NAME = :NAM, VORNAME =: VNA, FORMA = : FIR, PRODUKT = : PRO, ANZAHL =: ANZ, PREIS = :PRE WHERE ID =CID';
...
FALSCH: Manche Parameter haben kein : und andere ein Leezeichen im Namen (ANZAHL =: ANZ)
Delphi-Quellcode:
qryMain.SQL.Text:= 'UPDATE Warenverkauf1 SET KDNR = :KNR, NAME = :NAM, VORNAME = : VNA, FIRMA = : FIR, PRODUKT = : PRO, ANZAHL =: ANZ, PREIS = :PRE WHERE ID = :CID';
...
FALSCH: Manche Parameter haben ein Leezeichen im Namen (ANZAHL =: ANZ)...andere stimmen wieder. (ID = :CID)

Das das hier geht ist normal:
Delphi-Quellcode:
qryMain.SQL.Text:= 'UPDATE WARENVERKAUF1 SET ANZAHL = :ANZ WHERE ID= :CID';
.
...trotzdem: kein Leerzeichen als Abtrennung "ID= :CID"
Zitat:
Mit allen Feldern wollte er nicht und hat bereits bei VNA gemeckert, dass er VNA nicht kennen würde.
Logisch bei so vielen Tippfehlern...Parametername (siehe oben). Wie kriegt man das hin mit Copy/Paste über den Quelltext solche Fehler einzubauen.

Parameter auch wenn es FireDac ist, es ist überall gleich:
http://docwiki.embarcadero.com/RADSt...ands_(FireDAC)
Zitat:
To put a parameter marker into the SQL text, use the :<name> syntax.
Du hattest versprochen die Codevervollständigung und den Formatter zu benutzen... Da könnte sowas nicht bei rauskommen.
Zitat:
qryMain.ParamByName('NAM').AsString := EdtName.text;
qryMain.ParamByName('ANZ').asInteger:=strtoint(edtTestInput2.text);
Auch wenn du das für dein Hobby machst...denke bitte an unsere empfindlichen Augen. Ein ordentlicher Quelltext mit vernüftigen Einrückungen läßt sich deutlich besser lesen.

Geändert von haentschman (12. Apr 2017 um 06:09 Uhr)
  Mit Zitat antworten Zitat
EdAdvokat

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

AW: gesonderte Ergebnisberechnung in DB-Tab eingeben

  Alt 12. Apr 2017, 08:11
vergib es mir, es war schon spät und den Tag über wuseln meine beiden Enkel herum. Meine Konzentration war nicht mehr gegeben. Leider habe ich den Fehler gemacht, die mail auszudrucken und dann die Hinweise per Hand statt copy/paste einzugeben. Die Codevervollständigung habe ich eingeschaltet und benutze sie, doch hier und da habe ich wohl einfach nicht drauf gesehen und weitergeschrieben, stur wie ich manchmal so bin. Ich gelobe Besserung. Das mit den Leerzeichen habe ich nicht gewußt.
Nun werde ich die ganze Sache nochmals in Ruhe betrachten.
Ist das normal, dass er nach der Eingabe und dem ButtonClick die gesamte Tabelle mit den Datensätzen zb. 1-10 nochmals als neue Tabelle hinter 10 mit 1-10 und den neuen Werten wiederholt? Beim Neustart des Programms ist dann alles paletti mit dem neuen Wert.
Norbert
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 01:45 Uhr.
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