Compartir a través de


Crear y editar reglas de negocio

 

Publicado: noviembre de 2016

Se aplica a: Dynamics CRM 2015

En Microsoft Dynamics 365, puede aplicar la lógica del formulario sin necesidad de escribir código JavaScript o desarrollar plug-ins. Las reglas de negocio proporcionan una interfaz declarativa básica para implementar y mantener reglas de negocio usadas con frecuencia que cambian rápidamente y que se aplicarán a los formularios principales y de creación rápida, y a una entidad, en la aplicación web y Microsoft Dynamics CRM para tabletas. Se aplica a los formularios principales y de creación rápida en el cliente de Outlook en los modos con conexión y sin conexión.

En este tema

Motivos para usar reglas de negocio

¿Qué pueden hacer las reglas de negocio?

¿Cómo se configuran las reglas de negocio?

Reglas de negocio del lado del servidor y compatibilidad de lógica IF-Else y AND/OR

Limitaciones de las reglas de negocio

Buscar los mensajes de error que se usan en reglas de negocio

Motivos para usar reglas de negocio

Las reglas de negocio proporcionan una sencilla forma declarativa de evaluar coherentemente la lógica de negocio en el cliente y el servidor, sin necesidad de escribir código. La evaluación de la lógica del lado del cliente es más inmediata porque se realiza cuando se abre y actualiza el formulario de registro, mientras que el lado del servidor proporciona evaluación lógica coherente en el servidor.

  • La reglas de negocios se ejecuta únicamente en el cliente, si el ámbito de reglas se establece en el nivel de formulario (todos los formularios o un determinado formulario). Las reglas se ejecutan cuando un formulario de registro se carga y actualiza.

  • La regla de negocio se ejecuta en el servidor y el cliente, si el ámbito de la regla se establece a nivel de entidad. Las reglas del lado servidor se ejecutan cuando se crea o se guarda un registro.

¿Qué pueden hacer las reglas de negocio?

Las reglas de negocio permiten un subconjunto de capacidades proporcionado por scripts de formularios. Puede definir condiciones y aplicar las siguientes acciones:

  • Establecer valores de campo

  • Borrar valores de campos

  • Establecer niveles de requisitos de campo

  • Mostrar u ocultar campos

  • Habilitar o deshabilitar campos

  • Validar datos y mostrar mensajes de error

Las reglas de negocio se pueden definir para aplicar a todos los formularios de entidad principales o de creación rápida que elija. También puede establecer la regla para aplicar a una entidad.

Puede transportar reglas de negocio de una organización a otra incluyéndolos en una solución y puede instalar soluciones que contengan reglas de negocio.

Ejemplos de cómo configurar o borrar valores de campos

Veamos un par de ejemplos. Con la primera regla, para cualquier compra inmediata, se aplica un descuento del 5%. Con la segunda regla, se desactivan todos los descuentos si el periodo de compra es desconocido,

La siguiente definición de regla muestra cómo configurar un valor de campo con un descuento del 5% para compras inmediatas.

Establecer campo en oportunidad en Dynamics CRM

La siguiente definición de regla muestra cómo eliminar un valor de campo - borrar todos los descuentos, para compras con un periodo de compra desconocido.

Acción para borrar campo en Dynamics CRM

Borrar campo en Dynamics CRM

¿Cómo se configuran las reglas de negocio?

Primero, debe contar con los privilegios necesarios para navegar a Configuración > Personalización. Para ello, debe tener el rol de seguridad Administrador del sistema o Personalizador del sistema. Para activar una regla de negocio, debe tener el privilegio de Activar reglas de negocio.

Nota

Las reglas de negocio solo funcionarán con Entidades actualizadas o entidades personalizadas.

