La vista web de Lotus Domino: solo debería mostrar los documentos de los usuarios actuales, pero ¿muestra más?

StackOverflow https://stackoverflow.com/questions/1201045

  •  05-07-2019
  •  | 
  •  

Pregunta

Estoy trabajando en una aplicación web Lotus Domino y tengo una vista que solo debería mostrar los documentos del usuario actual. Sé que esto no es lo mejor para el servidor porque tiene que seguir calculando esto, pero es un requisito ...

Esta es la fórmula de selección de vista que estoy usando:

SELECT (Formulario = " Solicitud de átomo " | Form = " AtomRequest ") & amp; @Name ([CN]; RequestAuthor) = @Name ([CN]; @ UserName)

El campo RequestAuthor se calcula cuando se compone un campo que captura el nombre del autor.

La selección de vista funciona bien para mí, pero otros usuarios pueden ver los documentos de otros usuarios en esta vista.

Probablemente estoy pasando por alto algo obvio ...

¿Alguna sugerencia?

Derek

¿Fue útil?

Solución

He convertido la vista en una vista categorizada, categorizada por AuthorName.

Luego incrusté la vista en el formulario de plantilla de vista configurándola para mostrar una sola categoría.

La categoría única es el nombre de usuario.

Parece haber hecho el truco ..

Otros consejos

¿requiere que el usuario pueda ver documentos que no sean los suyos (fuera de esta vista, quiero decir)?

Si no es así, utilice un campo de lectores en los documentos para limitar quién puede ver cada documento.

Entonces no necesitará la parte @Name ([CN]; RequestAuthor) = @Name ([CN]; @ UserName) de la fórmula de selección.

De lo contrario, si necesita que los usuarios puedan ver documentos que no sean los suyos, el enfoque categorizado incorporado que ha tomado es probablemente el más limpio.

La solución de LRE es buena. Pero desde un punto de vista de diseño, no use @UserName o @Now o @today en las fórmulas de selección de vista, esto causa serios problemas de rendimiento para su base de datos y el servidor.

Cada vez que abra la vista, el servidor reconstruirá el índice. Si necesita usar información específica del usuario, cree un agente programado que establezca el valor en un campo y luego haga referencia al campo como parte de la fórmula de vista. Simplemente no uses ningún " @ " funciona en la fórmula de vista que cambiaría los criterios.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top