Jira+ScriptRunner: Behaviours, potencian y mejoran tus pantallas

Todos conocemos ScriptRunner, una herramienta muy útil a la hora de trabajar con Jira. Probablemente habremos trabajado con postfunciones, condiciones y listeners. Pero hoy vamos a hablar de los behaviours.

¿Qué son los behaviours?

 

Lo primero es explicar que un behaviour no es más que un comportamiento de un campo personalizado, pudiendo así configurar distintos funcionamientos de un campo dependiendo de la pantalla. Esto nos permite hacer campos obligatorios, ocultos o de sólo lectura para ciertas transiciones o proyectos específicos.

 

¿Cómo configuramos un behaviour?

 

Lo primero a la hora de configurar un behaviour es realizar un mapeo, es decir, definir donde se va a ejecutar tu comportamiento. Tenemos dos tipos de mapeos posibles:

  • Mapeo por proyecto, en el que elegimos en qué proyectos se va a ejecutar nuestro comportamiento, y además elegimos el tipo de tarea. En este tipo de mapeo, los comportamientos son sólo para la parte del técnico de Jira, por ejemplo, cuando crea o edita una incidencia, o si tiene alguna pantalla en el flujo de trabajo.
  • Mapeo de tipo Service Desk; en este mapeo, se selecciona un proyecto de Service Desk, y el tipo de solicitud del portal, siendo en este, cuando se crea una solicitud desde el portal, donde se va a ejecutar nuestro comportamiento.

En nuestro ejemplo, en el portal de Service Desk, vamos a tener un campo personalizado de tipo “selector en lista” y, dependiendo del valor de este campo, vamos a ocultar el siguiente campo o lo vamos a mostrar y hacer obligatorio.

Primero creamos nuestro behaviour al que llamaremos Demostración. Le añadimos una breve descripción.

 

Una vez creado, pulsamos sobre add mapping, seleccionamos que sea de tipo Service Desk y seleccionamos nuestro tipo de petición del portal.

Una vez configurado esto, procedemos a configurar nuestro script; para ello hemos de seleccionar los campos personalizados afectados. En nuestro behaviour pulsamos sobre Fields, y llegaremos a la siguiente página:

Aquí vamos a añadir nuestros campos, en mi caso el select list Demo Select List.

¿Cómo añadimos nuestro Script al behaviour?

 

Pulsamos sobre Add sever-side script, esto nos habilitará una consola donde desarrollar nuestro código de script.

El script consistirá en lo siguiente:

  • Obtenemos el campo que vamos a editar dependiendo del valor y nos lo guardamos en una variable.
  • Luego obtenemos el campo Demo Select List que es donde se va a ejecutar el script, y con el getFieldChanged() obtenemos su ID. Con el getValue() obtenemos el valor que tenga en el formulario.
  • Con la función setHidden() si ponemos false lo mostramos y si ponemos true lo ocultamos; con setRequired() si ponemos el valor de true lo hace obligatorio mientras que si ponemos false lo hace opcional.
  • Por ultimo setFormValue(null) nos vacía el valor que hubiera en el campo, por si se hubiera rellenado y luego decidido que no se tiene que mostrar.

 

 

Cuando entremos al portal lo veremos de la siguiente manera:

Cuando seleccionemos el valor Mostrar se vera de la siguiente manera:

Si se escribe un valor en el text-area y después escoges Ocultar, se pierde lo escrito; esto sirve para que no se envíe ningún valor a la incidencia si se ha ocultado.

 

 

¡Hasta aquí el ejemplo de hoy!

Esperamos que este artículo haya sido clarificador y sea de ayuda en tus futuras indagaciones del mundo de ScriptRunner y los behaviours.

¡Nos vemos a la próxima!

About the author

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR