Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: thomson666 am 09.12.11 - 13:59:43
-
Hallo zusammen!
Ich habe ein kleines Problem...
Wenn ich einen Agent auf db.UnprocessedDocuments laufen lasse und dieser alle 5 Minuten startet werden alle 5 Minuten alle Dokumente wieder weitergeleitet.
Funktioniert ses.UpdateProcessedDocs nciht?!
Irgendwie ändert er sein Result nicht.
Jemand eine Idee?
danke
Tommy
FYI: 8.5.2 FP3
Sub Initialize()
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim ses As New NotesSession
Dim col As NotesDocumentCollection
Dim eval As Variant
Dim form As String
On Error GoTo errproc
Set db = ses.CurrentDatabase
Set col = db.UnprocessedDocuments
Set doc = col.Getfirstdocument()
Call getCalProfile(db) 'OOO Profil der Mailschablone
Set Profile = profdoc
Do Until doc Is Nothing
If fdo(0) <= doc.Created Then 'first day out
eval = Evaluate(|@IsNotMember("S"; ExcludeFromView)|,doc)
'If doc.Form = "Memo" And eval(0) = True Then
If doc.Hasitem("Form")Then
form = doc.GetItemValue("Form")(0)
If eval(0) = 1 And form = "Memo" Then
Call MailForward(doc)
End If
End If
End If
Call ses.UpdateProcessedDoc( doc ) 'aktualisierung um das doc das nächste mal auszunehmen
Set doc = col.GetNextDocument(doc)
Loop
' Dim uAgent As NotesAgent
' Set uAgent = db.Getagent("(OOOUpdate)")
' Call uAgent.RunOnServer()
Exit Sub
errproc:
Print "ERROR OOOWeiterleitung! Dokument wird auf abgearbeitet gesetzt."
Call ses.UpdateProcessedDoc( doc )
Resume next
End Sub
-
Hi,
wie sehen denn die Eigenschaften von dem Agenten aus, läuft der auf "ALLE Dokumente" oder "Alle neuen und geänderten Dokumente". Wie sehen denn die Einstellungen dazu aus?
Gruß
Marco
-
o sorry... dachte ich hab schon alles...
Er geht auf neue und geänderte Dokumente,mehrmals am Tag (alle 5Minuten / wird aber wenn er läuft auf stündlich umgestellt).
Sollte der auf Alle Dokumente laufen?
tommy
-
Sollte eigentlich nichts ausmachen, hier ist noch ein Thread http://atnotes.de/index.php/topic,35090.0.html (http://atnotes.de/index.php/topic,35090.0.html), wo ebenfalls das Thema behandelt wird und Auswege / Alternativen dargestellt werden.
Vorallem der Eintrag, wo es heißt ...
Meine (leidvolle) Erfahrung:
Wenn ein Agent deaktiviert und neu aktiviert wird, hat er alles bis dahin gemachte vergessen. Er fängt ein neues Leben an und bearbeitet ALLE Dokumente, auch die er in seinem alten Leben bereits bearbeitet hat.
Also was tun: Ich lasse durch den Agenten immer ein Feld in die bearbeiteten Dokumente schreiben. Das frage ich im Code ab.
Nur so bist Du auf der sicheren Seite!
Andreas
spricht eigentlich Bände, also immer ein Flag mitschreiben ... für den Fall der Fälle.
Vielleicht war das bei dir der Fall ?
Gruß
Marco
-
Hi!
hab ich gelesen...
Was mir jetzt noch aufgefallen ist, es funktioniert, aber nur wenn der Signer/Ausführende Manager auf der DB ist!? Kann das das Problem sein?
Mein Problem ist das elektronische Unterschriften verloren gehen, wenn ich da Flags schreibe und das kommt beim Kunden nicht so gut...
tommy
-
Dann arbeite doch mit einem CutOff-Date. Dann bist Du frei von irgendwelcher Manipulation der betreffenden Dokumente.
Bernhard
-
Ja wird wohl nix nützen...
Es ist halt immer wieder frustrierend das Standardfunktionalitäten nicht funktionieren wenn man Sie braucht.
Aber ob das jetzt ein Bug oder Feature sein soll das unter Managerrechte das nicht geht würd mich trotzdem interessieren.
danke trotzdem für die raschen Antworten.
sg
tommy
-
Welche sonstigen Standardfunktionalitäten funktionieren denn nicht, Tommy?
Zu dieser Sache - aber das ist nur eine Ahnung:
Welche Dokumente der Agent schon am Wickel hatte, wird in einer internen Table der Datenbank gehalten. Hierzu bekommt der Agent bei der Aktivierung (!) eine Nummer. Das bedeutet auch, dass - wird der Agent deaktiviert - die Table verworfen wird. Und dann ist nix mehr "processed".
Hiermit könnten auch die erforderlichen Rechte zusammenhängen.
Im Gegensatz zum verlinkten Thread von vor vier Jahren setze ich heute prinzipiell kein UpdateProcessedDoc oder UpdateAll mehr ein.
Bernhard