Workaround with Microsoft Office InfoPath Forms Services

 



Hola a todos.

Uno de los factores decisivos a la hora de implantar sistemas basados en tecnologías SharePoint Server era la imposibilidad de crear formularios de aspecto ‘rico’ de una manera sencilla y que no supusiese un gran esfuerzo de mantenimiento, lo que nos hacía proponer al cliente la utilización de InfoPath para cubrir esta carencia.

Para ello cada una de las máquinas que fueran a hacer uso de esa información deberá tener instalado el cliente de Office Infopath, con su correspondiente licencia.


Con la salida de MOSS 2007 esto ha dejado de ser un problema. Una de las características más interesantes que han salido con esta nueva versión es ‘InfoPath Forms Services’ que nos permite crear formularios InfoPath, asignarlos a una lista como tipo de contenido por defecto, y cuando creemos un nuevo elemento el sistema nos renderiza el formulario InfoParh en HTML básico siendo así utilizable desde cualquier plataforma evitando tener que comprar licencias de un producto más.


Pues vamos a ver como se configura el sistema para crear una lista que nos soporte este tipo de información y como funciona esta nueva característica.


Para empezar, lo primero que vamos a hacer es crearnos un site para nuestras pruebas, yo a mi site le he llamado ‘Forms Server Demo’. Tenemos que comprobar que nuestro servidor tiene configurados correctamente los Servicios Compartidos. Para ello nos vamos al site de Administración Central y entramos en la sección de Administración de los Servicios Compartidos. Debemos contar con un Proveedor de Servicios Compartidos para poder ejecutar correctamente el sistema de Formularios.


Una vez completada la configuración de nuesto SharePoint, el primer paso que vamos a realizar es preparar la plantilla que vamos a usar. Para ello iniciamos el programa Microsoft Office InfoPath y creamos una nueva plantilla.


Para este ejemplo estoy usando la plantilla Meeting Agenda que forma parte de las plantillas de ejemplo que trae el programa.

Esta plantilla es uno de los mejores ejemplos para ver el sistema de validación de formularios que viene en el sistema.

Una vez creada nuestra plantilla, antes de subirla a nuestro servidor SharePoint, será necesario validar si los componentes de la plantilla son compatibles con el servicio de generación de formularios.

Para ello, en el panel de Tareas, seleccionamos ‘Validación de Diseño’. Por medio de un asistente, el sistema se conectará al servidor SharePoint y nos validará el formulario, informándonos de aquellos controles que no son compatibles con el servicio.

Entre los posibles mensajes de validación que podemos recibir, el más común es el de los campos de texto enriquecido, que por defecto InfoPath soporta embeber imágenes dentro y nuestro servidor de formularios no, por lo que será necesario acceder a las propiedades del campo y en la sección ‘Display’ seleccionar ‘Activar propiedades para compatibilidad de Navegador’. 


Una vez preparado nuestro formulario, el siguiente paso es publicarlo en el servidor. Para ello seleccionamos ‘Publicar …’ en el menú ‘Fichero’.


Por medio de un asistente el sistema nos irá preguntando donde deseamos publicarlo, de que forma queremos que se publique (Librería de Documentos, Contenido Tipo o plantilla pendiente de validación del Administrador).


 


Para nuestro ejemplo, vamos a seleccionar ‘Contenido Tipo ( Content Type )’ que más adelante nos permitirá asignarlo a nuestra lista de formularios.


Una vez publicada nuestra plantilla, solo tenemos que crear una nueva librería de formularios en la que nuestra plantilla será el contenido por defecto.


Una vez publicada nuestra plantilla, solo tenemos que crear una nueva librería de formularios en la que nuestra plantilla será el contenido por defecto.


Una vez publicada nuestra plantilla, solo tenemos que crear una nueva librería de formularios en la que nuestra plantilla será el contenido por defecto.


Volvemos a nuestro SharePoint y creamos una librería de Formularios llamada Meetings. Dentro de esta librería es donde se almacenarán los documentos que iremos creando.


Por último, solo nos queda asignar nuestro ‘Contenido Tipo’ a la lista para que cuando un usuario seleccione ‘Nuevo’ el sistema automáticamente le abra el formulario en Web.


 


Para realizar estos cambios debemos entrar en la configuración avanzada de la lista y seleccionamos que nuestra lista tendrá ‘Contenidos Tipo’ y que se mostrará en web y Aceptamos el cambio.



Ahora solo nos queda agregar el ‘Contenido Tipo’ con el que queremos que se creen los registros de nuestra lista para ello seleccionamos ‘Agregar de un contenido tipo existente’ que nos llevará a un formulario en el que podremos asignar los contenidos que queramos, en él seleccionamos nuestro contenido recién creado y aceptamos.


Llegados a este punto solo tenemos que cambiar el formulario que se mostrará por defecto en la librería, para ello, dentro de la configuración de nuestra librería seleccionamos ‘Cambiar el orden en el botón de Nuevo y el contenido por defecto’. En este formulario deshabilitamos el Contenido Tipo ‘Formulario’ y dejamos solo habilitado el nuestro y aceptamos.


Lo que hemos hecho es que el tipo de formulario por defecto que nuestra librería creará será basado en nuestra plantilla, de esta forma, tanto si desplegamos el menú de ‘Nuevo’ como si pulsamos sobre él directamente, el sistema nos creará un nuevo documento InfoPath basado en ella.


 


Seleccionamos ‘Nuevo’ para crear un nuevo elemento. El sistema automáticamente llamará a los servicios de Formularios y nos creará una representación en HTML de nuestro formulario con todas las características que hemos diseñado en su momento en el editor InfoPath.


Una vez completados todos los campos, solo debemos guardar el documento y la información contenida en él se almacenará en la biblioteca de documentos que hemos creado anteriormente.


Espero que os sirva de ayuda para vuestra primera incursión en este tema de los servicios de formularios.


Un Saludo

Un comentario en “Workaround with Microsoft Office InfoPath Forms Services”

  1. Hola Dave,

    Es la primera vez que leo tu blog y felicite porque el contenido es muy bueno e interesante.

    Quería comentar que yo no he podido administrar los tipos de contenido de la librería hasta que he habilitado la opción “permitir la administración de tipos de contenido”. Parece una tontería pero a mi me ha llevado un rato encontrarlo en la administración avanzada de la librería. Torpe que es uno…

    Por último, por si te interesa corregirlo, he detectado que has repetido 3 veces la misma frase en el artículo:

    “Una vez publicada nuestra plantilla, solo tenemos que crear una nueva librería de formularios en la que nuestra plantilla será el contenido por defecto.”

    Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *