Definir la estructura y extraer datos
En este apartado describimos cómo funcionan estos procedimientos:
•Usar sugerencias para extraer la estructura y los datos de una tabla automáticamente
•Definir otras reglas de extracción manualmente
•Guardar la plantilla
Puede elegir el orden en el que diseña su plantilla; no tiene por qué ser el mismo que el descrito anteriormente.
Extraer la estructura y los datos de una tabla automáticamente
El primer paso consiste en extraer datos de la tabla. La forma más sencilla de extraer datos es utilizar la sugerencia de PDF Extractor para la tabla (marcada en verde en la imagen siguiente). Para usar la sugerencia, haga doble clic en el botón ¿Tabla? que está en la esquina superior izquierda del marco verde. Las celdas que contienen información sobre el precio y los impuestos se procesarán por separado.
En cuanto haga doble clic en el botón ¿Tabla?, aparecerá la siguiente estructura jerárquica en el panel Esquema:
El panel Esquema es una caja de herramientas de objetos que determinan cómo se extraerán los datos. En este punto, la plantilla tiene la siguiente estructura:
•El nodo de nivel superior: representa la raíz (Invoice)
•El objeto Grupo/Filtro: agrupa y filtra las páginas de un documento PDF
•Dos asignaciones verticales (margen superior y margen inferior): identifican dónde la tabla empieza y acaba
•El objeto Dividir: divide la tabla en filas
•El objeto Grupo/Filtro: agrupa las filas de la tabla
•Cinco asignaciones horizontales: marcan las posiciones de los anclas que dividen las columnas
•Cuatro capturas de texto: hacen referencia a los nombres de las columnas de la tabla
Para más información sobre cada objeto, consulte el apartado Objetos de la plantilla.
Nota sobre documentos con varias páginas
Si su documento PDF contiene varias páginas y decide aceptar una sugerencia de tabla automática en una de estas páginas, podrá usar un objeto Grupo/Filtro sólo para esta misma página. Si quiere incluir otras páginas del documento también, puede configurar el objeto Grupo/Filtro como corresponde.
Estructura jerárquica y datos en el panel Resultados
La estructura jerárquica de las reglas de extracción aparecen en el panel Esquema y, a la vez, la jerarquía con los datos extraídos de la tabla aparece en el panel Salida (véase el extracto de código a continuación).
<Invoice>
<Row>
<Col1>Description</Col1>
<Col2>Hours</Col2>
<Col3>Rate ($/hr)</Col3>
<Col4>Amount ($)</Col4>
</Row>
<Row>
<Col1>Garden design</Col1>
<Col2>6</Col2>
<Col3>50</Col3>
<Col4>300</Col4>
</Row>
<...>
</Invoice>
Para comprobar si la estructura en el panel Resultados y los objetos se corresponden, haga clic en un elemento o en su valor en el panel Resultados. Así, en el panel Vista PDF, se resalta en amarillo la instancia del objeto en cuestión y en rosa los bordes de cada instancia del objeto. Además el objeto correspondiente se subraya en la estructura de árbol en el panel Esquema (imágenes siguientes).
Celda resaltada en el panel Vista PDF
Objeto resaltado en el panel Esquema
Ajustar los datos de tabla
En este tutorial no queremos incluir los encabezados de columna de la tabla en nuestra plantilla. Para excluir la fila de encabezados, siga estos pasos:
1.En el panel Esquema, haga clic en la asignación vertical TableTop (margen superior de la tabla).
2.En el panel Vista PDF, haga clic en la etiqueta TableTop en la tabla. Ahora aparecerá una flecha de dos puntas (imagen siguiente) que le permitirá ajustar la posición de la línea TableTop. En nuestro ejemplo, la línea TableTop se ha arrastrado hacia abajo para excluir la fila de encabezados de la tabla, lo que también excluye los nombres de los encabezados de columna en los resultados.
Dar nombres descriptivos a las filas y columnas de la tabla
El objeto División del panel Esquema contiene un objeto Grupo/Filtro con un nombre predeterminado Row (fila). Para cambiar el nombre de la fila, primero haga clic en el nodo Grupo/Filtro de la estructura. Después, vaya al campo Nombre XML de salida del panel Propiedades, escriba Servicio y pulse Entrar. Ahora el nodo Grupo/Filtro tiene este aspecto:
Los nombres predeterminados de las columnas de la tabla son Col1, Col2, etc. Si desea cambiar los nombres de las columnas, haga clic en la captura de texto correspondiente en el panel Esquema y asígnele un nuevo nombre en el campo Nombre XML de salida del panel Propiedades. En este tutorial hemos asignado el nombre Description a la primera columna (imagen siguiente). Además del nuevo nombre de la columna, también puede ver la posición de la región en el documento PDF.
Al cambiar el nombre de un objeto en el panel Propiedades también cambia la etiqueta de texto en el panel Vista PDF (imagen siguiente). Al hacer clic en un objeto del panel Esquema, se resalta su ubicación en el panel Vista PDF. Por ejemplo, en la imagen siguiente, las celdas con las etiquetas Description aparecen resaltadas en rosa.
El siguiente paso consiste en cambiar las capturas de texto Col2, Col3, y Col4 a Hours, Rate y Amount, respectivamente.
Definir otras reglas de extracción manualmente
Además de extraer los datos de la tabla, también queremos incluir información sobre el nombre, el número y la fecha de la factura, el cliente, el precio y los impuestos, así como los términos y condiciones. En este caso, el objetivo es extraer dichos datos manualmente. Podemos suponer que la información sobre el contratista es la misma en todas las facturas emitidas por esta empresa y que no es relevante para la plantilla y la futura asignación. Por tanto, está información sobre el contratista no se incluirá en la plantilla.
Siga los siguientes pasos para extraer datos manualmente:
1.Haga clic en la raíz o en el objeto Grupo/Filtro bajo el nodo raíz para poder ver todo el documento PDF.
2.La primera información que queremos extraer es el encabezado: Seleccione un rectángulo que contenga todo el encabezado (imagen siguiente).
3.Haga clic con el botón derecho en el rectángulo y seleccione Crear captura de texto en el menú contextual (imagen siguiente).
4.En la estructura del panel Esquema aparecerá ahora una nueva captura de texto con el nombre predeterminado Captura. Una nueva captura se coloca por defecto en la parte inferior de la estructura en el panel Esquema. Sin embargo, dado que esta captura corresponde al encabezado de la factura, la posición lógica de la captura estaría en la parte superior de la estructura. Por lo tanto, haga clic en la nueva captura, arrástrela a la parte superior de la estructura y suéltela antes del objeto Dividir (imagen siguiente).
5.Cambiar el nombre de la captura: Para cambiar su nombre, haga clic en la captura en el panel Esquema, vaya al campo Nombre XML de salida del panel Propiedades, escriba Encabezado y pulse Entrar.
6.En el siguiente paso, extraeremos los detalles del cliente: Seleccione un rectángulo que incluya todos los detalles del cliente (imagen siguiente), haga clic con el botón derecho en él y seleccione Crear captura de texto en el menú contextual. Otra opción es crear capturas de texto separadas para cada información (p. ej., ClientName para el nombre del cliente, Address para la dirección, etc.). No obstante, hemos decidido tratar todos los datos del cliente como una sola unidad de información para que el ejemplo sea más fácil a comprender.
7.Asigne un nombre a la nueva captura (en nuestro caso, el destinatario de la factura BillTo) y arrástrela hasta la captura de encabezado Header.
8.Repita los pasos anteriores para crear nuevas capturas de texto y asignarles nombres nuevos, guardando el número de factura como InvoiceNo y la fecha como Date. Después, colóquelas debajo de la captura BillTo.
9.Vuelva a repetir el mismo procedimiento, es decir crear capturas de texto con nombres, para los valores de las celdas Subtotal (Subtotal), Sales Tax (Tax), Total (Total) y el texto bajo la sección Terms and Conditions (Terms). Luego, coloque estas capturas de texto en la parte inferior de la estructura jerárquica.
10.Por último, compruebe si la estructura del panel Resultados corresponde al resultado deseado.
Guardar la plantilla
El último paso en el diseño de la plantilla no es otro que guardarla. Para ello, siga estos pasos:
1.En el menú Archivo haga clic en Guardar o Guardar como. También puede hacer clic en el botón de la barra de herramientas.
2.En el cuadro de diálogo Guardar como que aparece, asigne un nombre a la nueva plantilla y seleccione la ubicación dónde desea guardarla. En nuestro ejemplo, el nombre de la plantilla es GardenInvoice.pxt.
3.Para confirmar, haga clic en Guardar.
Ahora la plantilla ya está lista para importarla a MapForce. Para más detalles, consulte el apartado Importar una plantilla a MapForce.