+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

E-Mail - Empfänger via SetVar()/GetVar() an Projekteigenschaften/Mailparameter übergeben

designer

(Christian Moestchen) #1

Hallo zusammen,
ich bin am verzweifeln und hoffe, dass mir jemand zum nachfolgenden Problem weiterhelfen kann.

Ziel:
Über L&L generiere ich eine Vorlage/einen Bericht, der - je nach Inhalt - über die Druckvorschau an einen unterschiedlichen Personenkreis per E-Mail gesandt werden soll.

bisherige Vorgehensweise:

  1. Den Empfängerkreis/die Zeichenkette habe ich mir beim Auslesen der aufzubereitenden Daten bereits über die SetVar()/GetVar() - Funktionen zusammengesetzt.
    Initialisierung der Variable: SetVar(“Empfaenger”, “”)
    Zuweisung: SetVar(“Empfaenger”, GetVar(“Empfaenger”) + NeueZeichenkette)
  2. Das Ausgabeobjekt ist mit dem Berichtscontainer in der Objektliste “zeitlich verkettet”.
  3. Der Inhalt der Variable wird mir - zu Testzwecken - als letztes Objekt in der Objektliste korrekt in einem Textfeld ausgegeben.
    GetVar(“Empfaenger”)

Problem:
Wähle ich im Objektbaum das Projekt aus und trage bei den Mailparametern bei der Einstellung An (To) als Formel GetVar(“Empfaenger”) ein - was wie in Punkt 3 beschrieben problemlos funktioniert - wird mir beim Aufruf des E-Mailversand über die Druckvorschau zwar ein neues E-Mailfenster geöffnet, bei dem der Betreff über eine Benutzervariable korrekt vorbelegt wird, jedoch bleibt der Empfänger (leider) leer.
D.h. die Variable “Empfaenger” scheint nicht per GetVar() ausgegeben zu werden.

Hat jemand von Euch/Ihnen eine Idee, wie ich ans Ziel komme?

Vielen herzlichen Dank und viele Grüße


(combit Support - Patrick Preuschoff) #2

Hier handelt es sich vermutlich um ein Timingproblem - die Information zum eMail-Empfänger wird bereits beim Druckstart ausgewertet und kann daher so nicht übergeben werden. In diesem Fall müssten Sie den Empfängerkreis leider bereits vorab als Variable definieren und übergeben. Eine Umstellung des Timings auf unserer Seite ist prinzipiell denkbar, aber nicht kurzfristig umzusetzen - gerne können Sie dies als Anregung in unserem Feature-Portal posten.


(Christian Moestchen) #3

Sehr geehrter Herr Preuschoff,
vielen herzlichen Dank für Ihre schnelle Rückmeldung.

Das ist ein interessanter Hinweis, das der E-Mailempfänger bereits beim Druckstart ausgewertet wird.
Ich habe zum Testen einfach mal eine Benutzervariable erstellt, die beim Druckstart per AskString() die Empfängerliste abfragt. Seltsamerweise wird diese dann sogar korrekt über den Mailparameter als E-Mailempfänger übergeben.

  1. Nur kann ich den Inhalt der Benutzervariable ja nicht dynamisch ändern.
  2. Auch der Versuch die Benutzervariable mit GetVar() zu definieren und diese dann als Mailparameter zu
    übergeben schlägt leider fehlt.

Viele Grüße,
Christian Moestchen


(combit Support - Patrick Preuschoff) #4

Das Verhalten äußert sich so, da die Benutzervariable mindestens einmal vor dem Druck berechnet wird. Ein per AskString$() abgefragter Inhalt kann so ebenfalls vor dem Druck ausgewertet werden. Wie zuvor erwähnt ist der aktuelle Workaround das Definieren des Inhalts vor dem Druckstart - beispielsweise über eine Benutzerabfrage in Ihrer Anwendung oder per AskString$()-Funktion in List & Label.