Estructura de la encuesta de valores separados por pestañas
From LimeSurvey Manual
Importación y exportación de valores separados por tabulaciones de la estructura de la encuesta
Esta función está diseñada para facilitar el uso de un software de hoja de cálculo como LibreOffice, Excel o Google Docs para crear y editar encuestas. Elimina por completo la dependencia de los códigos SGQA.
Esta función admite la importación desde archivos de valores separados por tabulaciones (TSV) codificados en ASCII o UTF-8 que tienen una extensión .txt.
Empezando
La forma más sencilla es tomar una encuesta existente y exportarla en formato de valores separados por tabulaciones. Utilice el botón de exportación de encuesta normal y, en lugar de seleccionar el formato .lss, seleccione "Formato de valores separados por tabulaciones (*.txt)". Se guardará como un archivo de valores separados por tabulaciones en el formato adecuado (archivo Unicode delimitado por tabulaciones), con todos los encabezados de columna correctos.
Cualquier software de hoja de cálculo que admita valores separados por tabulaciones está bien (por ejemplo, OpenOffice o LibreOffice). LimeSurvey ignora cualquier formato dentro de la hoja de cálculo, pero siéntete libre de agregar alguno si te ayuda.
Habrá una fila para cada grupo, pregunta, subpregunta y respuesta. También hay filas para las variables de la encuesta global y para las variables de la encuesta específicas del idioma. El idioma principal aparecerá primero, seguido de los idiomas secundarios. Por lo tanto, si hay varios idiomas, todo el contenido del idioma base aparecerá primero (por ejemplo, todos los grupos, preguntas, subpreguntas y respuestas). A esto le seguirá una copia traducida para cada idioma secundario (con exactamente el mismo número y orden o filas para el conjunto traducido).
Las relaciones se infieren por proximidad. Entonces, las preguntas que siguen a un grupo son parte de ese grupo; las subpreguntas que siguen a una pregunta son parte de esa pregunta, y las respuestas que siguen a una pregunta son parte de esa pregunta. Por lo tanto, no necesita conocer los ID (gid, qid, sqid) para cualquier pregunta. Estos se calcularán automáticamente al momento de la importación. De hecho, este formato no utiliza gid, qid o sqid (o códigos SGQA) en absoluto.
Consejos
El objetivo de la importación/exportación de valores separados por tabulaciones es permitirle diseñar rápidamente su encuesta utilizando una hoja de cálculo. Esperamos que importe la hoja con frecuencia, verifique su validez utilizando la función "Mostrar lógica de encuesta" y la pruebe. Cada vez que la importe, obtendrá una nueva encuesta. Por lo tanto, es posible que termines con muchas encuestas parcialmente desarrolladas, pero está bien. Simplemente adquiera el hábito de realizar un seguimiento de cuál es el más reciente o elimine el anterior después de importar los nuevos. Dado que nunca utiliza códigos SGQA en el valor separado por tabulaciones, nunca tendrá que preocuparse por los códigos que asigna LimeSurvey para las claves principales de encuesta, grupo, preguntas y respuestas. Así que siéntete libre de importar y exportar tantas veces como quieras.
Aquí hay algunas cosas convenientes que puede hacer con este enfoque para crear instrumentos:
- Use las mismas respuestas para muchas preguntas. Simplemente copie las filas 'A' y péguelas después de cada pregunta que debería tener el mismo conjunto.
- Use las mismas subpreguntas para muchas preguntas. Simplemente copie las filas 'SQ' y péguelas después de cada pregunta que las necesite.
- "Looping" - use el mismo grupo muchas veces. Una vez que el grupo esté como lo desea, cópielo tantas veces como sea necesario. Utilice el filtrado de Excel para ver solo las filas 'G' (para grupos) y utilice la función de arrastre de columnas de Excel para actualizar las ecuaciones de relevancia para cada grupo (por ejemplo, para un censo, la primera relevancia podría ser "numPersonas > 1", la El siguiente debería ser "numPeople > 2". La función de arrastre actualizará automáticamente el número). Filtre por filas 'Q' y asegúrese de que cada pregunta tenga un valor único (por ejemplo, digamos que nombra sus variables g1_q1, g1_q2, g1_qN, use buscar/reemplazar para convertir g1 a g2 el segundo grupo; g3 para el tercero, etc.) .
- Reordenación de preguntas/grupos. Simplemente reordene las filas del archivo de hoja de cálculo.
- Probando módulos de encuesta. Para encuestas largas, es posible que desees dividir las pruebas en módulos. Simplemente cree nuevos archivos de hoja de cálculo para cada módulo y elimine las filas que no necesite. Esto evita la necesidad de ingresar muchos datos para probar secciones posteriores de la encuesta.
- Prueba de preguntas obligatorias. Una queja común no es la necesidad de hacer que muchas preguntas sean obligatorias, sino la necesidad de desactivar la función obligatoria para las pruebas. Simplemente cree la hoja de cálculo maestra con el conjunto obligatorio de los valores finales deseados. Luego, para probarlo, simplemente elimine la columna "obligatoria" y guarde la versión de prueba de la hoja de cálculo. Cuando importe esa versión, ninguna de las preguntas será obligatoria. Una vez que haya terminado las pruebas, importe la copia maestra.
- Configuración predeterminada. En lugar de utilizar la GUI, puede ingresar los valores predeterminados que desee en la columna predeterminada. Esto es especialmente útil para los casos en los que la GUI no le permite ingresar el valor deseado, como expressions para establecer el valor predeterminado para los elementos de la lista (como completar una lista a partir de un [[Participantes de la encuesta|participante de la encuesta] ] atributo).
- Traducción. Puedes crear copias de tu hoja de cálculo, una por idioma. Incluya todas las filas para el idioma principal, luego cópielas y péguelas a continuación, y use la función de arrastrar para cambiar el campo de idioma al idioma de destino. Estos pueden distribuirse a sus traductores y reintegrarse en un único archivo de hoja de cálculo cuando hayan terminado.
- Configuración masiva de atributos avanzados de preguntas. Es posible que desee que todas sus ecuaciones comiencen a ser visibles (para que pueda ver sus valores a medida que recopila datos), pero luego ocultarlas todas antes de pasar a producción. Simplemente filtre la hoja de cálculo por clase = 'Q' y tipo de pregunta = '*' (ecuación), y establezca siempre_hide en 1 para cada una de esas preguntas. De manera similar, digamos que después de crear la encuesta, usted decide qué preguntas deben aparecer en las estadísticas públicas. En lugar de editar cada pregunta a través de la GUI, filtre por clase = 'Q' y establezca public_statistics = 1 para todas las preguntas que deberían estar visibles en las estadísticas.
- Buscar y reemplazar. Supongamos que decide que necesita cambiar algunas frases en todas sus preguntas, puede usar Excel para buscar y reemplazar para realizar esos cambios. De manera similar, supongamos que decide cambiar el nombre de sus variables en masa, buscar y reemplazar puede venir al rescate. Si necesita buscar y reemplazar basado en expresiones regulares, puede seleccionar la columna deseada, copiarla a un editor de texto, buscar y reemplazar y pegar la columna nuevamente en la hoja de cálculo.
- Obteniendo aprobaciones '. Si está investigando, es posible que tenga una junta de revisión institucional que insista en ver el texto de las preguntas. Esta puede ser una manera conveniente de compartirlo. Lo mismo ocurre con las discusiones con un cliente.
- Consenso del equipo. Si está intentando lograr que un grupo se ponga de acuerdo sobre la redacción o la apariencia de una pregunta o grupo, puede crear un prototipo/editar rápidamente la hoja de cálculo, importarla y mostrarle al equipo (a través de una pregunta o una vista previa del grupo) exactamente lo que verán los usuarios. . De esa manera, puede obtener la aprobación del equipo antes de que abandonen la sala en lugar de tener que documentar los requisitos, crearlos y obtener aprobación en reuniones futuras.
- Actualización desde otros formatos de encuesta. Si su encuesta está en XML, Word u otro formato, puede crear un proceso de traducción para asignarla a este formato. Aunque también podría intentar mapear al formato .lss, la ventaja de este formato es que no requiere que realice un seguimiento de las relaciones de clave externa entre grupos, preguntas, subpreguntas, respuestas y valores predeterminados.
Limitaciones
- Por diseño, esta característica solo funciona correctamente para encuestas que usan nombres qcode (en lugar de SGQA). Esta característica supone que los nombres de las variables (identificadores de preguntas) son únicos en toda la encuesta. Los nombres de las subpreguntas se pueden repetir, siempre que sean únicos dentro del alcance de una pregunta en particular.
Formato de archivo
Generales
Usamos el mismo conjunto de encabezados de columna para múltiples propósitos. Las primeras 14 columnas tienen diferentes propósitos dependiendo del tipo de entidad (por ejemplo, grupo, pregunta, respuesta). Las columnas restantes son una lista alfabética de los nombres de los campos de la base de datos para los códigos de preguntas avanzadas. A continuación se muestra la sintaxis para cada tipo de entidad.
Las primeras 14 columnas son:
- id (New in 3.14.0 )
- related_id (New in 3.14.0 )
- class
- type/scale
- nombre
- relevancia
- texto
- ayuda
- idioma
- validación
- obligatorio
- otro
- predeterminado
- same_default
Parámetros globales de la encuesta
Hay una fila por parámetro en la tabla de encuestas.
- class => 'S'
- name => nombre del campo de base de datos
- text => valor
Parámetros específicos del idioma de la encuesta
Hay una fila por campo por idioma en la tabla Surveys_languagesettings. Todas las entradas para un idioma determinado se recopilan antes de realizar la inserción en esa tabla.
- class => 'SL'
- name => nombre del campo de la base de datos
- text => valor
- language = > idioma
Grupos
Una fila de grupo por idioma de la encuesta (p. ej., habría 3 filas de grupo si la encuesta tiene 3 idiomas).
- id => identificador numérico único para el grupo, comenzando con el número 1, use el mismo ID para idiomas adicionales que pertenecen a grupo actual
- class => 'G'
- name => group_name - el identificador único para el grupo
- relevance => grelevance - la ecuación de relevancia a nivel de grupo, ¡sin llaves!N !#text => descripción -- la descripción específica del idioma del grupo
- language => idioma -- el idioma del grupo (por ejemplo, 'en')
Preguntas
Una fila de preguntas por idioma de la encuesta (por ejemplo, habría 3 filas de preguntas si la encuesta tiene 3 idiomas). Se supone que las preguntas pertenecen al grupo que las precede.
- id => identificador numérico único para la pregunta, comenzando con el número 1, use el mismo ID para idiomas adicionales que pertenezcan a la pregunta actual
- class => ' Q'
- type/scale => tipo -- el (normalmente una letra) tipo de pregunta (p. ej., 'M' es opción múltiple)
- name => título -- el nombre de pregunta único (la raíz del sistema de nombres qcode)
- relevance => relevancia - la ecuación de relevancia para la pregunta
- text => pregunta - el idioma -texto específico de la pregunta
- help => ayuda -- el texto de ayuda específico del idioma
- language => idioma -- el idioma del grupo (por ejemplo, 'en')
- validation = > preg -- ¡el criterio de validación de expresión regular opcional para la pregunta
- mandatory => obligatorio -- 'Y' si es obligatorio
- other => other -- 'Y' si la opción "Otro" debería estar disponible (solo para algunos tipos de preguntas)
- default => default -- si está configurado, este valor se inserta en la tabla de valores predeterminados para esta pregunta
- same_default => Same_default -- 'Y' para verdadero, en cuyo caso cualquier valor predeterminado establecido para el idioma principal se aplica a otros idiomas
Subpreguntas
Una fila de subpreguntas por idioma de la encuesta. Se supone que las subpreguntas pertenecen a la pregunta que las precede.
- id => mismo identificador numérico único que se utiliza para las preguntas. Las subpreguntas deben usar el siguiente valor disponible, los ID de pregunta y subpregunta deben ser diferentes (por ejemplo, use el ID 1 para la pregunta y los ID 2, 3 y 4 para las subpreguntas que pertenecen a la pregunta 1, el ID de la siguiente pregunta debe ser 5, etc.). Utilice el mismo ID de subpregunta para idiomas adicionales que pertenecen a las subpreguntas actuales.
- class => 'SQ'
- type/scale => scale_id -- 0 o 1, dependiendo del tipo de pregunta (por ejemplo, el texto de matriz tendrá dos escalas)
- name => título - el "nombre" de la subpregunta, por ejemplo, el utilizado para excluir_all_others
- relevance => relevancia -- (Futuro) para respaldar la relevancia a nivel de subpregunta
- text => pregunta -- el texto específico del idioma de la subpregunta
- help => ayuda -- (Futuro) para admitir ayuda a nivel de subpregunta
- language => idioma -- ¡el idioma de la subpregunta
#validation => preg -- (Futuro) para admitir la validación de expresiones regulares a nivel de subpregunta (por ejemplo, para partes de direcciones)
- mandatory => obligatorio -- (Futuro) para admitir la validación de expresiones regulares a nivel de subpregunta (por ejemplo, hacer solo unas pocas subpreguntas obligatorio)
- default => default -- si está configurado, entonces este es el valor predeterminado para la subpregunta (insertado en la tabla de valores predeterminados)
- same_default => Same_default -- si está configurado, entonces el valor predeterminado para el idioma principal se utiliza para todos los demás idiomas
Respuestas
Una fila de respuestas por idioma de la encuesta (por ejemplo, habría 3 filas de respuestas si la encuesta tiene 3 idiomas). Se supone que las respuestas pertenecen a la pregunta que las precede y están en el orden de clasificación deseado.
- id => use el mismo ID que el ID de la pregunta a la que pertenece
- class => 'A'
- type/scale => scale_id -- 0 o 1 (por ejemplo, para escala dual)
- name => code -- el identificador único de respuesta
- relevance => Assessment_value -- si se usa la opción de evaluación , ¡este es el valor de evaluación para la respuesta
- text => respuesta: el texto específico del idioma de la respuesta
- language => idioma: el idioma para esta respuesta (por ejemplo, 'en')
Evaluaciones
Una fila de evaluación por idioma de la encuesta (por ejemplo, habría 3 filas de evaluación si la encuesta tiene 3 idiomas). Las evaluaciones se escriben al final del archivo.
- id => identificador numérico único para la evaluación, comenzando con el número 1, use el mismo ID para idiomas adicionales que pertenecen a la evaluación actual
- related_id => id del grupo para ¡a qué evaluación actual pertenece
- clase => 'AS'
- tipo/escala => alcance de la evaluación: T-Total, grupo G
- nombre => nombre
- texto => mensaje
- min_num_value => Mínimo
- max_num_value => Máximo
- language => idioma - el idioma para esta respuesta (por ejemplo, 'en')
Cuotas
Una fila por cuota. Las cuotas se escriben al final del archivo.
- id => identificador numérico único para la cuota, comenzando con el número 1
- class => 'QTA'
- name => nombre de la cuota
- obligatorio => límite
- other => acción de cuota
- default => activo
- same_default => URL de carga automática
Configuración de idioma de cuota
Una fila de cuota por idioma de la encuesta. Se supone que la configuración del idioma de la cuota pertenece a la cuota que la precede.
- id => identificador numérico único para la configuración del idioma de la cuota, comenzando con el número 1. ¡Cada fila para diferentes idiomas de la encuesta debe tener ID diferentes
- related_id => ID de cuota de la cuota a la que pertenece esta configuración
- class => 'QTALS'
- relevance => mensaje
- text => URL
- help => Descripción de URL
#idioma => idioma: el idioma de esta cuota (por ejemplo, 'en')
Miembros de la cuota
Una fila por miembro de la cuota, no depende del idioma. La fila de miembros de la cuota debe colocarse inmediatamente después de la pregunta a la que se refiere. Se supone que los miembros de la cuota pertenecen a la pregunta que los precede.
- id => identificador numérico único para los miembros de la cuota, comenzando con el número 1
- related_id => ID de la cuota a la que pertenece este miembro. N!#class => 'QTAM'
- name => código de respuesta
Condiciones
Una fila por condición, no depende del idioma. La fila de condición debe colocarse inmediatamente después de la pregunta a la que se refiere. Se supone que las condiciones pertenecen a la pregunta que las precede.
- id => identificador numérico único para la condición, comenzando con el número 1.
- related_id => ID de la pregunta relacionada, si corresponde
- clase => 'C'
- tipo/escala => escenario
- nombre => nombre del campo de respuesta
- relevancia => operador de comparación
- texto => respuesta esperada