War DBLookup nicht ein Element mit einem Verweis?
Fiktives unvollständiges Beispiel:
Ich habe eine Tabelle Auftragsposition [tblPos / dsPos] mit:
- Artikelnummer
- Preis
- Auftragsnummer (Kopf-Verweis)
Ich habe eine Tabelle Aufträge [tblKop / dsKop] mit:
- Auftragsnummer
- Kundenname
Ich habe eine Tabelle Artikel [tblArtikel / dsArtikel] mit:
- Artikelnummer
- Bezeichnung
Jetzt könnte ich in meinem Fenster doch eine
DB-Lookupbox machen,
bei dem ich das Feld tblPos['Artikelnummer'] bearbeiten kann
[DataSource = dsPos, DataField = 'Artikelnummer'] und einen Lookup
auf die Artikeltabelle fahre[ListSource = dsArtikel, ListField = Bezeichnung,
KeyField = Artikelnummer].
Dann habe ich eine Auswahl, bei der ich den Artikelnamen angezeigt bekomme und
in meiner Tabelle der Auftragspositionen speichert er die Artikelnummer.
Im gleichen Beispiel könnte man das auch mit der Auftragsnummer und dem Kundennamen machen,
aber das wäre Unsinn, weil ein Kunde sicher öfter mal bei mir kauft und
ich eine Position ja nicht in einer Position einem Auftrag zuweisen will.
Anderefrseits ist das eigendliche Beispiel natürlich auch nicht optimal,
da es sicher mehr als 10 Artikel zum scrollen gibt.
Wenn du jetzt "tblPos['Artikelnummer'] := nil;" setzt müsste die LookupBox wieder leer sein.
Also vom DataSource der Komponente das Dataset und davon das DataField.