Contenido

Valores estáticos



Los valores predeterminados estáticos se establecen cuando el formulario se abre por primera vez. Su función es similar a la función Once() pero a diferencia de esta no se puede hacer referencia a otra pregunta del formulario sino como su nombre lo indica a un valor único y estático, por lo cual el valor se escribe directamente sin comillas u otro signo.

Cómo se diseña (define en un formulario):  

En Editor Web:

Seleccione Por Defecto e indique el valor.

En plantilla Excel:

Escriba el valor en la columna default.

Valores predeterminados estáticos especiales



default
now()Para una pregunta de fecha o fecha-hora establece la fecha/hora actual
Nombre de una imagen en recursos compartidos incluyendo la extensión. Por ejemplo: logo.pngEn preguntas tipo imagen, puede emplear esto para establecer la imagen de recursos compartidos como valor predeterminado y usando la apariencia “annotate” permitir que el usuario edite la imagen.

Referenciar metadatos



Si bien dado que los valores por defecto se cargan al inicio del formulario no es útil hacer referencia a las preguntas. Debido a que los metadatos son datos precargados si se puede hacer referencia por defecto a estos. Tenga en cuenta que algunos metadatos como el nombre del dispositivo o nombre de usuario no aplican en formularios web.

Cómo se diseña (define en un formulario):  

En Editor Web:

Indique el metadato de forma similar a como haria referencia a una pregunta cualquiera.

En plantilla Excel:

Indique el metadato de forma similar a como haria referencia a una pregunta cualquiera.

Último valor guardado (last-saved)



Si está realizando varias entrevistas en las que tiene que ingresar las mismas respuestas cada vez, puede predeterminar la respuesta a la que se dio en la entrevista anterior. Por ejemplo, si está entrevistando a 20 personas en una ciudad, el nombre de la ciudad será el mismo para cada persona.

En la opción predeterminado escriba:

${last-Saved#question_name}

Donde “question_name” es el nombre de la pregunta respondida anteriormente de la que desea obtener el valor predeterminado.

Cómo se diseña (define en un formulario):  

En Editor Web:
En plantilla Excel:

Advertencia: requiere mínimo versión móvil 6.1 o superior y versión del servidor 20.04 o superior.

Valores dinámicos

Es posible establecer un valor predeterminado dinámico basando una respuesta inicial en la respuesta a una pregunta anterior. Esto se especifica como un cálculo.

Advertencia: Los cálculos se actualizan cada vez que cambia su fuente y también justo antes de que se guarde el formulario. Esto puede causar muchos problemas al usarlos para establecer valores predeterminados.

para evitar el problema de los cálculos continuos emplee las funciones once() o default().

once(${pregunta})
default(${pregunta})

Las funciones once() y default() funcionan de la siguiente forma:

  • Si usa la función once(), una vez la respuesta se haya definido, este valor no volverá a cambiar usando el cálculo predeterminado.
  • Si usa la función default(), si las dependencias del cálculo cambian, el valor se restablecerá, sin embargo, no se cambiará ni cuando se guarde el formulario ni cuando se inicialice el formulario. Esta última condición es importante si está continuando un formulario guardado o iniciando una tarea.

Ejemplo:

En el ejemplo siguiente q1 toma un valor que será usado por defecto en q2 y q4.

El comportamiento de q2 que usa once, permite que si se cambia q1, se conservará el primer valor como sugerido. En q4 con default, si cambia q1, cambia el valor por defecto al nuevo valor.

Digamos que inicialmente q1 es Hola, q2 y q4 sugieren por defecto Hola, si regresamos a q1 y lo cambiamos por Hola Mundo, entonces q2 permanece sin cambiar y q4 será Hola Mundo. Recuerde que este valor es un sugerido, porque si se cambia, tanto q2 como q4 adquieren los nuevos valores.

En el siguiente video podrá ver el funcionamiento de la función default():

Funcionamiento función default()

Cómo se diseña (define en un formulario):  

En Editor Web:
En plantilla Excel:

También puede usar el disparador del cálculo para obtener un resultado similar empleando la misma pregunta de referencia como disparador y por tanto el cálculo solo se actualizará cuando ese valor cambie.

Valores por defecto dinámicos en repeticiones

Se pueden agregar valores por defecto dinámicos, dado que es posible indicar una expresión que usa una combinación de referencia a la pregunta y xpath, la cual se evalua cada que se agrega una nueva instancia del grupo de repetición. (Ver Uso de Xpath)

Por ejemplo puede usar un valor de una instancia de repetición anterior como valor predeterminado para la instancia de repetición actual. Para ilustrar el ejemplo anterior, digamos que puede utilizar la especie de árbol especificada para el último árbol visitado como especie predeterminada para el siguiente árbol.

typenamelabeldefault
begin_repeatarbolÁbol
textespecieEspecie${arbol}[position() = position(current()/..) – 1]/especie

En la expresión predeterminada anterior, ${arbol} es una referencia a la repetición. La expresión [position() = position(current()/..) – 1] entre paréntesis dice que se filtre la lista de posibles instancias de repetición del árbol para incluir solo la que tiene una posición que es uno menos que la posición de la repetición actual. Finalmente, /especie especifica que se debe usar la pregunta de especie de la repetición. Esta es una combinación de la sintaxis de acceso directo (o referencia a preguntas) ${} de XLSForm para especificar nombres de preguntas y sintaxis XPath sin formato. (Ver Uso de Xpath)

¿Te ayudó este artículo?

Angee Ballesteros

Ing. Electrónica, Especialista en Ing. de Software

Deja una Respuesta

Debes estar logueado para poder comentar.