miércoles, 26 de marzo de 2014

Designer 2013: Cómo modificar los permisos de un ítem en un workflow.

Puede que, como yo, hayáis llegado a pasar un buen rato intentando encontrar las acciones en el diseñador de flujos de SharePoint Designer 2013 para modificar la seguridad de un ítem de una lista o de un documento en una biblioteca.

Para los que no todavía no hayáis caído en la trampa, os ahorraré tiempo: NO EXISTEN.

Sorprendente pero cierto. Y diréis: ¿Pero esto no existía en 2010? ¡¡Y tendréis razón!! En 2010 se podía, en un “Impersonation Step” incluir las acciones necesarias para modificar los permisos de un ítem, pero en 2013, el nuevo motor de flujos en Workflow Foundation 4.0, no lo contempla. Entonces, ¿Cómo podemos establecer la seguridad de un ítem en un flujo de SharePoint 2013 realizado con SharePoint Designer 2013? La respuesta es tan simple como “curiosa”: Invocando desde el flujo de SharePoint 2013 un flujo de SharePoint 2010 que se encargue de realizar dichas tareas.

Sin palabras, ¿Eh?

Es cierto que con 2013 podemos crear indistintamente flujos en 2013 (si tenemos instalado correctamente Workfow Manager) como en 2010, pero uno se pregunta qué pasará cuando llegue SharePoint 2015 o versiones posteriores. ¿Seguirá siendo posible invocar flujos en formato 2010? Y en caso negativo, ¿Qué ocurrirá con este tipo de soluciones “forzadas” para gestionar los permisos de un ítem? Sólo puedo pedirles fehacientemente a los chicos de Microsoft que en 2015 el motor de flujo sí incluya este tipo de acciones, a fin de poder facilitarnos posibles migraciones.

Tapándonos los ojos y centrándonos en el presente, para quien no supiera cómo configurar la seguridad de un ítem en flujos de 2010, ahí va un “step by step”:

1.   Creamos el flujo de 2010 para modificar la seguridad de un ítem en SharePoint Designer 2013

1.1 - Insertamos un “Impersonation Step” (hay que situar el cursor antes o después de un step normal, si no está situado fuera del “Step”, no se iluminará la opción para crear el Impersonation)

image

1.2 – Nos situamos dentro del nuevo “Impersonation Step”. Ahora veremos que en el menú de “Action” aparecen las opciones deseadas para la gestión de la seguridad del ítem.

image[39]

1.3 – Configuramos la opción de seguridad escogida en función de nuestros requerimientos concretosimage

1.4 – El flujo nos quedará algo similar a la siguiente imagen:

image

2.   Salimos del flujo anterior y creamos ahora nuestro flujo en 2013 con SharePoint Designer 2013.

3.   En el punto donde sea necesario modificar la seguridad del ítem/documento, utilizar la acción “Start a List Workflow”, indicando el flujo de 2010 que hemos diseñado previamente. Es posible que el flujo requiera algún parámetro adicional, como el ID del ítem o la indicación de quien será el usuario que tenga un determinado permiso.

image

4.   Nuestro flujo será tan dispar como nuestros requerimientos lo requieran, pero deberá quedar con una acción de invocación al flujo en 2010 tal y como muestra la siguiente imagen:

image

¡¡Listo!! Como veis, poder se puede hacer… Otra cosa son las inquietudes que os puedan quedar al invocar flujos en 2010 desde flujos 2013. De nuevo, SharePoint te da lo justo para que un tercero pueda darte mucho más (Custom Workflow Actions, Nintex, K2…) y así sigue manteniéndose todo el ecosistema del mundo de SharePoint!

¡Hasta otra!

No hay comentarios: