Lotus Domino Web视图 - 应该只显示当前用户文档 - 但显示更多?
-
05-07-2019 - |
题
我正在研究Lotus Domino Web应用程序,我有一个只应显示当前用户文档的视图。我知道这不是服务器的最佳选择,因为它必须继续计算,但这是一个要求......
这是我正在使用的视图选择公式:
SELECT(Form =" Atom Request" | Form =" AtomRequest")& @Name([CN]; RequestAuthor)= @Name([CN]; @ UserName)
RequestAuthor字段是在捕获作者姓名的合成字段时计算的。
视图选择对我来说很好,但其他用户可以在此视图中查看其他用户文档。
我可能忽略了一些显而易见的事情......
有什么建议吗?
德里克
解决方案
我将视图转换为分类视图 - 按作者名称分类。
然后我将视图嵌入到视图模板表单中,将其设置为显示单个类别。
单个类别是用户名。
似乎已经成功了..
其他提示
你是否要求用户能够看到他们自己以外的文件(我的意思是在这个视图之外)?
如果没有,则使用文档上的读者字段来限制谁可以查看每个文档。
那么您将不需要 @Name([CN]; RequestAuthor)= @Name([CN]; @ UserName)
部分选择公式。
否则,如果您确实需要用户能够看到自己以外的文档,那么您采用的嵌入式分类方法可能是最干净的。
LRE的解决方案很好。但是从设计POV中,不要在视图选择公式中使用@UserName或@Now或@today,这会导致数据库和服务器出现严重的性能问题。
每次打开视图时,服务器都将重建索引。如果确实需要使用特定于用户的信息,请创建一个计划代理,该代理将在字段中设置值,然后将该字段作为视图公式的一部分引用。只是不要使用任何动态的“@”视图公式中的函数将更改条件。