Siguiendo con la serie de post sobre automatización en la publicación de formularios Infopath (puedes ver la parte I en este enlace), en esta ocasión os voy a mostrar como podemos actualizar o borrar formularios Infopath que ya hemos desplegado en MOSS de una forma automática. Como siempre, la clave está en la herramienta de administración de SharePoint por línea de comandos: STSADM. Empecemos.
Actualización de una plantilla de formulario ya publicado
Para actualizar un formulario Infopath ya publicado, no tenemos más que ejecutar la siguiente secuencia de comandos:
| echo Actualizando 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\ExprensesReportForm.xsn SET SiteUrl=http://litwaredemo "%STSADM%" -o DeActivateFormTemplate -url %SiteUrl% -filename "%FormPath%" "%STSADM%" -o verifyformtemplate -filename "%FormPath%" "%STSADM%" -o UpgradeFormTemplate -filename "%FormPath%" "%STSADM%" -o execadmsvcjobs "%STSADM%" -o ActivateFormTemplate -url %SiteUrl% -filename "%FormPath%" echo Actualización terminada... |
Como vemos:
-
A través de DeActivateFormTemplate desactivamos el formulario ya publicado.
-
Verificamos que la plantilla a actualizar es correcta con verifyformtemplate.
-
Actualizamos la plantilla existente con la nueva a través de UpgradeFormTemplate.
-
Ejecutamos los Timer Jobs de SharePoint.
-
Activamos la plantilla con ActivateFormTemplate.
Desinstalando una plantilla de formulario
Desinstalar una plantilla de formulario ya publicada implica ejecutar los siguientes comandos:
| echo Desinstalando 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 DeActivateFormTemplate -url %SiteUrl% -filename "%FormPath%" "%STSADM%" -o RemoveFormTemplate -filename "%FormPath%" "%STSADM%" -o execadmsvcjobs echo Desinstalación terminada... |
- Como vemos, en primer lugar desactivamos la plantilla de formulario utilizando DeActivateFormTemplate.
- A continuación eliminamos la plantilla mediante RemoveFormTemplate.
- Finalmente ejecutamos los Timer Jobs de SharePoint.
Y hasta aquí llega el segundo post de la serie sobre automatización en la publicación de formularios Infopath en SharePoint. Espero que el post os haya resultado interesante.