Веб-представление Lotus Domino - должно показывать только документы текущего пользователя - но показывает больше? - PullRequest
0 голосов
/ 29 июля 2009

Я работаю над веб-приложением Lotus Domino, и у меня есть представление, которое должно отображать только документы текущего пользователя. Я знаю, что это не лучший вариант для сервера, потому что он должен продолжать вычислять это, но это требование ...

Это формула выбора вида, которую я использую:

SELECT (Form = "Запрос Atom" | Form = "Запрос Atom") & @Name ([CN]; RequestAuthor) = @Name ([CN]; @ UserName)

Поле RequestAuthor вычисляется при составлении поля, которое содержит имя автора.

У меня отлично работает выбор вида, но другие пользователи могут просматривать документы других пользователей в этом представлении.

Я, наверное, упускаю из виду что-то очевидное ....

Есть предложения?

Derek

Ответы [ 3 ]

1 голос
/ 30 июля 2009

Требуете ли вы, чтобы пользователь мог видеть документы, отличные от его собственных (я имею в виду вне этого представления)?

Если нет, то используйте поле читателей в документах, чтобы ограничить количество пользователей, которые могут видеть каждый документ.

Тогда вам не понадобится @Name([CN];RequestAuthor) = @Name([CN];@UserName) часть формулы выбора.

В противном случае, если вам нужно, чтобы пользователи могли видеть документы, отличные от их собственного, встроенный классифицированный подход, который вы выбрали, вероятно, самый чистый.

1 голос
/ 27 декабря 2009

Решение LRE является хорошим. Но из POV проекта не используйте @UserName, @Now или @today для просмотра формул выбора, поскольку это вызывает серьезные проблемы с производительностью для вашей базы данных и сервера.

Каждый раз, когда вы открываете представление, сервер будет перестраивать индекс. Если вам нужно использовать информацию, специфичную для пользователя, создайте запланированный агент, который будет устанавливать значение в поле, а затем ссылаться на поле как часть формулы представления. Только не используйте какие-либо динамические функции "@" в формуле представления, которые могли бы изменить критерии.

1 голос
/ 29 июля 2009

Я преобразовал представление в представление по категориям, классифицированное по AuthorName.

Затем я встроил представление в форму шаблона представления, установив его для отображения одной категории.

Единственная категория - это имя пользователя.

Кажется, сделал трюк ..

...