Base: Suche mit oder ohne Makro?

Hallo zusammen,

ich habe für unseren Verein eine Datenbank erstellt, mit der ich u.a.
die Beitragszahlungen der Mitglieder verwalten möchte. In der Tabelle
"Eltern" lege ich die Namen und Adressen der Mitglieder ab, in der
Tabelle "Umsatz_2014" die Umsätze auf dem Girokonto ab 2014.

Ich bin der Anleitung im Base-Handbuch (Kapitel "Datensuche", S.342 ff.)
gefolgt, um eine Suche in der Umsatztabelle zu ermöglichen. Das
funktioniert auch soweit: In einem Formular lasse ich mir die Namen der
Mitglieder anzeigen, und wenn ich dann den Nachnamen noch einmal ins
Textfeld "Suchbegriff" kopiere, spuckt mir das Tabellenelement darunter
die Kontobewegungen aus, die zu dem Namen passen.

Viel komfortabler wäre es natürlich, wenn ich den Namen des Mitglieds
nicht mehr extra eingeben bzw. kopieren müsste, sondern das Formular
direkt den Namen aus dem Feld "Nachname" in den Suchbegriff der Tabelle
"Filter" schreiben würde. Ich möchte mit der Navigationsleiste von einem
Mitglied zum anderen wechseln und vom Formular dann jeweils direkt die
passenden Suchergebnisse präsentiert bekommen.

Wie kann ich das erreichen? Dazu brauche ich wahrscheinlich ein Makro, oder?

Dank im Voraus!

Viele Grüße,
Ansgar

P.S.: Ich nutze LO 4.4.5 auf ubuntu 15.04

Hallo Ansgar,

ich habe für unseren Verein eine Datenbank erstellt, mit der ich
u.a. die Beitragszahlungen der Mitglieder verwalten möchte. In der
Tabelle "Eltern" lege ich die Namen und Adressen der Mitglieder ab,
in der Tabelle "Umsatz_2014" die Umsätze auf dem Girokonto ab
2014.

Ich bin der Anleitung im Base-Handbuch (Kapitel "Datensuche", S.342
ff.) gefolgt, um eine Suche in der Umsatztabelle zu ermöglichen.
Das funktioniert auch soweit: In einem Formular lasse ich mir die
Namen der Mitglieder anzeigen, und wenn ich dann den Nachnamen noch
einmal ins Textfeld "Suchbegriff" kopiere, spuckt mir das
Tabellenelement darunter die Kontobewegungen aus, die zu dem Namen
passen.

Warum brauchst Du den Suchbegriff überhaupt? Du könntest doch das
Ganze auch über Formular - Unterformular lösen. Mit der Suche würde
ich höchstens die Mitglieder im Hauptformular eingrenzen, um dann im
Unterformular zu diesen Mitgliedern die Kontobewegungen zu erfassen.

Gruß

Robert

Hallo Robert,

ich brauche irgendwo eine Filterbedingung, denn im Kontoauszug stimmt
das Feld "Beguenstigter" normalerweise nicht exakt mit dem eigentlich
Familiennamen überein. Und deshalb erhalte ich ohne eine Suche mit
LIKE() keine Treffer.

Meine Konstruktion sieht jetzt so aus:

Hauptformular (Tabelle Eltern)
Unterformular (Tabelle Filter), um den Suchbegriff einzugeben
Unterformular (Tabelle Umsatz_2014) mit Filter:
( LOWER ( "Umsatz_2014"."Beguenstigter/Zahlungspflichtiger" ) LIKE
IFNULL( ( SELECT '%' || LOWER ( "Suchbegriff" ) || '%' FROM "Filter" ),
LOWER ( "Beguenstigter/Zahlungspflichtiger" ) ) )

Das Feld "Suchbegriff" in der Tabelle "Filter" befüttere ich derzeit mit
einem eigenen Textfeld. Kann ich das auch einfach mit einem Feld aus dem
Hauptformular verknüpfen? Bei meinen bisherigen Versuchen geht das
schief, denn dann entsteht in der Tabelle Filter ein weiterer Datensatz
- und dann funktioniert die Filterbedingung nicht mehr.

Das Unterformular "Umsatz" aktualisiere ich mit einem Button. Wenn ich
keinen Button haben will, muss ich ein Makro schreiben, richtig?

Vielleicht sollte ich meine Datenbank zur Ansicht irgendwo hochladen,
oder wird das auch so klar?
Ich mache mich 'mal dran, die echten Daten gegen nicht sensible
auszutauschen und melde mich dann wieder.

Vielen Dank schon mal, schönen Sonntag noch,
Ansgar

Hallo Ansgar,

ich brauche irgendwo eine Filterbedingung, denn im Kontoauszug
stimmt das Feld "Beguenstigter" normalerweise nicht exakt mit dem
eigentlich Familiennamen überein. Und deshalb erhalte ich ohne eine
Suche mit LIKE() keine Treffer.

Das Feld "Suchbegriff" in der Tabelle "Filter" befüttere ich
derzeit mit einem eigenen Textfeld. Kann ich das auch einfach mit
einem Feld aus dem Hauptformular verknüpfen? Bei meinen bisherigen
Versuchen geht das schief, denn dann entsteht in der Tabelle Filter
ein weiterer Datensatz - und dann funktioniert die Filterbedingung
nicht mehr.

Du benötigst auf keinen Fall ein Unterformular für den Filter. Die
Filter-Tabelle soll ja nur einen Datensatz darstellen. Gibt aber das
darüberstehende Formular ein Feld mit, das eben nicht dem der
Filtertabelle entspricht, dann entsteht zwangsläufig ein neuer Datensatz.

Du kannst mir die DB gerne per privater Mail schicken.

Gruß

Robert

Hallo Ansgar,

Hallo zusammen,

ich habe für unseren Verein eine Datenbank erstellt, mit der ich u.a.
die Beitragszahlungen der Mitglieder verwalten möchte. In der Tabelle
"Eltern" lege ich die Namen und Adressen der Mitglieder ab, in der
Tabelle "Umsatz_2014" die Umsätze auf dem Girokonto ab 2014.

Deine Anfrage ist zwar schon etwas her und ich habe auch keine direkte
Antwort, aber trotzdem dieser Tipp: Ich nutze schon seit einigen Jahren
das Programm jverein (www.jverein.de) für die Vereinsverwaltung und bin
voll zufrieden damit. Die h2-Datenbank des Programms kann man auch
problemlos über LO-Base ansprechen und dann eigene Abfragen erstellen.
Onlinebanking ist auch vorhanden.
Ich denke, da kannst Du dir eine Menge Arbeit sparen.

Viele Grüße

Thomas