zoukankan      html  css  js  c++  java
  • 清理收件夹的代理Code for CleanupInbox agent

     CleanupInbox – moves older documents out of inbox
    Sub Initialize
    Dim s As New NotesSession
    Dim db As NotesDatabase
    Set db = s.CurrentDatabase
    Dim dr1 As notesdaterange
    Dim v As notesview
    Dim dc1 As NotesDocumentCollection
    Dim gracedoc As NotesDocument
    Dim stime1 As New NotesDateTime("0/0/0")
    Dim etime1 As New NotesDateTime("Today")

    Set gracedoc = db.GetProfileDocument("inboxgracedays")
    Dim graceval As Variant
    Dim gracedays As Integer

    ' if no profile doc has been prepared, default is 90 days
    If gracedoc.HasItem("gracedays") Then
    graceval = gracedoc.GetItemValue("gracedays")
    gracedays = Cint(graceval(0))
    Else
    gracedays = 90
    End If

    etime1.AdjustDay(-1*gracedays)

    ' create a daterange excluding docs newer than graceperiod
    Set dr1 = s.CreateDateRange()
    Set dr1.StartDateTime = stime1
    Set dr1.EndDateTime = etime1

    'dc1: collection of 'old' documents from inbox
       (before or on Today - gracedays)
    Set v = db.GetView("($Inbox)")
    Set dc1 = v.GetAllDocumentsByKey(dr1)

    'pull out expired docs
    dc1.RemoveAllFromFolder("($Inbox)")
    End Sub
    'SetInboxGracePeriod agent – sets the grace period for inbox
    Sub Initialize
    Dim s As New NotesSession
    Dim db As NotesDatabase
    Set db = s.CurrentDatabase
    Dim gracedoc As NotesDocument
    Dim gracedays As Integer
    Dim inputgracedays As Integer
    Dim maxdays As Integer
    Dim graceval As Variant
    Dim gracevar As Variant
    maxdays = 1000

    Set gracedoc = db.GetProfileDocument("inboxgracedays")
    If gracedoc.HasItem("gracedays") Then
    graceval = gracedoc.GetItemValue("gracedays")
    gracedays = Cint(graceval(0))
    Else
    gracedays = 90
    End If
    getInput:
    inputgracedays = -1
    gracevar = Inputbox("Days to retain in Inbox? (currently " &
       gracedays & ")" )
    If (gracevar <> "") Then
    inputgracedays = Cint(gracevar)
    End If

    While (inputgracedays > maxdays)
    Msgbox("Maximum of " & maxdays
      & " days exceeded")
    Goto getInput
    Wend

    If inputgracedays <> -1 Then
    gracedays = inputgracedays
    End If

    Set gracedoc = db.GetProfileDocument("inboxgracedays")
    gracedoc.ReplaceItemValue "gracedays",gracedays
    Call gracedoc.Save(False,False)
    End Sub

  • 相关阅读:
    2014编程之美资格赛 第二题 大神和三个小伙伴
    操作系统PV操作——进程同步问题(C#实现)
    [转_管理]成功者必备的15种能力
    [技术相关]List、Dictionary转Dictionary的性能分析
    [项目管理]怎样评定软件开发成果的质量
    Visual Studio 2013 RTM 中文语言包官方下载地址发布
    IIS7报错:如果要使用托管的处理程序,请安装 ASP.NET
    HTTP请求方式中get和post的区别
    asp.net之动态页面和静态页面的区别
    HTML语言语法大全
  • 原文地址:https://www.cnblogs.com/hannover/p/1964515.html
Copyright © 2011-2022 走看看