Beispiel #1
0
        public override void RefreshSecondaryData()
        {
            if (_propuesto == 0)
            {
                _modulos = ModuloList.GetList(false);
                Library.Instruction.HComboBoxSourceList _combo_modulos = new Library.Instruction.HComboBoxSourceList(_modulos);
                Datos_Modulos.DataSource = _combo_modulos;
            }
            else
            {
                Library.Instruction.HComboBoxSourceList _combo_modulos = new Library.Instruction.HComboBoxSourceList();
                _combo_modulos.Add(new ComboBoxSource(_propuesto, ModuloInfo.Get(_propuesto, false).Texto));
                Datos_Modulos.DataSource = _combo_modulos;
                ((ComboBoxSource)Modulo_CB.SelectedItem).Oid = _propuesto;
                _entity.OidModulo = _propuesto;
                Modulo_CB.Enabled = false;
            }
            PgMng.Grow(string.Empty, "Modulos");

            //Library.Instruction.HComboBoxSourceList _combo_idiomas = new Library.Instruction.HComboBoxSourceList();
            //_combo_idiomas.Add(new ComboBoxSource(0, ""));
            //_combo_idiomas.Add(new ComboBoxSource(1, "Español"));
            //_combo_idiomas.Add(new ComboBoxSource(2, "Inglés"));
            Datos_Idiomas.DataSource = Library.Common.EnumText <EIdioma> .GetList(false);

            PgMng.Grow(string.Empty, "Idiomas");
        }
        public void SetSourceData(string item, ModuloInfo modulo, Examen examen)
        {
            _modulo           = modulo;
            _submodulos       = SubmoduloList.GetModuloList(_modulo.Oid, false);
            _temas            = TemaList.GetModuloList(_modulo.Oid, false);
            _preguntas_examen = examen.PreguntaExamens;
            _examen           = examen.GetInfo(false);

            this.Text = Resources.Labels.RESUMEN_EXAMEN_TITLE;
            lista     = new List <RegistroResumen>();
            string memo_preguntas = ";" + item;
            long   contador       = 0;

            foreach (SubmoduloInfo obj in _submodulos)
            {
                foreach (TemaInfo tema in _temas)
                {
                    if (tema.OidSubmodulo == obj.Oid)
                    {
                        foreach (PreguntaExamen p in _preguntas_examen)
                        {
                            if (p.OidTema == tema.Oid)
                            {
                                lista = RegistroResumen.ContabilizaPregunta(lista, obj.Oid, obj.Codigo + " " + obj.Texto, tema.Codigo);
                                contador++;
                            }
                        }
                    }
                }
            }
            lista.Add(new RegistroResumen("TODOS", "TODOS", contador));

            RefreshMainData();
        }
Beispiel #3
0
 /// <summary>
 /// Busca la información de un modulo
 /// </summary>
 /// <param name="filtro"></param>
 /// <returns></returns>
 internal ResultadoInfo <ModuloInfo> ObtenerPorId(ModuloInfo filtro)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxModuloDAL.ObtenerParametrosPorId(filtro);
         DataSet ds = Retrieve("Modulo_ObtenerPorId", parameters);
         ResultadoInfo <ModuloInfo> result = null;
         if (ValidateDataSet(ds))
         {
             result = MapModuloDAL.ObtenerPorId(ds);
         }
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Beispiel #4
0
        public override void RefreshSecondaryData()
        {
            int validas = 0;

            foreach (PreguntaExamen item in _entity.PreguntaExamens)
            {
                if (!item.Anulada)
                {
                    validas++;
                }
            }

            Preguntas_TB.Text = validas.ToString();
            PgMng.Grow(string.Empty, "Preguntas_TB");

            Desarrollo_CB.Checked = _entity.Desarrollo;
            PgMng.Grow(string.Empty, "Desarrollo_CB");

            if (Entity != null && Entity.OidModulo != 0)
            {
                _modulo = ModuloInfo.Get(Entity.OidModulo, false);
                PgMng.Grow(string.Empty, "_modulo");
                _preguntas = _entity.PreguntaExamens;
                Datos_Preguntas.DataSource = PreguntaExamens.SortList(_entity.PreguntaExamens, "Orden", ListSortDirection.Ascending);
                PgMng.Grow(string.Empty, "_preguntas");
                _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_submodulos");
                _temas = TemaList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_temas");
            }
            PgMng.Grow();

            base.RefreshSecondaryData();
        }
        public override void RefreshSecondaryData()
        {
            PgMng.Grow();

            Preguntas_TB.Text = _entity.PreguntaExamenes.Count.ToString();
            PgMng.Grow();

            Desarrollo_CB.Checked = _entity.Desarrollo;
            PgMng.Grow();

            if (EntityInfo != null && EntityInfo.OidModulo != 0)
            {
                _modulo = ModuloInfo.Get(EntityInfo.OidModulo, false);
                PgMng.Grow(string.Empty, "_modulo");

                _preguntas_modulo = PreguntaList.GetPreguntasModulo(_modulo.Oid);
                PgMng.Grow(string.Empty, "_preguntas");

                _temas = TemaList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_temas");

                _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_submodulos");

                RellenaPreguntas();
            }
            PgMng.Grow();

            base.RefreshSecondaryData();
            PgMng.Grow();
        }
        /// <summary>
        /// Implementa Save_button_Click
        /// </summary>
        protected override void SaveAction()
        {
            if (_entity.Curso == string.Empty)
            {
                CursoInfo curso = CursoInfo.Get(_entity.OidCurso, false);
                if (curso != null)
                {
                    _entity.Curso = curso.Nombre;
                }
            }

            if (_entity.Modulo == string.Empty)
            {
                ModuloInfo modulo = ModuloInfo.Get(_entity.OidModulo, false);
                if (modulo != null)
                {
                    _entity.Modulo = modulo.Texto;
                }
            }

            if (Revisiones_Grid.Rows.Count == 0)
            {
                MessageBox.Show("Para dar de alta un material debe añadir al menos una versión del mismo");
                _action_result = DialogResult.Ignore;
                return;
            }

            _action_result = SaveObject() ? DialogResult.OK : DialogResult.Ignore;
        }
Beispiel #7
0
        public void SetSourceData(Examen item, ModuloInfo modulo, SubmoduloList submodulos,
                                  TemaList temas, PreguntaList preguntas, List <long> preguntas_mismo_dia, bool propuesto)
        {
            lista_preguntas = new List <long>();
            //_memo_preguntas = item.MemoPreguntas;
            _entity = item;
            //if (propuesto) _entity.MemoPreguntas = string.Empty;
            _modulo              = modulo;
            _preguntas           = preguntas;
            _submodulos          = submodulos;
            _temas               = temas;
            _preguntas_mismo_dia = preguntas_mismo_dia;
            this.Text            = Resources.Labels.SELECT_PREGUNTAS;

            foreach (Pregunta_Examen pregunta in _entity.Pregunta_Examens)
            {
                lista_preguntas.Add(pregunta.OidPregunta);
            }

            //while (_memo_preguntas != string.Empty)
            //{
            //    long pregunta;
            //    int index = _memo_preguntas.IndexOf(";");
            //    pregunta = Convert.ToInt64(_memo_preguntas.Substring(0, index));
            //    _memo_preguntas = _memo_preguntas.Substring(index + 1);
            //    Pregunta p = _preguntas.GetItem(pregunta);
            //    lista_preguntas.Add(pregunta);
            //}
            RefreshMainData();
            RefreshSecondaryData();
        }
