AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Lookup-Field mit Filter
Thema durchsuchen
Ansicht
Themen-Optionen

Lookup-Field mit Filter

Offene Frage von "Chaosworld"
Ein Thema von Chaosworld · begonnen am 1. Okt 2007
Antwort Antwort
Chaosworld

Registriert seit: 27. Nov 2005
6 Beiträge
 
#1

Lookup-Field mit Filter

  Alt 1. Okt 2007, 13:49
Datenbank: MySQL • Version: 5 • Zugriff über: Zeos
Hi
ich habe folgende Tabellen(un auch gleichnamige Querys):
Firma( KNR: integer, Name: string,...)
Ansprechpartner (ApNr: integer, Firma: integer, Name: string,...)

und dann die Tabelle
Auftrag(Auftragsnummer: integer, Firma: integer, Ansprechpartner: integer,...)
Jetzt habe ich 2 Lookup-Felder erstellt, und zwar:
1) FirmaName: der löst über Firma den Namen auf, also (KeyFields=Firma, LookupCache=False, LookupDataset=Firma, LookupKeyFields=KNr, LookupResuldFields=Name

2) AnsprechpartnerName: der löst über Ansprechpartner den Namen auf, also (KeyFields=Ansprechpartner, LookupCache=False, LookupDataset=Ansprechpartner, LookupKeyFields=ApNr, LookupResuldFields=Name

Die Tabellen sehen dann so aus:
Firma:
KNr Firma ,...
1 Firma1
2 Firma2
3 Firma3

Ansprechpartner:
ApNr Firma Name
1 1 Herr A
1 1 Herr B
1 2 Herr C
1 3 Herr D
1 3 Herr E

Zum Auftragsquery habe ich noch die beiden Lookup-Felder hinzugefügt:
FirmaText und AnsprechpartnerText

Jetzt habe ich einen dbGrid in dem nur die beiden Lookup-Felder sind und es soll das im Prinzip so aussehen:
FirmaText AnsprechpartnerText
Firma1 Herr A *
Firma3 Herr E **

Also bei * sollte dann zur Auswahl sein: Herr A und Herr B
Und bei ** sollte dann zur Auswahl sein: Herr D und Herr E

Das klappt auch soweit, jedoch die Anzeige klappt nicht richtig
und zwar bei der wie oben gefüllten Tabelle kommt dann einmal (wenn der Cursor aus Firma 1 steht)

FirmaText AnsprechpartnerText
Firma1 Herr A
Firma3


und wenn der Cursor auf Firma 3 steht sieht es dann so aus:


FirmaText AnsprechpartnerText
Firma1
Firma3 Herr E

Also der Text im gefilterten Lookup-Field verschwindet immer, wenn der gesuchte Wert nicht in der aktiven Liste ist.

Nur wie kann man dem entgegenwirken?
Kann man irgendwie dafür sorgen, dass das Lookup-Feld sich den Wert speichert, falls er gerade nicht dem zugehörigen Query nicht verfügbar ist? Oder kann man irgendwie an dem DBGrid manipulieren, so dass er den Wert nicht löscht, wenn das Lookup-Feld leer ergibt?

Danke für jede Antwort

Chaosworld

PS.: Falls das hier der falsche Bereich ist, und es eher unter VCL gehört, bitte verschieben, konnte mich nicht wirklich entscheiden, wohin es gehört (irgendwie in beiden Bereichen). Danke
  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 06:25 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