我有2个数据库:比如说dbA和dbB.实际上,dbB是dbA的“子”数据库,因为它包含的表单/ views / frameset / etc都在dbA中. 我现在想要从dbA的一些视图(比如说vwA)复制一些8K文档到dbB的相同视图(vwA)
我现在想要从dbA的一些视图(比如说vwA)复制一些8K文档到dbB的相同视图(vwA). THese 8k包含父文档和子文档,在dbA中列出了OK,带有@Text(@UniqueDocumentID).我刚做了一个测试,复制了一个父文档及其响应,并粘贴在第二个数据库中,但不幸的是,两个文档之间没有连接……我猜UNID已经改变了……
有什么解决方案吗?谢谢你的时间.
是的,将文档复制到另一个数据库始终会为目标数据库中的文档创建新的UniversalID.为避免这种情况,您的LotusScript应该像这样工作:
>在目标数据库中创建新文档
> CopyAllItems从源文档到目标文档
>将相同的UniversalID设置为目标文档targetDoc.UniversalID = sourceDoc.UniversalID
>保存目标文件
这样,目标文档具有与源文档相同的UniversalID,文档之间的链接也应该在目标数据库中工作.
这是处理选定文档的代理的示例:
Dim session As New NotesSession Dim dbSource As NotesDatabase Dim dbTarget As NotesDatabase Dim col As NotesDocumentCollection Dim docSource As NotesDocument Dim docTarget As NotesDocument Set dbSource = session.Currentdatabase Set dbTarget = session.Getdatabase(dbSource.Server, "YourTargetDatabase.nsf", false) Set col = dbSource.Unprocesseddocuments Set docSource = col.Getfirstdocument() While Not docSource Is Nothing Set docTarget = dbTarget.Createdocument() Call docSource.Copyallitems(docTarget, true) docTarget.UniversalID = docSource.UniversalID Call docTarget.save(True, False) Set docSource = col.Getnextdocument(docSource) Wend