Existen cuatro formas para visualizar, crear o editar reglas de negocio:

  • Solución > Entidad
    Desde una solución, como la solución predeterminada, se mostrará un nodo Reglas de negocio para todas las entidades.

    Reglas de negocio de la entidad de cuenta en CRM

  • Solución > Entidad > Campo
    Al ver un campo de entidad, encontrará un nodo Reglas de negocio que le mostrará únicamente las reglas de negocio que incluyen este atributo.

    Reglas de negocio sobre un campo en Dynamics CRM

  • Editor de formularios
    Desde el editor de formularios, puede usar el botón Reglas de negocio de la cinta de opciones para mostrar el Explorador de reglas de negocio en el lado derecho. Se mostrarán todas las reglas de negocio que se aplicarán solo para este formulario.

    Si crea una regla desde el editor de formularios, el ámbito predeterminado es para dicho formulario.Más información:Establecer el ámbito

    Reglas de negocio para el formulario en Dynamics CRM

  • Editor de formularios > Campo
    Cuando vea las propiedades de un campo que se usa en un formulario, verá una ficha Reglas de negocio que muestra las reglas de negocio que incluyen este atributo.

    Reglas de negocio sobre campos de formularios en Dynamics CRM

Si una regla existente se asemeja a una regla que desea crear, puede abrir la regla y usar el botón Guardar como para copiar una regla existente como punto de partida para una nueva regla.

Establecer el ámbito

En la parte derecha superior del formulario, use el campo Ámbito para establecer el ámbito para la regla.

Ámbito

Donde se ejecuta

Entidad

Todos los formularios y el servidor

Todos los formularios

Todos los formularios

Formulario específico

Sólo ese formulario

No puede seleccionar varios formularios específicos. Si elige Todos los formularios, la regla se aplicará a todos los formularios principales rápidos y al formulario de creación rápida, siempre que el formulario incluya todos los campos a los que hace referencia la regla. Si crea una regla de negocio nueva mediante el editor de formularios, el ámbito predeterminado es solo dicho formulario.

Reglas de negocio del lado del servidor y compatibilidad de lógica IF-Else y AND/OR

Anteriormente, tenía una capacidad para evaluar las reglas de negocio de un cliente individual. Para evaluar la lógica de reglas de negocio en el servidor y aplicarla a todos los clientes, tenía que proporcionar complementos, que son costosos de desarrollar y mantener. Establecer el ámbito de reglas de negocio a nivel de entidad proporciona una capacidad para evaluar la regla de compañía una vez que está en el servidor y aplicarla a todos los clientes sin escribir código. Puede mover la lógica para escenarios de uso general desde los complementos hasta las reglas de negocio de nivel de entidad. Además, proporcionamos compatibilidad para valores predeterminados de una regla de negocio. Por ejemplo, si Contoso hace negocios solo en Estados Unidos, se puede implementar una regla de negocio básica para al crear un cliente potencial entrante, el país o la región se establezca automáticamente como EE UU.

Nota

Cuando el ámbito está configurado como una Entidad y crea o modifica un registro mediante formularios, la regla se ejecuta en el lado del cliente, pero a continuación, se ejecuta de nuevo en el servidor. Por este motivo, evitamos crear una referencia circular a un campo si establece el ámbito como una entidad. Por ejemplo, no puede establecer Límite de crédito = Límite de crédito + 1000, porque incrementaría el valor una vez en el lado del cliente y luego intentaría ejecutarse de nuevo en el lado del servidor.

Para escenarios de negocio más complejos, necesitaba usar varias reglas de negocio que se evaluaban mediante el operador lógico AND. Todas las condiciones debían ser "true" para que se aplicaran las acciones. No había compatibilidad con If-Else o AND/OR. Esta funcionalidad se agrega ahora y le permitirá crear reglas de negocio más elaboradas con menos esfuerzo. El siguiente ejemplo de la regla de negocio usa la lógica If-Else:

Regla de negocio con lógica If-Else en Dynamics CRM

Hay algunas limitaciones que debe conocer:

  • Las instrucciones anidadas If-Else no se admiten.

  • No se admite la agrupación de expresiones en una condición.

  • Se pueden combinar expresiones con AND, o con OR, pero no con ambas.

Configurar condiciones

Si desea cambiar una regla de negocio activada, debe desactivarla para poder editarla.

Para agregar una condición, haga clic en el icono + y una nueva fila de condición aparecerá con los valores predeterminados establecidos. Escriba el nombre del campo para establecer Campo y, después, elija el Operador correspondiente. Las opciones del operador cambiarán según el tipo de datos del campo.

