Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Parece que no, pero sí que lo es. Seguro te preguntaras de qué estoy hablando pero en un segundo lo sabrás. Todas las organizaciones que tú y yo conocemos hacen uso de formatos en papel para solicitar el llenado de información. Lo vivimos todos los días en todas partes. En el banco cuando solicitamos un crédito, en la recepción cuando nos registramos en las oficinas del cliente, en la universidad cuando solicitamos alguna asignatura o en cualquier oficina de gobierno donde requerimos atención o solicitar algún servicio. Seguramente contralores o jefes de departamentos financieros de cualquier institución nos podrán decir el costo total anual que el papel representa para una organización.

Claro, el papel sigue siendo un documento que para ciertos procesos tiene una validez legal, hablo de contratos, cheques, dictámenes y comprobantes. Sin embargo, en organizaciones, empresas y gobiernos, existen procesos que a pesar de no tener un impacto de misión crítica para la organización, al año, estos demandan y consumen grandes cantidades de papel que terminan almacenados en un espacio físico donde clasificarlos, buscarlos y encontrarlos a veces no es de lo más sencillo.

El concepto de digitalizar información ha venido a revolucionar la forma en que se captura la misma, hoy en día, para algunos procesos hacemos uso de sistemas de información y páginas dinámicas en Internet para realizar la captura de datos y consolidar la información de manera electrónica. Desafortunadamente el costo de evaluar, diseñar, desarrollar, implementar y operar este tipo de soluciones es potencialmente costoso y la mayoría de las veces exponencialmente más caro.

Introducción a Microsoft Office InfoPath

Microsoft Office InfoPath es un producto de software que facilita la captura de información de manera electrónica, auxilia a los equipos y organizaciones en la creación e implementación de formularios dinámicos que conectan a las personas con tus aplicaciones internas o de línea de negocio y a procesos empresariales con la finalidad de recolectar de manera clara y eficiente la información, utilizando los estándares o metadatos definidos acorde a tus requerimientos. En otras palabras combinar la versatilidad de un software de tipo procesador de palabras con la estructura definida en cualquier formato, nos da la posibilidad de habilitar el uso de formatos electrónicos que su información pueda fácilmente integrarse a otros sistemas, procesos empresariales automatizados o escenarios de colaboración. El formato nativo con el que InfoPath trabaja es XML de tal manera que cualquier formato que diseñas y del cual recolectes información lo tendrás disponible en formato XML para su sencilla distribución y conexión con cualquier otra aplicación de negocio que soporte comunicación vía servicios web y soporte XML.

  • Desarrolla y administra soluciones de manera más fácil: InfoPath ofrece todo un ambiente de desarrollo robusto para crear y adaptar rápidamente formularios de captura de información. Cabe mencionar que no estamos hablando de un cambio radical en cuanto a lenguajes de programación, sino más bien hablamos de todo un ambiente de desarrollo enfocado en facilitar la creación de formularios de captura que permita a tu organización un cierto nivel de flexibilidad para construir rápidamente soluciones que te permitan recopilar información de cualquier tipo y en algunos casos integrarla a tus procesos o sistemas, como consecuencia tu organización tendrá una tecnología que le permitirá ser más flexible a la hora de responder con agilidad a los cambios que el entorno demanda.
  • Conecta personas, información y sistemas: InfoPath ofrece soporte para habilitar escenarios de integración y comunicación con sistemas mediante el uso de servicios Web, ofreciendo la capacidad de obtener de otras fuentes de datos información para reforzar la integridad de los datos y también para integrar en los sistemas actuales nueva información recopilada.
  • Captura información de manera flexible y clara: InfoPath provee de una experiencia de captura muy similar a la de Microsoft Word con el valor adicional de mantener una estructura de datos para la captura que puede contener validaciones de datos, comparaciones, filtrados, eventos, conexiones, búsquedas, etc. sin tener que escribir una sola línea de código de programación.

