Ponderar respuestas

Estimados, buenos días.
Tenemos el siguiente inconveniente. Queremos representar diferentes valores y ponderarlos, pero si una ponderación se uso en un valor, para el siguiente no debería estar disponible.
Se me ocurrio que una solución puede ser darle una vuelta de roscar, y las que las preguntas sean las posiciones y las respuestas los valores, pero que otra opción similiar a la que adjunto puede haber?
GRacias desde ya.
Saludos.


Captura_encuesta.PNG

Captura_encuesta.PNG_thumb.png

Carolina,

entendemos tu inquietud y lamentablemente Kolla no posee un control de preguntas-respuestas que genere ese comportamiento.
Se nos ocurren las siguientes soluciones parciales:

  • Como lo presentas en la captura: combo con ponderación, no hay controles ante más de una selección igual.
  • Combo con elemento y en la etiqueta la ponderación, tampoco hay controles ante más de una selección igual, pero tal vez dado el contexto sea menos probable que repitan un elemento (creo que es lo que sugerís como vuelta de rosca).
  • Pregunta de texto libre, donde en la etiqueta figuren todas las opciones de elementos y luego las escriban en el orden que quieran, asumiendo que este orden será la ponderación del 1 al 10.

Ahora otra solución que impida el hecho de que se repitan las respuestas, es incluir un script en javascript que antes de terminar la encuesta controle que dentro del conjunto de preguntas que sea desean verificar no existan respuestas repetidas. Sin embargo esta solución es claramente más costosa en tiempo de implementación y complejidad.

Espero puedas encontrar una solución que se ajuste a tu problema,
te esperamos en el Taller para que nos cuentes más de este tipo de requerimientos, tal vez resulte en un nuevo tipo de pregunta para incorporar al módulo.
Saludos!

Equipo SIU-Kolla
Nicolás

Retomo este hilo y haciendo incapie en la última opción:
Ahora otra solución que impida el hecho de que se repitan las respuestas, es incluir un script en javascript que antes de terminar la encuesta controle que dentro del conjunto de preguntas que sea desean verificar no existan respuestas repetidas. Sin embargo esta solución es claramente más costosa en tiempo de implementación y complejidad.

Existe algun minimo ejemplo para realizar alguna prueba respecto de esto?
GRacias desde ya.

Saludos.

Buen día Carolina, no tenemos ejemplos armados de este tipo.
Pueden investigar el javascript que se genera para cada encuesta al cargarla para responder para tomar ideas.

Saludos.

2

Clara, buen dia.
Te consulto, en que archivos php debería agregar el funcionamiento para el java script?
Estaba viendo en kolla/aplicacion/php/nucleo, pero no me ubico.

Al generar el html de la encuesta de pruebas, ya identifique los campos númericos que debo controlar, pero segun lo que me indicaste, el control sería antes de terminar la encuesta no?

SI podes orientarme respecto del archivo que debo modificar, te lo agradecere.

Saludos y gracias desde ya.

Consulto nuevamente para ver si alguien puede ayudarme con la idea.
El java script que debo incorporar es relativamente sencillo y probe agregarlo en el botón TERMINAR ENCUESTA.
function terminar_encuesta()
{

    if ( confirm("La encuesta será registrada como definitiva, no podrá volver a cambiar las respuestas dadas ¿Desea continuar?") == true ){

        var num1 = document.getElementById("c_pk_12848").value;
        var num2 = document.getElementById("c_pk_12849").value;
        var num3 = document.getElementById("c_pk_12850").value;
        var num4 = document.getElementById("c_pk_12851").value;
        var num5 = document.getElementById("c_pk_12852").value;

        var resultado = parseFloat(num1)+parseFloat(num2)+parseFloat(num3)+parseFloat(num4)+parseFloat(num5);

        if (resultado <= 5){
            return true;}
        else{

            echo "Las respuestas superan el total de votos!!"
            return false;}
     }else return false;
}

Pero no hace nada.
Basicamente lo que debe hacer es sumar los valores de los campos y que no sea superior a x valor, en este caso 5.

El js en donde figura la función es helper_encuestas.js

Alguna idea, ayuda sugerencia etc etc de que estoy haciendo mal o como debería hacerlo?
GRACIAS

Carolina,
la clase php/nucleo/formulario/vista/builder_base.php es la clase básica que va armando el formulario de encuesta y que va metiendo el código javascript que corresponde.

Además en la clase www/js/encuestas/helper_encuestas.js pueden ver cómo se implementan parte de los controles que se hacen de manera dinámica en las encuestas. Por lo que contas ya la encontraron y están trabajando sobre eso.
Quizas lo ideal sería que el control se haga como parte de todas las validaciones que se hacen para habilitar o no el botón de Terminar encuesta.
Para chequear si el javascript está fallando en algo y por eso “no hace nada” les sugerimos usar las herramientas de inspección para desarrollo que tienen los navegadores y analizar lo que sucede cuando se corre el código que agregaron.

Tengan en cuenta que el botón aparece en todas las encuestas y todas las habilitaciones, por lo que deben asegurarse que el código que agregan no genere conflictos con otras encuestas y habilitaciones. Y también que con cualquier actualización podrían perder estas personalizaciones.

Saludos.
8