Skrypt do usuwania z widoku Wysłane Lotus Notes według daty

0

Czy ktoś wie, jak zmodyfikować poniższy skrypt, aby usunąć z wysłanego widoku według określonej daty. Poniżej znajduje się standardowy skrypt iBM, który należy zmodyfikować, aby usunąć według daty, a nie dni. Zasadniczo potrzebuję skryptu, który usunie wszystkie wysłane wiadomości e-mail przed określoną datą. Każda pomoc będzie mile widziana.

Sub Initialize
    Dim s As New NotesSession
    Dim db As NotesDatabase
    Dim view As NotesView
    Dim doc As NotesDocument
    Dim nextdoc As NotesDocument
    Dim lastmodifieddate As New NotesDateTime("")
    Dim modifieddate As Variant
    Dim days As Integer

    Set db = s.CurrentDatabase
    Set view = db.GetView("$Sent")
    Set doc = view.GetFirstDocument

    While Not ( doc Is Nothing )
        Set nextdoc = view.getnextdocument(doc)
        modifieddate=Evaluate("@Modified", doc)
        lastmodifieddate.lslocaltime= CDat(modifieddate(0))
        days = CInt( Date - lastmodifieddate.lslocaltime )
        'Change the number of days from 30 below as desired
        If days > 30 Then 
            Call doc.Remove(True)
            'In Notes 6.0 and later you can use the below instead of the above 
            'if you want to hard delete the document
            'Call doc.RemovePermanently(True)
        End If 
        Set doc = nextdoc 
    Wend 
End Sub
Thierry
źródło

Odpowiedzi:

0

coś takiego powinno działać

Sub Initialize
    Dim s As New NotesSession
    Dim db As NotesDatabase
    Dim view As NotesView
    Dim doc As NotesDocument
    Dim nextdoc As NotesDocument
    Dim lastmodifieddate As New NotesDateTime("")
    Dim modifieddate As Variant
    Dim days As Integer

    Dim checkdate as Variant

    Set db = s.CurrentDatabase
    Set view = db.GetView("$Sent")
    Set doc = view.GetFirstDocument

    checkdate = DateNumber(2018, 02, 25)

    While Not ( doc Is Nothing )
        Set nextdoc = view.getnextdocument(doc)
        modifieddate=Evaluate("@Modified", doc)

        If  modifieddate < checkdate Then 
            Call doc.Remove(True)
            'In Notes 6.0 and later you can use the below instead of the above 
            'if you want to hard delete the document
            'Call doc.RemovePermanently(True)
        End If 
        Set doc = nextdoc 
    Wend 
End Sub
notesbuddy
źródło