Button für Filterfunktion Nachname im Formular

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Reginald
****
Beiträge: 114
Registriert: Fr, 23.07.2010 23:58

Button für Filterfunktion Nachname im Formular

Beitrag von Reginald »

Hallo, ich habe eine kleine OO Base Datenbank mit Kunden und möchte für die Anwender (DAUs) einen Button in ein Formular einbauen, per dessen Knopfdruck eine 0815 Eingabemaske aufgeht, wo ich einen Namen eingebe, der dann automatisch mit Wildcards gefiltert wird. Also der User gibt ein schmi und gefiltert wird im Nachnamensfeld *schmi*, um Schmitt, Schmidt oder Maier-Schmidt zu finden.

Einen zweiten Button bräuchte ich, um den Filter wieder abzuschalten. Die Filterfunktion, die OO standardmäßig bietet, macht zwar genau das, was ich brauche, ist aber für die User schon zu umständlich...

Ich selbst habe vor 20 Jahren mal mit Basic und Turbopascal programmiert, habe seitdem aber fast nichts mit Programmierung mehr gemacht.

Danke vorab!!
Reginald
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Button für Filterfunktion Nachname im Formular

Beitrag von komma4 »

Hatten wir die Tage schonmal....

siehe: viewtopic.php?f=8&t=40246


...das ist die eine Hälfte "der Wahrheit".

Noch eingestellt werden muss, dass die neuen Datensätze als Filter für's Formular angenommen werden.
Ich such' mal (glaube: ActiveFilter)
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Button für Filterfunktion Nachname im Formular

Beitrag von DPunch »

Aloha

Versuch mal folgendes:

Code: Alles auswählen

Sub ApplyFormFilter
	oDoc = thiscomponent
	oForm = oDoc.Drawpage.Forms(0)
	sFilter = InputBox("Bitte Namen eingeben:","Datensätze filtern","<<Zu filternder Name>>")
	oForm.Filter = "LOWER(""Name"") LIKE LOWER('%" & sFilter & "%')"
	oForm.applyFilter = True
	oForm.reload
	If oForm.isAfterLast Then
		MsgBox("Keine Datensätze gefunden für" & Chr(13) & sFilter,48,"Datensätze filtern")
	End If
End Sub

Sub RemoveFormFilter
	oDoc = thiscomponent
	oForm = oDoc.Drawpage.Forms(0)
	oForm.Filter = ""
	oForm.applyFilter = False
	oForm.reload
End sub
Reginald
****
Beiträge: 114
Registriert: Fr, 23.07.2010 23:58

Re: Button für Filterfunktion Nachname im Formular

Beitrag von Reginald »

Aloha DPunch!

Also das funktioniert! Danke! Super!!!

Ich habe mit ein wenig Ausprobieren auch das hinbekommen, dass er im Falle des Namens den Vornamen und Nachnamen gleichzeitig filtert. Sehr praktisch für unsere DAUs:

Code: Alles auswählen

oForm.Filter = "LOWER(""Firstname"") LIKE LOWER('%" & sFilter & "%') OR LOWER(""Lastname"") LIKE LOWER('%" & sFilter & "%')"
Danke noch einmal an alle, die geholfen haben! :D

Grüße,
Reginald
Antworten