Desarrollo de flujos de trabajo en SharePoint Designer

Última modificación: lunes, 19 de abril de 2010

Hace referencia a: SharePoint Foundation 2010

Cuando se crea un flujo de trabajo en un editor de flujos de trabajo declarativo, sin código y basado en reglas (como, por ejemplo, Microsoft SharePoint Designer 2010), dicho flujo de trabajo se crea directamente en una lista o biblioteca de documentos específica de Microsoft SharePoint Foundation 2010 y con un enlace de datos a ella. Se usa una lista predefinida de actividades de flujo de trabajo y no se usa ningún código. El flujo de trabajo que diseñe no se compila como un ensamblado, sino que se almacena en forma de archivos de origen hasta que SharePoint Foundation 2010 compile el flujo de trabajo la primera vez que se ejecute.

Este enfoque ofrece las ventajas siguientes:

  • Los flujos de trabajo se pueden desarrollar y probar rápidamente.

  • Dado que el flujo de trabajo es específico de una lista determinada, se simplifica lo siguiente:

    • El proceso de implementación

    • La administración de problemas de seguridad

  • Debido a que los flujos de trabajo no se compilan en ensamblados, los flujos de trabajo creados en un editor declarativo, sin código y basado en reglas (como, por ejemplo, SharePoint Designer 2010) se pueden implementar en servidores donde la directiva administrativa prohíbe los ensamblados de código personalizado.

Nota

Los flujos de trabajo creados en SharePoint Designer 2010 se ensamblan a partir de una "lista segura" de actividades predefinidas, que también debe ser aprobada por los administradores para que se ejecute en los servidores.

  • Los flujos de trabajo pueden ser creados por usuarios con menos experiencia que un programador, como los diseñadores de Web o los trabajadores del sector de la información.

Dado que el flujo de trabajo se crea directamente en una biblioteca de documentos y enlaza los datos a dicha biblioteca, los flujos de trabajo creados en SharePoint Designer 2010 difieren de los que se crean mediante el diseñador de Visual Studio en los siguientes aspectos esenciales:

  • Un flujo de trabajo creado en SharePoint Designer 2010 no se puede implementar para varias listas. Solo es válido para la lista para la cual se creó.

  • Puesto que el flujo de trabajo se crea directamente para una lista, éste se asocia a la lista en tiempo de diseño. Por lo tanto, no existe ninguna fase de asociación para los flujos de trabajo creados en SharePoint Designer 2010.

  • Los flujos de trabajo creados en SharePoint Designer 2010 no se pueden modificar.

  • No se pueden crear en relación con un tipo de contenido en SharePoint Designer 2010.

Para obtener una comparación detallada de SharePoint Designer 2010 y el diseñador de Visual Studio, vea Comparación de herramientas de desarrollo de flujos de trabajo.

Ejecución de flujos de trabajo sin compilar

Debido a que no contienen ningún código personalizado, los flujos de trabajo creados en un editor de flujos de trabajo declarativo, sin código y basado en reglas, como SharePoint Designer 2010, no se compilan ni implementan como ensamblados. Se almacenan como archivos de origen en SharePoint Foundation 2010 y sólo se compilan en la memoria cuando es necesario.

Para cada sitio, los flujos de trabajo de este tipo se almacenan en una biblioteca de documentos independiente. Esta biblioteca de documentos contiene una carpeta para cada flujo de trabajo creado en SharePoint Designer 2010. La carpeta contiene todos los archivos de origen necesarios para el flujo de trabajo, incluidos los siguientes:

  • Archivo de marcado de flujo de trabajo

  • Archivo de reglas de flujo de trabajo

  • Formularios ASPX para cualquier formulario de flujo de trabajo personalizado que sea necesario

SharePoint Foundation 2010 incluye un compilador Just-In-Time para compilar los archivos de origen en un flujo de trabajo la primera vez que el flujo de trabajo se inicia en un elemento. SharePoint Foundation 2010 conserva el flujo de trabajo compilado en la memoria hasta que se llama de nuevo a dicho flujo de trabajo, de forma similar a las memorias caché de servidor que compilan páginas ASPX para acelerar el rendimiento de ejecución la próxima vez que se llame a la página.

