Seite 1 von 1
(gelöst) Writer Serienbrief Syntax für Wenn-Dann-Sonst-Bedingung mit Datenbankabfrage
Verfasst: Mi 29. Sep 2021, 16:42
von fly
Hallo
Ich definiere eine Abfrage, deren Bedingung ein Datenbankfeld abfrägt, im Stil von
Datenbank.Tabellenname.Feldname EQ "Wert"
Scheinbar darf der Feldname keine Leerzeichen enthalten. Nun ist die Datenbank aber mit einem OSX Adressbuch verknüpft und der Feldname vorgegeben mit "Zugehöriger Name: Anrede" - er enthält also Leerzeichen.
Wie genau lautet also die Syntax für die Bedingung, wenn im Feldnamen Leerzeichen sind?
Vielen Dank im Voraus
Yves
Re: Writer Serienbrief Syntax für Wenn-Dann-Sonst-Bedingung mit Datenbankabfrage
Verfasst: Mi 29. Sep 2021, 16:52
von craig
Re: Writer Serienbrief Syntax für Wenn-Dann-Sonst-Bedingung mit Datenbankabfrage
Verfasst: Mi 29. Sep 2021, 17:46
von fly
Nicht ganz Craig, denn LibreOffice und OpenOffice sind zwei Produkte, wo ich dasselbe feststellte. Daher zwei Posts.
Doch was schlägst du vor? Hättest du eine Lösung zum Problem? Die erste Lösung zum Problem würde natürlich verlinkt.
Re: Writer Serienbrief Syntax für Wenn-Dann-Sonst-Bedingung mit Datenbankabfrage
Verfasst: Do 30. Sep 2021, 09:41
von Pit Zyclade
Meine Experimente waren ergebnislos.
M.W. sollten die Felder für den Serienbrief
- immer Textformat haben und
- immer über geschlossene Feldnamen verfügen. Deshalb umgehe ich Leerstellen mithilfe von _
Wenn die Datenbank im writer-Dokument bekannt ist, braucht man bei bedingtem Text nur den Feldnamen angeben, nicht den ganzen Weg zu diesem Feld (wie z.B. zu sehen ist, wenn man sich die Feldnamen komplett anzeigen läßt). Ob dann in diesem Weg Leerstellen sein dürfen, weiß ich nicht, aber ich glaube, sie stören nicht.
Re: Writer Serienbrief Syntax für Wenn-Dann-Sonst-Bedingung mit Datenbankabfrage
Verfasst: Di 5. Okt 2021, 08:57
von fly
Pit Zyclade hat geschrieben: ↑Do 30. Sep 2021, 09:41
Meine Experimente waren ergebnislos.
M.W. sollten die Felder für den Serienbrief
- immer Textformat haben und
- immer über geschlossene Feldnamen verfügen. Deshalb umgehe ich Leerstellen mithilfe von _
Wenn die Datenbank im writer-Dokument bekannt ist, braucht man bei bedingtem Text nur den Feldnamen angeben, nicht den ganzen Weg zu diesem Feld (wie z.B. zu sehen ist, wenn man sich die Feldnamen komplett anzeigen läßt). Ob dann in diesem Weg Leerstellen sein dürfen, weiß ich nicht, aber ich glaube, sie stören nicht.
Danke, aber "geschlossene Feldnamen" ist hier nicht möglich, da der Feldname durch die Datenbank vorgegeben ist.
Es ist aber richtig, dass nicht der ganze Weg angegeben werden muss, wenn Datenbank und Tabelle vorselektiert sind. Wenn der Feldname mit eckigen Klammern angegeben wird, funktioniert es dann auch mit Leerzeichen, also im Beispiel [Zugehöriger Name: Anrede]. Mein Problem ist also gelöst.
Was ich aber feststellte: Bei einem bedingen Text lässt sich nur die Bedingung mit Datenbankabfrage formulieren, also zum Beispiel:
[Zugehöriger Name: Anredeform] EQ "Sie"
Es scheint aber nicht möglich, in den Feldern "dann"/"sonst" wieder eine Datenbankbfrage zu machen. Hier ist nur eine Text möglich.
Re: (gelöst) Writer Serienbrief Syntax für Wenn-Dann-Sonst-Bedingung mit Datenbankabfrage
Verfasst: Di 5. Okt 2021, 09:20
von Pit Zyclade
Ein Problem bleibt: Was ist ein Feldname?
Du hast zwar dein Problem gelöst, aber die Leerstelle, die du umschiffen wolltest lag im Zusammenspiel von Weg (oder Pfad) und Feldname (in meinem, engeren Sinne). Denn wenn ich als Feldname anstelle "Code" "Co de" nehme, was in einer Tabelle durchaus erlaubt ist, gelingt mir die Zuordnung auch nicht mit [Co de], was ich auch probiert hatte.
Re: (gelöst) Writer Serienbrief Syntax für Wenn-Dann-Sonst-Bedingung mit Datenbankabfrage
Verfasst: Mi 6. Okt 2021, 09:43
von Pit Zyclade
Nachtrag:
Ich erhielt die Anregung, zur Lösung des Problems mit der Leerstelle im Feldnamen eine Abfrage in der Datenbank zu nutzen.
Das ermöglicht dann zwar noch keine direkte Nutzung einer calc-Tabelle, aber man sollte es versuchen.
Also habe ich eine
Abfrage in der Datenbank erstellt, wobei ich dann für das Feld Co de einen
alias Code erzeugt habe.
Dann habe ich versucht im writer-Dokument diese Abfrage als Quelle einzutragen. Aber das geht offenbar nicht, sondern es werden nur Tabellen akzeptiert.
Jetzt das Unfaßbare: Der
Serienbrief kann regelrecht erzeugt werden. Offenbar wird der alias auch auf die Tabelle angewandt.