2014-07-22 127 views
0

我已经创建了一个宏,它将从莲花笔记中提取数据,它工作正常。现在发生的事情是,莲花笔记的服务器名称已被更改,并且我的宏无法支持新服务器。不确定吗?它给了我一个在searchCount上的错误。请看一看?我给你的新旧代码请建议,如果我失去了一些东西。莲花笔记数据库路径

OLD CODE:

Set nSess = CreateObject("Lotus.NotesSession") 
DSN1 = ("Driver={Lotus NotesSQL Driver (*.nsf)};Server=OLDSERVER Capital Markets;Database=Notes_DBs/GMI_CoreTrack/mlctrack.nsf;Uid=" & myUsername & ";Pwd=" & myPassword & ";") 
Call nSess.Initialize(myPassword) 
Set db = nSess.GetDatabase("OLDSERVER", "Notes_DBs/GMI_CoreTrack/mlctrack.nsf") 
Set iviews = db.GetView("QA\QA Schedule") 
strSearchKeyIssue = "FIELD AQAExecDate >= " & StartDate & " AND FIELD AQAExecDate <= " & EndDate 
searchCount = iviews.FTSearch(strSearchKeyIssue, 0) 
Set viewEntry = iviews.GetFirstDocument 

NEW CODE:

Set nSess = CreateObject("Lotus.NotesSession") 
DSN1 = ("Driver={Lotus NotesSQL Driver (*.nsf)};Server=NEWSERVER;Database=GMI\mlctrack.nsf;Uid=" & myUsername & ";Pwd=" & myPassword & ";") 
Call nSess.Initialize(myPassword) 
Set db = nSess.GetDatabase("NEWSERVER", "GMI\mlctrack.nsf") 
Set iviews = db.GetView("QA\QA Schedule") 
strSearchKeyIssue = "FIELD AQAExecDate >= " & StartDate & " AND FIELD AQAExecDate <= " & EndDate 
searchCount = iviews.FTSearch(strSearchKeyIssue, 0) 

在上面的行获取错误信息:运行时错误80040fa0

Set viewEntry = iviews.GetFirstDocument 
+2

请检查数据库是全文索引在新的服务器? –

+0

如何检查,因为这是我公司的莲花笔记我可能无法检查。 –

+0

我向我的IT团队查询DB是全文索引 –

回答

0

好像一个UNK表的问题。

当该字段首次在该特定副本上创建时,如果它已被标记为UNK表中的文本字段,则即使您有日期值,也可能无法在视图中搜索日期值。

UNK表对于每个副本都是特定的。所以这可能是你在新服务器上遇到问题的原因。

下面是详细信息:http://www.intec.co.uk/full-text-search-musings/

的解决方案是在这里解释:https://www-304.ibm.com/support/docview.wss?uid=swg21261002

要查找这可能会发生,你可以用NotesPeek中做 搜索领域,并寻找参考这是不正确的和 改变它。一旦你解决了这个问题,UNK表仍然需要 以及全文索引。要做到这一点,你会。

  1. 删除全文索引。
  2. 压缩数据库。这将重建UNK表。
  3. 重建数据库的索引。