Definieren globaler Variablen

Liebe Mitglieder dieses Forums,

zunächst ein dickes Lob sowohl an die Entwickler als auch an alle, die an diesem Forum mitmirken. Noch nie fühlte ich mich so gut aufgehoben wie hier.

Seit kurzem teste ich die Demoversion Papyrus Autor 3.5 auf einem Windowsrechner (XP Prof.) und bin schlichtweg begeistert: Viele nützliche Funktionen, genial einfache Bedienung. Selbst Laien können in rekordverdächtig kurzer Zeit ohne große Einarbeitungszeit eine Datenbank erstellen. Und, und, und…

Doch nun zu meinem Problem, das ich ohne Hilfe leider nicht lösen kann: Nach Möglichkeit möchte ich eine globale Variable, die aus den Feldern Anrede, Titel und Nachname der bestehenden Datenbank „Mitglieder“ eine Briefanrede generiert, sofern das jeweilige Label zum Beispiel den Wert gleich Herr (oder Frau u.ä.) hat bzw. gefüllt ist (gilt insbesondere für das Label „Titel“).

Gebe ich dazu in Datenbank/Eigenschaften/Variablen als Variablenname Briefanrede und im Feld „Wert“ den Befehl „Anrede + „ „ + Titel + „ „ + Nachname“ ein, werden im entsprechenden Feld der Tabelle nicht wie gewünscht die Werte mit Leerzeichen aneinander gereiht, sondern meine vorgenannte Eingabe erscheint als Text. Gleiches geschieht mit Bezügen wie [RELPFAD…] oder [C:.…]. Demzufolge gehe ich davon aus, dass hier nur Texteingaben erlaubt sind, was ich nicht ganz nachvollziehen kann. Nach meinem Verständnis haben Variablen ihren Namen daher, dass sie Werte enthalten, die jederzeit durch andere ersetzt werden können oder sich für Rechenoperationen und den daraus resultierenden Ergebnissen eignen, also variabel einsetzbar sind.

Lässt die Demoversion an dieser Stelle vielleicht keine Befehle zu?

Möchte ich stattdessen testweise die Variable mit „LET Briefanrede = Anrede + etc“ entweder im Rechen- oder Formelfeld der Tabelleneigenschaften definieren, erscheint in beiden Fällen die Warnung, die Briefanrede sei ein unbekanntes Symbol. Setze ich die Briefanrede vorab ohne Wertangabe global, erscheint bei der Zuweisung „Briefanrede = …“ im entsprechenden Feld der Tabelle die Zahl 0, was eigentlich logisch ist, da die globale Variable ja keinen Wert enthält und offenbar als unveränderbare Konstante betrachtet wird.

Wie ich es auch drehe und wende, entweder kann ich eine selbstdefinierte Variable erst gar nicht setzen oder einer globalen Variablen nichts außer Text zuweisen.

Was mache ich falsch? Oder kann man einer Variablen nur in einem Report Werte zuweisen?

Zwar löste ich mein Anliegen, indem ich im Formelfeld der Tabelleneigenschaft mit einem verschachtelten IF-THEN-ELSE-Befehl alle Eventualitäten abdecken konnte, aber mich würde interessieren, wie ich die Briefanrede für andere Tabellen oder weitere Datenbanken verfügbar machen kann. Mit einer 3D- oder 4D-Verknüpfung hapert es leider auch, doch dieses Problem schildere ich besser an anderer Stelle.

Ich hoffe, ich konnte mich verständlich ausdrücken und vertraue darauf, dass jemand einen Tipp aus dem Zylinder zaubern kann.

Mit freundlichen Grüßen

Petra

1 „Gefällt mir“