none
Agrupar preguntas en secciones asp.net visual studio 2008 RRS feed

  • Pregunta

  •  

    Hola!!

    Smile

    Estoy desarrollando un sitio web en donde alojare evaluaciones para calificar los servicios de la empresa

    La estructura de la evaluacion es muy similar en todos los casos, tiene un encabezado, y una serie de grupos que llamo secciones, dentro de cada seccion hay preguntas y al final de la seccion un comentario. Un encuesta puede tener n cantidad de secciones, como pueden ser 2 pueden ser 10 secciones todas con la misma estructura, las bases de datos ya las tengo diseñadas, las respuestas se califican en pesimo, malo, regular, bien, o Excelente, pero esto tambien quedo dinamico por pregunta, es decir hay una relacion entre forma en que se califica cada pregunta y la pregunta

    Lo que tengo que hacer es generar grupos por seccion de preguntas con sus posibles respuestas y al final un comentario. Estoy utilizando asp.net en visual studio 2008, escuche que puedo utilizar el control listview pero no he encontrado informacion concreta sobre lo que necesito

     

    ¿Creen que pudieran ayudarme? o alguna sugerencia sobre como trabajar en este desarrollo

    El query que estoy utilizando me trae la siguiente informacion, siendo la primer columna la seccion, la segunda la pregunta, la tercera la opcion que vera el usuario, la cuarta el valor que guardare, y la 5 el valor de la respuesta en la escala del 1 al 5

    Sobre el contenido ¿El contenido del curso fue practico y de utilidad? N/A 1 0
    Sobre el contenido ¿El contenido del curso fue practico y de utilidad? Pesimo 2 1
    Sobre el contenido ¿El contenido del curso fue practico y de utilidad? Malo 3 2
    Sobre el contenido ¿El contenido del curso fue practico y de utilidad? Buena 4 3
    Sobre el contenido ¿El contenido del curso fue practico y de utilidad? Excelente 5 4


    Sobre el contenido ¿El curso cumplio con tus expectativas? N/A 1 0
    Sobre el contenido ¿El curso cumplio con tus expectativas? Pesimo 2 1
    Sobre el contenido ¿El curso cumplio con tus expectativas? Malo 3 2
    Sobre el contenido ¿El curso cumplio con tus expectativas? Buena 4 3
    Sobre el contenido ¿El curso cumplio con tus expectativas? Excelente 5 4


    Sobre el intructor o los instructores ¿Consideras que el instructor tuvo dominio del tema? N/A 1 0
    Sobre el intructor o los instructores ¿Consideras que el instructor tuvo dominio del tema? Pesimo 2 1
    Sobre el intructor o los instructores ¿Consideras que el instructor tuvo dominio del tema? Malo 3 2
    Sobre el intructor o los instructores ¿Consideras que el instructor tuvo dominio del tema? Buena 4 3
    Sobre el intructor o los instructores ¿Consideras que el instructor tuvo dominio del tema? Excelente 5 4


    Sobre el intructor o los instructores ¿El instructor llevo a cabo de forma dinamica el curso? N/A 1 0
    Sobre el intructor o los instructores ¿El instructor llevo a cabo de forma dinamica el curso? Pesimo 2 1
    Sobre el intructor o los instructores ¿El instructor llevo a cabo de forma dinamica el curso? Malo 3 2
    Sobre el intructor o los instructores ¿El instructor llevo a cabo de forma dinamica el curso? Buena 4 3
    Sobre el intructor o los instructores ¿El instructor llevo a cabo de forma dinamica el curso? Excelente 5 4


    Sobre el intructor o los instructores ¿Llego puntual a todas sus sesiones? N/A 1 0
    Sobre el intructor o los instructores ¿Llego puntual a todas sus sesiones? Pesimo 2 1
    Sobre el intructor o los instructores ¿Llego puntual a todas sus sesiones? Malo 3 2
    Sobre el intructor o los instructores ¿Llego puntual a todas sus sesiones? Buena 4 3
    Sobre el intructor o los instructores ¿Llego puntual a todas sus sesiones? Excelente 5 4

    Gracias

    lunes, 26 de enero de 2009 22:52

Respuestas

  • Muchas gracias :D ya pude bloquear, no podia poner un login y password por que tendriamos que generar un usuario y contraseña ademas de que la idea de contestar la encuesta era que fuera facil de reponder y sin ponerle restricciones a los usuarios, entonces si armabamos una pantalla de login era muy posible que vieran la pagin pero no entraran.
    Encontre otra forma para hacer el bloqueo lo cual esta funcionando muy bien
    Gracias
    migsot
    • Marcado como respuesta migsot miércoles, 4 de marzo de 2009 17:32
    miércoles, 4 de marzo de 2009 17:29

Todas las respuestas

  •  <asp:ListView ID="ListView2" runat="server" DataSourceID="dsPreguntas"   
                            DataKeyNames="ID">  
                            <LayoutTemplate> 
                                <div ID="test2" runat="server" style="">  
                                     <tr style="">  
                                         <td> 
                                             <table style="width: 100%">  
                                                 <tr> 
                                                     <td style="width:  250px">  
                                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td> 
                                                     <td style=" width: 700px">  
                                                         <span ID="itemPlaceholder" runat="server"></span> 
                                                     </td> 
                                                 </tr> 
                                             </table> 
                                         </td> 
                                     </tr> 
                                 </div> 
                
                            </LayoutTemplate> 
                            <ItemTemplate> 
                                <asp:Label ID="IDSeccion" runat="server" Text='<%# Eval("ID") %>'   
                                    Visible="False"></asp:Label> 
                                <asp:Label ID="SeccionLabel" runat="server" Font-Bold="True" Font-Size="Medium"   
                                    ForeColor="Black" Text='<%# Eval("Seccion") %>'></asp:Label> 
                                <asp:Label ID="lblIdSeccion" runat="server" Text='<%# Eval("ID") %>'   
                                    Visible="False"></asp:Label> 
                                <asp:ListView ID="ListView3" runat="server" DataKeyNames="IdPregunta"   
                                    DataSourceID="dsPreguntasDetalle">  
                                    <LayoutTemplate> 
                                        <div ID="test" runat="server" style="">  
                                            <span ID="itemPlaceholder" runat="server"></span> 
                                        </div> 
                                    </LayoutTemplate> 
                                    <EmptyDataTemplate> 
                                        <span>No data was returned.</span> 
                                    </EmptyDataTemplate> 
                                    <ItemTemplate> 
                                        <asp:Label ID="IdPreguntaLabel" runat="server" Text='<%# Eval("IdPregunta") %>'   
                                            Visible="false"></asp:Label> 
                                        <asp:Label ID="PreguntaLabel" runat="server" Text='<%# Eval("Pregunta") %>' Font-Bold = "true" ></asp:Label> 
                                        <asp:Label ID="lblIDP" runat="server" Text='<%# Eval("IdPonderacion") %>'   
                                            Visible="False"></asp:Label> 
                                        <asp:Label ID="TipoPregunta" runat="server" Text='<%# Eval("TipoPregunta") %>'   
                                            Visible="False"></asp:Label> 
                                       <%-- <br />--%> 
                                        <asp:RadioButtonList ID="RadioButtonList1" runat="server"   
                                            DataSourceID="dsPonderacion" DataTextField="Ponderacion" DataValueField="Valor"   
                                            RepeatDirection="Horizontal"   
                                            Visible='<%# IIF(Eval("TipoPregunta") = "Abierta", 0, 1) %>'>  
                                        </asp:RadioButtonList> 
                                        <asp:SqlDataSource ID="dsPonderacion" runat="server"   
                                            ConnectionString="Data Source=gdldbapps;Initial Catalog=suiteServicios;Persist Security Info=True;User ID=Usuario;Password=Password"   
                                            ProviderName="System.Data.SqlClient"   
                                            SelectCommand="SELECT [Ponderacion], [Valor] FROM [PonderacionesD] where IdPonderacion = @IdPonderacion">  
                                            <SelectParameters> 
                                                <asp:ControlParameter ControlID="lblIDP" Name="IdPonderacion"   
                                                    PropertyName="Text" /> 
                                            </SelectParameters> 
                                        </asp:SqlDataSource> 
                                      <%--  <br />--%> 
                                        <asp:TextBox ID="txtPreguntaAbierta" runat="server" Height="30px"   
                                            TextMode="MultiLine" Width="700px" 
                                            Visible='<%# IIF(Eval("TipoPregunta") = "Abierta", 1, 0) %>'>  
                                            </asp:TextBox> 
                                    </ItemTemplate> 
                                    <SelectedItemTemplate> 
                                        <span style="">IdPregunta:  
                                        <asp:Label ID="IdPreguntaLabel" runat="server"   
                                            Text='<%# Eval("IdPregunta") %>' /> 
                                        <%--<br />--%> 
                                        Pregunta:  
                                        <asp:Label ID="PreguntaLabel" runat="server" Text='<%# Eval("Pregunta") %>' /> 
                                     <%--   <br />--%> 
                                        IdPonderacion:  
                                        <asp:Label ID="IdPonderacionLabel" runat="server"   
                                            Text='<%# Eval("IdPonderacion") %>' /> 
                                        <%--<br />--%> 
                                         </span> 
                                    </SelectedItemTemplate> 
                                </asp:ListView> 
                                <asp:Label ID="lblObservaciones" runat="server" Font-Bold="True"   
                                    Text="Observaciones:"></asp:Label> 
                             <%--   <br />--%> 
                                <asp:TextBox ID="txtComentarios" runat="server" Height="60px"   
                                    TextMode="MultiLine" Width="700px"></asp:TextBox> 
                               <br /> 
                                <asp:SqlDataSource ID="dsPreguntasDetalle" runat="server"   
                                    ConnectionString="<%$ ConnectionStrings:suiteServiciosConnectionString %>"   
                                    SelectCommand="Select IdPregunta, Pregunta, IdPonderacion, TipoPregunta from Preguntas where IdEncuesta = 1 and IdSeccion = @IdSeccion">  
                                    <SelectParameters> 
                                        <asp:ControlParameter ControlID="lblIdSeccion" Name="IdSeccion"   
                                            PropertyName="Text" /> 
                                    </SelectParameters> 
                                </asp:SqlDataSource> 
                          
                            </ItemTemplate> 
                             
                            <EmptyDataTemplate> 
                                <table id="Table1" runat="server" style="">  
                                    <tr> 
                                        <td> 
                                            No data was returned.</td> 
                                    </tr> 
                                </table> 
                            </EmptyDataTemplate> 
                            
                        </asp:ListView></td
    Hola logre avanzar en este tema el control que utilice es listview, es un poco dificil de aprender a controlar
    este control tiene la opcion de que le modifiques los items que se agruparan dentro de el <item template>
    asi tu le dices que controles vas a tener, de donde se van a llenar y al final con una funcion recorres cada uno de los renglones a llenar.

    basicamente los que hice fue poner dentro de un listview otro listview, el primer listview en los items trae el label con el nombre de la seccion, el textbox para los comentarios y un listview, y el listview interno me trae las preguntas segun la seccion dibujada, el tipo de respuesta, y el tipo de respuestas por que bien puede ser abierta o de opciones

    Al final con un ciclo for recorres cada renglon del listview y almacenas la informacion.

    Solo tengo ahora un pendiente, ¿saben como podre bloquear la encuesta para si alguien ya la contesto no la vuelva  a contestar?






    migsot
    martes, 3 de febrero de 2009 17:07
  • Hola que tal pues estaba leyendo lo de tu encuesta  y pues se me ocurre
    que para poder contestar la encuesta se logearan  y ya con eso podrias guardar en alguna parte que encuestas a contestado el usuario y cuando intente contestar una encuesta que ya realizo simplemente se la bloqueas o no se la muestras.

    Espero y te sirva Saludos

    miércoles, 11 de febrero de 2009 15:48
  • Muchas gracias :D ya pude bloquear, no podia poner un login y password por que tendriamos que generar un usuario y contraseña ademas de que la idea de contestar la encuesta era que fuera facil de reponder y sin ponerle restricciones a los usuarios, entonces si armabamos una pantalla de login era muy posible que vieran la pagin pero no entraran.
    Encontre otra forma para hacer el bloqueo lo cual esta funcionando muy bien
    Gracias
    migsot
    • Marcado como respuesta migsot miércoles, 4 de marzo de 2009 17:32
    miércoles, 4 de marzo de 2009 17:29