MOSS: Como automatizar la publicación de formularios Infopath (I)!

Como sabéis, una de las capacidades que vienen de serie con la versión empresarial de MOSS es la de los llamados e-forms, o lo que es lo mismo, publicar formularios Infopath en MOSS de manera que se pueda interactuar con ellos directamente a través del navegador gracias a los Infopath Forms Services de MOSS. Hace un tiempo os comenté como se realiza el proceso de publicación de estos formularios:

En estos posts veíamos como publicar los formularios de una forma manual y en total dependencia con un servidor de SharePoint concreto. Pero, ¿cómo podemos automatizar la publicación de estos formularios independientemente del servidor de SharePoint destino? La idea de este posts y los siguientes es valorar las algunas posibilidades que tenemos a la hora de automatizar la publicación de formularios Infopath. Empecemos.

Diseño del formulario

Como siempre, el primer paso que tenemos que realizar es diseñar el formulario Infopath. Por ejemplo, podéis seguir el paso a paso de este post. Una vez que tenemos diseñado el formulario, tenemos que realizar lo siguiente:

  • Comprobar la compatibilidad del formulario diseñado con Infopath Forms Services. Para ello, no tenemos más que pulsar la opción Change Compatibility Settings en el panel Design Checker de Infopath. En la ventana que se abre (sección Compatibility), especificamos la url del servidor de MOSS contra el que vamos a comprobar que el formulario se puede visualizar de forma correcta en el navegador.
  • Definir el nivel de seguridad confianza del formulario a publicar.
image image image
  • Deshabilitar la opción ‘Enable form merging’.
  • Tras pulsar OK, simplemente comprobamos que el formulario no presenta ningún error de compatibilidad.
image image

Publicación del formulario en una carpeta

Una vez que tenemos listo el formulario para su publicación, procedemos a realizar los siguientes pasos:

  • A través del menú File, seleccionamos la opción Publish.
  • Si no hemos guardado la plantilla del formulario, el asistente de publicación nos pedirá que guardemos dicha plantilla como paso previo.
  • Una vez guardada la plantilla, en la siguiente pantalla del asistente seleccionamos la opción To a network location.
  • En la siguiente pantalla, especificamos el nombre y path de la plantilla a publicar en Infopath Form Services.
image image image
  • La siguiente pantalla simplemente pulsamos Next (Nota: Dejad vacía la caja de texto).
  • En la siguiente pantalla pulsamos Publish, y en la pantalla final simplemente pulsamos Close.
image image

Publicación del formulario en SharePoint

Una vez que ya tenemos publicado el formulario Infopath en la carpeta, para automatizar su publicación a cualquier servidor de SharePoint no tenemos más que ejecutar los siguientes comandos STSADM (cambiando los path según necesitemos):

echo Instalando formulario Infopath…  

::Revisar que los path estén correctos  

SET STSADM=C:Program FilesCommon FilesMicrosoft Sharedweb server extensions12binstsadm.exe 

SET FormPath=C:Documents and SettingsAdministratorDesktopDemos WorkshopInfopath DeploySTSADMExpensesReportFormTemplate_v3.xsn  

SET SiteUrl=http://litwaredemo  

“%STSADM%” -o verifyformtemplate -filename “%FormPath%”  

“%STSADM%” -o UploadFormTemplate -filename “%FormPath%”  

“%STSADM%” -o execadmsvcjobs  

“%STSADM%” -o ActivateFormTemplate -url %SiteUrl%  -filename “%FormPath%”  

echo Instalacion terminada…  

Básicamente, lo que estamos haciendo es lo mismo que podemos hacer desde la administración central de SharePoint, pero de una forma automatizada:

  • Verificamos que el formulario Infopath está listo para poder usarlo con Infopath Form Services a través de verifyformtemplate.
  • Subimos el formulario a la galería de formularios accesible desde la administración central de SharePoint.
  • Ejecutamos los timer jobs de SharePoint.
  • Activamos el formulario a una colección de sitios concreta.

image

Finalmente, si todo ha ido bien no tenemos más que comprobar que:

  • La nueva plantilla aparece en la galería de plantillas de formularios de la administración central.
  • La nueva plantilla aparece en la biblioteca de formularios asociada al sitio donde la hemos activado.
  • Se ha creado un nuevo tipo de contenido asociado a esta plantilla.
image image image

Y hasta aquí llega este primer post sobre como automatizar la publicación de formularios Infopath. Espero que os haya resultado interesante.

Publicado por

Juan Carlos González

Juan Carlos es Ingeniero de Telecomunicaciones por la Universidad de Valladolid y Diplomado en Ciencias Empresariales por la Universidad Oberta de Catalunya (UOC). Cuenta con más de 12 años de experiencia en tecnologías y plataformas de Microsoft diversas (SQL Server, Visual Studio, .NET Framework, etc.), aunque su trabajo diario gira en torno a SharePoint & Office 365. Juan Carlos es MVP de Office Servers & Services desde 2015 (anteriormente fue reconocido por Microsoft como MVP de Office 365 y MVP de SharePoint Server desde 2008 hasta 2015), coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador y coordinador del Grupo de Usuarios de SharePoint de España (SUGES, www.suges.es), así como co-director de la revista gratuita en castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la fecha, ha publicado 8 libros sobre SharePoint & Office 365 y varios artículos en castellano y en inglés sobre ambas plataformas.

3 comentarios en “MOSS: Como automatizar la publicación de formularios Infopath (I)!”

  1. Realmente no contamos el tiempo que perdemos subiendo un form en la administración. Con esto subes las versiones del form super rapido!

    Genial Juan Carlos!

    Ramon

  2. Buenas Ramón!
    Pues sí, está claro que cuanto más automatizemos tareas en SharePoint mejor. Esperate al segundo post, seguro que te va a gustar todavía más.

    Un saludo

    JC’s

Deja un comentario

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