MOSS: Como exportar plantillas de formularios Infopath 2007 aprobadas por el administrador!

Algo que seguramente necesitaremos cuando empecemos a hablar de migraciones de SharePoint 2007 a SharePoint 2010 es realizar la migración, entre otros muchos elementos, de las plantillas de formularios Infopath 2007 que hayan sido aprobadas por el administrador:

¿Cómo vamos a poder hacer esto? Pues básicamente gracias a la nueva opción de STSADM para exportar formularios aprobados por el administrador que viene con el Service Pack 2 (SP2) de MOSS. En concreto, el comando a ejecutar es:

stsadm –o exportipfsadminobjects –filename path_archivo_exportado

Este comando nos vuelca en un archivo .cab todos los formularios aprobados por el administrador. Por lo tanto, no esperéis que se incluyan los que por defecto vienen en una instalación de MOSS.

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

Para finalizar la serie de posts sobre como automatizar la publicación de formularios Infopath en MOSS (puedes ver las partes I y II de la serie), os voy a dejar una serie de enlaces en los que me basé para realizar los posts y las pruebas de publicación de formularios así como una serie de herramientas creadas en la comunidad para facilitar la publicación de formularios Infopath.

Recursos sobre automatización de la publicación de formularios Infopath

Los recursos más interesantes al respecto son los siguientes:

Herramientas para facilitar la publicación de formularios Infopath en MOSS

La comunidad de SharePoint ha creado varias herramientas pensadas para hacer más fácil la publicación de formularios Infopath. A continuación os detallo los recursos que he encontrado como más interesantes:

image image image

Y hasta aquí llega el tercer y último post sobre automatización de la publicación de formularios Infopath. Espero que el post os haya resultado interesante.

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 Files\Common Files\Microsoft Shared\web server extensions\12\bin\stsadm.exe

SET FormPath=C:\Documents and Settings\Administrator\Desktop\Demos Workshop\Infopath Deploy\STSADM\ExpensesReportFormTemplate_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.

MOSS: Como usar el people picker en formularios Infopath (con y sin Form Services)!

Como sabéis, Infopath es una aplicación incluida en la suite de Microsoft Office pensada para diseñar formularios ricos de forma productiva. Estos formularios los podemos preparar para abrirlos con el cliente Infopath o bien en un sitio de MOSS gracias a Infopath Forms Services. A la hora de diseñar formularios, Infopath cuenta con una paleta de controles por defecto que dan bastante juego, pero también tenemos la posibilidad de añadir otros controles existentes o bien añadir nuestros propios controles. En este post os voy a detallar un pequeño paso a paso de como usar el people picker (por cortesía de mi gran amigo Gustavo Vélez) de SharePoint en formularios Infopath ya sea para abrirlos con el cliente o en un sitio de SharePoint con Infopath Form Services. Los pasos son los siguientes:

  • Abrimos Infopath y elegimos una de las plantillas que presenta por defecto (por ejemplo, la de Sample – Expense Report).
  • En la ventana de tareas de diseño pinchamos sobre la sección Controls.
  • Una vez que estamos en esta sección, simplemente pulsamos sobre Add or Remove Custom Controls
image image image

  • En la ventana que sea abre pulsamos Add.
  • A continuación pulsaremos sobre la opción ActiveX Control.
  • En la siguiente ventana simplemente elegimos el control a añadir. En nuestro caso se trata del Contact Selector.
image image image

  • En la siguiente ventana simplemente elegimos si es necesario incluir el archivo cab del control o no. En mi caso, como estoy haciendo una prueba en la máquina virtual de MOSS, no lo necesito y marco esta opción.
  • En la siguiente pantalla elegimos la propiedad de binding que en este caso es Value.
  • En la siguiente pantalla especificamos el tipo de dato que en este caso es tipo Text (String) y pulsamos Finish.
image image image

  • En las siguientes pantallas simplemente se confirma que hemos añadido el control de forma satisfactoria.
  • Finalmente, veremos que el control aparece en la paleta de controles (bajo Custom Controls) listo para usar en nuestro formulario.
image image image
  • Sin más, añadimos el control al formulario y hacemos un preview del mismo para ver como quedaría abriéndolo en cliente.
  • Publicamos el formulario en SharePoint y comprobamos que el control se visualiza de la misma forma en un entorno de SharePoint con Forms Services.
image image image

Y hasta aquí llega este post sobre como usar un control personalizado en un formulario Infopath. Como siempre, espero que el post os haya resultado interesante.

MOSS: Publicación de formularios Infopath…el otro camino!

Hace ya bastante tiempo (en agosto de 2007, ya ha llovido bastante desde entonces ;-)) escribí un post sobre como publicar formularios Infopath 2007 en MOSS aprovechando la característica Infopath Forms Services que viene con la versión enterprise de MOSS. La idea de esta entrada es contaros otra alternativa que tenemos en MOSS para publicar formularios Infopath y poder utilizarlos en el marco de Infopath Form Services. Empecemos.

Gestión de formularios Infopath en MOSS

Antes de meternos en harina, es bueno realizar un repaso sobre como se realiza la gestión de formularios Infopath en MOSS. Básicamente, se realiza a través de la SharePoint 3.0 Central Administration y más concretamente en la sección de Application Management:

  • De las distintas opciones de configuración que tenemos disponibles, las más relevantes de cara a la publicación de formularios Infopath son las de Manage Form Templates, dónde podremos visualizar un listado de plantillas de formularios Infopath.
  • Y la opción Upload form tempalte, que nos permite cargar un formulario y al mismo tiempo validar que está preparado para ser utilizado en un sitio de MOSS (para que se pueda visualizar renderizado en el navegador).
image image image

Creación del formulario

Lo primero que vamos a hacer es crear un formulario con Microsoft Office Infopath 2007. Para ahorrarnos trabajo, vamos a utilizar alguna de las plantillas que ya vienen por defecto en Infopath (Por ejemplo, el de Sample- Travel Request):

image image

Una vez que tenemos creado el formulario, tenemos que realizar los pasos necesarios para asegurar su correcta publicación en MOSS:

  • En el panel de tareas, pulsamos sobre la opción Design Checker.
  • En el panel Design Checker, pulsamos sobre Change Compatibilty Settings…
  • En la ventana que se abre, nos vamos a la sección Compatibility dónde:
    • Nos aseguramos de que esté marcada la opción: Design a form template that can be opened in a browser or Infopath.
    • Especificamos la Url de publicación de nuestra plantilla (la SharePoint 3.0 Central Administration).
image image image
  • En la sección Security and Trust especificaremos que el nivel de seguridad aplicable a nuestra plantilla es de Full Trust y además firmaremos el formulario generando el correspondiente certificado.
  • En la sección Advanced quitamos el check de la opción Enable form merging.
  • Tras pulsar OK, comprobamos que el formulario no genera errores de diseño por lo que se puede publicar en MOSS.
image image image

Publicación del formulario

Una vez que tenemos asegurado que el formulario se puede publicar:

  • Guardamos la plantilla en una ubicación de nuestro equipo.
  • Una vez guardado el formulario, tenemos que publicarlo en el servidor. Para ello, nos vamos al menú File –> Publish.
  • En la primera pantalla del asistente, especificamos que vamos a publicar el formulario en una ubicación de red (To a network location).
  • Especificamos la ubicación dónde se va a guardar la plantilla a publicar.
image image image
  • En la siguiente pantalla simplemente pulsamos Next.
  • En la siguiente pantalla pulsamos Publish. Finalmente, pulsamos Close.
 image  image image 

Una vez publicado el informe, vamos a cargarlo en la sección Managed Form Templates de la SharePoint 3.0 Central Administration. Accedemos a la SharePoint 3.0 Central Administration, nos vamos dentro de la sección Infopath Form Services y pulsamos sobre la opción Upload form template:

  • Especificamos el formulario a cargar. Pulsamos Verify para comprobar que todo es correcto. Si no hay ningún problema, se mostrará un mensaje de que el formulario está listo para ser usado. Pulsamos Ok.
  • Subimos el formulario verificado para que aparezca en la lista de formularios desplegados.

image

image image
  • Lo siguiente que haremos, será activar el formulario para poder utilizarlo en un sitio de SharePoint concreto. Esto lo conseguimos a través de la opción Activate to a Site Collection disponible en el menú contextual de acciones asociado a la plantilla.
  • En la siguiente pantalla elegimos la colección de sitios en la que activar el formulario. Este proceso generará un tipo de contenido en la colección de sitios de tipo formulario listo para usar en una biblioteca de formularios de MOSS.
image image image

Usando el formulario

Para usar el formulario que acabamos de publicar y activar en una colección de sitios, no tenemos más que:

  • Elegir una biblioteca de formularios en la que utilizar el formulario.
  • Añadir el content type vinculado al formulario.
  • Empezar a crear formularios en base a la plantilla y el tipo de contenido que hemos publicado y activado.
image image image
image image image

Y hasta aquí llega este post alternativo sobre la publicación de formularios Infopath en SharePoint. Espero que el post os haya resultado interesante.