关于错误信息【schedMgr: Error processing calendar profile document(NoteID: *) in database mail/*.nsf: Cannot find user in Name and Addr

来源:互联网 发布:专业网络推广公司 编辑:程序博客网 时间:2024/06/11 18:37

这个错误信息属于domino常见的错误提示信息,前些天碰巧再次遇到这个问题。在网上搜索了各位同行的分析,发现观点不一。我把自己的一些理解和实际处理用到的方法整理成下面的文字,如有错误,欢迎指教!

 

【schedMgr: Error processing calendar profile document(NoteID: *) in database mail/*.nsf: Cannot find user in Name and Address Book】

Domino服务器控制台报出上面错误信息,至少有两种情况会发生:

1. 注册用户被清理出通讯录,而邮箱文件未被处理。

2. 用户和邮箱均存在服务器中,但邮箱中的配置文件CalendarProfile中保存的“所有者”域值在通讯录中不存在。

 

显然,第一类情况,处理起来比较容易,删除邮箱文件后错误信息消失。

对于第二类情况,需要修改邮箱中配置文件CalendarProfile中的相关域值(Owner,$busyname)。修改方法,视实际应用情况而定:

对于客户端应用的类型,通知用户在邮箱中打开工具-管用选项,选择“所有者”为自己的nontes名即可;

对于Web应用的情况,先确定邮箱中是否有工具-惯用选项设置这一功能(我记得inotes5模板是有这一功能的),直接通知用户进去修改即可。如果没有此功能,可以使用下面代理进行修复:

 

////////////////////////////////////////////////////////////函数部分

////////////////////////////////////////////////////////////设置为Canonicalize Name

Sub su_fixDB(strMailfile As String, strName As String)
 Dim s As New NotesSession
 Dim mDB As NotesDatabase
 Dim docProfile As NotesDocument
 Dim item As notesitem
 
 Set mDB = s.GetDatabase(s.CurrentDatabase.Server,strMailfile)
 Set docProfile=mDB.GetProfileDocument("CalendarProfile")
 docProfile.Owner=Evaluate(|@name([CANONICALIZE];"| & strName & |")|,docProfile)
 Set item=docProfile.GetFirstItem("$BusyName")
 item.Values=docProfile.Owner
 
 Call docProfile.Save(True,False)
End Sub

 

////////////////////////////////////////////////////////////调用函数

Sub Initialize
 Call su_fixDB("mail/Dim Duncon.nsf","Dim Duncon/spurs")
 Call su_fixDB("mail/Menu Ginobili.nsf","Menu Ginobili/spurs")
End Sub

 

原创粉丝点击