Autor Thema: Frage zu NotesViewEntryCollection  (Gelesen 2011 mal)

Offline Grabby

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Geschlecht: Weiblich
  • In der Ruhe liegt die Kraft!
Frage zu NotesViewEntryCollection
« am: 23.01.03 - 12:43:58 »
Hallo zusammen.

Ich habe in einer Datenbank eine Ansicht erstellt, die Dokumente selektiert, dessen Feld "Fällig am" älter oder gleich mit dem Tagesdatum ist. In diesen Dokumenten gibt es jeweils auch ein Feld "nächster verantwortlicher Bearbeiter". Ich möchte nun mit einem Agenten alle Dokumente dieser Ansicht bearbeiten und jeweils dem "nächsten Bearbeiter" ein Erinnerungsmail einschließlich DokLink senden.

Ich habe dazu NotesViewEntryCollection genutzt, aber irgendwie habe ich noch etwas vergessen oder nicht beachtet (ich bin noch nicht so firm im Script.)

Beim Aufruf des Agenten arbeitet er alle Doks ab und verschickt auch das gewünschte Mail, aber der Agent findet anscheinend das Ende der Ansicht nicht, denn ich erhalte zu guter Letzt immer die Fehlermeldung  "Function requires a valid ADT argument".

Weiß jemand von Euch Rat? Ich hab mein Script mal unten aufgeführt.  ??? ::) ???

Danke im voraus.
Grabby


Sub Initialize

   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view_collection As NotesViewEntryCollection
   Dim entry As NotesViewEntry
   Dim doc As NotesDocument
   Dim Maildocument As NotesDocument
   
   Dim Bearbeiter As NotesItem
   Dim Faellig As NotesItem
   Dim Prozess As NotesItem   
   Dim Activity As NotesItem   
   Dim Vorgang As NotesItem
   
'   Zugriff auf Archiv-Datenbank   
   Set db = New NotesDatabase("SDEBGMS0010","APPL\\L\\LWF_HelpDesk.nsf")   
   Set Maildocument = New NotesDocument(db)
   
'   Zugriff auf Ansicht (OU_Terminueberwachung)   
   Set view = db.getview("(OU_Terminueberwachung)")      
   
'    Collection aus allen Dokumenten der gewählten Ansicht
   Set view_collection = view.AllEntries
   
'    Wenn kein Eintrag vorhanden, dann Script verlassen
   If (view_collection.count < 0) Then
      Exit Sub
   End If   
   
'   Zugriff auf erstes Dokument der Collection
   Set entry = view_collection.GetFirstEntry()
   Set doc = entry.document
   
'   Abarbeitung aller Doks in der Collection
'   (Auslesen von Datum, nächstem Bearbeiter und Text + DokLink)   
   
   While Not(doc Is Nothing)
      
' Erstellung des RT-Items (Body-Feld)
      
      Dim rtfItem As New NotesRichtextItem(Maildocument,"Body")
      
      Call rtfItem.AppendText("Guten Tag. ")
      Call rtfItem.AddNewline(2)
      Call rtfItem.AppendText("Eine Aktivität ist zu bearbeiten, die ihr Fälligkeitsdatum erreicht hat.")
      Call rtfItem.AddNewline(2)
      Call rtfItem.AppendText("Vorgang: ")
      
' Füllen der Variablen Vorgang mit dem Vorgangsnamen         
      Set Vorgang = doc.GetFirstItem("InstanceOS")
      
      Call rtfItem.AppendText(Vorgang.text)
      
      Call rtfItem.AddNewline(2)
      
      Call rtfItem.AppendText("Link zum Dokument: ")
      Call rtfItem.AppendDocLink(doc, "Link zum Dokument")
      Call rtfItem.AddNewline(2)
      
' Füllen der Variablen Bearbeiter mit dem Feld supOwners
      Set Bearbeiter = doc.GetFirstItem("supOwners")
      
' Füllen der Variablen Fällig, Prozess u. Activity
      Set Faellig = doc.GetFirstItem("DueDateOS")
      Set Prozess = doc.GetFirstItem("ProcessOS")
      Set Activity = doc.GetFirstItem("ActivityOS")
      
' Bearbeitung der Nachricht (Kopf)
      Call maildocument.ReplaceItemValue("Form","Memo")
      Call maildocument.ReplaceItemValue("Subject","Workflow: " + Prozess.text + ", Aktivität: " + Activity.text + " , Vorgang: " + Vorgang.text + ".")
      
' Senden der Nachricht      
      Call maildocument.send(True,Bearbeiter)
      
' Gehe zu nächstem Eintrag in der Ansicht      
      Set entry = view_collection.GetNextEntry(entry)
   Wend
   
End Sub

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Frage zu NotesViewEntryCollection
« Antwort #1 am: 23.01.03 - 12:49:54 »
... du beziehst dich auf das doc bei While, am Ende vor Wend setzt du aber das doc nicht

Set doc = entry.document

ata
Grüßle Toni :)

Offline Grabby

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Geschlecht: Weiblich
  • In der Ruhe liegt die Kraft!
Re:Frage zu NotesViewEntryCollection
« Antwort #2 am: 23.01.03 - 14:50:48 »
Vielen Dank. Jetzt hat's geklappt!!  :D

Grabby

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Frage zu NotesViewEntryCollection
« Antwort #3 am: 23.01.03 - 16:18:51 »
Hallo Grabby,

... auch auf die Gefahr hin, daß ich mich in mehreren Postings wiederhole - es hilfreich, wenn du das Posting mit dem Symbol "Daumen hoch" markierst...

ata
Grüßle Toni :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz