我有一些文件。如果我尝试打开文档,则会显示诸如“字段太大 32k 或视图的列和选择公式太大”之类的错误
每当我尝试删除文档时,都会遇到同样的错误。我无法删除。
好的,我们可以尝试通过后端获取文档,但是在那里,我无法获取文档句柄。
无论我尝试搜索什么,文档集合计数都是 0。
重要提示:- 我使用的是 Notes 6.5.2。
提前致谢,
我有一些文件。如果我尝试打开文档,则会显示诸如“字段太大 32k 或视图的列和选择公式太大”之类的错误
每当我尝试删除文档时,都会遇到同样的错误。我无法删除。
好的,我们可以尝试通过后端获取文档,但是在那里,我无法获取文档句柄。
无论我尝试搜索什么,文档集合计数都是 0。
重要提示:- 我使用的是 Notes 6.5.2。
提前致谢,
您可以创建数据库的新副本,不会复制损坏的文档。您也可以尝试使用 Ytria 的 ScanEZ 工具。
“好的,我们可以尝试通过后端获取文档,但是在那里,我无法获取文档句柄。”
你能发布你正在使用的代码吗?我不明白为什么以下代码不起作用:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim col As NotesDocumentCollection
Dim doc As NotesDocument
Dim deleteDoc List as NotesDocument
Set db = session.Currentdatabase
'*** Get collection of selected documents
Set col = db.UnprocessedDocuments
'*** Loop through selected documents
Set doc = col.GetFirstDocument
Do Until doc Is Nothing
'*** Add document to list to delete later
Set deleteDoc(doc.UniversalID) = doc
Set doc = col.GetNextDocument(doc)
Loop
'*** Delete all documents in list from database
ForAll d in deleteDoc
Call d.Remove(True)
End ForAll
也许您可能希望将导致您头痛的字段更改为富文本,因为富文本字段的限制比普通文本字段稍大。富文本文件的限制仅受最多 1GB 的可用磁盘空间限制
您是否尝试过简单地删除损坏文档上的问题字段,然后删除该文档?您可以尝试执行以下操作:
1-使用以下公式创建一个代理集以在选定的文档上运行:
FIELD corruptfield := @DeleteField;
2 - 在视图中选择一个问题文档并运行代理
3 - 如果没有出错,请尝试从视图中手动删除文档。
这对我有用:
1/ 使用 DocViewer 获取文档的 Note ID
可能有许多其他方法可以获取 NoteID,但它只是在我尝试通过DocViewer发送文档时出现,众所周知的免费工具
https://www.openntf.org/main.nsf/project.xsp?r =项目/文档%20查看者/摘要
2/ 使用 Notes C API 删除文档
我听从了pstr的建议,很快就找到了这个脚本
http://www.nsftools.com/tips/ApiStublessDelete.lss
只要把它对准好的数据库,用 Note ID,就可以了!
我试图更改脚本以不删除删除存根(我希望删除将复制到我的集群和本地副本上)。但是您又回到了 32k 错误!因此,您必须对每个副本应用删除(当然也可以重新创建副本)。