Debido a que InfoPath es un producto de la suite de Office encontramos un conjunto de funcionalidad adicional que nos permite enriquecer y facilitar la integración de tecnologías adicionales de la plataforma Microsoft. Por ejemplo en la nueva versión de InfoPath 2007 actualmente Beta encontramos una mayor integración con los mismos productos de la familia Office 2007 como el “Document Information Panel” (ver este post) de Word, Power Point o Excel, el llenado y envío de formularios utilizando Outlook 2007. Productos SharePoint Server 2003, 2007 Beta, Windows Rights Management Services (ver este post) , Firma Digital con Windows Certificate Autority (ver este post) por ejemplo nos permiten extender funcionalidad y construir una solución rápidamente integrando poderosas capacidades existentes en los productos adicionales de la plataforma Microsoft.

Veamos un ejemplo práctico

No hace mucho me encontré con un escenario donde se requería levantar un inventario de equipo de una organización con más de 300 empleados de oficina. La forma que tuvieron de atacar esta necesidad fue crear un formato electrónico en Excel solicitando la información que se requería. Se imprimieron una gran cantidad de juegos y se repartieron entre un equipo de 10 personas el trabajo para ir físicamente con cada usuario y llenar el formato a mano. Una vez realizado el inventario, procedieron a contar ahora si como acaba de suceder en México “voto por voto, casilla por casilla”, me refiero a que realizaron un conteo manual de la información recolectada y generaron los reportes necesarios para poder tener información veraz. El problema es que el proceso duro aproximadamente 6 horas.

En el siguiente ejemplo veamos como con InfoPath 2007 Beta y algunas tecnologías adicionales de la plataforma Microsoft podemos mejorar drásticamente el tiempo de este proceso.

IP01.jpg 

En pantalla vemos la superficie de diseño de InfoPath en donde contamos con una serie de controles y objetos que podemos integrar a nuestro formulario. En este caso tengo controles de tipo cuadros de texto, cajas de selección de datos, tabla de campos repetitiva y campos de tipo expresión los cuales son cálculos que solamente muestran el resultado de un cálculo.

Pero veamos que otras tareas de diseño podemos realizar con InfoPath.

 IP02.jpg

Tenemos una gran variedad de elementos que nos permiten diseñar y construir formularios muy completos. Contamos con las siguientes secciones:

  • Diseño: prácticamente nos ofrece plantillas de tablas para organizar nuestro contenido dentro de un formulario.
  • Controles: un catalogo de controles que podemos utilizar para capturar información. Los que mas utilizamos son la caja de texto, el campo de lista desplegable, tenemos el control de archivo (nos permite incluir cualquier archivo dentro de nuestro formulario), etc.
  • Orígenes de datos: aquí es donde podemos ver reflejada la estructura de datos que nuestro formulario InfoPath va almacenando. Esta estructura se puede integrar por cada control que vamos incluyendo en nuestro formulario sin embargo también podemos generar nuestro origen de datos basado en algún origen de datos como una tabla o un servicio web.
  • Vistas: tenemos la noción de múltiples vistas para visualizar la información, puedes ver a infopath como un contenedor de vistas en donde cada vista es una hoja de tu formato.
  • Verificador de diseño: es una herramienta útil porque verifica problemas de diseño de nuestra estructura de datos, nos puede informar y validar que nuestra estructura se encuentra bien ordenada y que no existan campos repetidos en ella, entre otro tipo de verificaciones.
  • Publicar plantilla de formulario: Esta es una opción que nos permite o hacer una especie de “Submmit” a mecanismos de recepción como bibliotecas de formulario en SharePoint, Bandejas de correo electrónico, servicios web, etc.

  

   

Si vemos de nuevo nuestro formulario diseñado identificaremos controles de tipo cuadros de texto, listas desplegables, imágenes, expresiones y tablas.

IP03.jpg 

Cada uno de estos controles cuenta con una extensa ventana de propiedades que podemos manualmente utilizar para definir comportamientos adicionales o validaciones requeridas. Esta ventana de propiedades varia por el tipo de control seleccionado.

IP04.jpg    

Como podemos ver para un control de tipo lista desplegable de datos podemos especificar la información manualmente o podemos conectarnos a un origen de datos externo para poder buscar valores que provengan de listas de sharepoint, tablas de una base de datos o algún método de un servicio web. Tenemos la oportunidad de asociar reglas de validación para configurar el comportamiento de nuestro control.

IP05.jpg 

Contamos también con la noción de reglas que son bloques de funcionalidad que podemos configurar dependiendo de condiciones que se puedan cumplir, esta funcionalidad son acciones muy concretas que pueden dispararse cuando nuestra regla se cumpla:

IP06.jpg   

Claro que contamos con mucha funcionalidad adicional que podemos configurar, lo importante aquí es que tratamos de omitir al máximo el escribir código. Solamente en escenarios muy concretos nos vemos en la necesidad de programar sobre InfoPath, la buena noticia es que podemos hacerlo con C# o Visual Basic .NET dándonos la ventaja de integrar todo el poder de la Plataforma .NET en nuestros formularios InfoPath.

Continuando con nuestro ejemplo InfoPath en acción:

Dado el formulario diseñado veamos como podemos utilizar el cliente de InfoPath para proveer un formulario al usuario con la finalidad de recopilar información de un equipo, supongamos que deseamos hacer un inventario de equipo computacional en toda la empresa, este formulario nos permitirá solicitarle al usuario dicha información.

InfoPath trabaja de la mano con SharePoint v2, v3 para que fácilmente pueda ser desplegado por toda la organización.

IP07.jpg 

Automáticamente se cargará una instancia del formulario InfoPath. Solicitando la captura de la información de inventario de equipo. Cabe mencionar que hay algunos campos que muestran un asterisco rojo haciendo notar que esos son campos requeridos para poder procesar el formulario. Adicional tenemos por ahí un cuadro de lista desplegable con la finalidad de seleccionar de la lista un departamento. La información de esta lista puede provenir de bases de datos externas, servicios web remotos, archivos xml o listas de SharePoint.

IP10.jpg 

Al terminar de guardar la información entonces nuestro formulario se publica automáticamente sobre la biblioteca de formularios correspondiente. Y creando las vistas pertinentes podemos contar con una visualización interesante de la información.

IP11.jpg 

Otra funcionalidad interesante es que así como cualquier otro documento de la familia office lo podemos trabajar fuera de línea, lo mismo sucede con InfoPath. Por esta razón es que se dice que InfoPath nos permite construir aplicaciones Cliente Inteligente. Imagina que tienes un complejo formulario de captura para el registro de una solicitud de crédito. Puedes durante el día llevarte una solicitud y estarla llenando en cualquier momento, cuando regresas a la oficina y te conectas a la red, entonces podrás subir tu formulario de nuevo a la biblioteca de formularios de SharePoint.

Veamos el formato base en XML producto del llenado de un formulario que se encuentra fuera de línea almacenado en mi escritorio. Cabe mencionar que InfoPath cuenta con una gran variedad de controles que podemos utilizar para habilitar una mejor captura y que a su vez, InfoPath se encarga de transformar lo capturado para registrarlo en su correspondiente nodo XML.  

IP12.jpg    

Las ventajas de este modelo es que podemos llevarnos almacenado localmente nuestro formulario InfoPath y trabajar totalmente desconectado de la red corporativa. Claro que para poder habilitar este escenario el único requisito es contar con el paquete instalado InfoPath 2003 de la familia Office System 2003. Sin embargo, en la nueva versión de SharePoint Portal Server llamada Microsoft Office SharePoint Server 2007 (MOSS2007) tenemos el concepto de Form Services.

Form Services

