miércoles, 26 de noviembre de 2014

Cómo solventar la limitación del “wait for X to equal” en SPD 2013

Anteriormente publiqué un post sobre algunas de las incoherencias que había detectado en los flujos de SharePoint Designer en 2013. Una de ellas es la de que en SPD 2013 la acción de esperar hasta que cambie el valor de un campo de la lista había pasado de ser muy flexible en 2010 (to equal, to not equal, to be not empty, to begin with…) a extremadamente inflexible en 2013 (única y exclusivamente “to equal”).

En SPD 2010         En SPD 2013
[image%255B8%255D.png]       [image%255B11%255D.png]

Así pues, si tenemos un flujo de trabajo que está esperando una validación, y el resultado de la validación puede ser tanto “Aprobada” como “Rechazada”, ¿Cómo lo hacemos?

En su momento apunté la posibilidad de invocar un flujo en 2010 que lo solucionara (cosa que me provoca picores en todo el cuerpo), pero hoy os planteo otra posible solución que (mientras no contemple un número muy elevado de posibles respuestas) es más “polite” y debería darnos menos dolores de cabeza.

La solución no es otra que la de diseñar pasos en ejecución paralela. Es decir, allí donde queramos introducir la instrucción de esperar a que el campo tome uno de los posibles valores (en este ejemplo “rejected” o “approved”), tendremos que:

1.- Introducir un bloque de ejecución en paralelo.image
2.- Crear tantos “steps” dentro del bloque de ejecución en paralelo como posibles respuestas podamos obtener. En este caso 2, una para rechazo y otra para validación.
image
image
A partir de aquí rellenar las acciones necesarias para cada respuesta, teniendo en cuenta que únicamente será posible ejecutar una de ellas (o hay validación o hay rechazo). Si hubieran acciones comunes en todos los casos, estas se pueden poner fuera y al después de la ejecución paralela, ya que se ejecutarían una vez uno de los pasos dejara de estar en modo de espera y avanzara en el flujo.
Como resultado obtendríamos un flujo más o menos con la siguiente pinta:
image
¡Pues ya lo tenemos! Una vez más sorteando las “piedras” en el camino de la implementación de SharePoint. Confiemos en que SharePoint 2015 aporte muchas más mejoras y muchas menos limitaciones y bugs… ¡¡Soñar es gratis!! Guiño

No hay comentarios: