Contenido

Adicionar consecutivos, modificar registros ya completados, reemplazar registros y descartar información.

Cuando desee adicionar un consecutivo o serial a los formularios, realizar un formulario que permita una posterior modificación o actualización de los datos, reemplazar un registro e incluso descartar información es necesario emplear una llave.

¿Qué es una llave?

Una llave o key es un identificador único. Estas llaves cumplen con una política de llaves que define como se comportará la información con respecto a la llave.

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

En Editor Web:

Ir a Archivo y allí en la opción llaves

Se muestra la página de gestión de casos y en la opción Llaves en el primer campo se selecciona la política de la llave y luego se indica  lo que será la llave en sí. Para hacer referencia a una pregunta del formulario recuerde iniciar con signo $ y colocar la pregunta entre corchetes así: ${Pregunta}

En Plantilla Excel:

En la pestaña settings, se encuentra una columna llamada key donde debe colocar la llave de la misma forma que en el editor web, y luego en la columna key_policy ingresa la política de llave. Recuerde que en este caso debe ir en inglés.

Nota: A partir de la versión 22.12 del servidor web, la llave que se especifique en un formulario del paquete (anteriormente grupo) se aplicará a todos los formularios del paquete, esto evitá situaciones como por ejemplo registros duplicados.

Políticas de llaves

Existen cuatro tipos o políticas de  llaves: Ninguna, combinar, reemplazar y descartar.

Ninguna (None)

Siempre crea el registro, es decir, guarda la información y la marca como buena sin importar si la llave es un dato repetido o no, esta es la política que se asume cuando no se especifica otra. Puede permitir que el valor se repita pero como lo ideal es que sea única es comúnmente usada para asignar un serial al formulario. Para esto, se coloca como llave serial().

En el editor web:

En Plantilla Excel:

Finalmente al completar cada formulario se obtendrá lo siguiente:

Si no quiere que el serial inicie en 1 sino en otro número puede ingresarlo en los paréntesis y la llave comenzara en el número siguiente al ingresado.

Ejemplo: serial (20)

Nota: Cuando se emplea una llave serial () no importa que especifique una política de llave diferente a none, siempre se comportará de la misma forma creando el correspondiente serial y adicionando el registro.

Llave secuencial (No única)

Es posible que desee que se cree un número de secuencia a partir de 1 cada vez que cambie la respuesta de otra pregunta. Por ejemplo, un nuevo número de secuencia para cada producto:

producto_a-1
producto_a-2
producto_b-1
producto_a-3

Estos se pueden generar usando la función seq():

${producto}-seq(producto)

La función toma un solo parámetro que es el nombre de la pregunta que determina qué valores determinarán la secuencia. Entonces, en el ejemplo del producto, hay 3 registros product_a. La próxima vez que se envíe un registro de product_a, el número de secuencia será 4. La próxima vez que se envíe un registro de product_b, el número de secuencia será 2.

Combinar (merge)

Actualiza o modifica la información de un registro previo que posea la misma llave con la nueva información. Es decir, los datos en el nuevo registro reemplazarán al registro anterior, excepto cuando la pregunta en el nuevo registro no fue respondida. Entonces se conservarán los datos antiguos.

Ejemplo:

Si usted quiere realizar una base de datos que se pueda modificar o actualizar, puede emplear el número de identificación como la llave, es así que cuando ingrese de nuevo esta cedula, mediante consultas al mismo formulario o linked_self puede leer los datos ingresados y actualizar los que considere. Para precargar los datos que ya tenía en la respuesta puede emplear la función once().

En el análisis vera que el registro anterior se marcará como erróneo con un motivo de combinado con… (Número del registro final)

Descartar (discard)

Ignora la información entrante, o marca el registro como erróneo (No se verá al exportar los datos)  en caso de que la llave se haya empleado previamente. Es decir descarta los nuevos registros, por lo que no es una opción común. Se puede usar cuando se desea que el primer registro enviado para una llave sea el autoritativo. En el análisis usted verá que se ingresó el dato pero lo verá marcado como erróneo junto con un mensaje que indica que fue descartado en favor de X, donde X es el número del registro inicial.

Ejemplo:

Aunque es la política de llave menos usada usted puede emplearla en un caso como el siguiente:

Cuando desee asegurarse que un usuario llene un formulario una única vez, puede emplear la cedula como llave junto con esta política de llave para que si intenta llenarlo una segunda o tercera vez sea marcado como erróneo. Sin embargo, la ventaja de emplear esta política de llave y no otro método para limitar el ingreso de la información, es que la persona puede completar el formulario e indicarle al administrador que cometió un error y cuál fue el ingreso correcto. Entonces mediante la herramienta de análisis, de ser la decisión del administrador, este podrá aprobar los cambios, lo que deberá hacer entonces es cambiar el registro bueno como erróneo y el que está marcado como erróneo pero que la persona que lo diligencio le indica que es correcto marcarlo como bueno. Así,   el  administrador le dará la posibilidad a la persona de corregir el error teniendo en cuenta que finalmente la decisión de aprobar o no el cambio depende de él.

Reemplazar (replace)

Como su nombre lo indica reemplaza un registro previo con uno nuevo que tenga la misma llave. Marca el registro anterior como erróneo colocando como motivo “Reemplazado por X” donde X es el número del nuevo registro.

A diferencia de merge esta política reemplaza toda la información independientemente se haya respondido o no la pregunta.

Ejemplo

Si usted desea realizar pruebas y darle al usuario la opcion de realizar intentos de entrenamiento pero guardar únicamente la respuesta del último intento realizado puede utilizar esta politica de llave asociando la cedula a la llave, de esta forma cada vez que el usuario realice un nuevo intento este será el definitivo sin importar lo que habia o no respondido previamente.

Puede descargar el ejemplo de Recolección de datos AQUÍ y experimentar el comportamiento de las distintas políticas de llaves.

Actualizaciones directas

Se puede seleccionar un registro para actualizarlo directamente en una tarea o directamente desde la página de análisis. En este caso, el registro antiguo siempre se reemplaza, es decir, el registro se marca como erroneo con mensaje “Reemplazado por...” y se crea un nuevo registro. Esto sucede incluso si la encuesta tiene una política de llave diferente.

¿Te ayudó este artículo?

Angee Ballesteros

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

Deja una Respuesta

Debes estar logueado para poder comentar.