[GELÖST] Versteckter Absatz mit Bedingung "enthält"

Das Textverarbeitungsprogramm

Moderator: Moderatoren

AHoppe
**
Beiträge: 25
Registriert: Mi, 25.03.2009 15:32

[GELÖST] Versteckter Absatz mit Bedingung "enthält"

Beitrag von AHoppe »

Hi Forum,

ich muss in einer Dokumentvorlage einen Absatz in Abhämgigkeit vom Inhalt eines Datenbankfeldes verstecken (oder eben nicht verstecken).

Ich muss in dem DB-Feld aber nicht auf Gleichheit prüfen, sondern auf enthält, also so wie LIKE bei SQL. Gibt es diese Möglichkeit bei Writer für die Bedingung für versteckte Absätze?

Viele Grüße

Andreas
Zuletzt geändert von AHoppe am Mi, 26.12.2012 09:20, insgesamt 1-mal geändert.
F3K Total
********
Beiträge: 3722
Registriert: Mo, 28.02.2011 17:49

Re: Versteckter Absatz mit Bedingung "enthält"

Beitrag von F3K Total »

Hi,
da verstehe ich die Vorgehensweise nicht. Vielleicht fehlen auch Informationen? Wenn es sich um eine Dokumentvorlage mit Feldbefehlen, die aus einer Datenbank befüllt werden, handelt, kannst Du doch den entsprechenden Text (Absatz) auch als Feld aus der DB holen, oder?
In der DB kannst Du eine Abfrage erzeugen die mit LIKE arbeitet.

Gruß R
Rocko
*******
Beiträge: 1164
Registriert: Do, 11.10.2012 13:19

Re: Versteckter Absatz mit Bedingung "enthält"

Beitrag von Rocko »

AHoppe hat geschrieben:ich muss in einer Dokumentvorlage einen Absatz in Abhängigkeit vom Inhalt eines Datenbankfeldes verstecken (oder eben nicht verstecken).
In einem Versteckten Absatz kannst du nur den Inhalt eines vollständigen Datenbankfeldes als Bedingung eintragen. Möglicherweise hilft dir folgender Workaround:

Der Standardfilter zur Filterung der Datenbank (F4) ermöglicht auch eine Filterung nach Teilwörtern mit "wie" oder "nicht wie". Z.B. bekommst du bei der Filterung von Vornamen mit der Bedingung *Mari?* eine Filterauswahl auch von Marie, Marianne, Marieluise. Somit wäre es auch möglich diese Filterung der Datensätze mit dem jeweils gewünschten Ausdrucktext zu verbinden.

Sollte jedoch zusätzlich noch der Versteckte Absatz eingesetzt werden müssen, kann dies mit Bezug auf eine Variable geschehen. Du definierst eine Variable (Benutzerfeld) und beziehst dich auf diese Variable mit einem Eingabefeld. Wenn dann in das Eingabefeld die Bedingung für den Versteckten Absatz eingetragen wird, wird dieser automatisch versteckt.

Die anhängende Beispieldatei habe ich mit der Datenbank der Bibliography (AOO3.4.0) verknüpft.
Dateianhänge
Versteckter Absatz mit Variabler .odt
(19.35 KiB) 148-mal heruntergeladen
Hast du schon mal einen Blick in die Writer-FAQ und in die Calc-FAQ des Forums geworfen?
Für jeden vor dem Beginn seiner Seminararbeit ein unbedingtes MUSS: http://openoffice-uni.org/
AHoppe
**
Beiträge: 25
Registriert: Mi, 25.03.2009 15:32

Re: Versteckter Absatz mit Bedingung "enthält"

Beitrag von AHoppe »

Danke für die Antworten. Vermutlich habe ich mein Problem nicht ganz eindeutig beschrieben. :-)

Ich muss eine Vorlage erstellen, die vollautomatisch funktioniert. Das einzige, was der Anwender zu tun hat, ist F4 zu drücken und dann zur Datensatz-Auswahl eine ID einzugeben.

Jetzt steht ein Datensatz bereit, dessen Daten in die Felder der Vorlage eingesetzt werden. So weit ja alles kein Problem.

Ein Absatz muss nun aber in Abhängigkeit des Inhalts eines Datenbankfeldes versteckt werden. Der Inhalt ist aber nicht immer identisch, sondern enthält Schlagwörter. Als Beispiel soll eine Pizza dienen und das Datenbankfeld Belag.

Dort kann drin stehen:

Salami, Zwiebeln
Salami
Zwiebeln, doppelt Käse

Immer dann, wenn Salami im Datenbankfeld enthalten ist, soll der Absatz versteckt werden.

Und diese Abfrage der Art [DB_Pizza.Belag] LIKE "%Salami%" bräuchte ich.

Ich wollte es auch zuerst SQL-seitig lösen, aber dann bräuchte ich im SELECT-Teil eine IF-Abfrage mit einem LIKE, die nur dann funktioniert, wenn ich die Abfrage direkt durchleite. Das geht aber nur ohne die Parametereingabe, die ich zwingend brauche...

Viele Grüße

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

Re: Versteckter Absatz mit Bedingung "enthält"

Beitrag von F3K Total »

Hallo Andreas,
AHoppe hat geschrieben:bräuchte ich im SELECT-Teil eine ...IF-Abfrage mit einem LIKE, die nur dann funktioniert, wenn ich die Abfrage direkt durchleite
Das ist nicht nötig, folgende Parameterabfrage funktioniert.

Code: Alles auswählen

SELECT "ID", "Pizza" FROM "Pizzen" Where LOWER ("Pizza") LIKE LOWER ( '%' || :Suchtext || '%'  )
Gruß R
Edit: Ok, da du MySql verwendest, wie ich gerade im Base Forum gelesen habe, bei dir wohl doch nicht?
AHoppe
**
Beiträge: 25
Registriert: Mi, 25.03.2009 15:32

Re: Versteckter Absatz mit Bedingung "enthält"

Beitrag von AHoppe »

Hallo F3K Total,

genau, MySQL mit Openoffice, und im Moment beißt sich die Katze in den Schwanz...

Viele Grüße

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

Re: Versteckter Absatz mit Bedingung "enthält"

Beitrag von F3K Total »

... bleibt vielleicht ein Makro, das die Abfrage generiert ... oder doch der Tipp von Rocko?
Gruß R
AHoppe
**
Beiträge: 25
Registriert: Mi, 25.03.2009 15:32

Re: Versteckter Absatz mit Bedingung "enthält"

Beitrag von AHoppe »

Der Tipp von Rocko hat funktioniert, also wird die Abfrage datenbankseitig gemacht. :-)

Viele Grüße und einen schönen Feiertag!

Andreas
Antworten