用什么命令重建mail下的人员的数据库nsf文件

yqdragon 2007-09-20 01:35:01
我的从服务器坏了,所有人员的数据库文件(nsf文件)丢失了,请问用什么命令重新建mail下的所有人员的数据库nsf文件?比较急,哪位高手知道啊
...全文
181 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
knowledge_Is_Life 2008-05-01
  • 打赏
  • 举报
回复
什么呀
cnscns 2007-09-20
  • 打赏
  • 举报
回复
对了,上面的邮件模板(mail7.ntf)你应该改成你们服务器上的邮件模板.
cnscns 2007-09-20
  • 打赏
  • 举报
回复
临时给你写了段代码,没有测试,你自己看看,应该是可以用的。
新建一个数据库,把这段代码放到代理中,运行一下这个代理就可以了。
建议你最好先弄个测试环境测试一下,确认没有问题了再正式用。运行的时候一定要用有相应权限的ID

Sub Initialize
'获取服务器的通讯录
Dim ss As New NotesSession
Dim books As Variant
books = ss.AddressBooks
Dim adb As NotesDatabase
Forall b In books
If b.IsPublicAddressBook Then
Set adb = b
Call adb.Open(b.server,b.filepath)
End If
End Forall
'获取通讯录个人视图
Dim view As notesview
Set view = adb.GetView("people")

Dim doc As notesdocument
Set doc = view.GetFirstDocument
'邮件模板
Dim tdb As New NotesDatabase(adb.server,"mail7.ntf")

Dim db As notesdatabase
Dim ACL As NotesACL
Dim ACLEntry As NotesACLEntry
While Not doc Is Nothing
'注意:下面的doc.FirstName(0) 是你想用来作为邮件名的,当然你也可以用别的,用firstname很容易有重名的情况
Set db = tdb.CreateFromTemplate(adb.server,"mail\"+doc.FirstName(0)+".nsf",True)
'设置邮件库名称
db.Title = doc.FirstName(0)
'设置数据库ACL,可以根据实际情况调整
Set ACL = db.ACL
Set ACLEntry = ACL.CreateACLEntry(doc.FullName(0),ACLLEVEL_MANAGER)
ACLEntry.IsPerson = True
Call ACL.Save
'修改通讯录中的邮件路径
Call doc.ReplaceItemValue("MailFile","mail\"+doc.FirstName(0)+".nsf")
Call doc.Save(True,True)
Set doc = view.GetNextDocument(doc)
Wend
End Sub
yqdragon 2007-09-20
  • 打赏
  • 举报
回复
请教如何建啊?我只是邮箱没有了,其它地址信息ID什么的都在?能回的详细点吗,我刚接触LOTUS不久
原石化玉 2007-09-20
  • 打赏
  • 举报
回复
写一段代码呗,让程序给你建邮箱,一个要1、2分钟。注意模板、权限的设置

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