> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Ejemplo 3. Paso 26: Detectar el elemento Table con un elemento InvoiceTable

> Ensamble el elemento Table InvoiceTable: configure las columnas, las reglas de orden, el encabezado, el pie de tabla y las columnas maestras para detectar de forma fiable la tabla de la factura.

Ahora que se han completado todos los preparativos, puede buscar el campo Invoice Table. Un elemento [Table](/es/flexi-capture/fls/tables/general-tables) lo detecta mediante la estrategia decidida en [Step 13](/es/flexi-capture/fls/tutorial3/3step13):

* **Header** – Los nombres de las columnas **Reference** y **Designation** usan palabras clave; los nombres de las columnas **Quantity**, **Unit Price** y **Total** usan los elementos auxiliares que describió.
* **Footer** – El elemento de palabras clave descrito anteriormente lo detecta.
* **Área de búsqueda** – El nombre de la columna **Sales** restringe el área de búsqueda por la derecha.

<div id="create-the-invoicetable-element">
  ## Crear el elemento InvoiceTable
</div>

<Steps>
  <Step title="Crear el elemento Table">
    Cree un elemento de tipo [Table](/es/flexi-capture/fls/tables/general-tables) y asígnele el nombre **InvoiceTable**.
  </Step>

  <Step title="Seleccione el bloque de la tabla">
    Haga clic en la pestaña **Columns**, luego en **Select**, y especifique el bloque **InvoiceTable** descrito anteriormente como el bloque que este elemento detecta. Para obtener más información, consulte [Step 3](/es/flexi-capture/fls/tutorial3/3step3).
  </Step>

  <Step title="Configure las columnas Reference y Designation">
    Seleccione la columna **Reference** y haga clic en **Properties...**. La palabra clave **Reference** localiza el nombre de esta columna, así que deje los valores predeterminados. Haga lo mismo con la columna **Designation**.
  </Step>

  <Step title="Configure la columna Cantidad">
    Seleccione la columna **Quantity** y haga clic en **Properties...**. Para buscar este nombre de columna, use el elemento `TableHeader.kwQuantity` detectado anteriormente: seleccione **Use found element as column name**, haga clic en <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Browse_Button.gif?s=3673db30dda4a3293aec716853588b55" alt="Botón Browse" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="21" height="20" data-path="images/flexi-capture/fls/Browse_Button.gif" /> y seleccione el elemento `TableHeader.kwQuantity`.

    <Frame>
      <img src="https://mintcdn.com/abbyy/r-nfa7jujx5b9gKX/images/flexi-capture/fls/tutorial3_26_1.png?fit=max&auto=format&n=r-nfa7jujx5b9gKX&q=85&s=bbf25b0bc0343d5c5c77393f46a0f892" alt="Captura de pantalla del cuadro de diálogo Properties of column Quantity en ABBYY FlexiLayout Studio, con Use found element as column name seleccionado y configurado como SearchElements.TableHeader.kwQuantity." width="462" height="377" data-path="images/flexi-capture/fls/tutorial3_26_1.png" />
    </Frame>
  </Step>

  <Step title="Configure la columna UnitPrice">
    Seleccione la columna **UnitPrice** y haga clic en **Properties...**. Use el elemento `TableHeader.kwUnitPrice` detectado anteriormente: seleccione **Use found element as column name**, haga clic en <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Browse_Button.gif?s=3673db30dda4a3293aec716853588b55" alt="Botón Browse" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="21" height="20" data-path="images/flexi-capture/fls/Browse_Button.gif" /> y seleccione el elemento `TableHeader.kwUnitPrice`.

    <Frame>
      <img src="https://mintcdn.com/abbyy/r-nfa7jujx5b9gKX/images/flexi-capture/fls/tutorial3_26_2.png?fit=max&auto=format&n=r-nfa7jujx5b9gKX&q=85&s=b659e5d615579177f79b061be15ed775" alt="Captura de pantalla del cuadro de diálogo Properties of column UnitPrice en ABBYY FlexiLayout Studio, con Use found element as column name seleccionado y establecido en SearchElements.TableHeader.kwUnitPrice." width="462" height="377" data-path="images/flexi-capture/fls/tutorial3_26_2.png" />
    </Frame>
  </Step>

  <Step title="Configure la columna Total">
    Seleccione la columna **Total** y haga clic en **Propiedades...**. Utilice el elemento `TableHeader.kwTotal` detectado previamente: seleccione **Usar el elemento encontrado como nombre de columna**, haga clic en <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Browse_Button.gif?s=3673db30dda4a3293aec716853588b55" alt="Botón Examinar" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="21" height="20" data-path="images/flexi-capture/fls/Browse_Button.gif" /> y seleccione el elemento `TableHeader.kwTotal`.
  </Step>

  <Step title="Agregue una regla de orden de las columnas">
    Haga clic en la pestaña **Order**. Puede haber otras columnas (por ejemplo, **Unit**) entre las columnas buscadas, pero estas siempre aparecen en el siguiente orden: **Reference**, **Designation**, **Quantity**, **Unit Price**, **Total**. Seleccione **Rules for column order**, haga clic en **Add...** y especifique el siguiente orden: `Reference << Designation << Quantity << Unit Price << Total`.

    <Frame>
      <img src="https://mintcdn.com/abbyy/r-nfa7jujx5b9gKX/images/flexi-capture/fls/tutorial3_26_3.png?fit=max&auto=format&n=r-nfa7jujx5b9gKX&q=85&s=b471ef36cc0fb3b34730fd749baf7c1b" alt="Captura de pantalla de la pestaña Order del cuadro de diálogo Properties de SearchElements.InvoiceTable en ABBYY FlexiLayout Studio, con Rules for column order seleccionado y una regla que enumera Reference, Designation, Quantity, Unit Price y Total en ese orden." width="601" height="507" data-path="images/flexi-capture/fls/tutorial3_26_3.png" />
    </Frame>
  </Step>

  <Step title="Ordene las columnas de la regla">
    En el cuadro de diálogo **Editar regla de orden de las columnas**, mueva las columnas a la lista **Columnas seleccionadas** en este orden: **Reference**, **Designation**, **Quantity**, **UnitPrice**, **Total**.

    <Frame>
      <img src="https://mintcdn.com/abbyy/8aWHPAJyzWmTqglX/images/flexi-capture/fls/tutorial3_26_4.png?fit=max&auto=format&n=8aWHPAJyzWmTqglX&q=85&s=dc2e164e6c1d5179ae56fb3614cf780b" alt="Captura de pantalla de dos cuadros de diálogo Editar regla de orden de las columnas en ABBYY FlexiLayout Studio, que muestra cómo las columnas disponibles se mueven a la lista Columnas seleccionadas en el orden Reference, Designation, Quantity, UnitPrice, Total." width="431" height="455" data-path="images/flexi-capture/fls/tutorial3_26_4.png" />
    </Frame>
  </Step>

  <Step title="Configure el encabezado">
    Haga clic en la pestaña **Header**. El encabezado es necesario, pero no requiere restricciones de búsqueda, por lo que debe dejar los valores predeterminados.

    <Frame>
      <img src="https://mintcdn.com/abbyy/8aWHPAJyzWmTqglX/images/flexi-capture/fls/tutorial3_26_5.png?fit=max&auto=format&n=8aWHPAJyzWmTqglX&q=85&s=bb84010302437fe5fe0423ab877b9fcb" alt="Captura de pantalla de la pestaña Header del cuadro de diálogo Propiedades de SearchElements.InvoiceTable en ABBYY FlexiLayout Studio, con las opciones Look for header y Header is optional seleccionadas y las opciones de búsqueda predeterminadas." width="431" height="455" data-path="images/flexi-capture/fls/tutorial3_26_5.png" />
    </Frame>
  </Step>

  <Step title="Configure el pie de tabla">
    Haga clic en la pestaña **Pie de página**. Para detectar el pie de página, use el elemento `Footer.kwFooter` detectado previamente: seleccione **Usar el elemento encontrado como pie de página**, haga clic en <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Browse_Button.gif?s=3673db30dda4a3293aec716853588b55" alt="Botón Examinar" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="21" height="20" data-path="images/flexi-capture/fls/Browse_Button.gif" /> y seleccione el elemento `Footer.kwFooter`.

    <Frame>
      <img src="https://mintcdn.com/abbyy/8aWHPAJyzWmTqglX/images/flexi-capture/fls/tutorial3_26_6.png?fit=max&auto=format&n=8aWHPAJyzWmTqglX&q=85&s=70b7018b068999171888a3ff75203a36" alt="Captura de pantalla de la pestaña Pie de página del cuadro de diálogo Propiedades de SearchElements.InvoiceTable en ABBYY FlexiLayout Studio, con la opción Usar el elemento encontrado como pie de página seleccionada y configurada como SearchElements.Footer.kwFooter." width="431" height="455" data-path="images/flexi-capture/fls/tutorial3_26_6.png" />
    </Frame>
  </Step>

  <Step title="Defina las columnas maestras">
    Haga clic en la pestaña **Filas**. Algunas columnas pueden contener entradas de varias líneas, por lo que debe especificar columnas maestras para detectar las filas. Seleccione **Usar columnas maestras para detectar filas**, haga clic en <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Browse_Button.gif?s=3673db30dda4a3293aec716853588b55" alt="Botón Examinar" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="21" height="20" data-path="images/flexi-capture/fls/Browse_Button.gif" /> y establezca las columnas maestras en el siguiente orden de prioridad:

    * **Total**: la columna principal, ya que siempre contiene datos y a cada entrada le corresponde una fila de la tabla.
    * **Cantidad**: la columna secundaria, que se utiliza si FlexiLayout Studio no detecta **Total**.
    * **Precio unitario**: la columna terciaria, que se utiliza si no detecta ni **Total** ni **Cantidad**.

    <Frame>
      <img src="https://mintcdn.com/abbyy/8aWHPAJyzWmTqglX/images/flexi-capture/fls/tutorial3_26_7.png?fit=max&auto=format&n=8aWHPAJyzWmTqglX&q=85&s=444df4f217866eba9a7be6842251d490" alt="Captura de pantalla de la pestaña Filas del cuadro de diálogo Propiedades de SearchElements.InvoiceTable en ABBYY FlexiLayout Studio, con Usar columnas maestras para detectar filas seleccionado y Total, Cantidad y UnitPrice como columnas maestras." width="431" height="455" data-path="images/flexi-capture/fls/tutorial3_26_7.png" />
    </Frame>
  </Step>

  <Step title="Restringir la posición de la tabla">
    Haga clic en la pestaña **Relations**. Las columnas buscadas se encuentran a la izquierda del nombre de la columna **Sales**, separadas por un pequeño espacio, por lo que debe establecer la siguiente restricción:

    * **A la izquierda de** el elemento `TableHeader.kwSales`, **Offset** = -40, **Reference boundary** = **Left**

    <Tip>
      Al seleccionar los valores de desplazamiento, analice las propiedades geométricas (el tamaño y los límites) de los objetos de referencia y de los objetos buscados detectados durante el prerreconocimiento. De lo contrario, determine estos valores mediante prueba y error.
    </Tip>
  </Step>

  <Step title="Haga coincidir y compruebe la columna Cantidad">
    Haga coincidir el FlexiLayout con las imágenes de prueba. FlexiLayout Studio detecta el elemento de tabla en todas las imágenes en las que aparece. En algunas imágenes, la columna **Cantidad** también incluye artefactos no deseados de la columna anterior. Para separar los datos útiles del ruido, especifique el tipo de contenido que puede contener la columna.
  </Step>

  <Step title="Configure el tipo de contenido Quantity">
    Abra el cuadro de diálogo **Propiedades** del elemento **InvoiceTable** y haga clic en la pestaña **Columnas**. Abra el cuadro de diálogo **Propiedades** de la columna **Cantidad**, seleccione **Comprobar tipo de contenido** y, en la lista desplegable **Tipo de contenido de columna**, seleccione **Número**.

    <Frame>
      <img src="https://mintcdn.com/abbyy/8aWHPAJyzWmTqglX/images/flexi-capture/fls/tutorial3_26_8.png?fit=max&auto=format&n=8aWHPAJyzWmTqglX&q=85&s=f9b88f0e33915159a4be7cddf32467c2" alt="Captura de pantalla del cuadro de diálogo Propiedades de la columna Cantidad en ABBYY FlexiLayout Studio, con la opción Comprobar tipo de contenido seleccionada y Número seleccionado en la lista desplegable Tipo de contenido de columna." width="462" height="377" data-path="images/flexi-capture/fls/tutorial3_26_8.png" />
    </Frame>
  </Step>

  <Step title="Verifique la columna">
    Haga coincidir el FlexiLayout con las imágenes de prueba y confirme que la columna **Cantidad** no contenga datos no deseados.
  </Step>

  <Step title="Establezca el elemento de origen del bloque">
    Para describir la ubicación del bloque **InvoiceTable**, seleccione **Source element**, haga clic en <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Browse_Button.gif?s=3673db30dda4a3293aec716853588b55" alt="Botón Examinar" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="21" height="20" data-path="images/flexi-capture/fls/Browse_Button.gif" /> y especifique el elemento **InvoiceTable** como elemento de origen.
  </Step>
</Steps>
