Domino 9 und frühere Versionen > ND7: Entwicklung

Periodischer LS Agent

(1/5) > >>

Bruce Willis:
Hallo,

ich hab eine Ansicht, wo mehrere Dokumente angezeigt werden.
Zwei Felder in jedem Dokument müssen ausgelesen werden:
UserR und MailThema

Ein Agent überprüft täglich, ob dort welche Dokumente gibt, und verschickt gegebenfalls Emails.

Mein alter FormelSprache-Agent funktioniert enwandfrei:

@MailSend (UserR; ""; ""; MailThema ; "";
" Hallo " + UserR + " !" );
SELECT  @All

Ich versuche jetzt, einen ähnichen LS-Agenten zu erstellen, bekomme aber die Fehlermeldung "Object variable not set" bei der folgenden Zeile:

Set doc=uidoc.Document

Wie soll der u.g. Agent richtig aussehen?

Danke und Gruß
Leo

Sub Initialize
   Dim ws As New notesuiworkspace
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim UIDoc As notesuidocument  'Aktuelles Dokument im Frontend
   Dim doc As notesdocument   'Aktuelles Dokument im Backend
   
   Set UIdoc=ws.CurrentDocument
   Set doc=uidoc.Document
   Set db= session.CurrentDatabase
   Set Message=New NotesDocument(db)    'Mail erstellen
   Set rtitem = New NotesRichTextItem( Message, "Body" )
   
   UserR=uidoc.FieldGetText("UserR")
   MailThema= uidoc.FieldGetText("MailThema")
   
   Message.Form="Memo"
   Message.Principal="Bruce Willis/World"
   
   Message.SendTo=doc.UserR
   Message.Subject = MailThema
   Call rtitem.AppendText( "Hallo ")
   Call rtitem.AppendText( UserR)
   Call rtitem.AppendText(" !")
   Call Message.Send( False )
End Sub


Driri:
In periodischen Agenten kann kein UI verwendet werden. Du könntest z.B. via db.Search eine DocumentCollection erzeugen, die alle Dokumente enthält, die den Bedingungen entsprechen. Über diese Collection läßt Du dann eine Schleife laufen und frühstückst darin die Dokumente aus der Collection der Reihe nach ab.

Bruce Willis:
Danke, Ingo.

Es scheint also, der LS Agent wird 10fach so lang wie FS Agent... :(
Gut zu wissen...

Gruß
Leo

Driri:
Script ist nicht immer einfacher und besser  ;)

dirk_2909:

--- Zitat ---10fach
--- Ende Zitat ---
Wie kommst Du auf diesen Wert?

Wie lange hat es denn vorher gedauert? Wie lange mit LS?
Wie hast Du denn die Schleife gebaut, die die Docs verarbeitet?

Doch wohl nicht mit getNthDocument(..) ?

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln