jueves, 22 de octubre de 2009

SPC: Workflows con Designer, Visio e Infopath

Una de las conferencias que más me gustó del dia de ayer fue la de la creación de flujos de trabajo con SharePoint Designer 2010. Lo cierto es que esta versión incorpora mejoras muy interesantes, aunque básicamente sean por la incorporación de nuevos servicios (como Visio o BCS) y una mucho mayor integración de Infopath en los flujos.

Tal y como me comentó el propio Gustavo Vélez, a pesar de los cambios más sustanciales en el motor de Workflow vendrán con el Framework 4.0. el equipo de microsoft ha preferido sacar SharePoint 2010 funcionando bajo Framework 3.5, ya que incorporar una tecnología tan nueva como el 4.0 hubiera supuesto un retraso de medio año más en el SharePoint 2010. Lo que sí parece que van a hacer es incorporar el 4.0. en el primer Service Pack que aparezca del producto (contad un año aprox. desde su lanzamiento).

Con SharePoint 2010 se pueden crear 3 tipos de workflows:

Asociados a una lista --> Los que usábamos en 2007
Workflows reutilizables --> Se pueden asociar a diversas listas o Content Types
Workflows de sitio --> No se asocian a ninguna lista o Content Type, sino al site.

A parte, os resumo las siguientes mejoras en la nueva versión que he podido extrapolar de la sesión:

Se puede especificar el tipo retornado (string, Display Name, number..) por una acción(como por ejemplo el "create ítem in list"), obteniendo un tipo de parametro de entrada y otro tipo distinto de salida.



Podemos crear cadenas con referencias dinámicas en campos que hasta ahora no se podían, como por ejemplo el campo "subject" de un e-mail.

Desde Designer podemos definir columnas de sitio y content types, y asociarlos a las listas de MOSS.


Con Designer podemos asociar columnas de sito, para usarlas posteriormente en las condiciones de los flujos.

Desde designer podemos asociar un workflow a un Content Type.

Los workflows reusables permiten por ejemplo asignar el workflow a un Content Type y las librerías que usen ese content type, utilizarán  automáticamente el mismo workflow.

Desde Designer podemos crear "Custom Actions" para añadir botones al Ribbon o opciones en los menús desplegables (¡es genial!)



Los workflows pueden atacar los parámetros de los User Profiles definidos en el AD (por ejemplo, asignar la tarea al manager del creador del ítem). ¡¡Por fin!!


Infopath puede "capturar" el formulario que nosotros hayamos construido en el flujo (con la misma herramienta generadora de forms que en 2007) para solicitar datos al usuario, y modificarlo completamente a nuestro gusto, incorporándole toda la lógica de campos que ofrece Infopath y permitiendo añadírle gráficos o conexiones de datos a la propia lista para mostrar los últimos ítems procesados por el workflow. En la demo, retocó un formulario de envio de sugerencias, que al hacer la nueva sugerencia, debajo de los campos solicitados mostraba las últimas sugerencias que otros usuarios habían realizado (era una repeating table que atacaba a la propia lista de sugerencias y mostraba sus valores).



Este es un formulario creado desde una acción del flujo del Designer y posteriormente modificado con Infopath

Designer puede mover acciones (subirlas o bajarlas) de un paso a otro. Es decir, puedo tener una acción en el Paso2 que sea "enviar mail" y con el botón derecho sobre la acción le indicamos que suba hacia arriba en el diagrama del flujo, si esta estaba la primera del Paso2, pasaría directamente a ser la última del Paso1.

Por fin tenemos en Designer un botón de Quick Publish, que publica de nuevo el formulario con un único click, recordando los datos de la última publicación (esto nos ahorrará algo de tiempo dándole al "siguiente" "siguiente")

Una vez el usuario rellene el formulario de datos necesarios para el flujo, nosotros podremos redirigirlo a la página que queramos, evitando así que vuelva directamente a la lista o similar. Podemos, por ejemplo, crear una página de agradecimiento por enviar la sugerencia, y hacer que cuando el solicitante envie el form vaya a esta página.

Con Visio 2010 se pueden diseñar workflows y después exportarlos a Designer (y viceversa). Esto me pareció genial, ya que ahora sí tenemos esa capa de maquetación o diseño del workflow que nos puede hacer un usuario funcional sin conocimientos técnicos, y que se dedique a poner cajitas conceptuales sin ningún tipo de parámetro, y luego importar ese diseño desde Designer para aprovechar el esquema creado por el usuario, y parametrizando cada acción o condición de forma detallada.



Con Visio 2010 también podremos visualizar el histórico de nuestro workflows, estando esta funcionalidad embebida con SilverLight.




Por otra parte, los flujos de Designer también pueden ser exportados como templates (wsp) que se guardan en el Site Assets, para que puedan ser importados y mejorarse posteriormente con Visual Studio.




Se pueden crear workflows de definición global. Sabeis que SharePoint incluye workflows out-of-the box del tipo "recopilación de firmas" o "tres estados". En 2010 podremos ampliar la família de este tipo de workfows globales desarrollándolos nosotros mismos y publicándolos en MOSS.

Y de momento eso es todo... ¡¡Espero que os estén gustando esta serie de posts desde la Conference!!

No hay comentarios: