Migración de Formularios PDF a IBM Lotus Forms

En el mundo de los formularios electrónicos, IBM® Lotus® Forms y Formularios PDF son los dos productos más populares. Un proyecto Lotus Forms se puede categorizar como dos tareas diferentes: migrar de formularios electrónicos existentes y crear formularios electrónicos de cero. En nuestra experiencia con IBM Software Services for Lotus descubrimos que la mayoría de los proyectos de formularios involucran migración de Formularios PDF a Lotus Forms.

Gu Yi, Lead Software Engineer, IBM

Gu Yi es Lead Software Engineer en el Emerging Services Team de IBM Software Services for Lotus (ISSL) en el Laboratorio de Desarrollo de IBM en China. Ha participado en proyectos de IBM Software Services desde 2005 y formó parte de varios proyectos de servicios que incluyeron IBM Lotus Forms. Se dedica a crear activos de servicios que hacen más eficientes los proyectos y aceleran las capacidades de entrega de IBM. Además, Gu Yi tiene tres años de experiencia trabajando con el Portal IBM WebSphere® y cuatro años de experiencia en la industria en el desarrollo de la Plataforma Java™, 2 Platform, Enterprise Edition.



05-08-2011 (Primera publicación 20-05-2010)

El formulario PDF es un tipo de formulario electrónico que es diferente a Lotus Forms. Puede ser un archivo binario estático sin campos interactivos o un formulario XML Forms Architecture (XFA) incrustado en XML. Lotus Forms Conversion Tool 3.0 es un complemento para Lotus Forms Designer que puede convertir formularios PDF en Lotus Forms 3.0 automáticamente. Soporta archivos PDF estáticos y formulario XFA dinámicos. También incluye una cantidad de reglas y optimizadores que se pueden aplicar al proceso de conversión. Luego de la conversión automática, se necesita el complemento para actualizar manualmente los formularios convertidos para la capa de presentación, las instancias de XForms y la lógica de negocios.

Este artículo ofrece una breve descripción del proyecto de migración PDF, con una descripción detallada de la herramienta de conversión Lotus Forms 3.0. También incluye una lista detallada del esfuerzo manual y los requisitos, la cual es una lista importante del dimensionamiento y la estimación del proyecto. Debe familiarizarse con el producto IBM Lotus Forms. Los usuarios de IBM Lotus Forms pueden obtener y compartir experiencia en el proyecto con el proyecto de servicio de formularios.

Introducción a los formularios PDF

PDF significa Portable Document Format (Formato de Documento Portátil), un formato de archivo desarrollado por Adobe® Systems Inc. PDF captura información de formato de una variedad de aplicaciones de edición computarizada, lo que hace posible enviar documentos con formato y visualizarlos en el monitor o la impresora del destinatario como fueron creados. Para ver un archivo PDF se necesita Adobe Reader; para crear o modificar un archivo PDF se necesita Adobe Acrobat Professional o Adobe Acrobat Designer.

El formulario PDF se puede categorizar en dos tipos: el formulario PDF estático y el formulario PDF interactivo. El formulario PDF estático es un documento PDF tradicional sin elementos interactivos. El formulario está compuesto por elementos como texto, puntos, líneas y gráficos. El archivo se almacena en formato binario.

