Domino 9 und frühere Versionen > ND8: Entwicklung
Agent soll nur mit makierten Dokumenten arbeiten
koehlerbv:
Wobei nach meiner Erfahrung auch IsValid nicht immer hundertprozentig greift. Der sicherste Weg ist nach meiner Erfahrung, zu prüfen, ob NotesDocument.Items ein Array zurückgibt.
Bernhard
Akunin:
also erzeigt mir solange "This document is valid." an bis ich nachdem ich mehrere gelöscht habe, noch eins löschen möchte, dann bekomme ich "This document is not valid."
außerdem hab ich jetzt einfach mal versucht mit strg + c das dokument zukopieren, dabei bekomm ich nenn Fehler zurück der mir sagt "Dokument wurde gelösct"
was mich aber sehr wundert ist das es , nachdem ich den Anwendung neugestartet hab, wieder funktioniert
DAU-in:
was mich aber sehr wundert ist das es , nachdem ich den Anwendung neugestartet hab, wieder funktioniert
weil nach dem Neustart die Collection neu erstellt wurde?
Akunin:
also ne Lösung hab ich noch nicht dazu gefunden, ich post hier mal den gesamten QT, evtl liegt der Fehler irgendwo anders.
--- Code: ---Sub Click(Source As Button)
Dim session As NotesSession
Dim item As NotesItem
Set session = New NotesSession()
Dim database As NotesDatabase
Set database = session.CurrentDatabase
Dim agent As NotesAgent
Set agent = database.GetAgent("PushAgent")
Dim collection As NotesDocumentCollection
Set collection = database.UnprocessedDocuments
Dim doc,rdoc As NotesDocument
Set doc = collection.GetFirstDocument()
While Not(doc Is Nothing)
NextLine$ = Chr(13) & Chr(10)
If doc.Fehler(0) = 0 Then
Set item = doc.GetFirstItem( "Body" )
BodyText = item.Text
Fieldlist = Split(BodyText, NextLine$)
'*****************
Status=""
DokID=""
Datum=""
Zeit=""
PIN=""
'*****************
Status = Fieldlist(0)
DokID = Fieldlist(1)
Datum = Fieldlist(2)
Zeit = Fieldlist(3)
PIN = Fieldlist(4)
Datum = Cdat(Datum)
Zeit = Cdat(Zeit)
Set docAddress = New NotesDocument(database)
Call docAddress.ReplaceItemValue("Form","Task")
Call docAddress.ReplaceItemValue("Pin",PIN)
Call docAddress.ReplaceItemValue("Datum",Datum)
Call docAddress.ReplaceItemValue("Zeit",Zeit)
Call docAddress.ReplaceItemValue("DokID", DokID)
Call docAddress.ReplaceItemValue("Status", Status)
Call docAddress.Save( True, True )
status = agent.run
Call docAddress.Remove(True)
End If
Set doc = collection.GetNextDocument(doc)
Wend
Call collection.RemoveAll(True)
Dim workspace As New NotesUIWorkspace
Call workspace.ViewRefresh
End Sub
--- Ende Code ---
DAU-in:
Dim doc,rdoc As NotesDocument
zieh das mal auseinander:
Dim doc As NotesDocument
Dim rdoc As NotesDocument
und was ist Sinn und Zweck von dem hier?
Set docAddress = New NotesDocument(database)
Call docAddress.ReplaceItemValue("Form","Task")
Call docAddress.ReplaceItemValue("Pin",PIN)
Call docAddress.ReplaceItemValue("Datum",Datum)
Call docAddress.ReplaceItemValue("Zeit",Zeit)
Call docAddress.ReplaceItemValue("DokID", DokID)
Call docAddress.ReplaceItemValue("Status", Status)
Call docAddress.Save( True, True )
status = agent.run
Call docAddress.Remove(True)
du erstellst ein dokument, befüllst es und löscht es wieder?
grüsse
Dau-in
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln