AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen
Thema durchsuchen
Ansicht
Themen-Optionen

Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

Ein Thema von AnfängerDelphi · begonnen am 6. Mär 2013 · letzter Beitrag vom 28. Mär 2013
Antwort Antwort
AnfängerDelphi

Registriert seit: 20. Mai 2010
25 Beiträge
 
#1

Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 6. Mär 2013, 18:10
Datenbank: MS-Access • Version: 2000 • Zugriff über: ADO
Hallo an alle,

ich habe folgende Frage:
Ist es möglich,in einem DBGrid Datensätze hinzuzufügen,ohne den vorherigen Datensatz zu löschen,oder zu überschreiben?
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
begin
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Text := 'SELECT Artikel FROM Tabelle WHERE Artikelnummer=' + f1;
  ADOQuery1.ExecSQL;
  ADOQuery1.Open;
end;
Wenn ich auf den Button klicke,wird ein Datensatz im DBGrid angezeigt,dies funktioniert auch soweit.
Nur wird immer der aktuelle Datensatz überschrieben.
Mit jedem Klick soll aber ein weiterer Datensatz im DBGrid hinzugefügt werden.
Wie kann ich dies ändern,damit alle Datensätze erhalten bleiben???

Mfg AnfängerDelphi
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#2

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 6. Mär 2013, 18:16
Dein SQL selektiert ja genau eine Artikelnummer. Du könntest das ändern, indem Du Dir (in Delphi, nicht in SQL) eine Liste der Artikelnummern anlegst und diese dann selektierst.
SELECT Artikel FROM Tabelle WHERE Artikelnummer IN (<Kommagetrennte Liste>)
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
AnfängerDelphi

Registriert seit: 20. Mai 2010
25 Beiträge
 
#3

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 6. Mär 2013, 19:37
Meinst du,das ich meine Datenbank komplett in ein ListView lade und von dort aus meine Artikel auswähle...?
Ich weiß im moment nicht so genau,wie ich deinen Tip umsetzen soll.
Könntest du mir es bitte an einem Beispiel beschreiben?

Mfg
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#4

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 6. Mär 2013, 19:45
Plies uäitäminnit.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#5

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 6. Mär 2013, 19:51
Ich habe mal schnell eine kleine Beispielanwendung geschrieben:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Nummern: TStringlist;
  SQL: string;
  i: integer;
begin
  (* Liste für die Auftragsnummern erzeugen *)
  Nummern := TStringlist.Create;
  try
    (* Artikelnummern '1' bis '10' hinzufügen *)
    for i := 1 to 10 do
      Nummern.Add(QuotedStr(IntToStr(i)));
    (* Trennzeichen auf Komma setzen *)
    Nummern.Delimiter := ',';
    (* SQL zusammenbauen *)
    SQL := Format('SELECT Artikel FROM Tabelle WHERE Artikelnummer IN (%s)',
      [Nummern.DelimitedText]);
    ShowMessage(SQL);
  finally
    (* Liste freigeben *)
    Nummern.Free;
  end;
end;
Die Liste müsste bei Dir natürlich global sein. Deine Variable f1 würde ihr dann jeweils hinzugefügt.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
AnfängerDelphi

Registriert seit: 20. Mai 2010
25 Beiträge
 
#6

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 6. Mär 2013, 21:44
Danke für dein Beispiel,ich melde mich sobald ich es ausprobiert habe.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#7

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 6. Mär 2013, 21:48
Plies uäitäminnit.
Johr Inglisch iss gräit.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 7. Mär 2013, 07:57
Plies uäitäminnit.
Johr Inglisch iss gräit.
He is indeed a run-away
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

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

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 7. Mär 2013, 18:30
[OT]
habt ihr alle bei Loddar geübt ?
Zitat:
No one learns you English like I

[/OT]
  Mit Zitat antworten Zitat
AnfängerDelphi

Registriert seit: 20. Mai 2010
25 Beiträge
 
#10

AW: Durch Anklicken des Buttons,Datensätze im DBGrid anzeigen

  Alt 28. Mär 2013, 11:22
Hallo,

ich habe folgende Lösung für mich gefunden.

Zuerst erstellt man im sich im Spalteneditor vom ListView seine Spalten.
Dann legt man noch einen Button,mit folgendem Code an.

Delphi-Quellcode:
procedure TForm7.Button2Click(Sender: TObject);
begin
        ListView1.Items.BeginUpdate;
        aListItem := ListView1.Items.Add;
        aListItem.Caption := LabeledEdit2.Text; //gibt die erste Spalte vom Datensatz an
        aListItem.SubItems.Add(ADOQuery1.FieldByName('Artikelnummer').AsString);
        aListItem.SubItems.Add(ADOQuery1.FieldByName('Lagerbestand').AsString);
        .......usw
        ListView1.Items.EndUpdate;

end;
Immer wenn der Button gedrückt wird,wird eine neue Zeile hinzugefügt,ohne die vorherige zu überschreiben.

Allen wünsche ich noch ein frohes Osterfest.

Mfg

AnfängerDelphi
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:29 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