Form Services es un servicio de procesado y dibujado de formularios InfoPath para permitir a un navegador de Internet ser el contenedor de formularios InfoPath y utilizar toda su funcionalidad. Microsoft esta consiente que no todo mundo cuenta con InfoPath por esa razón creo la versión del lado de servidor de InfoPath. Form Services viene gratuito dentro de MOSS2007. Solamente configuramos dentro de nuestras configuración avanzada de nuestra biblioteca de formularios la opción de ver sobre el navegador nuestro formulario InfoPath:

IP13.jpg 

Veamos la diferencia cuando selecciono de la biblioteca de formularios que deseamos crear un nuevo formulario:

IP14.jpg    

Justo después de cargar se presenta sobre nuestro navegador nuestro formulario InfoPath:

IP15.jpg 

Nosotros trabajamos con el tal como lo hacemos con el paquete de office. Claro que hay funcionalidad que actualmente se queda corta, sin embargo para captura de información de texto este escenario puede ser muy factible.

Firma Digital de un Formulario InfoPath

Una de las funcionalidades interesantes de InfoPath es la posibilidad de agregar firmas digitales. El mismo concepto descrito a este post te puede dar la noción de cómo en InfoPath podemos habilitar firmado digital, flujos de trabajo con firmas digitales, etc.

IP17.jpg 

Resumen

Con la plataforma de colaboración de Microsoft podemos construir soluciones rápidamente y basadas en los productos que ya tenemos implementados en nuestra organización. El éxito radica en como combinamos las capacidades de la plataforma. InfoPath es una posibilidad muy interesante para hacer frente con éxito a escenarios de captura, validación y recopilación de información de una manera abierta y productiva.

Comments

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Nosostros usamos InfoPath con Sharepoint 2003 y veo algunas limitaciones, no hay una forma sencilla de hacer una sumatoria o para editar un registro tienes que hacer un check-out y luego abrir. Por supuesto debes de tener InfoPath instalado.

Se ve bien esta versión.

Monday, September 11, 2006 10:59 AM by Eduardo Arredondo

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Que bueno saber que se pueda mostrar el formulario en el browser sin abrir una instancia del infopath :)

Tuesday, September 26, 2006 12:27 PM by Maria Arista

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Si es una buena noticia ya que no tenemos que tener instalada una copia local de InfoPath. Existen muchas empresas que entienden el valor de InfoPath pero que simplemente no esta dentro de sus alcances el adquirir licenciamiento para poder usarlo. Con Form Services Microsoft le ofrece a todo este tipo de clientes la posibilidad de beneficiarse de la funcionalidad de InfoPath sin tener que contar con licenciamiento del producto. Ciertamente Form Services y Excel Services son productos gratuitos pero viene dentro de MOSS 2007 y ese, no es gratis. Sin embargo se puede encontrar una buena regla para el costo beneficio. Saludos.

Tuesday, September 26, 2006 2:10 PM by haaron

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Favor de quitar los logos de PlexIT de tus posts. Te recuerdo que no perteneces a esa organizacion.

Sunday, November 05, 2006 8:40 PM by Roberto P.

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

hola, he construido estos formularios web muy facilmente y me ha sido de mucha ayuda, agiliza el desarrollo de formularios y el tema de workflows.

En la version Entreprise en ingles, todo funciona excelente, pero ahora estoy usando la version enterprise de moss 2007 en español (todo mi portal se debe ver en español, estoy contruyendo otro portal similar) pero al intentar usar la funcionalidad de forms services el formulario no carga. He seguido los mismos pasos para configurarlo, tal como lo hice en ingles y en la version en español me sale el error

"Error al cargar el formulario. No se pudo descargar un recurso necesario. Para intentar reanudar la descarga, actualice la página."

quiza me falta activar un servicio más en la administración, la verdad no se que pasa con este portal en español, por favor,si puedes ayudarme escribeme a lcarrillo@pucp.edu.pe Gracias

Thursday, March 15, 2007 9:25 AM by lionel

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Hola, no soy capaz de abrir los formularios en el explorador web. Creo que con Infopath los genero correctamente y en configuración avanzada de nuestra biblioteca de formularios la opción de ver sobre el navegador nuestro formulario InfoPath la tengo activada, pero aun asi cada vez que intento abirlo o me lo abre (si el equipo tiene instalado Infopath) o no me lo abre (el equipo no tiene instalado Infopath) y me da un error de que se necesita Internet Explorer 6.0 o superior(lo tiene) o algun editor de XML tipo Infopath. Si se te ocurre porque podria ser te agradeceria que me escribieras a robergc@hotmail.com

Friday, May 25, 2007 5:09 AM by Roberto

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Enviar datos a SQLSERVER, alguien conoce una forma de hacerlo.

Si es recomendable hacerlo por codigo .net usando archivos de base de datos, o es mejor hacerlo co servicios web.

SALUDOS!!

hansguevara@hotmail.com

Thursday, July 12, 2007 11:41 AM by Hans

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Me parece excelente este articulo como al igual los diferentes WEBCAST que ud ha publicado. Aprovechando la oportunidad tengo una ?, porque despues de habilitar la opcion de ver los forms en web en la libreria, el browser del cliente me despliega xml mas no el form en su diseño? que hace falta?. Mil gracias.

Monday, October 29, 2007 12:37 PM by Eduardo GT

# Ayuda con InfoPath

Realice en una empresa el montaje de una plantilla para un informe. Despues de un tiempo con un funcionamiento correcto en ciertas maquinas aparece el siguiente error y no he encontrado solución.

Plantilla de formulario: projectserver/.../template.xsn

InfoPath no puede abrir el formulario seleccionado debido a un error existente en su código.

La versión requerida de Microsoft .NET Framework 2.0 no está instalada en el equipo o no está registrado el ensamblado de interoperabilidad primaria (PIA) de InfoPath. Utilice la opción Agregar o quitar programas del Panel de control para asegurarse de que la versión requerida de Microsoft .NET Framework está instalada, o bien instálela usando Windows Update y ejecute de nuevo el programa de instalación para confirmar que se ha instalado la versión correspondiente de Compatibilidad con programación de .NET o póngase en contacto con el administrador del sistema.”

Esta plantilla utiliza web services para conectarse a las BD, que me sugieres?? Muchas gracias

Wednesday, February 25, 2009 11:40 AM by Juan Sebastian Cardona

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Juan Sebastian Cardona me podrias confirmar si en efecto existe el .NET Framework 2.0 instalado en el equipo que comentas y tambien que version del cliente de InfoPath tiene instalada el equipo y si la plantilla de formulario que publicaste soporta la versión de InfoPath del cliente.

Saludos

Wednesday, February 25, 2009 2:18 PM by haaron

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Quisiera saber si InfoPath me sirve para uso de oficina, es decir llenar formularios y enviarlos de maquina en maquina, o enviarlos a mis clientes y que me regresen el formulario resuelto, he echo unas pruebas aqui pero necesito tener intalado este programa en todas las maquinas, eso es correcto? gracias...

Wednesday, October 14, 2009 9:46 AM by Miguel Anaya

# re: Entendiendo el uso de Formatos Electronicos con InfoPath 2007 y Forms Services de MOSS 2007

Depende de la version de SharePoint que tengas. Con WSS en efecto, requieres que todos los usuarios que hacen uso de formularios cuenten con InfoPath 2003 o 2007, sin embargo, si utilizas Office SharePoint Server puedes utilizar Form Services para que via Internet Explorer puedas operar formularis y quitar la dependencia a algun tipo de aplicacion cliente como InfoPath. Todo depende de tu escenario de negocio.

Saludos

Tuesday, December 15, 2009 2:52 AM by haaron

Leave a Comment

(required) 
(required) 
(optional)
(required) 
If you can't read this number refresh your screen
Enter the numbers above: