Domino 9 und frühere Versionen > ND6: Entwicklung
markiertes Dokument ansprechen
Nexus:
Servus,
habe ich das richtig in der Designer Hilfe verstanden, mit dem "UnprocessedDocuments" Befehl, kann kann ich die markierten Dokumente herausfinden ?
Ich möchte nämlich auf markierte Documente zugreifen, und diese dann in eine andere Datenbank kopieren.
Nexus:
Ich poste euch mal den Code. Da hier irgendwie die Documente nicht gefunden werden in der Datenbank und auch in der anderen. Es werden viele Variablen deklariert, die nicht verwendet werden. Das kommt davon, dass ich auf einen vorher geschriebenen Script von mir aufbaue und am Ende, wenn alles funzt, die Variablen Leichen herausnehmen.
Der Code soll alle markierten Documente herausfinden und ein Document ( markiert ) nach dem anderen abarbeiten. Das markierte Document hat einen Feldnamen "listname" in welchen der Name des Documentes steht ( Gruppenname). Dieses Document existiert in 2 Datenbanken. Aufgabe ist, das Dokument in beide Datenbanken kopieren und das alte vorhanden Dokument in den 2 anderen Datenbanken löschen. Damit nur das aktuelle vorhanden ist. Als es ist ein Verteiler.
Nochmal. Das Dokument in der THIS Datenbank ist ein kopie aus den 2 anderen Datenbanken.Jetzt soll das Dokument in die 2 Datenbanken wieder zurückkopiert werden. In dem Dokument in der THIS Datenbank wurde nur kleine Inhaltsänderungen vorgenommen. Deshalb sollen die alten Dokumente gelöscht werden. So dass alle 2 Datenbanken am Ende immer auf dem aktuellen Stand sind.
Hier der Code. Problem ist, dass es mir so vorkommt, dass dieser Script die markierten Dokumente nicht findet und somit auch die alten Dokumente anhand des Namens nicht in den 2 anderen Datenbanken finden kann.
Sub Initialize
Dim session As New NotesSession
Dim db1 As NotesDatabase
Dim db2 As NotesDatabase
Dim thisdb As NotesDatabase
Dim searchview1 As NotesView
Dim searchview2 As NotesView
Dim searchview3 As notesview
Dim vc As NotesViewEntryCollection
Dim entry As NotesViewEntry
Dim docDB1 As NotesDocument
Dim docdb2 As NotesDocument
Dim docEingabe As NotesDocument
Dim Copydoc As NotesDocument
Dim DB1GroupName As Variant
Dim db1GroupNameE As String
Dim FirstDocCheckDB1 As Boolean
Dim Db1EntryCount As Integer
Dim DB1EntryCounter As Integer
Dim db1VS As Variant
Dim db2vs As Variant
Dim Nam As NotesName
Dim StringConv As String
Dim StringConvE As String
Dim intStrLaenge As Integer
Dim intStrLaengeF As Integer
Dim strSearchMemory As String
Dim SearchMemoryA As Variant
Dim Nullstatus As Integer
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim collection As NotesDocumentCollection
Dim item As NotesItem
Set uidoc = workspace.CurrentDocument
Set thisdb = session.CurrentDatabase
Set searchview3=thisdb.GetView("vergleichsAusgabe")
Set db1 = session.GetDatabase( "", "c:\Dokumente und Einstellungen\Markus\Eigene Dateien\Notes\vergleich\VergleichDB1.nsf" )
Set db2 = session.GetDatabase( "", "c:\Dokumente und Einstellungen\Markus\Eigene Dateien\Notes\vergleich\VergleichDB2.nsf" )
Set searchview1=db1.GetView("Groups")
Set searchview2 =db2.GetView("Groups")
Set collection = thisdb.UnprocessedDocuments
Set copydoc = collection.GetFirstDocument()
While Not(copydoc Is Nothing)
db1Groupname = copydoc.GetItemValue("Listname")
StringConv = db1Groupname(0)
Set nam = New NotesName( StringConv )
db1GroupNameE = msg & nam.Abbreviated & Chr(13)
intStrLaenge = Len(db1GroupNameE)
intStrLaengeF=intStrLaenge - 1
StringConvE=Left$(db1GroupNameE, intStrLaengeF)
Set item = copydoc.GetFirstItem( "Listname" )
Set docdb1= searchview1.GetDocumentByKey(StringConvE)
Set docdb2= Searchview2.GetDocumentByKey(StringConvE)
If item.Contains( docdb1.listname ) Then
Call docdb1.remove(False)
Call docdb2.Remove(False)
'Call copydoc.Save( False, True )
End If
Set copydoc = collection.GetNextDocument(copydoc)
Wend
End Sub
animate:
Je nachdem, welches Ziel der Agent hat (alle Dokumente, neue Dokumente, etc.) ist das Ergebnis von UnprocessedDocuments verschieden.
Genaueres dazu sagt dir die Bescreibung der Eigenschaft in der Designer Hilfe
Nexus:
Das blick ich ja leider nicht :(
animate:
ich hab die Hilfe nicht hier.
poste doch mal den Teil, den du nicht verstehst und erkläre, was du nicht verstehst
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln