Domino 9 und frühere Versionen > ND7: Entwicklung

Nur bis zu 11.149 Dokumente in einem Ordner?

<< < (2/3) > >>

TRO:
Hallo Leo,

Dein Code-Schnipsel kann nach m.M. nicht sauber funktionieren (ich wundere mich sogar, dass überhaupt mehr als ein Dokument in den Ordner verschoben wird).

   Set view = db.GetView("($Inbox)")
   Set doc = view.GetLastDocument
' Du willst also die Dokumente in der View "$Inbox" von hinten nach
' vorn abarbeiten   

   For i = 1 To
   ...
   If days > 60 Then
   ...
' OK, ein Dok gefunden, dass zu alt ist,
' wird jetzt aus dem Ordner $Inbox entfernt
   Call doc.RemoveFromFolder("($Inbox)")
   End If
      
   Set doc = view.GetPrevDocument(doc)
' Du sucht jetzt das nächste (vorhergehende) Dokument zu doc
' in der View $Inbox
' doc hast Du aber gerade aus dem Ordner $Inbox entfernt
' ??? was ist der Vorgänger eines Dokumentes, das nicht mehr in der View
' existent ist ???



Thomas

Bruce Willis:
Hallo Axel,

vielen Dank für Deine Bemerkungen!


--- Zitat von: WildVirus am 18.10.09 - 23:31:27 ---Wenn Du schon mit einer numerischen Schleife arbeitest, dann spar Dir das For i = 1 to schießmichtot, dann kannst Du mit while not doc is nothing besser agieren

--- Ende Zitat ---

Ich habe heute die folgende Version erstellt, sieht aber so aus, dass der Agent nicht jedes Dokument, sondern nur jedes zweite nimmt... :(

Gruß
Leo


--- Code: ---Sub Initialize

Dim s As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim view As NotesView
Dim days As Variant 'kein Integer !

Set db = s.CurrentDatabase
Set view = db.GetView("($Inbox)")
Set doc = view.GetfirstDocument

Do Until doc Is Nothing
days =  Date - doc.Created
Print days
If days > 60 Then  
'Call doc.PutInFolder("Alt")
Call doc.RemoveFromFolder("($Inbox)")
End If

Set doc = view.GetNextDocument(doc)  'anscheinend dadurch wird nicht jedes sondern nur jedes zweite Dokument verschoben... :(

Loop

End Sub
--- Ende Code ---

Bruce Willis:
Hallo Bernhard,


--- Zitat von: koehlerbv am 18.10.09 - 23:55:39 ---...also nicht mehr in Integer passt (Overflow!!). Days wurde aber als Integer deklariert ...

Wenn schon, dann
Dim Date As Variant
Date = Today

--- Ende Zitat ---

Vielen Dank!!!
Das war mein krasses Problem!


--- Zitat von: koehlerbv am 18.10.09 - 23:55:39 ---In würde das unübersichtliche Geraffel aber nach wie vor nicht in einen Ordner verschieben - die Unordnung in der Ansicht "Alle Dokumente" ist schon nahezu identisch. Notfalls baue eine Ansicht für alle empfangenen Mails.

--- Ende Zitat ---

Danke für die Idee.
So werde ich machen.

Gruß
Leo

P.S. Würdest Du bitte oben das Screenshot löschen?... ;)

koehlerbv:
Schirmschuss ist entfernt, Leo.

Bernhard

Bruce Willis:
Hallo Thomas,


--- Zitat von: TRO am 19.10.09 - 09:55:50 ---Du willst also die Dokumente in der View "$Inbox" von hinten nach vorn abarbeiten

--- Ende Zitat ---

Ja, da als ich in meiner allerersten Variante von oben angefangen hatte, war sofort der Fehler "Overflow" gekommen.
Ich wusste damals nicht, dass dies an der Variable liegt...


--- Zitat von: TRO am 19.10.09 - 09:55:50 ---... Du sucht jetzt das nächste (vorhergehende) Dokument zu doc in der View $Inbox
doc hast Du aber gerade aus dem Ordner $Inbox entfernt
??? was ist der Vorgänger eines Dokumentes, das nicht mehr in der View
existent ist ???

--- Ende Zitat ---

Vielen Dank für Deine Anmerkungen!
Jetzt ist mir klarer, warum ich in der Bedingung der Schleife die doppelte Zahl der zu verschiebenen Emails angeben musste...


--- Code: ---'For i = 1 To 1980 'bis zu 990 Stück Emails werden verschoben (bei mehr kommt Fehler "Overflow")

--- Ende Code ---

Gruß
Leo

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln