Resolución de reglas
La resolución de reglas es un algoritmo de búsqueda usado por un sistema para encontrar la instancia más adecuada de una regla para su ejecución en cualquier situación. La resolución de reglas se da siempre que se necesite una regla para lograr el procesamiento de casos. Por ejemplo, cuando los desarrolladores actualizan una regla de un acuerdo de nivel de servicio (SLA), la resolución de reglas identifica la instancia correcta de una regla de SLA, de manera tal que el caso se procese de acuerdo con las políticas de negocio más actuales.
Reglas sujetas a la resolución de reglas
La resolución de reglas aplica a la mayoría de las reglas que son instancias de clases derivadas de la clase de base abstracta Rule-. Los siguientes son ejemplos de instancias de reglas derivadas de la clase de base abstracta Rule-:
- Tipos de casos (Rule-Obj-CaseType)
- Propiedades (Rule-Obj-Property)
- Reglas de UI, como Sections (Secciones) (Rule-HTML-Section) y Harnesses (Rule-HTML-Harness)
- Expresiones de declaración (Rule-Declare-Expression)
- Páginas de datos (Rule-Declare-Pages)
La resolución de reglas no aplica a registros que son instancias de clases derivadas de cualquier otra clase de base abstracta, por ejemplo, Data-, System- o Work-. Los siguientes son ejemplos de instancias de reglas derivadas de estas clases de base abstracta:
- Id. de operador (Data-Admin-Operator-ID)
- Oyentes de correo electrónico (Data-Admin-Connect-EmailListener)
- Favoritos del operador (System-User-MyRules)
- Proceso de introducción de reglas (Work-RuleCheckIn)
Datos de entrada del algoritmo de resolución de reglas
El algoritmo de resolución de reglas usa datos de entrada que provienen de partes clave de una regla para identificar la instancia más apropiada.
Los datos de entrada del algoritmo de resolución de reglas incluyen lo siguiente:
- Claves de regla predefinidas que se usan como identificador único, por ejemplo, la clase Apply to: (Aplicar a:), el nombre de la regla y el tipo de regla
- Lista de rulesets del usuario
- Jerarquía de clase de la regla en cuestión
- Circunstancias como el valor de una propiedad o las restricciones de horario y fecha
- Disponibilidad de la regla
- Roles y privilegios de acceso del usuario
El resultado del proceso de resolución es la primera regla encontrada que coincide con todos los criterios de entrada. A medida que crea aplicaciones, las decisiones que toma al definir las partes clave de una regla se basan en cómo quiere que la resolución de reglas encuentre la regla.
Compruebe sus conocimientos con la siguiente actividad:
Disponibilidad de reglas
Las reglas que están sujetas al proceso de resolución de reglas tienen una configuración de disponibilidad. Puede actualizar las partes clave de una instancia de regla, como la disponibilidad. La disponibilidad actual de una regla es visible en el formulario de reglas que se encuentra junto al nombre o la descripción de una regla.
La configuración de la disponibilidad se usa para determinar si la regla está disponible para usarse durante la resolución de reglas. La disponibilidad de una regla también se usa para determinar si usted puede ver, copiar o editar una regla en Dev Studio.
Puede configurar la disponibilidad de una regla como uno de cinco valores: Available (Disponible), Not Available (No disponible), Blocked (Bloqueada), Final o Withdrawn (Retirada).
Completar la caché de reglas
Pega Platform™ usa un mecanismo de almacenamiento en caché llamado Rules Cache (Caché de reglas) para asegurarse de que la resolución de reglas funcione de manera eficiente.
Cuando su aplicación hace referencia a una regla, Pega Platform verifica la caché de reglas de la regla referenciada. Si la regla referenciada no está disponible en la caché de reglas, Pega Platform usa un proceso de múltiples pasos para completar la caché.
En la siguiente imagen, haga clic en los íconos + para obtener más información sobre el proceso que sirve para completar la caché de reglas.
Compruebe sus conocimientos con la siguiente actividad:
This Topic is available in the following Module:
¿Quiere ayudarnos a mejorar este contenido?