Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Gravedigger am 11.08.03 - 11:16:45

Titel: Link in Mail versenden
Beitrag von: Gravedigger am 11.08.03 - 11:16:45
Hallo,

mit Hilfe eines LotusScript-Agenten versende ich eine Mail. Diese Mail sollte im Body einen Link zum neuerstellten Dokument enthalten.

Alle meine Versuche endeten bis jetzt mit dem Fehler, dass Domino die ID der View nicht finden konnte, was ja irgendwie verständlich  ist, da das Dokument gerade erst gespeichert wurde.

Hat jemand eine Idee?


Danke
Titel: Re:Link in Mail versenden
Beitrag von: klaussal am 11.08.03 - 12:15:09
... wie sahen die versuche denn aus ?

schon mal in der hilfe "appenddoclink" durchgelesen ?
Titel: Re:Link in Mail versenden
Beitrag von: Gravedigger am 11.08.03 - 13:40:50
Mit appenddoclink habe ich es auch schon probiert, da ist auch der Fehler her.

Titel: Re:Link in Mail versenden
Beitrag von: Axel_Janssen am 11.08.03 - 14:25:38
ich kann mich dunkel daran erinnern, daß es möglicherweise nicht auszuschließen ust, daß es eventuell daran liegen könnte, daß du keine default view in deiner Datenbank hast.

Nimm eine Ansicht wo alle Dokumente drin sind oder bau dir eine neue.
Dann Design-Property Box, 2. Reiter Feld "Default when database is first opened".

Versuchs einfach mal aus und berichte...

Titel: Re:Link in Mail versenden
Beitrag von: Gravedigger am 11.08.03 - 14:33:16
Ich habs jetzt folgendermaßen gelöst:

link = "http://intranet/" + db.FilePath + "/" + viewtodo.UniversalID + "/" + persondoc.UniversalID + "?OpenDocument"

Jetzt müsste ich nur noch den Servernamen ermitteln können, dann wärs perfekt. Hier ist das Problem, das dieser vom DNS-Server aufgelöst wird.
Titel: Re:Link in Mail versenden
Beitrag von: klaussal am 11.08.03 - 14:43:04
... db.server.... ;)
Titel: Re:Link in Mail versenden
Beitrag von: Gravedigger am 11.08.03 - 14:46:03
Hab ich schon probiert. Hier erhalte ich den richtigen Servernamen, d. h. CN=DEDOM01/OU=Server/O=BLUBBER.

Der Name "intranet" kommt bei uns nur durch den DNS-Server zustande.
Titel: Re:Link in Mail versenden
Beitrag von: Chriss am 11.09.03 - 16:50:03
Hallo,
folgender Agent versendet Mails mit darin enthaltenen Links auf die nach dem letzten lauf erstellten Dokumente.

Sub Initialize
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim collection As NotesDocumentCollection
   Dim doc As NotesDocument
   Dim maildoc As NotesDocument
   Dim rtxitem As NotesRichTextItem
   Dim rtxStyle As NotesRichTextStyle
   Dim i As Integer
   Dim Gesellschaften As String
   Set db = session.CurrentDatabase
   Set collection = db.UnprocessedDocuments
   Set doc = collection.GetFirstDocument()
   Set maildoc = New NotesDocument( db )
   Set rtxitem = New NotesRichTextItem( mailDoc, "Body" )
   Set rtxStyle = session.CreateRichtextStyle()
   '+++ Mailtext mit Einleitungstext versehen
   Call rtxitem.AppendText("Sehr geehrte Damen und Herren,")
   Call rtxitem.AddNewLine( 2 )
   Call rtxitem.AppendText("anbei erhalten Sie die neuesten links auf unsere Dokumente.")
   Call rtxitem.AddNewLine( 2 )
   '+++ Doclinks der Dokumente in den Mailtext einfügen
   While Not(doc Is Nothing)
      Gesellschaften = ""
      Call rtxitem.AppendDocLink( doc, db.Title )
      rtxStyle.NotesColor = COLOR_BLUE
      rtxStyle.Bold = False
      Call rtxitem.AppendStyle(rtxStyle)
      Call rtxitem.AppendText("  >>>>     " )
      rtxStyle.NotesColor = COLOR_BLACK
      rtxStyle.Bold = True
      Call rtxitem.AppendStyle(rtxStyle)
      Call rtxitem.AppendText( doc.Titel( 0 ) )
      '+++ hier wird jetzt noch die Gesellschaft hinzu gefügt
      rtxStyle.Bold = False
      Call rtxitem.AppendStyle(rtxStyle)
      Forall Gesellschaft In doc.Kategorie
         If Gesellschaften = "" Then
            Gesellschaften = Gesellschaft
         Else
            Gesellschaften = Gesellschaften + "  /  " + Gesellschaft            
         End If
      End Forall
      Call rtxitem.AddTab ( 2 )
      Call rtxitem.AppendText ( Gesellschaften )
      Call rtxitem.AddNewLine( 2 )
      Call session.UpdateProcessedDoc( doc )
      Set doc = collection.GetNextDocument(doc)
      i = i + 1
   Wend
   If  i <> 0 Then
      '+++ Maildokument mit Absender,Empfänger und Thema versehen
      maildoc.SendTo = "Empfänger"
      'maildoc.recipients = "Empfänger"
      maildoc.Principal = db.Title
      maildoc.Form = "Memo"
      maildoc.From = db.Title
      maildoc.Subject = Str$(i) + " die neuesten Dokumente der DB "
      '+++ Mailtext mit Abschlußtext versehen
      rtxStyle.Bold = False
      Call rtxitem.AppendStyle(rtxStyle)
      Call rtxitem.AddNewLine( 2 )
      Call rtxitem.AppendText( "Für Rückfragen stehe ich gerne unter der Durchwahl ")
      rtxStyle.Bold = True
      Call rtxitem.AppendStyle(rtxStyle)
      Call rtxitem.AppendText( "-0815")
      rtxStyle.Bold = False
      Call rtxitem.AppendStyle(rtxStyle)
      Call rtxitem.AppendText( " zur Verfügung." )
      Call rtxitem.AddNewLine( 3 )
      Call rtxitem.AppendText( "Mit freundlichen Grüßen" )
      Call rtxitem.AddNewLine( 2 )
      Call rtxitem.AppendText( "Ernie und Bert" )
      Call rtxitem.AddNewLine( 1 )      
      Call rtxitem.AppendText( "Sesamstrasse" )
      Call rtxitem.AddNewLine( 3 )
      rtxStyle.Fontsize = 12
      rtxStyle.Bold = True
      rtxStyle.NotesColor = COLOR_RED
      Call rtxitem.AppendStyle(rtxStyle)
      Call rtxitem.AppendText( "Bitte keine Antworten an die Absender Adresse senden, sie ist nicht adressierbar!!" )
      Call maildoc.send(False)
   Else
      Exit Sub
   End If
End Sub

nachdem der Agent in einer DB erstellt wurde, sollte er mit der Server ID unterschrieben werden (Absender). Absender ist der Titel der Db, es steht aber immer dabei gesendet von. Wenn mit der Server ID unterschrieben wird, steht da DB.Title und gesendet von Servername

PS: Der Agent läuft bei uns einmal täglich morgens um 6 Uhr. Damit haben die Mitarbeiter wenn Sie ins Büro kommen immer die neuesten Infos ( vom Vortag)

schönen Tach noch
Chriss
Titel: Re:Link in Mail versenden
Beitrag von: koehlerbv am 11.09.03 - 17:09:57
Hier geht es aber offensichtlich um Links für Webmails ...
Wobei dies aber sinnigerweise nirgendwo explizit erwähnt wird, und GraveDigger hat den Thread wohl schon längst vergessen.