Beispiel #8
0
        /// <summary>
        /// Implementa Save_button_Click
        /// </summary>
        protected override void SaveAction()
        {
            //Antes de guardar se crean todos los registros de Pregunta_Plantilla necesarios para cada submódulo
            //del módulo asociado a la plantilla que se está creando, y se inicializan todos los números de
            //preguntas a cero.
            ModuloInfo modulo = ModuloInfo.Get(Entity.OidModulo, false);

            _entity.Modulo    = modulo.Texto;
            _entity.Preguntas = Preguntas_Plantillas.NewChildList();
            SubmoduloList submodulos = SubmoduloList.GetModuloList(Entity.OidModulo, false);
            TemaList      temas      = TemaList.GetModuloList(Entity.OidModulo, false);

            foreach (SubmoduloInfo submodulo in submodulos)
            {
                foreach (TemaInfo tema in temas)
                {
                    if (submodulo.Oid == tema.OidSubmodulo)
                    {
                        Preguntas_Plantilla preguntas = Preguntas_Plantilla.NewChild(Entity);
                        preguntas.OidSubmodulo = submodulo.Oid;
                        preguntas.OidTema      = tema.Oid;
                        preguntas.NPreguntas   = 0;
                        Entity.Preguntas.AddItem(preguntas);
                    }
                }
            }

            _action_result = SaveObject() ? DialogResult.OK : DialogResult.Ignore;
        }
        private void Modulo_BT_Click(object sender, EventArgs e)
        {
            ModuloList       modulos = ModuloList.GetList(false);
            ModuloSelectForm form    = new ModuloSelectForm(this, modulos);

            if (form.ShowDialog(this) == DialogResult.OK)
            {
                _modulo        = form.Selected as ModuloInfo;
                Modulo_TB.Text = _modulo.Texto;
            }
        }
Beispiel #10
0
        public void SetSourceData(Examen item, ModuloInfo modulo, PreguntaList preguntas)
        {
            _entity = item;

            _modulo = modulo;

            _preguntas = preguntas;

            RefreshMainData();
            RefreshSecondaryData();
        }
        /// <summary>
        /// Implementa Save_button_Click
        /// </summary>
        protected override void SubmitAction()
        {
            if (((ComboBoxSource)Modulo_CB.SelectedItem).Oid == 0 ||
                ((ComboBoxSource)Promocion_CB.SelectedItem).Oid == 0)
            {
                MessageBox.Show("Debe seleccionar un módulo y una promoción válidos");
                return;
            }
            ModuloInfo    modulo     = ModuloInfo.Get(((ComboBoxSource)Modulo_CB.SelectedItem).Oid, false);
            SubmoduloList submodulos = SubmoduloList.GetModuloList(modulo.Oid, false);

            long oid_promocion = ((ComboBoxSource)Promocion_CB.SelectedItem).Oid;

            Instructor_Promocion promo = null;

            foreach (Instructor_Promocion item in Entity.Promociones)
            {
                if (item.OidPromocion == oid_promocion)
                {
                    promo = item;
                    break;
                }
            }

            if (promo == null)
            {
                promo = Instructor_Promocion.NewChild(Entity);
                promo.MarkItemNew();

                promo.OidPromocion = oid_promocion;
                Entity.Promociones.AddItem(promo);
            }

            foreach (SubmoduloInfo item in submodulos)
            {
                Submodulo_Instructor_Promocion elem = Submodulo_Instructor_Promocion.NewChild(promo);
                elem.MarkItemNew();

                elem.OidPromocion  = oid_promocion;
                elem.OidSubmodulo  = item.Oid;
                elem.OidModulo     = item.OidModulo;
                elem.OidInstructor = Entity.Oid;
                elem.Prioridad     = (long)Prioridad_NUD.Value;

                if (!promo.Submodulos.IsDuplicated(elem))
                {
                    promo.Submodulos.AddItem(elem);
                }
            }

            _action_result = DialogResult.OK;
            Close();
        }
Beispiel #12
0
        private void Clases_Grid_CellValueChanged(object sender, DataGridViewCellEventArgs e)
        {
            //Clases_Grid.Columns[e.ColumnIndex].Name
            switch (e.ColumnIndex)
            {
            case 0:                    //"Modulo_CBC":
            {
                if (ActiveComboModulo > 0 && Clases_Grid["Modulo_CBC", e.RowIndex].Value != null)
                {
                    //se está modificando una línea ya existente
                    if (_source_list.CombosListCount > e.RowIndex)
                    {
                        _source_list.UpdateCombosList(e.RowIndex, ActiveComboModulo);
                    }
                    else                                     //hay que añadir un nuevo datasource a la lista
                    {
                        _source_list.AddCombosList(ActiveComboModulo);
                    }

                    CurrentClaseExtra.OidModulo = ActiveComboModulo;

                    ((DataGridViewComboBoxCell)(Clases_Grid["Submodulo_CBC", e.RowIndex])).DataSource = _source_list.GetCombosList(e.RowIndex);
                }
            } break;

            case 1:                    //"Submodulo_CBC":
            {
                if (ActiveComboSubmodulo > 0 && Clases_Grid["Submodulo_CBC", e.RowIndex].Value != null)
                {
                    SubmoduloInfo submodulo = _submodulos.GetItem(ActiveComboSubmodulo);
                    ModuloInfo    modulo    = _modulos.GetItem(submodulo.OidModulo);
                    Clases_Grid["Titulo", e.RowIndex].Value = modulo.Texto + " " + submodulo.Codigo;
                    string alias;
                    if (submodulo.Codigo.Length > 5)
                    {
                        alias = submodulo.Codigo.Substring(0, 5);
                    }
                    else
                    {
                        alias = submodulo.Codigo;
                    }

                    CurrentClaseExtra.OidSubmodulo         = ActiveComboSubmodulo;
                    Clases_Grid["Alias", e.RowIndex].Value = alias + " (1/1)";
                }
            } break;
            }
        }
