Seite 1 von 3

Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 17:31
von cool
Hallo,

wie kann ich das so einstellen, dass bei der Auswahl in einem Listenfeld das Textfeld entsprechend gefüllt wird? Wenn in dem Listenfeld ein Name ausgewählt wird, muss im Textfeld seine Telefonnummer erscheinen. Das funktioniert bei mir bereits wenn ich das Formular öffnen, die Telefonnummer der ausgewählten Person erscheint. Wenn ich aber im Listenfeld was anderes auswähle, bleibt das Textfeld unverändert, ist ja auch logisch.

Danke für eure Tipps!

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 17:48
von RobertG
Hallo cool,

wenn wirklich ein direkter Zusammenhang zwischen Listenfeldinhalt und Textfeldinhalt besteht, dann würde ich beide Elemente in dem Listenfeld darstellen.

Code: Alles auswählen

SELECT "Name"||' Tel.:'||"Telefon", "ID" FROM "Person" ORDER BY "Name"
So könnte der SQL-Code für das Listenfeld lauten ...

Zeige doch einmal Deinen Tabellenaufbau und die Felder, die da zusammengefügt werden sollen.

Gruß

Robert

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 18:00
von cool
Hallo Robert,

danke Dir! Meine DB ist leider voll mit Daten, kann sie nicht weiter geben. Deine Lösung ist leider keine Option für mich, da da mehr dran hängt, auch die Handynummer, E-Mail usw.. Also ich möchte es genau so machen wie im ersten Post, nur weiß ich nicht wie... :oops:

Geht das nur über Makros, oder geht das auch irgendwie anders?

Danke!

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 18:21
von F3K Total
Hi,
kann es sein, das du einen Datensatz aus einer Tabelle mit einem Listenfeld in der die Namen angezeigt werden, suchen möchtest?
Dann schau mal in angehängte Datei, oben links einen Namen wählen, Filtern drücken und schwups erscheinen die gesuchten Daten, wenn du im Listenfeld den obersten, leeren Eintrag wählst und Filtern drückst, siehst du wieder alle Datensätze.
Wie man das macht, kannst du in meinen Videotutorials 3-5 und für das Listenfeld Nr.7, siehe Signatur, sehen.
Gruß R

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 18:25
von cool
Nicht ganz, also ich möchte es so haben, wenn ich im Listfeld einen Namen auswähle, dann erscheint die Telefonnummer dieser Person in einem Textfeld. Die Person und die Telefonnummer liegen in verschiedenen Tabellen. Klingt komisch, muss aber so sein, bitte stört euch nicht daran.

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 18:30
von F3K Total
cool hat geschrieben:Nicht ganz, also ich möchte es so haben, wenn ich im Listfeld einen Namen auswähle, dann erscheint die Telefonnummer dieser Person in einem Textfeld.
Was meinst Du, könntest du die Adresse gegen eine Telefonnummer austauschen? Es sind Textfelder, in denen die Informationen zur gewählten Person angezeigt werden, also genau was du suchst! :roll:
Was meinst du, sollen wir weiter raten, oder machst du dir die Mühe und verfremdest deine Daten, und lädst die DB hier hoch, damit wir den Aufbau deiner DB überhaupt verstehen können?
Ohne die Datenstruktur zu kennen, wir das hier nix.
cool hat geschrieben:Klingt komisch, muss aber so sein, bitte stört euch nicht daran.
Das glaube ich kaum, einen Zusammenhang muss es zwischen den Tabellen geben, woher soll die Datenbank sonst wissen welche Telefonnummer zu welcher Person gehört?
R

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 19:17
von cool
@F3K Total
Bei Deinem Beispiel muss man erst auf den Filter-Button klicken, bei mir muss das sofort gehen, Eintrag im Listfeld ausgewählt und schon steht im Textfeld die Nummer.

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 19:42
von RobertG
Hallo Cool,

dann musst Du an das Listenfeld ein Makro anbinden, das zuerst die Daten in dem Formular speichert, in der das Listenfeld liegt, und dann das andere Formular neu einliest. Wenn Du also lediglich den Button weg haben musst wird das die erforderliche Lösung sein.

Code: Alles auswählen

SUB Formular_filtern(oEvent AS OBJECT)
oForm = oEvent.Source.Model.Parent.
oForm.UpdateRow()
oForm2 = oForm.Parent.getByName("Mein Formular mit dem Textfeld")
oForm2.reload
END SUB
Voraussetzung: Das eine Formular liegt neben dem anderen Formular auf Deiner Formularfläche. Ansonsten musst Du anderweitig dafür sorgend, dass das 2. Formular auch gefunden und neu geladen wird.

Gruß

Robert

Re: Textfeld anhand von Listenfeld füllen

Verfasst: Sa 4. Mär 2017, 19:44
von cool
Ok... ich habe aber nur ein Formular... :roll: Wie geht das mit nur einem Formular? Ich lade beide Tabellen in das eine Formular. Ich habe noch nie Makros geschrieben und kenne Base erst seit Gestern.

Re: Textfeld anhand von Listenfeld füllen

Verfasst: So 5. Mär 2017, 00:05
von F3K Total
cool hat geschrieben:bei mir muss das sofort gehen, Eintrag im Listfeld ausgewählt und schon steht im Textfeld die Nummer.
Da du beratungsresistent bist, und ausserdem keine Hilfe in Form deiner Datenbank schickst, Makros nicht schreiben kannst oder willst, musst du auf kostenpflichtige professionelle Hilfe zurückgreifen.
Bist du ein Troll?
R