AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbankeinträge in ComboBoxen zur Anzeige bringen.
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbankeinträge in ComboBoxen zur Anzeige bringen.

Ein Thema von Jens Hartmann · begonnen am 23. Mär 2009 · letzter Beitrag vom 1. Apr 2009
Antwort Antwort
Seite 2 von 4     12 34      
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#11

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 23. Mär 2009, 20:55
DataSource von LookupComboBox ist Leer. Ich nutzte ZTable von Zeos, und da habe ich doch gar kein Feld DataSource
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

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

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 24. Mär 2009, 18:16
Hallo Jens,

Zitat:
ich möchte aus meine Datenbank aus einer Spalte die 5 letzten Einträge mit einem bestimmten Wert zur Anzeige bringen.
...dann kannst du die LookupComboBox in die Tonne schieben Dann hast du komplett alle Datensätze der Tabelle in der ComboBox Auswahl.

Vorschlag:
- eine normale Standard Combobox benutzen
- die gewünschten Datensätze per Query holen
- ComboBox.Clear
- Ergebnismenge der Query durchlaufen und jeden Datensatz der ComboBox hinzufügen.

hoffe geholfen zu haben
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#13

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 24. Mär 2009, 19:07
Zitat von haentschman:
Zitat:
ich möchte aus meine Datenbank aus einer Spalte die 5 letzten Einträge mit einem bestimmten Wert zur Anzeige bringen.
...dann kannst du die LookupComboBox in die Tonne schieben
Ach, wurde die Filter-Eigenschaft abgeschafft?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#14

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 24. Mär 2009, 19:18
Also, ich versuche es immer noch mit der Lookup ComboBox, und habe aber immer noch den selben Fehler. Ich habe mal die Einstellung im OI in den Anhang gelegt.

Gruß Jens
Miniaturansicht angehängter Grafiken
lcbfehler_114.gif   table_184.gif   datasource_213.gif  
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

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

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 24. Mär 2009, 21:04
Hallo alzaimar...

Zitat:
5 letzten Einträge mit einem bestimmten Wert
- ich lern gern dazu, aber obiges mit einem Filterstring des Datasets ?
- kannst du mal ein Beispiel zeigen ?




@Jens:
- ähmmm...Stop du hast die DBLookupCombo aus der Registerkarte 3.1 erwischt. Die DBLookupComboBox ist in Datensteuerung
- die DBLookupComboBox ist geeignet, wenn man die Liste aus einer Tabelle holt und den Wert in eine andere schreiben will
- das wäre ListSource für die Liste und DataSource für das Ziel.
- wenn du nur die Daten in der Liste anzeigen möchtest und andersweitig weiterverarbeiten reicht die DBComboBox aus Datensteuerung. Dann hättest du als DataSource - DataSource1 und die Datasource wie gehabt.
- versuch dann mal die Tabelle erst zur Laufzeit Active:= True zu setzen.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#16

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 25. Mär 2009, 04:32
Sorry, dann muss ich das mal prüfen, ich bin auf die Lookup durch den obigen Beitrag gekommen.

mkinzler hat geschrieben

Zitat:
Hier würden sich DBLookupComboboxen anbieten
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#17

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 25. Mär 2009, 04:41
Eine andere Varinate wäre noch, Du gehst direkt über eine Query.

So zu Beipsiel :
Delphi-Quellcode:
with TZQuery do begin
  SQL.Clear
  SQL.Text := 'Select * from tabelle where feld1=1';
  Open;
  Active := true;
  while not eof do
  begin
    Combobox1.Items.Add(FieldByName('Feld2').AsString);
  end;
  Active := false;
  Close;
end;
So fülle ich immer meine Listen oder Boxen. Ich benutze garnichtmehr die TDBxxx-Komponenten.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#18

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 25. Mär 2009, 23:29
Zitat:
RWarnecke hat geschrieben
Delphi-Quellcode:
with TZQuery do begin
  SQL.Clear
  SQL.Text := 'Select * from tabelle where feld1=1';
  Open;
  Active := true;
  while not eof do
  begin
    Combobox1.Items.Add(FieldByName('Feld2').AsString);
  end;
  Active := false;
  Close;
end;
So habe ich es ja bis jetzt gelößt, allerdings, möchte ich ja nur die letzten 5 aktuellesten Ereignisse.

Mein jetziger Code...
Delphi-Quellcode:
with QRYMB256PLUS do begin
  SQL.Clear
  SQL.Text := 'Select * from MB256PLUS where Ereignis=Einbruch';
  QRYMB256PLUS.Open;
  while QryMB256PLUS Not eof do
  begin
    CBAlarme.Items.Add(FieldByName('Ereignis').AsString);
  end;
  Active := false;
  Close;
end;
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 25. Mär 2009, 23:38
Wie sieht denn deine Datenbankstruktur (Tabelle) aus? In einer Datenbank gibt es keine Reihenfolge, es sei denn du definierst eine. Sprich du hast eine Spalte, nach der du sortieren kannst. Mit First kannst du dann die Ergebnismenge einschränken...
SQL-Code:
SELECT FIRST 5 *
FROM tabelle
ORDER BY datum DESC
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#20

Re: Datenbankeinträge in ComboBoxen zur Anzeige bringen.

  Alt 26. Mär 2009, 06:40
Zitat:
Wie sieht denn deine Datenbankstruktur (Tabelle) aus? In einer Datenbank gibt es keine Reihenfolge, es sei denn du definierst eine. Sprich du hast eine Spalte, nach der du sortieren kannst. Mit First kannst du dann die Ergebnismenge einschränken...
Das ist mir soweit auch klar, ich sortiere nach dem Feld ID, welches ich über einen Generator anlegen lasse(Zähler).
Jetzt ist es aber so, das ich immer die letzten 5...

SELECT LAST 5 * FROM MB256PLUS WHERE EREIGNIS = Einbruch; ich vermute das der Code so sein müsste. Leider, möchte ich ja aber auch realisieren, wenn jetzt ein neuer Datensatz dazu kommt, der dieses Kriterium erfüllt, der älteste entfernt wird, und der neue eingefügt wird.

Ich denke mir nur, wenn da alle 10 Sek. ein neuer Datensatz kommt, ob es da Sinnvoll ist die Query halt jedesmal auf´s neue abzufragen.

Daher dachte ich, das irgendwie einfacher mit einer DB-Komponente lössen zu können.

MFG

Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


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 18:52 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