Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Synymy am 24.09.09 - 11:52:27
-
Hallo!
Ich möchte ein Dokument aus einer selber gestrickten Datenbank per Mail versenden.
Also hab ich mir einen Button gebaut, der folgende Formel hinterlegt hat:
@MailSend(SendTo;"";"";"IT-Tip Nummer " + pid;"";"Body");
Das ganze klappt auch, nur dass eben nur der Body per Mail versendet wird, nicht das Dokument - für das es nebenbei gesagt in den Mail-Schablonen auch die richtige Maske gibt.
Nun meine Frage: kann ich das ganze überhaupt per @MailSend realisieren, und wenn ja, was muss ich anstelle von dem Feld Body eintragen, dass er das Dokument versendet und auch die richtige Maske beim Empfänger anzeigt?!
Vielen Dank schon Vorab!
Gruß, Syn
-
Dann schau Dir nochmal ganz genau das Hilfe-Dokument zu @MailSend an.
Bernhard
-
<les les les> ...
okay, ich kann das dokument mit @MailSend komplett versenden. <Boing>
Und wo nimmt er das Thema her? Kann ich das beeinflussen?!
LG, Syn
-
Und wo nimmt er das Thema her? Kann ich das beeinflussen?!
Aus einem Feld namens "Subject".
-
Hallo,
Auch dem @MailSend kann man einThema (Subject) mitgeben.
@MailSend(SendenAn ; KopieAn ; BlindkopieAn ; Thema ; Anmerkung ; Haupttextfelder ; [Flags])
Andreas
-
@ascabg
Auch dem @MailSend kann man einThema (Subject) mitgeben.
aber dann wird doch wieder nicht das ganze Dokument versendet, oder habe ich das jetzt falsch verstanden?
Markus
-
Danke für die vielen Antworten!
@ascabg:
Wie BigWim schon erwähnt hat, wird dann eine e-Mail generiert und nicht mehr das ganze Dokument verschickt...
@tks:
Thanks, genau das was ich gebraucht hab!
habe das Feld Subject als hidden Field eingebaut mit folgender Formel:
"hier steht mein Text und eine lfd. Nummer: " + pid
'pid' ist das Feld für die lfd. Nummer...
Leider zeigt der Subject im Posteingang immer nur den Test ohne die Nummer...
Kann ich die o.g. Formel so nicht einbauen??
LG, syn
-
"hier steht mein Text und eine lfd. Nummer: " + pid
"hier steht mein Text und eine lfd. Nummer: " + @Text(pid)
Wenn "pid" kein Text ist.
-
Hallo zusammen,
kann mir jemand auseinandersetzen was beim Befehl @MailSend der Unterschied zwischen
Haupttextfeld ohne Anführungszeichen @MailSend("abc@xyz.de";"";"";"Thema: "+subject;"Nachricht: ";Body);
und Hauttextfeld in Anführungszeichen @MailSend("abc@xyz.de";"";"";"Thema: "+subject;"Nachricht: ";"Body");
bewirkt?
Bei Nachrichten von Notes zu Notes sendet mein 'Nachrichtenverteilagent' den Inhalt von BODY nur wenn ich die Anführungszeichen in der Formel setze. Ohne Anführungszeichen steht in der versendeten Mail nur 'Nachricht: '.
Bei Nachrichten von externen Geräten (USV-Warnungen) und aus dem Internet ist es umgekehrt. Der Nachrichtentext wird nur weitergegeben, wenn BODY ohne Anführungszeichen in der Formel verwendet wird.
Weder aus der Notes Hilfe zu @MailSend noch aus den Forumseinträgen werde ich richtig schlau. Ein Richtextfeld ist ein Richtextfeld egal welches System die zu bearbeitende Mail versendet hat. Oder nicht ???
Danke Eckhardt
-
Aus der designer-Hilfe:
Enclose each field name in quotation marks.
bzw.
If you store the name of the field in a variable, omit the quotation marks here.
-
Vielen Dank für die Antwort.
Die englischsprachige Hilfe habe ich nicht gelesen. Inhaltlich ist es doch das, was in der deutschen Designerhilfe steht.
Jeder Feldname muss zwischen Anführungszeichen eingeschlossen werden. Wenn Sie mehrere Felder auflisten möchten, benutzen Sie das Listenformat von Notes: "Beschreibung":"Fragen":"Lösung". Wenn Sie Variablen verwenden, die Feldnamen enthalten, lassen Sie die Anführungszeichen weg.
Ich will keine Feldnamen aus Variablen übernehmen. Ich möchte das der Inhalt aus dem Feld BODY der ursprünglichen Nachricht auch im Text der versendeten Nachricht zu lesen ist. Folglich sind die Anführungszeichen in meiner Formel erforderlich.
ABER:
Die Formel bringts nur richtig, wenn die ursprüngliche Nachricht von einem Notes Client kommt. :( Variable und Feldname verstehe ich doch wohl richtig ???
-
Die Designer-Hilfe bezieht sich sich ja nur auf LN.
Und ich denke, deine ext. Geräten haben kein LN, also wird da die Syntax eine andere sein.
-
Ich verstehe das zwar genausowenig, wie Du, warum das so ist, aber als üblen Würgaround könntest Du doch
"Body" : Body als letzten Paramter eintragen.
-
.. auch keine schlechte Idee ::)
-
@klauss
Ja, die USV und alle anderen Externen haben kein Lotus Notes. Damit wäre das Leben für Admins auch viel zu einfach. Und weil nicht alle ihre Nachrichten mit Lotus Notes verschicken sieht dann der Inhalt vom BODY so aus
Feldname: Body
Datentyp: MIME-Element
Datenlänge: 352 Byte
Seq.-Num.: 3
Doppeleintrags-ID: 0
Feld-Flags: SIGN SEAL
"Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=iso-8859-1
Name : UPS1
Location : Haus2
Device Ser #: PD0902260009
Date: 04/06/2011
Time: 13:48:27
Code: 0x0105
Informational - UPS: Passed a self-test.
"
was bei Nachrichten von Lotus Clients im BODY so aussieht
Feldname: Body
Datentyp: Rich Text
Datenlänge: 356 Byte
Seq.-Num.: 5
Doppeleintrags-ID: 0
Feld-Flags: SIGN SEAL
Mit freundlichem Gruß
Eckhardt Uhlmann
@Peter
Prima Idee, die Formel wird im Designer akzeptiert. Leider versendet der Agent dann nur noch Nachrichten, wenn die auslösende Nachricht ihren Ursrung nicht auf einem Notes Client hatte. :'(
Trotzdem Danke.
-
Schade, wäre auch zu einfach gewesen.
Der Unterschied ist aber eindeutig, einmal hast Du ein Richtextfeld und einmal ein MIME-Element (von dem hier schon tausendfach geschrieben wurde, ich mich aber trotzdem nicht mit auskenne). Ich würde daher versuchen, beim Empfänger der Mails einzustellen, dass diese Felder in Richtext umgewandelt werden (falls das nicht mit irgenwelchen anderen Vorgaben kollidiert).
-
Ja Schaaade.
Das Nachrichtenmodul der USV hat ungefähr so viele Konfigurationseinstellungen wie eine tockene Scheibe Roggenbrot. Nur drei Eingabefelder für eine sehr begrenzte Anzahl von Zeichen. ABER: Es muss die Nachricht im MIME Format versenden. Ist das nicht schön. Herzlichen Dank an alle Programmierer, die uns auf diese Weise immer wieder Arbeit verschaffen und Themen zum Diskutieren. Das war ironisch gemeint!
Ernst meine ich meinen Dank an klauss und Peter.
-
Ich meinte, dass Du beim Eingang schauen könntest, ob die Mails in Richtext umgewandelt werden können
-
Alternativ kannst Du Deinen Mailverteil-Agenten auch in Script schreiben, dort kopierst Du nur das Body-Item in die Mail, egal, was für ein Typ das Item ist.
-
Im Endeffekt kann man (mit LS) die eingegangene Mail ja so, wie sie ist, weiterleiten (ggf. noch das Subject anpassen).
Bernhard
-
Da stoße ich jetzt an meine derzeitigen Grenzen.
die Mails in Richtext umgewandelt werden können
Dafür weiß ich zu wenig. Ich habe nicht mal eine Peilung an welcher Stelle im Client oder Domino das geschehen könnte.
kannst Du Deinen Mailverteil-Agenten auch in Script schreiben
Hier oute ich mich als fauler Admin. Bisher habe ich mich mit Formeln beholfen und um Script einen Bogen gemacht. Aber irgendwann muss ich ja mal anfangen. Ich bin mir sicher, dass ich im Forum was Passendes als Vorlage finde.
-
Am einfachsten so (Agent/Schaltfläche aus der Ansicht):
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Dim col As NotesDocumentCollection
Set col = db.UnprocessedDocuments
Dim doc As NotesDocument
Set doc = col.GetFirstDocument
Do While Not doc Is Nothing
doc.SendTo = "NEUER EMPFÄNGER"
doc.CopyTo = ""
doc.BlindCopyTo = ""
Call doc.Send (False)
Set doc = col.GetNextDocument (doc)
Loop
-
Wenn das als periodischer Agent läuft, kann (und wird das irgendwann) aber in die Hose gehen, Peter. Man sollte unbedingt im Dokument vermerken, was schon versendet wurde.
Bernhard
-
Schaust Du in den Ursprungspost, steht dort Button ...
-
Au Backe ... Blind kann man sein, Hauptsache, man sieht noch was!
Sorry, Peter! Vielleicht hilft mein Einwand zumindest später jemanden, der den Thread auch nur teilweise liest (bzw. in Erinnerung hat).
Bernhard