Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Raabiat am 05.06.03 - 07:21:43

Titel: evaluate + mailsend + doclink
Beitrag von: Raabiat am 05.06.03 - 07:21:43
tag forum,

rufe eine selbsdefinierte funktion mit parametern auf
in der via evaluate ein @mailsend mit adressat,subject,und body
als parametern ausgeführt werden soll
der aufruf erfolgt über eine aktionsschaltfläche

problem:
ich muss jetzt, wie auch immer, einen doclink in den mailbody reinbekommen der auf das dokument verweist aus dem ich die funktion aufrufe(die aktionsschaltfläche anclick)

bin gespannt.
vielen dank
Titel: Re:evaluate + mailsend + doclink
Beitrag von: klaussal am 05.06.03 - 07:53:46
... ja schön. und jetzt  ??? ::) ???
Titel: Re:evaluate + mailsend + doclink
Beitrag von: Raabiat am 05.06.03 - 08:02:10
wie und jetzt?

jetzt würd ich gern wissen ob das irgendwie möglich ist und ob sie eine idee dazu haben.

da script sieht an der stelle folgendermaßen aus:

evaluate|@mailsend("| + adressat + |";"";"";"| + subject +
               |";"";"| + mailbody + |")|

in dieser form funktioniert auch der mailversand.
wie bekomme ich jetzt in den mailbody einen doclink hinein?

war vielleicht etwas unklar formuliert vorher...sorry
Titel: Re:evaluate + mailsend + doclink
Beitrag von: klaussal am 05.06.03 - 08:15:17
... aus der designer-hilfe (@mailsend):
Code
[IncludeDocLink]
Fügt eine Dokumentverknüpfung mit dem Dokument ein, das bei Verwendung von @MailSend geöffnet oder markiert war. Sie müssen dieses Flag verwenden, wenn Sie möchten, daß dieses Dokument mit dem Mail-Memo verknüpft werden soll.
Titel: Re:evaluate + mailsend + doclink
Beitrag von: Raabiat am 05.06.03 - 08:19:12
habe ich in dieser variante getan:

evaluate|@mailsend("| + adressat + |";"";"";"| + subject +
              |";"";"| + mailbody + |";[IncludeDocLink])|

funktioniert unergründlicherweise nicht
die hilfe gibt dazu nicht mehr her

kann es damit zusammen hängen das das ganze von ner aktionsschaltfläche ausgeführt wird und der nicht weiss was für ne verknüpfung der dranhängen soll??

PS: bin newbie in notes
Titel: Re:evaluate + mailsend + doclink
Beitrag von: Axel_Janssen am 05.06.03 - 08:40:58
Hallo,

Evaluate wird doch nur dann verwendet, um in LotusScript Formelsprachefunktionen aufzurufen.

Warum arbeitest Du überhaupt mit evaluate?
Ich würde evaluate nur dann benutzen, wenn es wirklich keine andere Möglichkeit mehr gibt.

Du kannst das Problem doch viel übersichtlicher und test/debugbarer mit LotusScript Mitteln lösen.
Klassen NotesDocument und NotesRichTextItem dürften alles haben was du brauchst.

Titel: Re:evaluate + mailsend + doclink
Beitrag von: Raabiat am 05.06.03 - 08:44:44
genau.aber innerhalb des projektes bleibt mir keine andere wahl ausser nem evaluate..

notesdocument und richtextitem hab ich auch durchgelesen...das wär dann über document.appenddoclink oder so ähnlich gell?

hat keiner ne idee wie ich das da mit einbauen kann??
einfach irgendwie rein ins evaluate

die mail wird nur unter bestimmten bedingungen versand...
und der aufruf erfolgt wegen der relativ komplexen bedingungen
in script gemacht
Titel: Re:evaluate + mailsend + doclink
Beitrag von: klaussal am 05.06.03 - 09:23:49
also, die "@mailsend-funktion" funzt. soeben probiert. syntax-fehler scheidet also aus.
versuche mal, das ganze in script zu machen. eine andere idee hab ich sonst z.zt. leider auch nicht. :'(
Titel: Re:evaluate + mailsend + doclink
Beitrag von: Axel_Janssen am 05.06.03 - 09:25:35
genau.aber innerhalb des projektes bleibt mir keine andere wahl ausser nem evaluate..

nehme 1.000 Euro Wetten an, dass das nicht stimmt  ;D

Du kannst doch eine Funktion schreiben, in der du die Mail abschickst.
Übergabeparameter:
- zu-docVerlinkendes Dokument.
- gegenwärtige NotesDatabase

Folgender Ablauf in der Funktion:

1. Mail-Dokument erzeugen. (NotesDatabase.createDocument)
2. Adressat-Felder - füllen. (Subject, SendTo).
3. NotesRichtextItem "Body" erzeugen (und an Mail-Dokument binden).
4. Text in RichTextItem schreiben.
5. DocLink an RichTextItem anbinden.
6. MailDoc.Send().

Dann schreibst du die (Business)-Logik wann diese Funktion aufgerufen wird oder nicht.




Titel: Re:evaluate + mailsend + doclink
Beitrag von: Raabiat am 05.06.03 - 09:41:00
das nenn ich mal ne antwort ;D thx

noch ne frage zu punkt 3:
Zitat
3. NotesRichtextItem "Body" erzeugen (und an Mail-Dokument binden).

wie ist das gemeint?? an maildokument binden??
kenn ich nich...bin doch newbie ;)

ansonsten hört sich cool an...werd ich gleich mal machen
Titel: Re:evaluate + mailsend + doclink
Beitrag von: klaussal am 05.06.03 - 09:46:38
... appenddoclink   ???
Code
1.   This script creates a new mail memo. In the Body item of the memo, the script places a link to the current database.
Dim session As New NotesSession
Dim db As NotesDatabase
Dim newDoc As NotesDocument
Dim rtitem As NotesRichTextItem
Set db = session.CurrentDatabase
Set newDoc = New NotesDocument( db )
Set rtitem = New NotesRichTextItem( newDoc, "Body" )
Call rtitem.AppendDocLink( db, db.Title )
newDoc.Subject = "Here is a link to the database"
newDoc.SendTo = "Lauri Nodwell"
newDoc.Send( False )
Titel: Re:evaluate + mailsend + doclink
Beitrag von: Axel_Janssen am 05.06.03 - 10:00:14
naja appendDocLink nicht mit Datenbank-Objekt sondern mit dem Dokument als Parameter. Steht in der Hilfe (falls das Fragezeichen-Icon auf eine Unklarheit verweisen soll).

Und ich würde mir dringend überlegen mit Funktionen zu arbeiten.

Sowas wie dieser stub -->

function sendMailWithDocLink (curDb As NotesDatabase, curDoc As NotesDocument) as Integer

onError goto Fehler

sendMailWithDocLink = true

exit function

Fehler:
print "Fehler " & Error$ & "(" & Cstr(Err) & ") in Zeile: " & Cstr(Erln)
sendMailWithDocLink = false
end function
Titel: Re:evaluate + mailsend + doclink
Beitrag von: Raabiat am 05.06.03 - 12:33:40
 ;D ;D

perfekto...

vielen dank

läuft alles bestens und viel eleganter ;)