我们有一堆设计相似的数据库。它们都有一些继承自各种模板的设计元素。其中许多具有需要更新的特定视图,但未标记为从模板继承。
虽然我知道我可以从数据库中删除视图,但我不确定如何在不手动操作的情况下将模板中的视图添加到每个数据库中。
如何以编程方式将设计元素从一个数据库复制到另一个数据库?
我们有一堆设计相似的数据库。它们都有一些继承自各种模板的设计元素。其中许多具有需要更新的特定视图,但未标记为从模板继承。
虽然我知道我可以从数据库中删除视图,但我不确定如何在不手动操作的情况下将模板中的视图添加到每个数据库中。
如何以编程方式将设计元素从一个数据库复制到另一个数据库?
我不确定为什么你不能仅仅将这些视图标记为从模板继承。无论如何,视图也是注释,您应该能够以这种方式复制视图:
lotus.domino.Database db = session.getCurrentDatabase();
db.getDocumentByUNID(db.getView("myview").getUniversalID()).copyToDatabase(dbTarget);
您不能直接复制 NotesView。但是你可以通过 DXLExporter 和 DXLImporter 来完成。这只是复杂且浪费时间。
我们有另一种方法可以做到这一点。而不是复制视图。我们可以复制 viewColumn 并在所有其他数据库中创建一个新视图。将这些列粘贴到其中。
Set notesViewColumn = notesView.CopyColumn( sourceColumn [ , destinationIndex& ] )
我知道它不能完全回答您的问题,但我想提出一种不同的方法。
您可以在模板和所有数据库中拥有视图。然后您可以在配置文件中添加一个选项来启用或禁用该视图。在大纲中,您可以根据配置文件设置隐藏或显示视图。