sábado, 11 de abril de 2015

CAML para filtrar las tareas pendientes que tengo asignadas o la de mis grupos a los cual pertenezco

Cuando trabajamos con Workflows, podemos asignar tareas a grupos determinados dentro del proceso de aprobación. EL principal problema que tenemos, es que desde la vista web sólo podemos filtrar las tareas asignadas a nosotros ([Yo] o [Me] en inglés). Pero cómo hacemos el filtrado de las tareas asignadas a grupos donde pertenecemos??

image

Se debe usar Sharepoint Designer para editar la consulta CAML

Abran la página donde tienen la vista, y editen con la vista avanzada, la sección de View

image

Busquen “<Query>” y reemplacen la query con lo siguiente.

<Query><Where><And><Or><Eq><FieldRef Name="AssignedTo" LookupId="TRUE"/><Value Type="Integer"><UserID /></Value></Eq><Membership Type="CurrentUserGroups"><FieldRef Name="AssignedTo"/></Membership></Or><Eq><FieldRef Name="Status" /><Value Type='Choice'>No iniciada</Value></Eq></And></Where><OrderBy><FieldRef Name="DueDate"/></OrderBy> </Query>

La query filtra todas las tareas asignadas a mi o a un grupo al cual pertenezco, y están en estado “No Iniciada”.

El principal problema que tiene hacerlo por Designer, primero que hacemos páginas custom, lo cual puede ser un problema en una migración. Y segundo, si voy a editar la vista desde la web no voy a ver estos cambios, y todos los cambios que requiera lo deberé hacer desde el designer (Ej: agregar campos a la view)

image

No hay comentarios:

Publicar un comentario