Escenario:
Existen dos bibliotecas en el sitio Document (Privada) y Shared Document (Pública). El requerimiento que recibimos es que debemos de crear un flujo de trabajo de aprobación que cuando ya esté autorizado pueda publicarse en la biblioteca pública. Para este artículo utilice una plantilla de Sitio de Equipo o Team Site.
Prerrequisito:
Es necesario que la persona que elabore este artículo tenga conocimiento básico de administración de la seguridad de SharePoint ya que será necesario que cree o utilice unos grupos para asignar la tarea a un determinado grupo de usuarios el cual no se detalla en este. Debe también estar familiarizado como personalizar una lista de SharePoint.
Aclaración:
Este artículo se desarrolló sobre una versión de SharePoint en inglés por lo que las opciones se indicarán en el idioma instalado.
Desde SharePoint Designer 2010 luego de abrir el sitio donde vamos a crear el flujo de trabajo seleccionamos la opción Workflows y luego hacemos clic sobre List WorkFlow y luego sobre Documents.
Luego levantará una ventana donde deberá escribir un nombre como Aprobacion Documento Oficial y una descripción como el que sigue: Flujo para aprobar documento oficial. Al ser aprobado se copiara a una biblioteca pública.
Inicie escribiendo el nombre del primer paso para ello escriba: Asignar tarea de solicitud de Aprobacion. Y luego inicie escribiendo la tarea en si: para ello escriba collect y le mostrará la siguiente información:
Luego presione Enter y le mostrará la siguiente acción:
Haga clic sobre data para asignar los controles que capturarán la información solicitada
Presione Next para continuar
Luego escriba el nombre de la tarea y la descripción de la misma y para finalizar presione el botón Next.
Presione el botón Add
Luego escriba Estado en el nombre del campo, en descripción escriba “Seleccione Aprobado o Rechazado” y en tipo seleccione Choice. Para continuar presione Next.
Luego escriba “Aprobado” presione Enter, luego “Rechazado”. No permita valores en blanco y para finalizar presione el botón Finish.
Presione nuevamente el botón Add
Escriba en el nombre del campo Observaciones y en tipo selección “Multiple lines of text”. Para continuar presione Next.
Quite la selección de todas las casillas seleccionables y luego presione el botón Finish.
Presione para finalizar el botón finish del asistente de tareas como se muestra en la imagen de abajo.
Luego haga clic sobre this user
Escriba Aprobadores (para ello debe de existir este grupo de SharePoint) y luego presione el botón Add. Para finalizar presione el botón Ok.
Luego haga clic en Collect1 y luego haga clic sobre la opción Create a new variable…
Le mostrará una ventana escriba AprobacionId y luego haga clic sobre el botón OK.
El resultado debe de ser similar al siguiente:
Luego haga clic sobre Actions y haga clic sobre la opción Set Workflow Variable
Haga clic sobre workflow variable y seleccione Create a new variable…
Luego escriba en el nombre EstadoAprobacion y presione el botón OK.
Luego haga clic sobre la opción value
Presione el botón de Enlace o Fx
En Data source: Seleccione Association: Task List y luego en field from source: Estado y luego en Find the list Item, seleccione ID y luego en Value seleccione Workflow Variables y seleccione AprobacionId. Para finalizar presione el botón OK.
Luego asegúrese que el cursos este fuera del paso anterior y luego haga clic sobre el botón Step.
Luego escriba el título del paso siguiente escribiendo: Evaluando la tarea completada si fue aprobado el documento.
Luego haga clic sobre el icono de Condition y haga clic sobre la opción If any value equals value
Luego haga clic sobre value , luego haga clic sobre el botón Fx y levantará una ventana la cual debe seleccionar Workflow Variables and Parameters y luego selección Variable:EstadoAprobacion. Para finalizar presione el botón OK.
Luego de equals haga clic sobre la opción Value y escriba Aprobado.
Luego haga clic sobre Action y luego clic sobre Set Field Current Item
Luego seleccione en field Estado y en value Aprobado.
Luego haga clic sobre la opción Else-If Branch
Luego agregue una acción como la de arriba y seleccione Estado y Rechazado.
Ahora vamos agregar una acción adicional debajo de la instrucción Set Estado to Aprobado. Nos posicionamos sobre esta instrucción y luego hacemos clic sobre la imagen Actions y seleccionamos Copy List Item
Luego seleccionamos en List Item Current List Item y en To Shared Documents como se muestra en la imagen de abajo.
Guardamos el flujo y luego hacemos un clic sobre el icono Publish.
Con eso terminamos haga una prueba del flujo subiendo un documento e iniciando el flujo manualmente. Para ello asegúrese en la pestaña de edición del flujo de trabajo en SharePoint Designer que en la sección Start Options tenga habilitado la opción Allow this workflow to be manually started.
Preparándonos para la prueba
La biblioteca privada (Documents ) debemos de agregar una columna llamada Estado de Tipo Choice y que tenga los siguientes valores: Pendiente de Aprobacion, Aprobado, Rechazado. Para ello vaya a Library Settings dentro de la pestaña Library del Ribbon de SharePoint. Busque la opción Create Column y coloque la información arriba mencionada. Para finalizar presione el botón OK.
La Prueba
Primero subamos un documento a la biblioteca privada (Documents)
Luego debe de iniciar manualmente el flujo de trabajo (esto es una buena práctica cuando estamos probando nuestro flujo o cuando deseamos controlar el momento en que se inicia el flujo). Para ello selección el documento, luego seleccione la pestaña Documents del Ribbon y luego haga clic sobre Workflows.
Luego haga clic sobre el nombre del flujo Aprobacion Documento Oficial.
Presione el botón Start
Esto iniciará el flujo y recuerde lo primero que hace el flujo es crear una tarea asignada a uno o más usuarios. Haga clic sobre el estado del flujo o sobre el link In Progress.
Haga clic sobre el Título de la tarea
Luego levantará una ventana la cual permitirá asignar un estado y observaciones. Selección Aprobado y luego escriba las observaciones que desee. Para finalizar presione el botón Complete Task.
Y Listo si vemos la biblioteca pública el documento está allí.
Y si revisamos la biblioteca privada el documento aparece en estado Aprobado y el Flujo de trabajo completado.
Bueno amigos, en este artículo vimos cómo crear un flujo de trabajo con SharePoint Designer 2010 y esto lo podemos potencializar agregando versionamiento de Major and minor versioning a las biblioteca privada y esto nos dará la oportunidad de seguir mejorando el documento y aprobar otra versión más actualizada.
SharePoint4Fun!,
Manolo Herrera
Manolo! muchas gracias por compartir tus conocimientos, solo una duda, copie tu flujo, pero en el paso donde hay que poner las variables de "Estado=Aprobado" y "Estado=Rehazado", no me aparecen las opciones desplegables en lista, Solo me aparecen Content Type, Name (for use in forms) y Title... como le puedo hacer para que también me aparezca "Estatus" como opción??? necesito cambiar algo en Fields?? y si es asi como lo hago?? gracias!!
ResponderBorrarSi haces los pasos del artículo sin perderte ningún detalle veras que puedes lograrlo.
ResponderBorrarBuenos días Manolo,
ResponderBorrarHe hecho paso a paso el WF pero no realiza bien el segundo paso "Evaluando la tarea completada si fue aprobado el documento". Se queda en la el primer paso.
Manolo nuevamente yo, una pregunta como le puedo hacer para que en lugar de definir un grupo específico de aprobadores, pueda tener la opción de elegirlos (posiblemente en un listado )cuando quiera que mi workflow inicie?? mi problema es que solo tengo el SP Foundation y autorización para Designer, y mi desconocimiento del tema.. me lleva a tu sabiduria!!! jejeje
ResponderBorrarManolo!! te habia escrito un comment pero no sé si llego, en fin quisiera saber como, con este mismo WFlow puedo crear un listado con opciones para seleccionar a mis aprobadores (obviamente con el SP Designer 2010) Al WF le anadi una acción de Status para que diga si es aceptado o rechazado. Pero si lo pruebo con un grupo de usuarios y el primero acepta (auqnue los demás rechacen ) me aparece como Aprobado.. espero y puedas ayudarme! God Bless!
ResponderBorrarEs verdad Manolo, me ocurre lo mismo en el segundo paso, cuando el campo de seleccion no me muestra "ESTADO"... lo hice tres veces, pero aun sigue sin funcionar! espero que nos ayudes! gracias!
ResponderBorrarMuchas gracias, me ha funcionado muy bien. Quisiera saber si hay forma de que pasé a aceptado una vez todos los aprobadores aprobaron el documento y no solo cuando uno de ellos lo haga. Muchas gracias.
ResponderBorrarQuizas este algo fuera del tema, pero gracias por tu respuesta, mi consulta es como podria hacer para que un usuario solo tenga permisos de activar el flujo mas no de editar la base de datos, si le doy permisos de solo lectura activa el flujo pero no puede escribir el registro en la base de datos que manejo, por eso actualmente cualquiera puede editar pero eso no es correcto.
ResponderBorrarHola que tal estoy desarrollando un flujo de aprobación de documentos. Tengo una plantilla en la cual adjunto un solo documento y una lista desplegable que contiene status para que ponga ese status al docuemto. A la hora de siñear el flujo utilizo la funcion "iniciar aprobacion" pero esa accion la utilizo mas de 6 veces ya que tengo mas de 6 status. A la hora de publicar el formulario no me indica errores solo que sale un mensaje que dice error en compilacion y ya no lo publica. Como podre resolver esto?
ResponderBorrarHola que tal estoy desarrollando un flujo de aprobación de documentos. Tengo una plantilla en la cual adjunto un solo documento y una lista desplegable que contiene status para que ponga ese status al docuemto. A la hora de siñear el flujo utilizo la funcion "iniciar aprobacion" pero esa accion la utilizo mas de 6 veces ya que tengo mas de 6 status. A la hora de publicar el formulario no me indica errores solo que sale un mensaje que dice error en compilacion y ya no lo publica. Como podre resolver esto?
ResponderBorrarBuenos dias, saludos a todos espero que vean mi comentario a mi tambien me pasa lo mismo que a (Mariana) y a (Chilango) en el paso 2 no me aparece establecer el estado para poder hacer la condicion. solo me aparecen 3 cositas nadas mas
ResponderBorrarman consulta cuando te pide esto al crear nuevo sitio "Este sitio web debe ser creado en un servidor que ejecuta Microsoft SharePoint Foundation. Por favor, elija otra ubicación"
ResponderBorrar