Campo lectores

Estoy intentando trabajar con un campo lectores incrustado en un formulario en WEB. ¿Puedo meter varios Grupos en vez de usuarios en dicho campo?. Para que así sólo puedan leer dicho documento los usuario del grupo indicado. Lo pregunto porque lo he probado y parece que no hace el efecto esperado.
Cuando miro las propiedades del documento parece que si ha cogido el campo lectores, ya que aparece esto:
--------------------------------------
Field Name: Lectores
Data Type: Rich Text
Data Length: 158 bytes
Seq Num: 1
Dup Item ID: 0
Field Flags: SUMMARY READ-ACCESS NAMES
"Desarrolladores"
"Grupo E10 Costa Rica"
"Grupo E10 USA"
--------------------------------------
Pero como ya te he comentado, no hace caso de esto y usuarios que no están en los grupos espeficiados pueden ver los documentos en las vistas.
¿Tiene esto solución?

2 Respuestas

Respuesta
1
Sí, lo de los grupos funciona, pero hay que modificar fórmulas, me explico:
Si usas funciones como @UserName comparadas con @IsMember lo más seguro es que te fallen, usa @UserNamesList (míratelo en la ayuda de designer), esa fórmula pasa toda la lista de grupos y nombres donde el usuario pertenece.
Si necesitas meter ROLES en un campo de lectores usa "[Rol]", los corchetes!
Otra cosa muy importante es que en las propiedades de la vista debes poner "NO MOSTRAR CATEGORÍAS SI NO HAY DOCUMENTOS"
Si la base de datos la tienes en local te enseñará todos los documentos.
Si modificas los campos de autores y lectores desde alguna función de LotusScript, ten en cuenta que depende de como se inicialicen puede que te pierda las propiedades de READERS o AUTHORS, coge el item de tu campo lectores y pone el flag isReaders en true antes de Guardar el documento.
A ver si hay suerte!
Hola, muchas gracias por tu contestación pero no termino de entenderlo, es decir tu me hablas de comparaciones con @UserNamesList, @UserName... pero actualmente no hago ninguna comparación, es decir, lo único que hago es establecer un campo lectores, rellenarlo, y submitar el formulario. Tengo entendido que el notes ya detecta que ese documento sólo pueden leerlo los que se especifican en el campo lectores. (Ya te digo que no se si lo estoy haciendo bien).
¿Cuándo te refieres a funciones comparadas te refieres a las funciones que ponemos en la selección de documentos a la hora de discriminar los documentos que no se pueden ver en la vista?
Gracias
No hagas caso del @UserNamesList, lo usamos con el @Ismember para esconder acciones sobre formularios, por ejemplo para esconder el botón editar si el usuario actual no está en el campo autores. Comparando usuario, grupo al que pertenece, etc.
Por otro lado lo que dices de que notes comprueba automáticamente el acceso mirando los campos autores y lectores es cierto inclouso si pones grupos o roles (los roles entre corchetes). Lo que te decía es que para restringir los accesos tenías que activar una propiedad de las vistas que hace que no se muestren las categorías si no hay documentos para que se viera todo bien, y te recordaba que los campos lectores y autores sólo funcionan bien si se trabaja con la base de datos desde servidor. En local la restricción no funciona.
También vigila al cambiar de usuario desde Lotus Notes ya que a veces no se refresca automáticamente la vista y continuas viendo los documentos que veías antes, tiene como un bug de cache.
Para probar los usuarios casi mejor salir de notes y volver a entrar con otro usuario distinto.
Buena suerte!
Respuesta
1
Lo siento pero no. Notes no comptrueba si el contenido del campo lectores es un grupo o no. Solo espera Usuarios.
Para hacer algo parecido puedes usar los ROLES.
En el control de acceso de la bd, crea un rol. Y asigna a los grupos o usuarios que tienes en el acl ese rol.
Después, en el campo LECTORES, mete solo el rol o roles que quieras, pero eso si, con cochetes!
Si el rol que has dado es XXXX, en lectores debes guardar [XXXX]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas