Domino 9 und frühere Versionen > ND8: Entwicklung
Alle Dokumente älter als x Tage in andere DB verschieben
edvtkb:
Hallo Bernhard,
danke für die Hinweise!
Anbei nun mal aus der Ansicht die gebaut habe einen Ausschnitt
@Created @If(@Created< [01.12.2010] String1"" String2"") @Created < @Date (2010;12;1)
29.11.2007 12:14 String1 1
25.04.2007 11:29 String1 1
13.06.2007 15:53 String1 1
23.07.2007 08:56 String1 1
26.07.2007 17:07 String1 1
25.09.2007 10:30 String1 1
22.10.2007 09:53 String1 1
19.11.2007 08:35 String1 1
26.11.2007 16:45 String1 1
25.04.2008 13:24 String1 1
17.06.2008 10:54 String1 1
06.10.2008 13:53 String1 1
23.02.2009 15:39 String1 1
25.06.2009 08:36 String1 1
12.03.2010 16:37 String1 1
29.10.2010 13:39 String1 1
19.01.2011 09:06 String2 0
26.05.2011 15:42 String2 0
27.09.2011 10:50 String2 0
27.09.2011 10:53 String2 0
27.01.2012 10:17 String2 0
31.01.2012 09:41 String2 0
31.01.2012 09:45 String2 0
31.01.2012 11:03 String2 0
31.01.2012 11:17 String2 0
01.02.2012 05:35 String2 0
02.02.2012 09:13 String2 0
09.05.2006 16:05 String1 1
27.04.2006 14:13 String1 1
15.05.2006 11:10 String1 1
20.06.2006 10:26 String1 1
23.06.2006 08:20 String1 1
Das schaut doch ziemlich gut aus m.e.
Grüße
Joe(hannes)
koehlerbv:
Yipp, das sieht gut aus, Joe.
Lass den Code im Debugger doch mal bis zur Bildung der NotesDocumentCollection laufen und schau Dir dann die Count-Property an.
Sicherheitshalber: Beschränke auch mal den Query-Teil nur auf das @Created - sagt Count dann noch das gleiche?
Stimmt die das Ergebnis bedenklich, dann ersetze mal @Created < [Datum] durch ein
@Created < @Date (YYYY; MM; DD).
Anderes Ergebnis?
Welche Notes-Version setzt Du ein?
HTH,
Bernhard
edvtkb:
So, der Count zeigt mir beim Debuggen 6258 (bei Selection
--- Code: ---@Created < [01.12.2010]
--- Ende Code ---
)
bei Selection
--- Code: ---@Created < @Date (2010;12;1)
--- Ende Code ---
zeigt der Count beim Debuggen 6258
Wenn ich mir die Ansicht wie die Selection zusammenbastel bekomme ich 6258 Dokumente angezeigt.
Und beim überfliegen habe ich keines aus 2011 oder 2012 gesehen...
Wenn ich nun aber die Routine komplett ausführen lasse, habe ich 70 Dokumente nach dem 01.12.2010
koehlerbv:
Wie hast Du diesen Code-Teil angepasst, dass er keine Dokumente vor dem CutOff mitnimmt?
--- Code: ---Forall folder In sourceDb.Views
If folder.IsFolder And (Instr(1, folder.Name, "(", 0)<>1 Or folder.Name="($Inbox)") Then
' The following code ensures that folders with no docs in them still get copied
' so that any folder design customizations are kept
Set destFolder = destDb.GetView(folder.Name)
If destFolder Is Nothing Then
Set sourceFolder = sourceDb.GetDocumentByUNID(folder.UniversalID)
Call sourceFolder.CopyToDatabase(destDb)
Set destFolder = destDb.GetView(folder.Name)
If destFolder Is Nothing Then
Msgbox("Unable to create folder in new database.")
Exit Sub
End If
End If
' cycle through each doc in the current folder
Set sourceDoc = folder.GetFirstDocument
While Not (sourceDoc Is Nothing)
Set destDoc = sourceDoc.CopyToDatabase(destDb)
' copy each document to the same folder in the destination database
Call destDoc.PutInFolder(folder.Name, True)
' remove document from the collection of docs built from source db all docs view
Set tempDoc = AllDocs.GetDocument(sourceDoc)
Set sourceDoc = folder.GetNextDocument(tempDoc)
Call AllDocs.DeleteDocument(tempDoc) 'remove from collection
' display progress
current = current + 1
Print Cstr(Round(current / docCount * 100, 0)) + "% copied"
Wend
End If
End Forall
--- Ende Code ---
Bernhard
edvtkb:
da habe ich um ehrlich zu sein noch nichts angepasst. ::)
Joe
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln