Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   LookupEdit-Feld (https://www.delphipraxis.net/180864-lookupedit-feld.html)

Luckner 25. Jun 2014 14:06

Datenbank: Firebird • Version: 2.1 • Zugriff über: Dataset

LookupEdit-Feld
 
Hallo,

ich habe eine Tabelle mit verschiedenen Einträgen, die sich auch wiederholen können. Bsp.: Feld Farbe: weiß, gelb, schwarz, grün, weiß, weiß, orange, gelb, blau usw. Jetzt greife ich auf die Tabelle, über ein Dataset mit einer LookupEdit-Komponente. Das funktioniert auch soweit. Aber natürlich sehen ich in diesem Lookup alle Farben hintereinander. Hätte aber von jeder Farbe maximal einen Eintrag. Gibt es eine Möglichkeit den Inhalt zu Filtern über die Lookup-Komponente? Höchstwahrscheinlich jedoch mit einem Dataset und SQL-Filter.

Luckner

waldforest 25. Jun 2014 14:14

AW: LookupEdit-Feld
 
Hallo,
ich würde für die Lookuptabell mit distinct (keine Dobbeleintragung) eine eigenen Query aufbauen.

http://www.w3schools.com/sql/sql_distinct.asp

DeddyH 25. Jun 2014 14:24

AW: LookupEdit-Feld
 
Ich weiß nicht, ob ich es richtig verstanden habe, aber bei mir gäbe es eine Tabelle "Farben" mit einem künstlichen Schlüssel und einem eindeutigen Bezeichner. Die Bewegungsdaten-Tabelle enthielte dann einen Fremdschlüssel darauf. Somit bräuchte man nur noch einen Lookup auf die Farbentabelle.

Luckner 25. Jun 2014 14:51

AW: LookupEdit-Feld
 
Danke, habe das so gemacht, wie waldforest es vorgeschlagen hatte. Klappt gut.

DeddyH 25. Jun 2014 14:53

AW: LookupEdit-Feld
 
Trotzdem solltest Du Dir das hier mal reinziehen: http://de.wikipedia.org/wiki/Normali...28Datenbank%29

Luckner 25. Jun 2014 15:17

AW: LookupEdit-Feld
 
Hallo DeddyH, die Problematik ist mir bekannt. in diesem Fall werden die Farben von den Mitarbeitern manuell in einem anderem Programm eingetragen. Ich übernehme sie nur und wollte aus den viele Daten wissen, wie viele Farbe es schon so sind und wie viele es gibt, die in verschiedener Schreibweise eingetragen werden wie zB. schreibweiss, Schreibweiss, Schreib Weiss usw.

himitsu 25. Jun 2014 15:27

AW: LookupEdit-Feld
 
Die Namen nicht direkt zu verlinken, sondern nur über ihre ID hat auch noch andere Vorteile.
- man kann die Texte übersetzen oder ändern
- und bei uns im Programm gibt es eine Farbe "rot", aber inzwischen malt die eigentlich gelb und programmintern hat das Ding nochmal einen weiteren Namen, der ebenfalls nichts mehr mit dem zu tun hat, was es jetzt bedeutet :freak:

DeddyH 25. Jun 2014 15:30

AW: LookupEdit-Feld
 
Und das Problem der verschiedenen Schreibweisen wäre auch vom Tisch, wenn man nur die Möglichkeit hat, aus einer Liste auszuwählen. Für eine zusätzliche Schreibweise muss auch ein zusätzlicher Datensatz in der Stammtabelle angelegt werden.

Luckner 25. Jun 2014 15:45

AW: LookupEdit-Feld
 
Das mit der Liste ist jetzt der Weg. Das alte Programm wird daraufhin geändert. Die Anwender werden jetzt nur noch auswählen dürfen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:31 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