Teil eines Datenfeldes ausschneiden

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Teil eines Datenfeldes ausschneiden

Beitrag von Eia »

Hallo
ich weiß nicht recht, ob ich hier richtig bin oder im Writer, es geht um Serienbriefe.
Aber ich glaube, der Writer hat keine Funktion für das, was ich brauche und vermute, wenn es überhaupt geht, müsste es mit einer Abfrage und einem zusätzlichen Feld gelöst werden.
In meinem Kundenstamm gibt es Namen mit dem Zusatz "jun." oder "sen."
Das ist für den Adresskopf ganz ok
Aber bei der Briefanrede sollte dann nur noch "Sehr geehrter Herr Meier" stehen, ohne diesen Zusatz.
Nun habe ich aber keine Idee, wie man den Namen ohne diesen Zusatz herausfiltern könnte, da man ja nicht weiß, an welcher Stelle er steht.
Hat jemand eine Idee?
mfG
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Teil eines Datenfeldes ausschneiden

Beitrag von komma4 »

Hallo Eia,


vielleicht kannst Du bei der Abfrage die (HSQLDB-)Funktion REPLACE( suchenIn, wasSuchen , ersetzenMit) nutzen....?
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)
Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Re: Teil eines Datenfeldes ausschneiden

Beitrag von Eia »

komma4 hat geschrieben:Hallo Eia,


vielleicht kannst Du bei der Abfrage die (HSQLDB-)Funktion REPLACE( suchenIn, wasSuchen , ersetzenMit) nutzen....?
Klasse Idee, werde ich versuchen.
Danke
Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Re: Teil eines Datenfeldes ausschneiden

Beitrag von Eia »

Es tut!
Herzlichen Dank
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Teil eines Datenfeldes ausschneiden

Beitrag von komma4 »

Du hast zwei Möglichkeiten (jun./sen. im Namen) - wie hast Du das gelöst: durch verschachtelte REPLACE-Befehle, oder durch CASE WHEN, oder ...
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)
Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Re: Teil eines Datenfeldes ausschneiden

Beitrag von Eia »

Ich hab erstmal geübt, ob ich das mit dem REPLACE überhaupt hinkriege, wie ich das mit den 2 Fällen mache, habe ich noch gar nicht überlegt.
Vielleicht mit 2 Feldern:
REPLACE("NAME" , 'jun.' , '') AS "NAME_TMP" , REPLACE("NAME_TMP" , 'sen.' , '') AS "Briefanrede"
Das mit dem CASE kenne ich nicht und wie ich verschachteln müsste, muss ich auch erst ausprobieren
Ich kann aber erst morgen wieder mit der DB arbeiten.
mfG
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Teil eines Datenfeldes ausschneiden

Beitrag von komma4 »

also, verschachteltes REPLACE geht:

Code: Alles auswählen

SELECT REPLACE( REPLACE( "text" , 'sen.', '' ) ,'jun.', '' ) as "Briefanrede" FROM "Tabelle1"
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)
Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Re: Teil eines Datenfeldes ausschneiden

Beitrag von Eia »

Jep, genau so!
Vielen Dank - vor allem auch für's Mitdenken!
mfG
Antworten