El otro tipo de formulario PDF es el formulario PDF interactivo. En la especificación PDF hay dos tipos de formularios interactivos:

  • AcroForm. Este formulario, introducido en PDF Specification 1.2, es una colección de campos para recopilar información del usuario de manera interactiva. El contenido y las propiedades de un formulario interactivo están definidos por un diccionario de formulario interactivo que es referenciado desde la entrada AcroForm en el catálogo de documentos en el archivo PDF.
  • XML Forms Architecture (XFA). XFA brinda gramática basada en plantillas y un conjunto de reglas de procesamiento que permiten a los usuarios crear formularios interactivos. La gramática basada en plantillas define campos en los cuales un usuario coloca información. La naturaleza abierta de XFA brinda una gramática XML común para describir formularios interactivos, lo cual es una base común para las interacciones relacionadas con los formularios entre aplicaciones de procesamiento de formularios. Esta naturaleza abierta significa que XFA se aplica a una gran variedad de negocios. XML Forms ofrece una amplia gama de funciones:
    • Flujo de trabajo. Este tipo de formulario incluye presentación de datos, captura de datos y edición de datos. XFA funciona como aplicación front-end para enviar datos a un servidor back-end, también se puede utilizar con fines de impresión.
    • Interacciones dinámicas. Las funciones dinámicas varían de formularios interactivos editados por humanos con cálculos dinámicos, validaciones y otros eventos a formularios generados y completados por la máquina.
    • Disposición dinámica. Los formularios se pueden reorganizar a sí mismos automáticamente para contener los datos suministrados por un usuario o por una fuente de datos externa, como por ejemplo un servidor de base de datos. Por ejemplo, si los datos recuperados del servidor tienen 100 filas, el formulario muestra 100 filas.
    • Complejidad. Esta función incluye formularios estadísticos de página individual, montajes de documentos dinámicos basados en el contenido de los datos y enormes ejecuciones de producción que contienen cientos de miles de operaciones.

XFA, un tipo de formulario interactivo, es un tipo más avanzado que AcroForm de las siguientes maneras:

  • XFA se puede utilizar en flujos de trabajo basados en XML.
  • XFA separa los datos de la plantilla XFA, lo que ofrece mayor flexibilidad en la estructura de los datos soportados y permite que los datos se empaqueten de manera individual al formulario.
  • XFA puede especificar formularios que crecen dinámicamente.
  • XFA puede identificar interacciones Web, como por ejemplo HTTP y Lenguaje de Descripción de servicios web (WSDL). Dichas interacciones se pueden utilizar para enviar datos a un servidor o para solicitar que un servidor realice un cálculo y devuelva el resultado.
  • XFA funciona con otras gramáticas XML.

Según esta información, XFA es muy similar a Lotus Forms en naturaleza. La Tabla 1 muestra una comparación detallada.

Tabla 1. Comparación de Lotus Forms y XFA
Lista de funcionesLotus FormsXFA
ElementosElementos, opciones de Lenguaje Ampliable de Descripción de Formularios (XFDL), y elementos, opciones de XFormsElementos y opciones de XFA
DinámicosRepetición XFormsSubformulario y conjunto de subformulario
Prueba de validaciónNull, tipo de datos, patrón de datos y prueba de expresión regularNull, tipo de datos, formato y prueba de script
ScriptsCálculo XForms y cálculo XFDLJavaScript™
Instancia de datosInstancia de datos XML o instancia de datos XFormsPlantilla de datos XFA
Llamada WebServiceSoporteSoporte
Firma digitalFirma digital XFDLFirma digital XML y firma digital PDF
API ActiveX Data Object (ADO)NingunaSoporte
IncrustarSoporte incrustado en HTMLXML Data Package (XDP), incrustado en PDF
DisposiciónUbicación de elementos representada en píxeles o ubicación relativaControlado por procesador de disposición en el contenedor de objeto
HTMLNo soportadoSuporte para fragmento HTML incrustado

Requisito de proyecto de migración

Los proyectos de migración de PDF implican convertir los formularios PDF existentes a Lotus Forms. Los formularios PDF pueden ser estáticos o dinámicos. Es importante tener el requisito del proyecto documentado claramente antes de iniciar la migración, y el requisito debe brindar detalles a nivel elemento en cada formulario para que el desarrollador del formulario pueda procesar cada elemento conforme a instrucciones claras.

Generalmente el documento de requisito debe contener lo siguiente:

  • Instrucciones generales. Este contenido es una pauta general para la migración. Incluye el alcance de la migración, lista de funciones y un resumen claro de lo que se debe convertir y lo que no se debe convertir del PDF.
  • Formulario plantilla XFDL. Este formulario plantilla incluye los componentes de estilo común y reutilizables, como por ejemplo barra de herramientas, color de fondo, configuración de impresión, rótulo tamaño y color de fuente, lista de países y estados, etcétera.
  • Hoja de cálculo detallada para cada formulario. Por cada formulario a convertir debe haber una hoja de cálculo que describa el contenido y el mapeo entre el PDF y el XFDL porque los elementos de Lotus Forms y PDF podrían tener distintos tipos y propiedades. Sin la información de mapeo el desarrollador del formulario se puede perder al tratar de encontrar un tipo de elemento y un valor de opción adecuados. La Tabla 2 muestra la información que se debe incluir en la hoja de cálculo.
Tabla 2. Muestra de información requerida
Nombre de columnaDescripciónValor de muestra
Nombre del elementoRótulo del elementoNombre del organismo
TipoTipo de elemento convertido, que puede ser diferente al PDFGrupo de control de campo
Regla de elementoTipo de datos del elementoEntero, una elección de selección
FormatoFormato del valor, como por ejemplo fecha o código postalFecha: MM/DD/AAAA
Valor predeterminado¿El elemento debe tener un valor predeterminado?Predeterminado 100
Obligatorio¿Debe ser obligatorio completar el elemento?Sí o no
RangoRango del valor, generalmente utilizado para valores en número1 a 100
Extensión del elementoTamaño del elemento20
Desactivar/activarLógica para la función activar/desactivar del elementoActivado si la respuesta a la primera pregunta es sí
Visible/invisibleLógica para la función visible/invisible del elementoVisible si la respuesta a la primera pregunta es sí
Mensaje de ayudaTexto de ayuda del elementoComplete el nombre del organismo.
SIDSID del elementoNombre_organismo
Nombre de la instancia de datosEl nombre de la instancia de datos enlazado al elementoNombre_organismo
CálculoFórmula si el valor del elemento se calcula con otros elementos=Mes1+Mes2
PatrónPatrón reutilizable que se puede aplicar a este elementoBotón de firma tipo 1
OtrosOtra información o lógica sobre el elementoLa firma se aplica solamente a la sección 1 y 2

Pasos para la migración

Luego de definir y documentar el requisito, puede realizar la migración real de PDF a Lotus Forms. En general debe completar dos pasos de migración importantes:

  1. Utilizando la herramienta de conversión, haga una conversión sin procesar de PDF a Lotus Forms automáticamente. La herramienta de conversión de Lotus Forms es un complemento de Lotus Forms Designer que se puede utilizar para convertir de Formularios PDF a Lotus Forms. Utilizando esta herramienta puede hacerle ahorrar el esfuerzo manual en la migración.
  2. Actualización manual del formulario convertido sin procesar. El formulario convertido sin procesar incluye solo la disposición y la lógica. Según la hoja de cálculo de requisitos, los desarrolladores del formulario pueden verificar cada elemento del formulario y actualizar los elementos en Forms Designer uno por uno.

Las siguientes dos secciones explican estos dos pasos detalladamente.


Herramienta de conversión de Lotus Forms

La herramienta de conversión para IBM Lotus Forms 3.0.1 (el complemento Forms Conversion Tool) es una herramienta innovadora y fácil de usar que permite a los propietarios de negocios y desarrolladores de formularios convertir fácilmente archivos Portable Document Format (PDF) y formularios electrónicos FileNet en Lotus Forms. También se puede utilizar para transformar formularios Lotus Forms existentes. En Lotus Forms Designer, la herramienta de conversión de Lotus Forms está incrustada como parte de Designer 3.5. Siga el enlace de la sección Recursos para descargar el complemento Forms Conversion Tool o descargar la versión de prueba de Lotus Forms Designer e instalarla.

Conversión automática de PDF

