Abfrage mit Kombinationsfeld

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Abfrage mit Kombinationsfeld

Beitrag von F3K Total »

Moin,
schau dir doch einfach mal meine Beispieldatei richtig an, da hast du doch alles drin... all das, was dir beim Listenfeld vermeintlich fehlt, kann es!
Habe in der angehängten Version im Gegensatz zur vorigen nur die ID am Anfang der Listenfeldeinträge weggenommen.
FL.PNG
FL.PNG (5.45 KiB) 7833 mal betrachtet
Gruß R
Dateianhänge
Adressen_Filter_nach_ID_2.odb
(115.68 KiB) 191-mal heruntergeladen
peschiber
**
Beiträge: 41
Registriert: So, 28.04.2019 08:51

Re: Abfrage mit Kombinationsfeld

Beitrag von peschiber »

Hallo R,

ganz herzlichen Dank für deine Antwort.
Selbstverständlich habe ich mir dein Beispiel genau angeschaut. Ohne deine Hilfe hätte ich es nicht geschafft, den SQL-Code für das Kombinationsfeld so zu ändern, wie ich es gerne hätte. Dafür noch mal herzlichen Dank.

Damit du verstehst, was ich mit „Platzverschwendung“ in einem Formular meine, hier noch mal ein Screenshot, Teilausschnitt einer Eingabemaske. Leider ohne Daten, weil beim letzten Absturz sämtliche Datenquellen, selbst bei deiner Beispieldatei, gelöscht wurden. Sehr ärgerlich.
(Siehe dazu auch meine neue Frage: Mehrere Dateien gleichzeitig geöffnet – ein Problem unter Windows?)

Möglicherweise sollte ich mich auch mit Formular Designe beschäftigen.
Als Neueinsteiger stelle ich mir halt Eingabemasken so vor, dass sie viel Platz für Einträge bieten.
Von daher auch meine Vorstellung: in so einem Formular, habe ich gar keinen Platz für ein Listenfeld.

Allerdings bin ich, was das Kombinationsfeld anbelangt nun auf ein neues Problem gestoßen.
Kombinationsfeld wird nach Datenänderung nicht aktualisiert:

Nach Betätigung des Button „Datensatz suchen“ wird der entsprechende Datensatz angezeigt und kann auch editiert und gespeichert werden, allerdings wird der Inhalt des Kombinationsfeldes nicht aktualisiert.
Beispiel: der Nachname „Müller“ wird in „Müllermeister“ geändert, der geänderte Eintrag in der Tabelle übernommen, aber nicht im Kombinationsfeld. Wenn ich erneut im Kombinationsfeld die Liste aufklappe, steht in der Liste immer noch „Müller“, aber der Datensatz, den ich dann aufrufe, zeigt mir im Textfeld den geänderten Namen „Müllermeister“.
(Die Suchroutine: es wird nach der ID und nicht nach Nachnamen gesucht.)
Die Aktualisierung des Kombinationsfeldes erfolgt erst dann, wenn das Formular geschlossen und erneut aufgerufen wird.
Das ist natürlich keine Lösung.

Frage:
Was muss getan werden, damit, wenn der geänderte Datensatz gespeichert wurde, auch das Kombinationsfeld aktualisiert wird?
Hoffe, dass das ohne Basic Routine geht, da ich mich damit als Einsteiger in Base nun überhaupt noch nicht auskenne.

Danke Peter
Dateianhänge
Formualr mit Kombinationsfeld.png
Formualr mit Kombinationsfeld.png (98.09 KiB) 7796 mal betrachtet
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Abfrage mit Kombinationsfeld

Beitrag von F3K Total »

Irgendwie reden wir aneinander vorbei:
LFKF.png
LFKF.png (69.96 KiB) 7777 mal betrachtet
Oben links, das ist das Listenfeld, oben rechts, das ist das Kombinationsfeld. Kann es sein dass du das Listenfeld mit einem Tabellenkontrollfeld, in beiden Formularen unten, verwechselst?
Auf alle Fälle ist das Filtern mit Listenfeld viel einfacher, weil es eben ein Anzeigespalte gefolgt von einer Schreibspalte hat, also sinngemäß: Zeige Name, schreibe ID.
Der SQL Befehl dazu:
SELECT "Nachname" || ' , ' || "Vorname" || ', ' || RIGHT( '0' || DAY( "Geburtstag" ), 2 ) || '. ' || RIGHT( '0' || MONTH( "Geburtstag" ), 2 ) || '.' || YEAR( "Geburtstag" ), "ID" FROM "tbl_Test_Stammdaten"
Gruß R
Zuletzt geändert von F3K Total am Fr, 03.05.2019 16:57, insgesamt 1-mal geändert.
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Abfrage mit Kombinationsfeld

Beitrag von F3K Total »

... hier ein Beispiel für deine letzte Frage, siehe Formular Filter_Listbox.
Schaue die die Struktur mit dem Formularnavigator im Vergleich zur vorigen Version an, ich habe ein Hilfsformular eingebaut HELPER_FORM
HF.PNG
HF.PNG (15.98 KiB) 7770 mal betrachtet
Gruß R
Dateianhänge
Adressen_Filter_nach_ID_3.odb
(115.76 KiB) 176-mal heruntergeladen
peschiber
**
Beiträge: 41
Registriert: So, 28.04.2019 08:51

Re: Abfrage mit Kombinationsfeld

Beitrag von peschiber »

Lieber R,

ganz herzlichen Dank für deine unsagbare Geduld, Neueinsteigern auf die Sprünge zu helfen.

Ich habe mir noch mal deine Beispieldatei „Adressen_Filter_nach_ID_3.odb“ angeschaut.

Auch in deiner Beispieldatei taucht das Problemchen auf, dass nach Editieren zwar der Datensatz geändert, und in der Tabelle „tbl_Test_Stammdaten“ gespeichert wird, aber das Kombinationsfeld wird leider nicht aktualisiert.
Das ist für AnwenderInnen irritierend.
(siehe Screenshot).

Ich hätte gerne gewusst, was ich machen muss, damit auch das Kombinationsfeld ebenfalls aktualisiert wird.

Du hast zwar in einer anderen Beispieldatei „kaskadierende Listenfelder ohne Makro“
gezeigt, wie ein Kombinationsfeld aktualisiert werden kann, aber das finde ich bedienungsmäßig ziemlich umständlich.

Hatte auf eine bedienungsfreundlichere Lösung gehofft.
Geht wahrscheinlich nur über ein Makro, aber da traue ich mich als Anfänger noch nicht ran.
Aber wahrscheinlich komme ich sowieso nicht darum, mich mit Basic zu beschäftigen, allein schon um Formulare auf "Kopfdruck" zu öffnen.

