none
Bucles infinitos sharepoint designer 2007 RRS feed

  • Pregunta

  • ¡Hola a todos!

    Estoy desarrollando un flujo de trabajo con sharepoint designer 2007, que se debe iniciar automáticamente cada vez que se cree un nuevo elemento en una lista de sharepoint. Este flujo, después de pausarse y realizar diferentes acciones, debe crear un nuevo elemento en esta lista, desencadenando otra instancia del flujo, es decir, necesito que sea una especie de bucle infinito. Según he leído, al tener instalado WSS 3.0 SP2, sharepoint designer no me permite crear elementos en la misma lista donde se despliega el flujo si éste debe iniciarse automáticamente cuando se cree un nuevo elemento, cosa que si era posible con el SP1. ¿Alguien sabe como puedo simular este bucle infinito con el SP2? Les agradezco cualquier sugerencia, ya que llevo bastante tiempo dandole vueltas y no consigo solucionarlo...

    ¡Muchas gracias! 

    jueves, 15 de abril de 2010 8:38

Todas las respuestas

  • Hola Tomas

    Bueno lo que podrias hacer es desencadenar el evento tanto cuando se crea un elemento como cuando se edita, de esta forma se generara el bucle infinito y se creara una nueva instancia del flujo de trabajo, o en dado caso, se puede crear un nuevo elemento de lista y de esa forma se generaria tambien el bucle infinito, si tienes dudas, no vaciles en consultar...

    Diego

    jueves, 15 de abril de 2010 15:52
  • Hola Diego

    Ya probé lo que me dices y no me funcionó, bueno más bien sharepoint designer no me permitió realizar esto, me decía que había errores en el flujo, es decir, no permite iniciar automáticamente un flujo de trabajo cuando se crea un nuevo elemento si ese flujo se publica en la misma lista donde se crea el elemento. WSS 3.0 con el Service Pack 1 si permite realizar esto, pero con el Service Pack 2 (el que tengo yo instalado) esto no se permite para evitar crear bucles infinitos sin querer. También probe a crear el elemento en una lista auxiliar, idéntica a la original, y que en esta lista auxiliar se lance un flujo que copie el elemento a la original, pero al crearse el elemento en la original, ya no se lanza el flujo..., también controla esta forma de generar un bucle infinito. Si se te ocurre alguna otra idea no dudes en comentarmeta. Gracias por tu respuesta

    jueves, 15 de abril de 2010 16:25
  • Hola Tomas

    Bueno he ahi un gran problema.. lo que me cuentas de la lista auxiliar podria funcionar, pero para eso, como te digo tienes tambien que activar el flujo de trabajo cuando se edita un elemento o simplemente hacer esto: creas un elemento en la lista principal, entonces se lanza el flujo de tabajo primario, este flujo de trabajo deberia crear un elemento en la lista auxiliar, pero ojo, deja ese paso como el ultimo para que cuando cree el elemento en la lista auxiliar el flujo de trabajo primario finalice, despues de esto en la lista auxiliar cuando se crea un elemento se lanza un nuevo flujo de trabajo llamado subflujo, es decir, este segundo flujo se lanza a partir del primero, este subflujo debe crear un nuevo elemento en la otra lista o sea en la primaria y de esa forma el flujo primario se disparará nuevamente... es la solucion que se me ocurre por el momento, si tienes dudas, no vaciles en consultar....

    Diego

    jueves, 15 de abril de 2010 16:36
  • Diego, la solución que me propones es exactamente lo que tengo implementado y te comento lo que sucede: Cuando creas un elemento en la lista principal, se lanza el flujo primario, cuya última acción es crear un elemento en la lista auxiliar. Al crear el elemento en la lista auxiliar, se lanza el subflujo, cuya última y única acción es crear el elemento en el lista princial. Hasta aqui todo perfecto. El problema viene en que ahora el flujo primario no se lanza con la creación de este nuevo elemento en la lista principal por parte del subflujo. Parece que sharepoint debe ir guardando los ID de los flujos sucesivos de alguna manera, comprobando que si se produce una especie de bucle infinito, no permite q se inicien más flujos. En la página que te indico puedes observar esto de manera más intuitiva. Gracias de nuevo por tu ayuda y tiempo...

    http://blogs.msdn.com/sharepointdesigner/archive/2009/07/13/service-pack-2-prevents-an-on-change-workflow-from-starting-itself.aspx

    jueves, 15 de abril de 2010 17:04