Cada vez que un flujo de trabajo se inicia en un elemento, SharePoint Foundation 2010 determina si se implementó el flujo de trabajo como un ensamblado o como archivos de origen. Si existe un ensamblado de flujo de trabajo, SharePoint Foundation 2010 llama a dicho ensamblado para crear la instancia de flujo de trabajo. Si el flujo de trabajo se ha implementado como archivos de origen, SharePoint Foundation 2010 determinará si ya se ha compilado un flujo de trabajo a partir de dichos archivos de origen en la memoria o no. Si es así, SharePoint Foundation 2010 llamará al flujo de trabajo compilado en memoria para crear la instancia de flujo de trabajo. En caso contrario, SharePoint Foundation 2010 usará el compilador Just-In-Time para compilar los archivos de origen en un flujo de trabajo en memoria, al cual se llamará a continuación para crear una instancia de flujo de trabajo.

Creación de flujos de trabajo con SharePoint Designer

SharePoint Designer 2010 usa una interfaz controlada por asistente que permite a los usuarios ensamblar flujos de trabajo secuenciales de actividades predefinidas. Los usuarios seleccionan las actividades de una lista predeterminada y las configuran mediante la interfaz de SharePoint Designer 2010. Estas actividades pueden ser las mismas que se encuentran en el Diseñador de flujo de trabajo de Visual Studio 2010; no hay ninguna diferencia entre las actividades de las dos herramientas.

En SharePoint Designer 2010, sin embargo, cada actividad aparece como una acción, representada por una oración que contiene variables que el usuario puede configurar mediante menús desplegables y cuadros de diálogo de búsqueda. Los usuarios también pueden seleccionar condiciones, que son cláusulas condicionales configurables que dirigen el flujo del flujo de trabajo.

Mientras el usuario selecciona y configura condiciones y acciones en la interfaz de flujo de trabajo, SharePoint Designer 2010 genera los dos archivos que representan realmente la clase de flujo de trabajo:

  • El archivo de marcado de flujo de trabajo, que contiene lenguaje de marcado con el que se describen las actividades incluidas en el flujo de trabajo.

  • El archivo de reglas de flujo de trabajo, que contiene la lógica de negocios del flujo de trabajo en forma de reglas declarativas, en lugar de como código.

Adición de condiciones y actividades personalizadas

Debido a que los creadores de flujos de trabajo en SharePoint Designer 2010 no pueden crear actividades personalizadas para usarlas en los flujos de trabajo, se limitan a las actividades y condiciones que el desarrollador pone como disponibles en la "lista segura" (que también debe aprobar un administrador del servidor) de SharePoint Designer 2010. Los desarrolladores pueden crear condiciones y actividades personalizadas y ponerlas como disponibles en la lista segura.

Una condición es un ensamblado personalizado con un método estático que, cuando se le llama, evalúa la condición y devuelve un valor booleano.

Para poner actividades y condiciones como disponibles en la lista segura:

  1. Cree la actividad o condición, compílela como un ensamblado con nombre seguro e impleméntela en la memoria caché global de ensamblados.

  2. Agregue la actividad o condición a la lista segura de acciones del archivo web.config.

  3. En el archivo WSS.Actions, que se encuentra en la carpeta de flujo de trabajo, agregue reglas y parámetros para la oración que representa la actividad o condición en la interfaz de usuario de SharePoint Designer 2010. Se trata de lenguaje de marcado que especifica el modo en que la actividad o condición aparece y se comporta en la interfaz, ya que esta información no está presente en el propio ensamblado de la actividad o condición.

Para obtener más información acerca de la implementación de condiciones y actividades personalizadas, vea la Ayuda de SharePoint Designer 2010.

Generación de formularios ASP.NET en SharePoint Designer

Puede crear una fase de inicio del flujo de trabajo en SharePoint Designer 2010. Si lo hace, SharePoint Designer 2010 usa ASP.NET para generar automáticamente un formulario de inicio de acuerdo con las especificaciones de inicio establecidas.

De forma similar, puede crear tareas personalizadas de Microsoft SharePoint Foundation 2010 para el flujo de trabajo. Una vez más, SharePoint Designer 2010 genera automáticamente un formulario ASP.NET para la tarea en función de las especificaciones.

Estos formularios ASPX se almacenan en el sitio de SharePoint con los archivos de origen del flujo de trabajo. Puede abrirlos y personalizarlos como lo haría con cualquier otro formulario ASPX.

Vea también

Conceptos

Desarrollo de flujos de trabajo para SharePoint Foundation

Comparación de herramientas de desarrollo de flujos de trabajo

Introducción al flujo de trabajo de SharePoint Designer

Desarrollo de flujo de trabajo en Visual Studio