Domino 9 und frühere Versionen > ND6: Entwicklung

Absendeadresse wenn ein Agent ein Mail versendet?

<< < (11/15) > >>

coma:
danke für das Schubsen erst mal...

muss aber erst mal was verstehen.

Der Agent hat Aufgrund der Auswahl doch sowieso nur die Dokumente im Zugriff die ich haben möchte, denn im Designer habe bei Dokumentenauswahl "entspricht Beispielmaske", dort steht in meinem Feld Status "warte".

Das funktioniert auch soweit, der Agent bearbeitet bei einem Testlauf nur diese Dokumente.

Jetzt möchte aus den Dokumenten auf die der Agent dann zugreift, jeweils ein bestimmtes Feld als Body an mein Mail übergeben. Desweiteren brauche ich aus dem Dokument die eMail Adresse, die auch in einem Feld hinterlegt ist.

Wäre das grundlegend von der Idee her richtig, wenn ich das so mache:


--- Code: ---
Sub Initialize
Dim session As New NotesSession
Set db = session.CurrentDatabase
Set doc = New NotesDocument( db )

Dim currsession As NotesSession
Set currsession = New NotesSession
Dim currdoc As NotesDocument
Set currdoc = session.DocumentContext

doc.Form = "Memo"
doc.SendTo = currdoc.FeldIndemDieMailAdresseSteht (0)
doc.Subject = "Hier der Betreff"
doc.Body = currdoc.FeldIndemDasStehtWasInDenBodySoll (0)
doc.Principal="Ich werde der Beste Notes Script Programmierer <info@scriptprofi.de@meinenotesdomain.org>"
Call doc.Send( False )
End Sub


--- Ende Code ---

DAU-in:
'wenn du zeitgesteuert arbeitest, kannst du nicht den den in der View selektierten Dokumenten arbeiten
'wenn du die Doks selektieren willst, sieh dir  die klasse uiview an!

'hier Beispiel für zeitgesteuert
Sub Initialize
   Dim session As New NotesSession
   Dim db As Notesdatabase
   Dim view As NotesView
   Dim maildoc As Notesdocument
   Dim doc As NotesDocument
   Dim dc As NotesDocumentCollection
   Dim suchformel As String
   
   Set db = session.CurrentDatabase   
   suchformel = { Status = "warte"}
   Set dc = db.Search(suchformel,Nothing, 0)
   
   Set doc = dc.GetFirstDocument
   
   While Not doc Is Nothing
      Set maildoc = db.CreateDocument
      maildoc.form = "Memo"      
      maildoc.SendTo = doc.FeldIndemDieMailAdresseSteht (0)
      maildoc.Subject = "Hier der Betreff"      
      maildoc.Principal="Ich werde der Beste Notes Script Programmierer <info@scriptprofi.de@meinenotesdomain.org>"
      
      maildoc.Body = doc.Feld1 (0) & Chr$ (10) & doc.Feld2 (0)            
      Call maildoc.Send( False )   
      
      Set doc = dc.GetNextDocument(doc)
   Wend
   
End Sub


Edith: schalte 'option declare' ein!

coma:
Hey danke,

ich werde das mal testen. Du sagst:


--- Zitat ---'wenn du zeitgesteuert arbeitest, kannst du nicht den den in der View selektierten Dokumenten arbeiten
'wenn du die Doks selektieren willst, sieh dir  die klasse uiview an!
--- Ende Zitat ---

Das funktioniert aber doch. Wenn ich den Agenten laufen lasse, selektiert er mir genau die beiden Dokumente in welchen das Feld Status den Wert "warten" hat und versendent auch nur an diese das Mail.

Gruß,
Ralf.

DAU-in:
Du startest den Agenten von Hand?
Dann ist er nicht zeitgesteuert.

Häkchen machen in der View <--> zeitgesteuert!

coma:
Nein, ich start den Agenten zeitgesteuert, zum Testen steht dieser auf 5 Minuten. Und er selektiert schön brav die zwei Dokumente die im entsprechenden Feld den gesuchten Wert haben.

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln