Estoy armando una encuesta institucional con alcance para todos los alumnos. La encuesta ya está armada con distinto tipo de preguntas (texto, enteros, respuestas multiples, etc).
Al probar como queda por la web e intentar responder como si fuera un alumno nos dimos cuenta que algunas preguntas que habían sido colocadas como obligatorias no debían serlo y corregimos esa definición.
Pero ahora al responder la encuesta, aún respondiendo absolutamente TODAS las preguntas con algún valor, cuando queremos grabar sale un mensaje de error:
“Problemas!!!
Una de las preguntas obligatorias no fue entregada por la página anterior”
No.
lo que puedo agregarte es que el formulario de la encuesta se arma con sp_form_encuesta y al grabar se llama a sp_pregs_oblig para que devuelva las preguntas obligatorias.
Ahora, si en algun caso esos dos sp devuelven cosas distintas o php está malinterpretando las cosas, no te lo puedo asegurar.
Después de enviar el mensaje investigué un poco más y haciendo un join de la definición de la encuesta con las preguntas que eran obligatorias encontré que un componente de la encuesta que es una línea de guiones (texto simple) y que por lo tanto no tiene respuesta estaba marcado como obligatorio.
Se ve que el ABM de armado no anda del todo bien y al principio se habrá seleccionado otra pregunta en esa posición y se colocó como obligatoria y después cuandop se cambió la pregunta a un componente que no es pregunta el campo obligatoria quedó en “S” y obviamente en la web no tenía como ingresarle una respuesta y no mostraba que era obligatoria.
Se corrigío eso y todo funcionó OK.
Habría que revisar a ver como se produjo el error para eventualmente corregir el ABM.