Beispiel #13
0
 internal static Dictionary <string, object> ObtenerParametrosPorId(ModuloInfo filtro)
 {
     try
     {
         Logger.Info();
         var parametros =
             new Dictionary <string, object>
         {
             { "@Id", filtro.ModuloID },
         };
         return(parametros);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
        /// <summary>
        /// Implementa Save_button_Click
        /// </summary>
        protected override void SubmitAction()
        {
            if (((ComboBoxSource)Modulo_CB.SelectedItem).Oid == 0 ||
                ((ComboBoxSource)Submodulo_CB.SelectedItem).Oid == 0)
            {
                MessageBox.Show("Debe seleccionar un módulo y submódulo válidos");
                return;
            }

            ModuloInfo    modulo    = ModuloInfo.Get(((ComboBoxSource)Modulo_CB.SelectedItem).Oid);
            SubmoduloInfo submodulo = SubmoduloInfo.Get(((ComboBoxSource)Submodulo_CB.SelectedItem).Oid);

            ClaseExtra.OpenSession();

            for (int i = 1; i <= (int)Clases_NUD.Value; i++)
            {
                ClaseExtra clase = ClaseExtra.NewChild(_entity);
                clase.MarkItemNew();

                clase.OidModulo    = modulo.Oid;
                clase.Modulo       = modulo.Texto;
                clase.OidSubmodulo = submodulo.Oid;
                clase.Submodulo    = submodulo.Codigo;
                clase.Orden        = (long)i;
                int index = submodulo.Codigo.IndexOf(".");
                if (submodulo.Codigo.Length > 5)
                {
                    clase.Alias = submodulo.Codigo.Substring(0, 5);
                }
                else
                {
                    clase.Alias = submodulo.Codigo;
                }
                clase.Alias      += "(" + i.ToString() + "/" + Clases_NUD.Value.ToString() + ")";
                clase.Titulo      = modulo.Texto + " " + submodulo.Codigo;
                clase.TotalClases = (long)Clases_NUD.Value;

                _entity.CExtras.AddItem(clase);
            }

            _action_result = DialogResult.OK;
            Close();
        }
Beispiel #15
0
        /// <summary>
        /// Implementa Save_button_Click
        /// </summary>
        protected override void SaveAction()
        {
            foreach (ClaseExtra clase in _entity.CExtras)
            {
                if (clase.IsDirty)
                {
                    SubmoduloInfo submodulo = _submodulos.GetItem(clase.OidSubmodulo);
                    if (submodulo.OidModulo != clase.OidModulo)
                    {
                        clase.OidModulo = submodulo.OidModulo;
                    }
                }

                if (clase.Alias == string.Empty)
                {
                    if (clase.Titulo.Length > 11)
                    {
                        clase.Alias = clase.Titulo.Substring(0, 12).ToUpper();
                    }
                    else
                    {
                        clase.Alias = clase.Titulo.ToUpper();
                    }
                }
                else
                {
                    if (clase.Alias.Length > 12)
                    {
                        clase.Alias = clase.Alias.Substring(0, 12);
                    }
                }
                clase.Alias = clase.Alias.ToUpper();

                if (clase.Titulo == string.Empty)
                {
                    ModuloInfo    modulo    = _modulos.GetItem(clase.OidModulo);
                    SubmoduloInfo submodulo = _submodulos.GetItem(clase.OidSubmodulo);
                    clase.Titulo = modulo.Texto + " " + submodulo.Codigo;
                }
            }

            _action_result = SaveObject() ? DialogResult.OK : DialogResult.Ignore;
        }
        public override void RefreshSecondaryData()
        {
            if (_entity != null)
            {
                _modulo        = ModuloInfo.Get(_entity.OidModulo, false);
                Modulo_TB.Text = _modulo.Codigo + " " + _modulo.Texto;

                _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                _temas      = TemaList.GetModuloList(_modulo.Oid, false);
            }
            PgMng.Grow();

            NPreguntas_TB.Text = _entity.NPreguntas.ToString();

            PgMng.Grow();

            Datos_Idiomas.DataSource = Library.Common.EnumText <EIdioma> .GetList(false);

            PgMng.Grow();
        }
Beispiel #17
0
        protected override void SetPreguntasAction()
        {
            if (!Entity.FechaEmision.Date.Equals(DateTime.MaxValue.Date) &&
                !Entity.FechaEmision.Date.Equals(DateTime.MinValue.Date))
            {
                MessageBox.Show("No se puede modificar un examen que ha sido emitido");
                return;
            }

            if (Entity.FechaExamen.Date.Equals(DateTime.MaxValue.Date))
            {
                MessageBox.Show("Debe especificar una fecha para el examen antes de añadir preguntas");
                return;
            }

            if (Entity != null && Entity.OidModulo != 0)
            {
                if (_modulo == null)
                {
                    _modulo = ModuloInfo.Get(Entity.OidModulo);
                }
                if (_submodulos == null)
                {
                    _submodulos = SubmoduloList.GetModuloList(Entity.OidModulo, false);
                }
                if (_temas == null)
                {
                    _temas = TemaList.GetModuloList(_modulo.Oid, false);
                }
                if (preguntas_mismo_dia == null)
                {
                    GetPreguntasReservadas();
                }

                PreguntasSelectForm form = new PreguntasSelectForm(true);
                form.SetSourceData(Entity, _modulo, _submodulos, _temas, _preguntas_modulo, preguntas_mismo_dia, false);
                form.ShowDialog();

                RellenaPreguntas();
            }
        }
Beispiel #18
0
        /// <summary>
        /// consulta la informacion de un modulo especificado
        /// </summary>
        /// <param name="filtro"></param>
        /// <returns></returns>
        public ResultadoInfo <ModuloInfo> ObtenerPorID(ModuloInfo filtro)
        {
            ResultadoInfo <ModuloInfo> result;

            try
            {
                Logger.Info();
                var moduloBL = new ModuloBL();
                result = moduloBL.ObtenerPorId(filtro);
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(result);
        }
Beispiel #19
0
        protected override void ProponerAction()
        {
            if (_entity.Pregunta_Examens.Count != 0)
            {
                MessageBox.Show("El examen que desea proponer contiene preguntas, bórrelas antes de continuar",
                                "Aviso");
            }
            else
            {
                PlantillaSelectForm form = new PlantillaSelectForm(true);
                form.SetSourceData(_entity, _modulo, _preguntas_modulo);
                form.ShowDialog(this);

                if (Entity != null && Entity.OidModulo != 0 && form.Guardado)
                {
                    if (_modulo == null)
                    {
                        _modulo = ModuloInfo.Get(Entity.OidModulo);
                    }
                    if (_submodulos == null)
                    {
                        _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                    }
                    if (_temas == null)
                    {
                        _temas = TemaList.GetModuloList(_modulo.Oid, false);
                    }
                    if (preguntas_mismo_dia == null)
                    {
                        GetPreguntasReservadas();
                    }

                    PreguntasSelectForm select = new PreguntasSelectForm(true);
                    select.SetSourceData(Entity, _modulo, _submodulos, _temas, _preguntas_modulo, preguntas_mismo_dia, true);
                    select.ShowDialog(this);

                    RellenaPreguntas();
                }
            }
        }
Beispiel #20
0
 /// <summary>
 /// Carga los modulos activos a la interfaz
 /// </summary>
 private void CargaComboModulos()
 {
     try
     {
         var moduloBL   = new ModuloBL();
         var moduloInfo = new ModuloInfo
         {
             ModuloID    = 0,
             Descripcion = Properties.Resources.cbo_Seleccione
         };
         IList <ModuloInfo> listaModulos = moduloBL.ObtenerTodosAsList();
         if (listaModulos == null)  //si no se encontraron modulos activos
         {
             SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.AlertaModulo_ErrorBusqueda,
                               MessageBoxButton.OK, MessageImage.Error);
             confirmaSalir = false;
             ForzarCierre  = true;
             Close();
         }
         else
         {
             //carga los modulos en el combobox de la interfaz
             listaModulos.Insert(0, moduloInfo);
             cmbModulo.ItemsSource = listaModulos;
         }
         cmbModulo.SelectedItem = Contexto.Modulo;//inicializa el modulo seleccionado al modulo de la alerta recibida
         if (Contexto.Modulo.ModuloID == 0)
         {
             cmbModulo.SelectedIndex = 0;
         }
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.AlertaModulo_ErrorBusqueda,
                           MessageBoxButton.OK, MessageImage.Error);
     }
 }
Beispiel #21
0
 public AlertaInfo()
 {
     descripcion = string.Empty;
     modulo      = new ModuloInfo();
 }
Beispiel #22
0
 public void SetSourceData(Examen item, ModuloInfo modulo)
 {
     SetSourceData(item, modulo, PreguntaList.GetPreguntasModulo(modulo.Oid));
 }
 protected override void GetFormSourceData(long oid)
 {
     _entity  = ModuloInfo.Get(oid, true);
     _mf_type = ManagerFormType.MFView;
 }
        /// <summary>
        /// Función recursiva que va creando el árbol de preguntas por submódulo
        /// </summary>
        /// <param name="padre"></param>
        /// <param name="apartado"></param>
        private void SetSubmodulosValues(TreeNode padre, ModuloInfo modulo, SubmoduloList submodulos, TemaList temas)
        {
            TreeNode nodo = new TreeNode(modulo.NumeroModulo + " - " + modulo.Texto);

            nodo.NodeFont         = new Font("Tahoma", (float)8.25, FontStyle.Regular);
            nodo.ForeColor        = System.Drawing.Color.Black;
            nodo.Tag              = EntityInfo;
            nodo.SelectedImageKey = "modulo";

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

                Arbol_TV.Nodes.Add(nodo);
            }
            else
            {
                padre.Nodes.Add(nodo);
            }

            //foreach (SubmoduloInfo item in submodulos)
            //{
            foreach (TemaInfo tema in temas)
            {
                //if (p.OidSubmodulo == item.Oid)
                //{
                TreeNode pregunta         = null;
                Preguntas_PlantillaInfo p = null;

                foreach (Preguntas_PlantillaInfo obj in EntityInfo.Preguntas)
                {
                    if (obj.OidTema == tema.Oid)
                    {
                        p = obj;
                        break;
                    }
                }

                if (p != null)
                {
                    pregunta           = new TreeNode(tema.Codigo + " - " + tema.Nombre + " - Nivel : " + tema.Nivel.ToString() + " | Nº Preguntas : " + p.NPreguntas.ToString());
                    pregunta.NodeFont  = new Font("Tahoma", (float)8.25, FontStyle.Regular);
                    pregunta.ForeColor = System.Drawing.Color.Black;
                    pregunta.Tag       = p;
                    if (p.NPreguntas == 0)
                    {
                        pregunta.ImageKey = "submodulo_verde";
                    }
                    else
                    {
                        pregunta.ImageKey = "submodulo";
                    }

                    nodo.Nodes.Add(pregunta);
                }
                //}
            }
            //}

            Arbol_TV.ExpandAll();
        }