Archivo de la etiqueta: web services

Sharepoint Workflows y Servicios Web

[Visto: 5354 veces]

En un anterior post he publicado los pasos necesarios para crear un flujo de trabajo usando sharepoint, infopath 2007, Forms Server y el framework 3.5. Es común encontrar que durante la ejecución del flujos de trabajo se requiera extraer información de diferentes sistemas como Bases de Datos Oracle, Informix, portales Websphere o alguna otra solución.

La primera solución que propondría para integrar estos flujos de trabajo con otros sistemas es la interacción con servicios web que pueden ser consumidos desde los formularios infopath; a continuación especificaré algunos de los pasos para implementar este tipo de soluciones.

La solución consiste en crear conexiones de datos en el formulario infopath y luego asociar los controles del formulario a los campos que solicita el servicio web (envío de data) y los campos que nos devuelve el servicio web (recepción de data).

A modo de ejemplo veamos el siguiente servicio web que nos envía un mensaje de texto.
Servicio web Saludo.

Luego de invocar al servicio web nos devuelve el siguiente mensaje.
XML devuelto por el servicio web

Una vez que hemos probado que el servicio web funciona correctamente, debemos asociar el servicio web a nuestro formulario infopath. Ingresar al menú Herramientas – Conexiones de Datos.
Menú Conexiones de datos

Seleccionar la opción Agregar.
Agregar Conexión

Seleccionar la opción Recibir Datos.
Recibir Datos

Seleccionar la opción Servicios Web.
Servicios Web

Especificar el WSDL
WSDL

Indicar la función que se ejecutará.
Función

Luego se deben asociar los campos de las conexiones de datos con los campos del formulario para interactuar con el servicio web. Para interactuar con Servicios Web que envian data o hacen ambas tareas (enviar y recibir data) se procede con los mismos pasos con la diferencia que al especificar el tipo de funcionalidad se debe seleccionar la opción Recibir Data.

Para interactuar con diferentes bases de datos o soluciones, se deben implementar servicios web que interactuen con estos sistemas y luego los servicios web se deben asociar a los formularios de infopath para su llamado durante la ejecución de un workflow; los servicios web pueden ser desarrollados en diferentes tipos de plataformas y no se presentarán problemas para su integración con los workflows ya que la comunicación se realiza via XML y no via un lenguaje determinado. Espero que este ejemplo sea de utilidad para su uso durante el desarrollo de flujos de trabajo muy complicados y en casos donde se debe mostrar información de diferentes sistemas en un formulario infopath que luego se convierte en una aplicación web. Sigue leyendo