Saltar al contenido principal
Context es un objeto global que proporciona acceso al documento que se está procesando, sus fields y los parámetros de la transacción asociada. Establezca CheckSucceeded para indicar si la regla se cumplió.

Uso

Una regla lee campos mediante Context, los comprueba y comunica el resultado estableciendo CheckSucceeded y ErrorMessage. Por ejemplo, haga que la regla falle con un mensaje personalizado cuando falte el campo Total o esté vacío:
Para ver más patrones —comparaciones numéricas, requisitos condicionales y validación de tablas—, consulte Scripts de ejemplo.

Propiedades

CheckSucceeded

Type: boolAccess: Lectura y escritura Indica si se cumple la condición de la regla. El valor predeterminado es true. Establézcalo en false si la condición no se cumple. En ese caso, el mensaje de error predeterminado que se muestra al operador es Error in the rule <rule_name>: <field_name>. Para personalizar el mensaje, establezca la propiedad ErrorMessage.
Solo se genera un error cuando el script establece CheckSucceeded en false. Si el script no lo establece explícitamente, no se muestra ningún error, aunque no se cumplan las condiciones de la regla.

CurrentField

Type: FieldAccess: De solo lectura El campo que comprueba la regla. En el caso de campos repetibles en reglas repetibles, esta es la instancia específica que se está comprobando en la llamada actual. Devuelve null si la regla hace referencia al documento completo.

Document

Tipo: DocumentAcceso: De solo lectura El documento sobre el que se ejecuta la regla.

ErrorMessage

Tipo: cadenaAcceso: Lectura y escritura Mensaje personalizado que se muestra cuando el script establece CheckSucceeded en false. Si no se establece, el mensaje predeterminado es Error in the rule <rule_name>: <field_name>.

Transaction

Type: TransactionAccess: De solo lectura La transacción actual.

Métodos

Un script solo puede leer los campos incluidos para lectura y escribir en los campos marcados como editables al configurar la regla. Si se hace referencia a cualquier otro campo, la regla falla con un error de acceso (Attempt to read data from inaccessible field o Attempt to write data to read-only field). Consulte Automatización de reglas de negocio.

GetField

Obtiene un Field por nombre o identificador. Devuelve null si no existe ningún campo con ese nombre. Usa la ruta completa para referirte a los campos dentro de un grupo; por ejemplo, BusinessUnit/Address. Cuando se usa en una regla repetible, GetField devuelve secuencialmente cada instancia procesada del campo. De lo contrario, devuelve la primera instancia de un campo repetible.
Pasa el nombre del campo como un literal de cadena, no como una variable. El preprocesador del script reemplaza el nombre literal por el identificador del campo antes de la ejecución; las variables no se procesan.

GetFields

Devuelve todos los objetos Field con el nombre especificado; resulta útil para iterar por cada instancia de un campo repetible, incluida cada celda de una columna de una tabla. Devuelve null si no existe ningún campo con ese nombre.
Se aplica la misma restricción del preprocesador que en GetField: pase un literal de cadena, no una variable.

GetCatalogRecord

Obtiene un Record de un catálogo de datos (base de datos externa). Use este método para comparar los valores de los campos del documento con los valores de los campos del catálogo.
Disponible solo si el catálogo tiene configurado un identificador de registro (por ejemplo, un identificador de proveedor).

SkillParameter

Obtiene un SkillParameter por nombre. Lea su valor en la propiedad Value del objeto devuelto; por ejemplo, Context.SkillParameter("Threshold").Value.
Disponible solo si el skill de documento tiene al menos un parámetro.