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

# Regla de script

> Cree reglas de script en ABBYY FlexiCapture para ejecutar algoritmos personalizados de validación y normalización, con acceso desde IRuleContext a conjuntos de datos en caché.

Las reglas basadas en scripts le permiten crear algoritmos personalizados complejos para la validación y normalización de documentos.

La regla de script se configura en la pestaña Rules de las [propiedades de la Definición de Document](/es/flexi-capture/templates/template-properties).

<div id="parameters">
  ## Parámetros
</div>

| Name    | Tipo                                                            | Acceso                             | Descripción             |
| ------- | --------------------------------------------------------------- | ---------------------------------- | ----------------------- |
| Context | [IRuleContext](/es/flexi-capture/appendix/scripts/irulecontext) | Según la configuración de la regla | El contexto de la regla |

Escriba en el módulo global de reglas los procedimientos que use en más de una regla. Ábralo desde el editor de scripts. En la lista desplegable de la Toolbar del editor de scripts, seleccione módulo de script global de reglas. También se puede acceder al módulo global de reglas desde el editor de Definición de Document (**Document Definition → Script Modules →** Rule Script...).

Las reglas de script pueden usarse para acceder a registros de un conjunto de datos en caché. Esto puede ser útil si necesita crear reglas de validación manualmente. Complete los siguientes pasos para acceder a registros en un conjunto de datos en caché:

1. Conéctese al conjunto de datos mediante el método [IRuleContext](/es/flexi-capture/appendix/scripts/irulecontext).DataSet.
2. Cree una consulta mediante el método [IDataSet](/es/flexi-capture/appendix/scripts/idataset).CreateQuery.
3. Agregue una o varias condiciones mediante el método [IDataSetQuery](/es/flexi-capture/appendix/scripts/idatasetquery).AddValue.
4. Use el método [IDataSet](/es/flexi-capture/appendix/scripts/idataset).GetRecords para obtener los datos que cumplan la consulta. Si necesita determinar cuántos registros cumplen la consulta, use el método [IDataSet](/es/flexi-capture/appendix/scripts/idataset).GetRecordsCount.
5. Puede obtener registros con números de índice específicos mediante el método [IRecordset](/es/flexi-capture/appendix/scripts/irecordset).GetRecord.

Un script o un módulo global puede usar clases y métodos de un [ensamblado externo](/es/flexi-capture/appendix/scripts/user-assembly). Adjunte el archivo del ensamblado en la pestaña .NET References de las Propiedades de Definición de Document.

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

* [Regla de script](/es/flexi-capture/templates/rule-script)
