> ## 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.

# Automatización de reglas de negocio

> Agregue reglas de script a un Skill de documento con JavaScript: configure campos de lectura y escritura, haga referencia a columnas de tabla y devuelva resultados de validación.

Agregue reglas de script a un Skill de documento para comparar valores de campos, validar condiciones o cambiar valores de campos mediante programación.

Para agregar una regla avanzada de script, haga clic en **Nueva regla** en las Propiedades del campo y elija el tipo de regla de script. En esta página se describe cómo configurar la regla y escribir su código JavaScript.

<div id="set-up-an-advanced-script-rule">
  ## Configurar una regla avanzada de script
</div>

Al configurar una **regla avanzada de script**, especifique los campos que utilizará el script como referencia.

<div id="configure-fields">
  ### Configurar campos
</div>

* En la columna **Fields**, especifique todos los campos que el script necesita leer.
* En la columna **Changed by the rule**, especifique todos los campos que el script editará.

<Note>
  Si el script hace referencia a un campo que no se incluyó para leerlo, o escribe en un campo que no se incluyó para editarlo, la regla devuelve un error de acceso:

  * `Attempt to read data from inaccessible field`
  * `Attempt to write data to read-only field`
</Note>

<div id="configure-table-columns">
  ### Configurar columnas de tabla
</div>

Si el script hace referencia a columnas específicas de una tabla, seleccione esas columnas individualmente —no la tabla completa— al configurar la regla. Todas las columnas seleccionadas deben pertenecer a la misma tabla.

Por ejemplo, si la regla se aplica a **Column 1** y **Column 2** de **New table**, seleccione los siguientes campos:

<Frame caption="Configuración de la regla con Column 1 y Column 2 de 'New table' seleccionadas como campos procesados">
  <img src="https://mintcdn.com/abbyy/hVcX1G4uYung9LOg/images/vantage/skill-designer/screen_docskill_rules_irulecontext_rulesettings.png?fit=max&auto=format&n=hVcX1G4uYung9LOg&q=85&s=29b21a8d94d90784fa463c1fdbc38688" alt="Cuadro de diálogo de configuración de la regla que muestra Column 1 y Column 2 seleccionadas de New table" style={{ width: "60%" }} width="880" height="746" data-path="images/vantage/skill-designer/screen_docskill_rules_irulecontext_rulesettings.png" />
</Frame>

<div id="write-the-script">
  ## Escriba el script
</div>

Cambie al editor de scripts y escriba JavaScript que implemente su regla.

El script puede leer campos del documento, calcular valores, comparar valores y actualizar los campos que se marcaron como modificables durante la configuración. Use los botones de edición rápida en la parte superior del editor de scripts para insertar fragmentos de código habituales.

Si no se cumplen las condiciones de la regla, establezca [`Context.CheckSucceeded`](/es/vantage/documentation/skill-designer/document/rule-verification/context#checksucceeded) en `false`. Esto envía el documento a revisión manual.

<div id="related-topics">
  ## Temas relacionados
</div>

* [Verificación de reglas](/es/vantage/documentation/skill-designer/document/rule-verification/rule-verification)
* [Modelo de objetos](/es/vantage/documentation/skill-designer/document/rule-verification/object-model)
* [Scripts de ejemplo](/es/vantage/documentation/skill-designer/document/rule-verification/sample-scripts)
