Ejemplo n.º 1
0
        /// <summary>
        /// Asigna los datos de origen para controles que dependen de otros
        /// </summary>
        /// <param name="controlName"></param>
        protected override void SetDependentControlSource(string controlName)
        {
            switch (controlName)
            {
            case "Modulo_CB":
            {
                if (Modulo_CB.SelectedItem != null && ((ComboBoxSource)Modulo_CB.SelectedItem).Oid != 0)
                {
                    Datos_Temas.DataSource = _combo_modulos.GetFilteredChilds(((ComboBoxSource)Modulo_CB.SelectedItem).Oid);
                    Tema_CB.SelectedItem   = _combo_modulos.Childs.Buscar(_pregunta.OidTema);
                }
            } break;

            case "Tema_CB":
            {
                if (_pregunta != null)
                {
                    TemaInfo tema = _temas.GetItem(_pregunta.OidTema);

                    if (tema.Desarrollo)
                    {
                        Tipo_CB.SelectedIndex = 1;
                    }
                    else
                    {
                        Tipo_CB.SelectedIndex = 2;
                    }
                    Nivel_TB.Text = tema.Nivel.ToString();
                }
            } break;
            }
        }
Ejemplo n.º 2
0
        private void Select_Button_Click(object sender, EventArgs e)
        {
            _plantilla = PlantillaExamenInfo.Get(ActiveOID);

            if (_plantilla != null)
            {
                _guardado = true;

                if (!_plantilla.Desarrollo)
                {
                    TemaList temas = TemaList.GetModuloList(_modulo.Oid, false);

                    foreach (Preguntas_PlantillaInfo item in _plantilla.Preguntas)
                    {
                        long count = item.NPreguntas;

                        PreguntaList preguntas_tema = PreguntaList.GetPreguntasDisponiblesTema(item.OidTema, _entity.Desarrollo, _entity.FechaExamen, count);

                        if (preguntas_tema != null)
                        {
                            foreach (PreguntaInfo info in preguntas_tema)
                            {
                                if (count == 0)
                                {
                                    break;
                                }

                                Pregunta_Examen pregunta = Pregunta_Examen.NewChild(_entity);
                                pregunta.OidPregunta = info.Oid;
                                _entity.Pregunta_Examens.AddItem(pregunta);
                                count--;
                            }
                        }

                        if (count != 0)
                        {
                            TemaInfo tema = temas.GetItem(item.OidTema);
                            MessageBox.Show("No hay suficientes preguntas disponibles para el tema " + tema.Codigo);
                        }
                    }
                }
                else
                {
                    long count = _plantilla.NPreguntas;

                    PreguntaList preguntas = PreguntaList.GetPreguntasDisponiblesModulo(_entity.OidModulo, _entity.Desarrollo, _entity.FechaExamen, count);

                    if (preguntas != null)
                    {
                        foreach (PreguntaInfo info in preguntas)
                        {
                            if (count == 0)
                            {
                                break;
                            }

                            Pregunta_Examen pregunta = Pregunta_Examen.NewChild(_entity);
                            pregunta.OidPregunta = info.Oid;
                            _entity.Pregunta_Examens.AddItem(pregunta);
                            count--;
                        }
                    }

                    if (count != 0)
                    {
                        MessageBox.Show("No hay suficientes preguntas disponibles en el submódulo");
                    }
                }
            }

            Cerrar();
            Close();
        }