Se comprueban las condiciones siempre que se modifica algún campo al que hace referencia la condición.

Puede elegir tres tipos diferentes de condiciones:

  • Campo
    Use este tipo para comparar el valor de un campo del formulario con otro.

  • Valor
    Use este tipo para comparar el valor de un campo del formulario con un valor que introduzca.

  • Fórmula
    Esta opción solo aparece para los tipos de datos numéricos o de fecha. No aparece para los campos que contienen texto. Use este tipo para comparar el resultado de un cálculo simple que pueda usar un valor de otro campo del formulario o un valor que especifique.

Cuando haya acabado de especificar o modificar la regla, elija la marca de verificación para guardarla o en el icono (X) para rechazar los cambios. Para quitar una condición anteriormente guardada, coloque el cursor sobre la condición y elija el botón EliminarBotón Eliminar.

Configurar acciones

Para agregar una acción, elija el botón Agregar+ y tendrá las siguientes opciones:

  • Mostrar mensaje de error
    Use esta acción para establecer un mensaje de error en un campo si los datos que contiene no son válidos. El texto que especifique para el mensaje aparecerá con un icono de error cerca del campo.

    Mensaje de error en un campo de un formulario de Dynamics CRM

    El registro no se puede guardar mientras se muestra este mensaje. Después de corregir los datos del campo según las condiciones establecidas en la regla, el mensaje desaparecerá y el registro se podrá guardar.

  • Establecer valor de campo
    Elija los valores de Campo y luego Tipo. Hay tres tipos:

    • Campo
      Use este tipo para establecer el valor de un campo del formulario con el valor de otro campo.

    • Valor
      Use este tipo para establecer el valor de un campo del formulario con un valor que introduzca.

    • Fórmula
      Esta opción solo aparece para los tipos de datos numéricos o de fecha. No aparece para los campos que contienen texto. Use este tipo para establecer el valor en el resultado de un cálculo simple que pueda usar un valor de otro campo del formulario o un valor que especifique.

  • Establecer Requerido por la empresa
    Use este tipo para cambiar el nivel de requisito del campo. Las opciones son No requerido por la empresa y Requerido por la empresa. No hay ninguna opción para establecer esta opción como recomendada por la empresa.

  • Establecer visibilidad
    Use este tipo para cambiar si el campo se muestra en el formulario. Las opciones son Mostrar campo y Ocultar campo.

  • Bloquear o desbloquear campo
    Use este tipo para cambiar si el campo está habilitado en el formulario. Las opciones son Bloquear y Desbloquear. Cuando el campo está bloqueado, no se puede editar el valor del campo.

Tras definir una acción, puede cambiar el orden o eliminarla mediante las opciones disponibles cuando se coloca el cursor sobre la acción.

Establecer la descripción

Establecer una descripción es opcional. No se muestra en ningún otro lugar excepto en el editor de reglas de negocio. Pero se recomienda incluir una descripción de lo que se supone que la regla debe realizar y el motivo por el que se ha agregado.

Probar y activar las reglas de negocio

Antes de que un usuario pueda usar las reglas de negocio que ha creado, debe activarlas. Antes de habilitarlas, debe probarlas. Puede probar las reglas de negocio con el botón Vista previa en el editor de formularios.

Limitaciones de las reglas de negocio

Las reglas de negocio se proporcionan para ejecutar acciones comunes. Comparado con lo que un programador puede realizar mediante scripts de formularios, las reglas de negocio tienen limitaciones. Sin embargo, las reglas de negocio no se proporcionan para reemplazar scripts de formularios.

Estas son algunas limitaciones para el uso de reglas de negocio:

  • Las reglas de negocio se ejecutan solo cuando el formulario se carga y cuando los valores de los campos cambian. No se ejecutan al guardar un registro, a menos que el ámbito para la regla se establezca en el nivel de entidad.

  • Las reglas de negocio funcionan solo con campos. Si necesita interactuar con otros elementos visibles, como pestañas y secciones, dentro del formulario, deberá utilizar scripts de formulario.

  • Cuando establece un valor de campo mediante una regla de negocio, los controladores de eventos OnChange de dicho campo no se ejecutan. La finalidad es reducir la posibilidad de una referencia circular, que puede llevar a un bucle sin fin.

  • Si una regla de negocio hace referencia a un campo que no está presente en un formulario, la regla no se ejecutará. No habrá ningún mensaje de error.

  • Los campos Número entero que usan los formatos de Zona horaria, Duración o Idioma no aparecerán en el editor de reglas para las condiciones o acciones, por lo que no se podrán usar con reglas de negocio.

  • No puede agregar más de diez condiciones if-else en una regla de negocio.

  • Para Microsoft Dynamics CRM para tabletas, la definición de las reglas de negocio se descargan y almacenan en caché cuando se abre CRM para tabletas. Los cambios realizados en las reglas de negocio no se aplican hasta que CRM para tabletas se han cerrado y abierto de nuevo.

  • Cuando establece el valor de un campo de búsqueda, el texto del valor del campo principal que se establece en el formulario coincidirá siempre con el texto que está visible en la definición de reglas. Si el texto representa el valor del campo principal del registro que está estableciendo en los cambios de búsqueda, el valor establecido por la regla continuará usando la parte de texto del valor del campo principal definido por la regla. Para solucionar esto, actualice la definición de reglas para usar el valor del campo de nombre principal actual.

    Conviene saber que el valor establecido para una búsqueda tiene tres partes:

    • Name: El texto del valor de campo principal que ve en el formulario.

    • Id: El identificador único del registro. Estos son los datos que se guardan. Esto no está visible en el formulario.

    • LogicalName: El nombre de la entidad, como contact, account, o opportunity.

    La regla establecerá las tres partes de este valor. El valor de Id para un registro específico no cambia nunca, pero el valor de Name puede cambiar.

    Por ejemplo, si define una regla para establecer una búsqueda a un contacto que tenga Nombre completo de "Nombre antiguo", este texto es el Name que verá en la búsqueda cuando la establezca su regla de negocio, incluso aunque alguien cambie posteriormente el Nombre completo del contacto a "Nuevo nombre". El valor de Id de búsqueda se establecerá correctamente en el registro esperado, pero Name (que no se guarda) reflejará el valor de la definición de la regla en lugar del valor de Nombre completo actual del registro al que hace referencia.

Desactivar las acciones de las reglas

Excepto para mostrar mensajes de error, debe asegurarse de incluir una regla de negocio diferente para borrar las acciones que pueda haber aplicado. Por ejemplo, supongamos que tiene una regla en una entidad de cuenta que indica:

Si Método de contacto preferido es igual a "Teléfono"
establezca Teléfono del trabajo en Requerido por la empresa

Esto funcionará siempre que el campo Método de contacto preferido esté establecido en Teléfono. Pero si el campo Método de contacto preferido se cambia más adelante a otro valor, el campo Teléfono permanecerá establecido en Requerido por la empresa. Para borrar esta acción, es necesario incluir una regla independiente para aplicar la lógica siguiente:

Si Método de contacto preferido no es igual a "Teléfono"
establezca Teléfono del trabajo en No requerido por la empresa

La acción Mostrar mensaje de error es distinta porque evalúa automáticamente las condiciones usadas para establecer el mensaje de error y lo quitará si las condiciones dejan de ser true.

Buscar los mensajes de error que se usan en reglas de negocio

Si tiene más de un idioma aprovisionado para su organización, deseará localizar los mensajes de error que haya configurado. Cada vez que se establece un mensaje, el sistema genera la etiqueta. Si exporta las traducciones de su organización, puede agregar versiones localizadas de sus mensajes y luego importar las etiquetas nuevamente en Microsoft Dynamics 365, de modo que los usuarios que utilicen otros idiomas distintos del idioma base puedan ver los mensajes traducidos.

Ver también

Vídeo: Nuevas características de personalización de Microsoft Dynamics CRM - Reglas de negocio
Crear y editar procesos
Crear y diseñar formularios
Cree y edite vistas
SDK: Crear o editar el modo de iniciación de las reglas de negocio

© 2016 Microsoft Corporation. Todos los derechos reservados. Copyright