Von daher hätte ich eine große Bitte an dich - hoffentlich keine Zumutung.
Könntest du anhand deiner eigenen Beispieldatei „tbl_Test_Stammdaten“ mal einen Basic-Code hier veröffentlichen, wie die Aktualisierung mit Basic-Code zu realisieren ist?
(dann kann wahrscheinlich auch auf den cmd-button "Filter" verzichtet werden.

Danke und Grüße aus El Salvador, Peter
Dateianhänge
Kombinationsfeld nicht aktualisiert.png
Kombinationsfeld nicht aktualisiert.png (65.08 KiB) 7748 mal betrachtet
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Abfrage mit Kombinationsfeld

Beitrag von F3K Total »

Mach es genau so, wie ich es im Formular mit dem Listenfeld gezeigt habe...baue HELPER_FORM ein ..Mann Mann, Mann... :roll:
LL.png
LL.png (11.09 KiB) 7728 mal betrachtet
peschiber
**
Beiträge: 41
Registriert: So, 28.04.2019 08:51

Re: Abfrage mit Kombinationsfeld

Beitrag von peschiber »

Hallo R,

super! danke!

Tut mir leid, wenn ich dich unnötig belästigt habe, hatte nur das Formular "Filter-Combobox" getestet.
In der Tat, das mit Listenfeld ist erheblich einfacher. Ich hatte bis heute angenomen, dass das Dopdown-Feld in deiner Beispieldatei immer ein Kombinationsfeld ist - bis heute.

Auch wenn du es nicht glauben wirst, weiß der Henker warum, in der OpenOffice Version,6.2, die ich bis gestern installiert hatte, gab es keine Möglichkeit, Listenfeld auf "aufklappbar" einzustellen.
Ich habe mich nur gewundert, dass du es im Handbuch erwähnt hast, aber bei meiner Istallation fehlte für Listenfeld der Eintrag: "Aufklappbar"
War davon ausgegangen, dass das in der neusten LibreOffice Version einfach geändert wurde.
Die Einstellung "Aufklappbar" taucht bei mir nur bei Kombinatiosnfeld auf, daher auch mein Wunsch, das Kombinationsfeld und nicht ein Listenfeld zu nutzen.
Habe LibreOffice gestern komplett wegen der vielen Abstürze gelöscht und neu installiert, gleiche Verison, und jetzt, ich kann es kaum glauben, kann ich das Listenfeld auch auch auf "Aufklappbar" einstellen.
Insofern war meine Hinweise mit der "Paltzverschwendung" für dich auch nicht nachvollziehbar.
Du musst gedacht haben, der tickt nicht sauber. Sorry für das Missverständnis.

Ein schönes Wochenende, Peter

PS.:
Kleiner Vorschlag für das nächste Base update.
Im Formular-Navigater wird für Listenfeld und Kombinationsfeld das gleiche Icon vewendet.
Wenn dann der Name geändert wird, zum Beispiel in "Filter" weiß man gar nicht, ob es sich um ein Listenfeld oder Kombinationsfeld handelt.
(Nur die Resultate sind bei gleicher SQL-Anweisung unterschiedlich.)
Wäre hilfreich, wenn das Icon für Listenfeld und Kombinationsfeld unterschiedlich wäre.
RobertG
********
Beiträge: 2034
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Abfrage mit Kombinationsfeld

Beitrag von RobertG »

Kleiner Nachtrag zu Listen- bzw. Kombinationsfeldern, die eine Tabellenansicht ermöglichen:

Bedingung ist, dass die eingestellte Schrift eine mit fester Breite ist. Dann kann über geschickte Abfragetechnik die Breite für jedes Element festgelegt werden. Siehe dazu auch im Handbuch: Abfragen > Abfragen für die Erstellung von Listenfeldern.
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Abfrage mit Kombinationsfeld

Beitrag von F3K Total »

peschiber hat geschrieben: Sa, 04.05.2019 10:15 PS.:
Kleiner Vorschlag für das nächste Base update.
Im Formular-Navigater wird für Listenfeld und Kombinationsfeld das gleiche Icon vewendet.
Wenn dann der Name geändert wird, zum Beispiel in "Filter" weiß man gar nicht, ob es sich um ein Listenfeld oder Kombinationsfeld handelt.
Ich schlage vor, du schaust nochmal genau hin, es ist weder das gleiche Icon, noch kann man nicht erkennen worum es sich handelt, denn die Art des Feldes steht im Eigenschaftsdialog ganz oben, im Bild rot unterstrichen:
LFCF.png
LFCF.png (52.73 KiB) 7626 mal betrachtet
Gruß R
peschiber
**
Beiträge: 41
Registriert: So, 28.04.2019 08:51

Re: Abfrage mit Kombinationsfeld

Beitrag von peschiber »

Hallo R,

mag an Windows liegen, bei mir sehen die gleich aus - sieh Screenshot.
Die Namen wurden automatisch in dem Beispiel von Base vergeben.

Muss aber sagen, dass ich langsam bezüglich Listenfeld und Kombinationsfeld eine Krise bekomme.
Weiß nicht, ob man das als Bug bezeichnen kann.

Ich habe mehrfach eine Listenfeld aus einem vorhanden Formular in ein anderes kopiert und mich gewundert, warum es plötzlich nicht mehr funktioniert.
Erst nach langem suchen bin ich dahinter gekommen, dass beim Kopieren Base aus dem ehemaligen Listenfeld beim Kopieren daraus ein Kombinationsfeld macht. Der Fehler ist leider nicht immer reproduzierbar, es scheint mehr ein Zufall zu sein, denn manchmal wird es als Listenfeld, mal als Kombinationsfeld ins andere Formular kopiert. Da bei mir die Icon nicht zu unterscheiden sind, bleibt die einzige Möglichkeit es festzustellen, ob es als Listenfeld oder Kombinationsfeld kopiert wurde: rechte Maustaste und "Ersetzen durch" anklicken, dann wird halt nur die Alternative angeboten. Aber wer kommt denn schon auf so eine Idee so etwas zu überprüfen?

Gruß Peter
Dateianhänge
Listenfeld v Kombofeld.png
Listenfeld v Kombofeld.png (5.89 KiB) 7613 mal betrachtet
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Abfrage mit Kombinationsfeld

Beitrag von F3K Total »

Irgendwie scheinst du meine Posts nicht richtig zu lesen, jedes Wort hat seinen Sinn:
F3K Total hat geschrieben: So, 05.05.2019 10:11 ... denn die Art des Feldes steht im Eigenschaftsdialog ganz oben, im Bild rot unterstrichen...
Und das sich die Art eines Feldes, beim Kopieren von einem Formular ins andere, ändert, habe ich in 10 jahren OpenOffice noch nicht erlebt!
Was ich bestätigen kann, ist, dass unter LibreOffice 6.2.3, Windows 7, das Icon von Listen- und Kombinationsfeld gleich ist.
Das ist aus meiner Sicht ein BUG.
R
peschiber
**
Beiträge: 41
Registriert: So, 28.04.2019 08:51

Re: Abfrage mit Kombinationsfeld

Beitrag von peschiber »

Hallo R,

danke für den Hinweis,
steht im Eigenschaftsdialog ganz oben
Tut mir leid, habe ich völlig übersehen, hatte mich immer nur auf den Inhalt des "Eigenschaftsdialog" konzentriert.

Danke für deine Geduld, Peter
Antworten