Parámetros
Los parámetros son variables utilizadas en los datasources y eventos para obtener información específica de elementos dentro del formulario.
Estos parámetros se encuentran ubicados en la parte superior durante la creación o edición de un datasource o evento. Se presentan como un conjunto de botones, los cuales al ser presionados, insertan en la línea de código de la pestaña un @nombre_parametro. Al momento de ejecutar el datasource o evento, este valor será reemplazado por el dato requerido, lo que permite una mayor flexibilidad y adaptabilidad en la obtención de información dentro del formulario.
Explicación de parámetros
@cuestionarioId
- Descripción: Identificador del formulario.
- Uso:
@cuestionarioId
@respuesta(X)
- Descripción: Respuesta de un campo de la instancia del formulario.
- Uso:
@respuesta(X)
, donde X es el ID del campo. Ejemplo:@respuesta(12)
@businessKey.
- Descripción: Valores enviados a la instancia de Pragmatic Runtime desde la página web que utiliza los formularios.
- Uso: Se accede mediante
@businessKey
. Ejemplo:@businessKey.id
@parameter.
- Descripción: Parámetro de entrada recibido si el datasource es ejecutado desde otro datasource o evento utilizando el parámetro @ejecutarDS.
- Uso:
@parameter
. Ejemplo:@parameter(12)
@cuestionario.cabezal.
- Descripción: Acceder a un valor del cabezal del formulario.
- Ejemplo:
@cuestionario.cabezal.fechaInicio
@cuestionario.datosIniciales.
- Descripción: Acceder a un valor de los datos iniciales agregados al formulario.
- Ejemplo:
@cuestionario.datosIniciales.fechaInicio
@seguridad.
- Descripción: Acceder a un valor de las variables de seguridad.
- Ejemplo:
@seguridad.token
@variablesAmbiente.
- Descripción: Acceder a un valor de las variables de ambiente.
- Ejemplo:
@variablesAmbiente.endpoint
@accionCustom
- Descripción: Acceder a la clave de la acción custom presionada que hizo ejecutar dicho evento.
@instanciaCuestionarioId
- Descripción: Obtener el ID de la instancia del formulario.
@respuestas
- Descripción: Acceder al arreglo de objetos con las respuestas de la instancia del formulario.
@preguntas
- Descripción: Acceder al arreglo de objetos con los campos que tiene definida la instancia del formulario.
@respuestaArray(X, value)
- Descripción: Valida si el campo X contiene el valor value, retornando un booleano.
- Uso:
@respuestaArray(X, value)
, donde:X
es el ID del campo.value
es el valor de la respuesta.
Ejemplo:
Supongamos que tenemos un campo de nombre ‘Edad’ con ID 2
que tiene como respuesta el valor 30
.
Si se ejecuta el parametro de la siguiente forma:
const tieneEdad30 = @respuestaArray(2, 30) // El resultado será true
const tieneEdad25 = @respuestaArray(2, 25) // El resultado será false
@respuestaGrilla(X, column, condition, value)
- Descripción: Devuelve la respuesta de un campo de grilla de la instancia del formulario.
- Uso:
@respuestaGrilla(X, column, condition, value)
, donde:X
: es el ID del campo grilla.column
: es el identificador de la columna.condition
: es el valor de la condición para obtener la respuesta. Con este se busca la fila de la cual se quiere obtener la respuesta.value
: es el identificador de la columna cuyo valor se quiere obtener si se cumple la condición.
Ejemplo:
Supongamos que tenemos una grilla de dos columnas:
Nombre | Edad |
---|---|
Juan | 30 |
María | 25 |
En el que se ejecuta lo siguiente:
const edadMaria = @respuestaGrilla(1, 'Nombre', 'María', 'Edad')
El resultado será 25
. Esto se debe a que busca la fila donde la columna Nombre
es igual a 'María'
, y se quiere devolver el valor de la columna Edad
de esa fila.
@ejecutarOpcion(‘X’)
- Descripción: Devuelve los valores de opciones de una opción definida en la plataforma.
- Uso:
@ejecutarOpcion('X')
, donde ‘X’ es el nombre del conjunto de opciones.
@accion
- Descripción: Devuelve el nombre de la acción enviada al momento de ejecutar un evento o un datasource.
@respuestaValor
- Descripción: Se define solo cuando se ejecuta sobre un evento a nivel de campo. Devuelve el valor de respuesta del campo seleccionado.
@respuestaId
- Descripción: Se define solo cuando se ejecuta sobre un evento a nivel de campo. Devuelve el ID de la respuesta del campo seleccionado.
Ejemplo de uso
Evento de envío de datos a servidor
El siguiente código JavaScript realiza una solicitud PUT a un endpoint utilizando la instancia de Axios proporcionada por la herramienta.
const instanciaCuestionarioId = @instanciaCuestionarioId;
const endpoint = `${@variablesAmbiente.endpoint}/enviarRespuesta/${instanciaCuestionarioId}`;
const queryParams = { username: @seguridad.userId };
const headers = { Authorization: `Bearer ${@seguridad.token}` };
const body = {"preguntas": @preguntas(), "respuestas": @respuestas()}
return axios
.post(endpoint, body, { params: queryParams, headers: headers })
.then((response) => {
console.log("Datos enviados exitosamente");
})
.catch((error) => {
console.log("Error en el envío de datos", error);
});
El código JavaScript realiza lo siguiente:
Obtención del
instanciaCuestionarioId
: Se extrae el identificador de la instancia del formulario.Construcción del endpoint: Se crea la URL del endpoint al que se enviarán los datos.
Preparación de los parámetros de consulta y los encabezados: Se definen los parámetros de consulta (
queryParams
) y los encabezados (headers
) que se adjuntarán a la solicitud. En este caso, el parámetro de consulta consiste en un objeto con una claveusername
y el valor es eluserId
obtenido de@seguridad
. Los encabezados contienen información de autorización, con un token de autenticación obtenido de@seguridad
.Construcción del cuerpo de la solicitud: Se crea el cuerpo de la solicitud (
body
), que crea un objeto JSON con las claves"preguntas"
y"respuestas"
. Estos valores se obtienen de los parámetros@preguntas()
y@respuestas()
respectivamente.Ejecución de la solicitud con Axios: Se utiliza la instancia de la biblioteca Axios disponible en la funcionalidad para realizar la solicitud. Se envían el endpoint, el cuerpo de la solicitud, los parámetros de consulta y los encabezados como parte de la configuración de la solicitud.
Manejo de éxito y errores: Se manejan tanto el éxito como los errores de la solicitud.
Los parámetros empleados en el ejemplo son:
@instanciaCuestionarioId
: Identificador de la instancia del formulario.@variablesAmbiente.endpoint
: URL base del endpoint.@seguridad.userId
: ID de usuario para autenticación.@seguridad.token
: Token de autenticación.@preguntas()
: Parámetro que devuelve los campos definidos.@respuestas()
: Parámetro que devuelve las respuestas de los campos.