Saltar al contenido principal
Un bloque de la tabla se utiliza para pasar a FlexiCapture las coordenadas de las tablas detectadas. Los datos de las tablas detectadas se extraerán en FlexiCapture. Un bloque de la tabla se diferencia de otros tipos de bloque en que devuelve no solo una región que abarca todo el bloque, sino también rectángulos trazados alrededor de cada celda de la tabla. En comparación con otros tipos de bloque, un bloque de la tabla tiene una propiedad adicional: una lista de columnas que la tabla puede contener. Un FlexiLayout puede contener uno o varios elementos Table que indican al programa dónde y cómo buscar las columnas especificadas en el bloque.
  • Cuando crea un elemento Table, debe ‘vincularlo’ a un bloque de la tabla ya creado, por lo que normalmente primero debe crear el bloque. Primero puede especificar su área de búsqueda aproximada, luego crear uno o varios elementos para buscar el bloque y, después, usar esos elementos Table para definir con precisión el área de búsqueda del bloque.
  • Puede crear varios elementos, cada uno con su propio algoritmo para encontrar un mismo bloque de la tabla. Puede indicar al programa que seleccione el elemento Table que mejor se ajuste al bloque de la tabla una vez encontrado el bloque. Esto se hace mediante una expresión de región.
Los bloques de la tabla se marcan con icono de bloque de tabla en el árbol de FlexiLayout. Para crear un bloque de la tabla:
  1. Cambie a la ventana FlexiLayout.
  2. Seleccione la rama Blocks en el árbol de FlexiLayout.
  3. En el menú FlexiLayout, seleccione Add BlockTable o seleccione NewTable en el menú contextual.
  4. Especifique las propiedades del bloque.
  5. En la pestaña bloque de la tabla, configure lo siguiente:
    • El nombre del bloque
    • Un comentario para el bloque (opcional)
    • Si la región del bloque y la división de la tabla en filas y columnas coincidirán con la región devuelta por un elemento Table, seleccione la opción Source element y haga clic en botón Buscar. En el cuadro de diálogo Select Element, seleccione el elemento Table cuya región coincida con la región del bloque y haga clic en OK.
    • Si la región del bloque no coincide con la región de ninguno de los elementos Table, seleccione la opción Region expression e introduzca el código necesario en el campo Region expression. Haga clic en Check para comprobar el código.
  6. En la pestaña Columns, especifique las columnas que pueden aparecer dentro del bloque. Para ello, haga clic en Add… e introduzca el nombre de una columna. Puede resultarle útil usar los nombres de las columnas tal como aparecen en las imágenes de prueba. En la lista desplegable Type, seleccione el tipo de columna. Puede elegir uno de los siguientes tipos: Text, Barcode, Checkmark, Picture o Non-Recognized Block. Para cambiar el nombre o el tipo de una columna, haga clic en Edit… y, en el cuadro de diálogo Edit Table Column, introduzca un nombre nuevo o seleccione un tipo diferente para la columna. Use los botones Botón Abajo (Abajo) y Botón Arriba (Arriba) para ordenar las columnas en el mismo orden en que deben aparecer en la aplicación de captura de datos.

Ejemplo: especificar qué región del bloque se debe seleccionar

Para especificar la región de un bloque, utilice la variable predefinida OutputTable de tipo TableHypothesis. El código del siguiente ejemplo selecciona el elemento Table en el que se ha encontrado el mayor número de filas:
let T1 = SearchElements.TableElement1;
let T2= SearchElements.TableElement2;
if T1.RowsCount > T2.RowsCount then OutputTable = T1; else OutputTable = T2;
Los elemento Table SearchElements.TableElement1 y SearchElements.TableElement2 del ejemplo deben hacer referencia al mismo bloque Table cuyo campo Region expression contiene el código anterior.