Una vez que está instalada la herramienta de conversión, haga clic en Archivo - Nuevo – Convertir a Lotus Forms. Aparece la ventana que se muestra en la figura 1.

Figura 1. La ventana inicial de Convert Forms
La ventana inicial de Convert Forms

La Figura 1 muestra la ventana de selección de conversión de la herramienta de conversión. Haga clic en el botón Agregar archive para agregar más archivos para convertir. En la lista de formatos, se pueden elegir dos analizadores: PDF y FileNet. Seleccione el analizador PDF para la conversión de PDF. Seleccione el perfil pdf_predeterminado en la lista de perfiles y luego haga clic en Siguiente.

Figura 2. Selección de la ubicación del archivo
Selección de la ubicación del archivo

La Figura 2 muestra la ventana en la cual puede seleccionar la ubicación de almacenamiento de los archivos convertidos. La ubicación predeterminada es la misma carpeta que la del archivo PDF. Las Figuras 3 y 4 muestran el formulario PDF original y el formulario XFDL.

Figura 3. Formulario PDF original
Formulario PDF original
Figura 4. Formulario Lotus Forms convertido
Formulario Lotus Forms convertido

En estas dos ilustraciones puede ver que la mayoría de los rótulos y las disposiciones están convertidas por la herramienta.

Reglas y optimizadores personalizados

A veces el resultado convertido no es tan bueno como se espera cuando usa el perfil de conversión predeterminado. Al crear un archivo de conversión personalizado puede ajustar el proceso de conversión con un mayor nivel de detalle. Seleccione el menú Forms Designer Windows - Preferencias, luego seleccione Conversión de formularios y Perfiles de transformación en el recuadro izquierdo de la ventana de Preferencias y haga clic en el botón Siguiente. Se ve la ventana Editar perfil como se muestra en la Figura 5.

Figura 5. La ventana Editar perfil de Conversión de formularios
La ventana Editar perfil de Conversión de formularios

Puede usar esta ventana para personalizar el perfil de conversión para un tipo específico de archivo. El perfil de conversión incluye el siguiente contenido:

  • Reglas de conversión. Las reglas se utilizan para personalizar el contenido del formulario creado, inclusive agregar una barra de herramientas de un formulario plantilla, actualizar el elemento fuente, color y borde, cambiar la regla de generación SID y cambiar los órdenes de elementos en la fuente XFDL.
  • Generación de XForms. Esta opción se utiliza para seleccionar la lista de controles enlazados a la instancia de datos de XForms.
  • Optimizadores de disposición. Los optimizadores incluyen parámetros que puede ajustar durante la conversión de los elementos PDF a elementos XFDL, como por ejemplo parámetros para crear una casilla de verificación de cuatro líneas y alinear rótulos y campos. Los optimizadores apuntan a crear nuevos elementos interactivos (casillas de verificación, campos) en el formulario según elementos estáticos (rótulos, líneas) en el PDF y alinear los elementos existentes (rótulos o campos) en el formulario.

Durante nuestro proyecto de migración, resumimos estas pautas generales sobre cómo ajustar un perfil:

  • Crear un perfil para cada lote de formularios. Cada lote de formulario puede tener un estilo diferente. Cree un perfil para cada lote, y ajuste los parámetros para lograr el mejor resultado. El perfil se puede exportar e importar, para que cada desarrollador de formularios pueda tener la misma configuración de conversión.
  • Si el requisito de formulario incluye reglas XForms detalladas, debe sugerir desactivar la generación de instancia XForms porque el nombre de la instancia generada se basa en la SID y generalmente no se ajusta al procesamiento back-end.
  • Active la opción Utilizar ancho y alto determinado si en el formulario convertido se cortan algunos rótulos debido a que está configurada una extensión insuficiente para el rótulo. Esta regla puede eliminar el ancho y el alto en el rótulo, que usa el tamaño predeterminado calculado por el visor de Lotus Forms.
  • Desactive la opción “Combinar Líneas/Rótulos adyacentes” si hay muy pocos campos generados en el formulario. La combinación de líneas y rótulos afecta la generación de campos por parte del optimizador “Transformar una línea o casilla en un campo” porque elimina algunas líneas y rótulos del formulario.

