¿Tienes dificultades al momento de crear reglas de negocio utilizando Scripts? ¡Averigua como ChatGPT te puede ayudar!

AI for effortless creation of simple scripting rules in common scenarios.

Jana Sprušilová
Consultor de Pruebas
?
Infórmate
Check icon A checkmark inside a circle signifying "yes" Minus icon A minus inside a circle signifying "no" PROS Icon A plus symbol representing positive aspects or benefits. CONS Icon A minus symbol representing negative aspects or drawbacks.

¿Por qué debería considerar el scripting en No-code/Low-code?

DecisionRules está diseñado para ser fácil de usar, permitiendo a los usuarios no técnicos crear y modificar reglas sin necesidad de tener conocimientos programáticos extensos. Hemos sido promotores de las plataformas no-code/low-code durante los últimos años. Sin embargo, pueden existir situaciones donde un enfoque programático/de scripting podría ser más adecuado para manejar lógica o datos más complejos. Este enfoque puede incluso simplificar tu trabajo con otras reglas. Al utilizar una regla de scripting, las demás reglas pueden seguir siendo sencillas y fáciles de gestionar, en lugar de aumentar su complejidad.

Ventajas de las soluciones con script

Las reglas de scripting son poderosas para automatizar los procesos de toma de decisiones en un entorno empresarial. Facilitan la definición de condiciones y acciones utilizando código, permitiendo una lógica flexible y personalizable adaptada a los requisitos de lógica específicos. Sin embargo, elaborar reglas de scripting eficaces a veces puede ser un reto, especialmente para aquellos que no están familiarizados con la codificación en general. 

Afortunadamente, con la ayuda de la IA como ChatGPT, puedes agilizar el proceso de escribir reglas de scripting, aprovechando sus capacidades de comprensión del lenguaje, y asistencia de codificación para crear reglas eficientes y precisas. 

ChatGPT es una herramienta eficaz que puede hacer maravillas gracias a sus modelos avanzados. Para comprender mejor el código que devuelve la IA, es conveniente conocer los componentes básicos de una regla de scripting. Estos pueden incluir las propiedades del modelo de entrada y salida, variables de reglas y como accederlas, casos de especiales de sintaxis, y mejores prácticas en general. Para más información acerca de las reglas de scripting, puedes referirte a la sección dedicada a ello en nuestra documentación. 

Crear el mensaje adecuado

Con el modelo de ChatGPT, que puede buscar y leer páginas web como nuestra documentación, puedes fácilmente enviar una solicitud para crear una regla de scripting, junto con tu tarea específica de cuál lógica estará evaluando la regla de scripting. Para obtener una respuesta más precisa, puedes introducir una prescripción del aspecto de la regla de scripting. Ve los siguientes ejemplos.

Consulta genérica con descripción de la regla de scripting

Acerca de la regla de Scripting:

La regla de scripting es un tipo de regla de decisión empresarial, donde los usuarios pueden crear reglas y condiciones utilizando lenguaje JavaScript. El código se escribe en el editor Mónaco. El modelo de entrada  y salida se representa en formato JSON. 

Cada regla tiene el siguiente esquema de entrada:

{

    "inputProperty": {}

  }

y salida:

{

    "outputProperty": {}

  }

La entrada y salida se pueden acceder en el código utilizando la notación de puntos - del ejemplo anterior input.inputProperty y se pueden almacenar en variables declaradas. El direccionamiento de las propiedades de salida funciona de la misma manera, output.outputProperty.

Asignar valores a las propiedades de salida asegura que esos valores pasen a la salida final de la regla. 

En la configuración de la regla, se pueden establecer variables de regla, que son variables con valores fijos. Por ejemplo, una tarifa de impuestos: taxRate = 0.15. Las variables de regla se pueden acceder utilizando la notación de puntos: ruleVariables.taxRate.

Sintaxis Especial

Existen algunas funciones y métodos prohibidos como:

- console.log(), para el registro en la consola de la regla de scripting utiliza log() en su lugar.

Al final de cada script creado debe existir una línea de código "return output;", para asegurarse que los resultados de la regla de script pasen a la salida de la regla.

Casos de uso comunes para las reglas de scripting )

1. Números Aleatorios

Supongamos que necesitamos generar un número aleatorio a partir de un rango particular.

Utiliza la instrucción genérica mencionada anteriormente con la siguiente instrucción, que contiene una descripción específica de la tarea.

Instrucción

Tarea: Necesito crear una simple regla de scripting en la aplicación de DecisionRules.io. Esta regla de script debe generar números aleatorios a partir del rango dado en la entrada. El modelo de entrada es:

{

  "Random_range_from": {},

  "Random_range_to": {}

};

El modelo de salida es:

{

  "Rand": {}

}

Respuesta

Como puedes ver, ChatGPT automáticamente incluye una explicación de la línea de código. Cuando copiamos el código generado dentro de una regla cuyo modelo de entrada-salida ya está listo, podemos ver que el código no tiene errores, ya que no hay líneas subrayadas. Ahora podemos guardar la regla y hacer pruebas en el Banco de Pruebas. Al ejecutar la regla con un rango de números especificado, se obtiene un número aleatorio correspondiente al rango.

2. Trabajar con matrices

Una tarea común para las reglas de scripting es de procesar datos en un array. En este caso, analizaremos una lista de transacciones para determinar varias métricas, como por ejemplo, el importe total, el valor promedio de la transacción, y las tres transacciones más altas. Utilizaremos un array de objetos “transacciones” y devolveremos un objeto con las métricas calculadas. Puedes utilizar la siguiente descripción de la tarea como ayuda.

Instrucción

Tarea: Analizaremos una lista de transacciones para determinar varias métricas, como por ejemplo, el importe total, el valor promedio de la transacción, y las tres transacciones más altas. Como modelo de entrada utilizaremos la propiedad "transacciones" y devolveremos un objeto con las métricas calculadas: "totalAmount", "averageTransactionValue", "topThreeTransactions". Utilizaremos la regla de scripting de DecisonRules.io y algunas funciones de array sencillas.

Respuesta 

En la respuesta anterior, puedes ver que ChatGPT creará automáticamente algún control delante de la lógica que especifiquemos, para ver si llega algún array a la entrada. Si no llega ningún array, imprime un mensaje de error en el log.

Además, en el código generado, puedes ver el uso de funciones que trabajan con el array de entrada. Ahora puedes copiar el código generado y pegarlo en el diseñador de reglas. Después de guardar y ejecutar la regla con un conjunto de datos de prueba, se puede ver que las funciones generadas funcionan bien y pasan correctamente los valores calculados a las salidas definidas.

Conclusiones

En conclusión, ChatGPT puede ser un valioso aliado en el proceso de redacción de reglas de scripting, ya que ofrece orientación para ayudar a los usuarios a crear reglas sencillas y eficaces para sus necesidades empresariales. Al aprovechar las capacidades de ChatGPT, puedes agilizar el desarrollo de reglas y liberar todo el potencial de la automatización de reglas de scripting.

En los ejemplos anteriores, ChatGPT ayuda a aclarar la estructura y proporciona asistencia para realizar los cálculos necesarios. Con esta ayuda, escribir la regla de scripting se convierte en un proceso sencillo, que te permite implementar rápidamente la lógica deseada de forma programática. Esta combinación de accesibilidad de low-code y asistencia de codificación mejorada por IA garantiza que puedas abordar eficazmente una amplia gama de requisitos de lógica empresarial.