Domino 9 und frühere Versionen > ND8: Entwicklung

Agent soll nur mit makierten Dokumenten arbeiten

<< < (3/4) > >>

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