Actualización manual luego de la conversión automática

En la mayoría de las situaciones, los formularios convertidos automáticamente no se pueden utilizar directamente porque las instancias de datos del formulario no están bien organizadas y el proyecto de migración generalmente requiere que la instancia de datos se ajuste a cierto esquema que se puede enviar al flujo de procesamiento back-end.

Elementos de actualización manual

La actualización manual es un paso obligatorio en el proyecto de migración para abordar las funciones que no puede cumplir la conversión automática. Hay algunos pasos obligatorios:

  1. Ajustar la disposición detallada, el formato, la lógica y la SID según la hoja de cálculo del formulario documentado.
  2. Generar la instancia de datos XForms y el enlace XForms basado en la lógica de negocios.
  3. Luego de la conversión automática, el elemento PDF sin convertir, como por ejemplo espacio o imágenes color no reconocidas, crea un comentario XML en el XFDL. La actualización manual se requiere para despejar estos comentarios o actualizar los elementos no convertidos según los comentarios.
  4. Actualizar la firma digital según el requisito. La conversión automática puede generar únicamente una firma Clickwap.
  5. Actualizar el envío de datos según el requisito. La conversión automática no controla el envío de datos del formulario PDF original.
  6. Actualizar la lógica según el JavaScript del formulario PDF. La conversión automática no convierte el JavaScript en script XFDL.
  7. Actualizar elementos gráficos. En el formulario PDF podría haber elementos gráficos como por ejemplo imagen de vector, una línea oblicua y una línea curva. Lotus Forms no soporta estos elementos, pero se pueden reemplazar utilizando imágenes JPG o GIF capturadas del formulario PDF.

Lista de comprobación de QA manual

Luego de la actualización manual, se genera el formulario ingresa al proceso de aseguramiento de calidad (QA). La Tabla 3 muestra los elementos que resumimos de nuestro proyecto de migración que se deben resaltar en el proceso de QA.

Tabla 3. Lista de comprobación de QA
NombreDescripción
Fuente y colorAlgunos colores o fuentes en PDF no se muestran correctamente en Lotus Forms. Debe revisar las diferencias durante el proceso de QA.
Comprobación de disposiciónCompare la disposición de los formularios en el visor de Lotus Forms o Webform Server con el PDF original. Concéntrese en los rótulos y las líneas. Por ejemplo, en PDF se puede ajustar el ancho del carácter, pero en Lotus Forms es fijo. Esta discrepancia puede hacer que los rótulos se vean diferentes.
Comprobación de impresiónImprima el formulario convertido y el PDF. Compare los formularios impresos en papel para verificar cualquier discrepancia.
Regla de validación de datosCompare la validación de datos del PDF y del formulario convertido ingresando datos en los formularios.
Lógica de scriptCompare la lógica de XFDL y XForms con el JavaScript en el PDF para comprobar que esté implementada correctamente en el formulario convertido.
Parte dinámicaTanto PDF como XFDL soportan la generación de contenido dinámico. Puede probarlo generando un conjunto completo de datos en la instancia de datos.

Conclusión

En general, el proyecto de migración PDF incluye un requisito bien definido para cada formulario, una herramienta de conversión PDF, y actualización manual y procesos de QA. Debido a que parte del proceso es automático y requiere conocimiento de PDF, es distinto a los otros proyectos Lotus Forms, como por ejemplo crear formularios desde cero. Potenciar la herramienta de conversión de Lotus Forms es una buena adopción en un proyecto de migración PDF.

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Lotus
ArticleID=491222
ArticleTitle=Migración de Formularios PDF a IBM Lotus Forms
publish-date=08052011