Ejemplo n.º 3
0
        private void Filtrar_BT_Click(object sender, EventArgs e)
        {
            _examen        = 0;
            _disponibles   = 0;
            _seleccionadas = 0;

            GetPreguntasReservadas();

            while (Arbol_TV.Nodes.Count != 0)
            {
                foreach (TreeNode t in Arbol_TV.Nodes)
                {
                    Arbol_TV.Nodes.Remove(t);
                }
            }

            if ((ComboBoxSource)Submodulo_CB.SelectedItem != null &&
                (ComboBoxSource)Idioma_CB.SelectedItem != null)
            {
                if (((ComboBoxSource)Submodulo_CB.SelectedItem).Oid == 0)
                {
                    foreach (SubmoduloInfo sub in _submodulos)
                    {
                        foreach (TemaInfo item in _temas)
                        {
                            if (item.OidSubmodulo == sub.Oid)
                            {
                                SetPreguntasValues(null, item);
                            }
                        }
                    }
                    //Arbol_TV.ExpandAll();

                    //se eliminan los nodos que no tengan preguntas asociadas
                    foreach (TreeNode t in Arbol_TV.Nodes)
                    {
                        if (t.Nodes.Count == 0)
                        {
                            t.Remove();
                        }
                    }
                }
                else
                {
                    SubmoduloInfo submodulo = _submodulos.GetItem(((ComboBoxSource)Submodulo_CB.SelectedItem).Oid);

                    if (Tema_CB.SelectedItem != null && ((ComboBoxSource)Tema_CB.SelectedItem).Oid == 0)
                    {
                        foreach (TemaInfo t in _temas)
                        {
                            if (t.OidSubmodulo == submodulo.Oid)
                            {
                                SetPreguntasValues(null, t);
                            }
                        }
                    }
                    else
                    {
                        TemaInfo t = _temas.GetItem(((ComboBoxSource)Tema_CB.SelectedItem).Oid);
                        SetPreguntasValues(null, t);
                    }
                    //se eliminan los nodos que no tengan preguntas asociadas
                    foreach (TreeNode t in Arbol_TV.Nodes)
                    {
                        if (t.Nodes.Count == 0)
                        {
                            t.Remove();
                        }
                    }
                }
            }
            //else
            //{
            //    TemaInfo t = _temas.GetItem(((ComboBoxSource)Tema_CB.SelectedItem).Oid);
            //    if (t != null)
            //    {
            //        SetPreguntasValues(null, t);

            //        //se eliminan los nodos que no tengan pregutas asociadas
            //        foreach (TreeNode n in Arbol_TV.Nodes)
            //        {
            //            if (n.Nodes.Count == 0)
            //                n.Remove();
            //        }
            //    }
            //    else
            //        MessageBox.Show("No existen preguntas asociadas al tema seleccionado");
            //}

            Disponibles_TB.Text   = _disponibles.ToString();
            Seleccionadas_TB.Text = "0";
            Examen_TB.Text        = _examen.ToString();
        }
        /// <summary>
        /// Asigna los datos de origen para controles que dependen de otros
        /// </summary>
        /// <param name="controlName"></param>
        protected override void SetDependentControlSource(string controlName)
        {
            switch (controlName)
            {
            case "Modulo_CB":
            {
                if (Datos_Modulos.Current != null && Modulo_CB.SelectedItem != null)
                {
                    Datos_Submodulos.DataSource = _combo_modulos.GetFilteredChilds(((ComboBoxSource)Modulo_CB.SelectedItem).Oid);
                }
            } break;

            case "Submodulo_CB":
            {
                if (Submodulo_CB.SelectedItem != null && ((ComboBoxSource)Submodulo_CB.SelectedItem).Oid != 0)
                {
                    Datos_Temas.DataSource = _combo_modulos.Childs.GetFilteredChilds(((ComboBoxSource)Submodulo_CB.SelectedItem).Oid);
                }
            } break;

            case "Tema_CB":
            {
                if (_temas != null && Tema_CB.SelectedItem != null)
                {
                    TemaInfo tema = _temas.GetItem(((ComboBoxSource)Tema_CB.SelectedItem).Oid);
                    if (tema != null && _entity != null)
                    {
                        _entity.OidSubmodulo = tema.OidSubmodulo;
                        _entity.OidTema      = tema.Oid;
                        Nivel_TB.Text        = tema.Nivel.ToString();
                        _entity.Nivel        = tema.Nivel;
                        if (tema.Desarrollo)
                        {
                            Tipo_TB.Text                   = ETipoPregunta.Desarrollo.ToString();
                            _entity.Tipo                   = ETipoPregunta.Desarrollo.ToString();
                            Respuestas_Grid.Visible        = false;
                            Respuestas_Grid.Enabled        = false;
                            Respuestas_BT.Visible          = false;
                            Respuestas_BT.Enabled          = false;
                            ModeloRespuesta_TB.Visible     = true;
                            ModeloRespuesta_TB.Enabled     = true;
                            ModeloRespuesta_LB.Visible     = true;
                            ModeloRespuesta_LB.Enabled     = true;
                            ModeloRespuesta_BT.Visible     = true;
                            ModeloRespuesta_BT.Enabled     = true;
                            ModeloRespuestaView_BT.Visible = true;
                            ModeloRespuestaView_BT.Enabled = true;
                        }
                        else
                        {
                            Tipo_TB.Text = ETipoPregunta.Test.ToString();
                            _entity.Tipo = ETipoPregunta.Test.ToString();
                            ModeloRespuesta_TB.Visible     = false;
                            ModeloRespuesta_TB.Enabled     = false;
                            ModeloRespuesta_LB.Visible     = false;
                            ModeloRespuesta_LB.Enabled     = false;
                            ModeloRespuestaView_BT.Visible = false;
                            ModeloRespuestaView_BT.Enabled = false;
                            ModeloRespuesta_BT.Visible     = false;
                            ModeloRespuesta_BT.Enabled     = false;
                            Respuestas_Grid.Visible        = true;
                            Respuestas_Grid.Enabled        = true;
                            Respuestas_BT.Visible          = true;
                            Respuestas_BT.Enabled          = true;
                        }
                    }
                }
            } break;
            }
        }