Flujo de trabajo de aprobación

31/08/2009 - 17:49 por JAbella | Informe spam
Hola a todos. Estoy realizando un flujo de trabajo para una aprobación de
reservas con Visual Studio 2008 y MOSS Standard.

El funcionamiento del flujo es el siguiente:
Hacemos una solicutud de reserva en una lista de tipo calendario. Al
insertar este elemento, se inicia el flujo de trabajo, que lo primero que
hace es crear una tarea (CreateTaskWithContentType) en una lista de tareas.
El siguiente paso es esperar al evento "OnTaskChanged", que comprueba si
la tarea asociada creada por el flujo está aprobada o rechazada.
Por último, modificamos el estado del elemento que ha iniciado el flujo
de trabajo para marcar la solicitud de reserva como aprobada o rechazada.

El problema que estoy teniendo es que, cuando creo una tarea e intento
aprobarla o rechada, el proceso termina correctamente, pero falla cuando
tengo varias solicitudes por aprobar, es decir si hay varias instancias del
flujo ejecutándose (una para cada solicitud pendiente). En este caso, cuando
edito la tarea para aprobar o rechazar una de ellas, seejecutan todos los
eventos "OnTaskChanged" de todos los flujos de trabajo que hay en ejecución
en ese momento (en vez de ejecutarse sólo el evento del elemento en
cuestión), finalizando la ejecución de todos a la vez.

¿Os ha pasado alguna vez algo parecido? ¿Sabéis qué puede estar pasando? He
estado buscando información sobre este error pero no he encontrado nada.

Muchas gracias a todos. Un saludo.
 

Leer las respuestas

#1 Gustavo
01/09/2009 - 22:41 | Informe spam
Hola,
Me parece que la actividad que estas usando no esta configurada
correctamente. Ten en cuenta que siempre que crees tareas, tienes que crear
un Correlation Token unico para esa actividad, y utilizarlo consequentemente
en todas las actividades que tienen que ver con esa tarea; aqui me da la idea
que estas usando un solo Correlation Token para todo el flujo, incluyendo las
actividades de la tarea.
Otra idea es registrar en algun lado (en la historia del flujo, por ejemplo)
el identificador de la instancia del flujo, para estar seguro que estas
usando identificadores unicos.
Suerte,
Gustavo
http://www.gavd.net/servers/default.aspx
http://geeks.ms/blogs/gvelez/


"JAbella" wrote:

Hola a todos. Estoy realizando un flujo de trabajo para una aprobación de
reservas con Visual Studio 2008 y MOSS Standard.

El funcionamiento del flujo es el siguiente:
Hacemos una solicutud de reserva en una lista de tipo calendario. Al
insertar este elemento, se inicia el flujo de trabajo, que lo primero que
hace es crear una tarea (CreateTaskWithContentType) en una lista de tareas.
El siguiente paso es esperar al evento "OnTaskChanged", que comprueba si
la tarea asociada creada por el flujo está aprobada o rechazada.
Por último, modificamos el estado del elemento que ha iniciado el flujo
de trabajo para marcar la solicitud de reserva como aprobada o rechazada.

El problema que estoy teniendo es que, cuando creo una tarea e intento
aprobarla o rechada, el proceso termina correctamente, pero falla cuando
tengo varias solicitudes por aprobar, es decir si hay varias instancias del
flujo ejecutándose (una para cada solicitud pendiente). En este caso, cuando
edito la tarea para aprobar o rechazar una de ellas, seejecutan todos los
eventos "OnTaskChanged" de todos los flujos de trabajo que hay en ejecución
en ese momento (en vez de ejecutarse sólo el evento del elemento en
cuestión), finalizando la ejecución de todos a la vez.

¿Os ha pasado alguna vez algo parecido? ¿Sabéis qué puede estar pasando? He
estado buscando información sobre este error pero no he encontrado nada.

Muchas gracias a todos. Un saludo.

Preguntas similares