Beispiel #1
0
        public E_CUESTIONARIO ObtenerCuestionarioEvaluacion(int?pIdCuestionario = null, int?pIdEvaluado = null, int?pIdEvaluadoEvaluador = null, int?pIdEvaluador = null)
        {
            PeriodoOperaciones oPeriodo = new PeriodoOperaciones();

            var    oCuestionario = oPeriodo.ObtenerCuestionarioEvaluacion(pIdCuestionario, pIdEvaluado, pIdEvaluadoEvaluador, pIdEvaluador);
            int    vIdCatalogo;
            string vClValor;

            if (oCuestionario != null)
            {
                if (oCuestionario.XML_CATALOGOS != null)
                {
                    XElement vXmlPreguntasAdicionales = XElement.Parse(oCuestionario.XML_PREGUNTAS_ADICIONALES);
                    XElement vXmlCatalogo             = XElement.Parse(oCuestionario.XML_CATALOGOS);

                    foreach (XElement itemPregunta in vXmlPreguntasAdicionales.Elements("CAMPO"))
                    {
                        if (itemPregunta.Attribute("ID_CATALOGO") != null)
                        {
                            vIdCatalogo = UtilXML.ValorAtributo <int>(itemPregunta.Attribute("ID_CATALOGO"));
                            vClValor    = UtilXML.ValorAtributo <string>(itemPregunta.Attribute("NB_VALOR")) == null?UtilXML.ValorAtributo <string>(itemPregunta.Attribute("NO_VALOR_DEFECTO")) : UtilXML.ValorAtributo <string>(itemPregunta.Attribute("NB_VALOR"));

                            XElement vXmlCatalogoFiltrado = new XElement("ITEMS");

                            foreach (XElement itemCatalogo in vXmlCatalogo.Elements("ITEM"))
                            {
                                if (UtilXML.ValorAtributo <int>(itemCatalogo.Attribute("ID_CATALOGO_VALOR")) == vIdCatalogo)
                                {
                                    if (UtilXML.ValorAtributo <string>(itemCatalogo.Attribute("NB_VALOR")) == vClValor)
                                    {
                                        UtilXML.AsignarValorAtributo(itemCatalogo, "FG_SELECCIONADO", "1");
                                    }
                                    else
                                    {
                                        UtilXML.AsignarValorAtributo(itemCatalogo, "FG_SELECCIONADO", "0");
                                    }

                                    vXmlCatalogoFiltrado.Add(itemCatalogo);
                                }
                            }

                            itemPregunta.Add(vXmlCatalogoFiltrado);
                        }
                    }

                    oCuestionario.XML_PREGUNTAS_CATALOGOS_ADICIONALES = vXmlPreguntasAdicionales.ToString();
                }
            }

            return(oCuestionario);
        }
        private XElement GeneralXmlAdicionales()
        {
            XElement pXmlAdicionales        = XElement.Parse(vXmlAdicionales);
            XElement pXmlValoresAdicionales = new XElement("CAMPOS");
            bool     vFgAsignarXML          = true;
            string   vMensajes = String.Empty;

            foreach (XElement vXmlControl in pXmlAdicionales.Elements("CAMPO"))
            {
                string vClTipoControl = vXmlControl.Attribute("CL_TIPO").Value;
                string vIdControl     = vXmlControl.Attribute("ID_CAMPO").Value;
                string vNbControl     = vXmlControl.Attribute("NB_CAMPO").Value;
                string vNbValor       = String.Empty;
                string vDsValor       = "";


                bool    vFgAsignarValor = true;
                Control vControl        = pvwCamposExtras.FindControl(vIdControl);

                switch (vClTipoControl)
                {
                case "TEXTBOX":
                    vNbValor = ((RadTextBox)vControl).Text;
                    //vDsValor = ((RadTextBox)vControl).Text;

                    if ((bool?)UtilXML.ValorAtributo(vXmlControl.Attribute("FG_REQUERIDO"), E_TIPO_DATO.BOOLEAN) ?? false)
                    {
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                        vFgAsignarXML   = vFgAsignarXML && vFgAsignarValor;
                        if (!vFgAsignarValor)
                        {
                            vMensajes += String.Format("El campo {0} es requerido.<br />", vNbControl);
                        }
                    }
                    break;

                case "MASKBOX":
                    vNbValor = ((RadMaskedTextBox)vControl).Text;
                    //vDsValor = ((RadMaskedTextBox)vControl).Text;
                    if ((bool?)UtilXML.ValorAtributo(vXmlControl.Attribute("FG_REQUERIDO"), E_TIPO_DATO.BOOLEAN) ?? false)
                    {
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                        vFgAsignarXML   = vFgAsignarXML && vFgAsignarValor;
                        if (!vFgAsignarValor)
                        {
                            vMensajes += String.Format("El campo {0} es requerido.<br />", vNbControl);
                        }
                    }
                    break;

                case "DATEPICKER":
                    DateTime vFecha = ((RadDatePicker)vControl).SelectedDate ?? DateTime.Now;
                    vNbValor = vFecha.ToString("dd/MM/yyyy");
                    //vDsValor = vFecha.ToString("dd/MM/yyyy");
                    if ((bool?)UtilXML.ValorAtributo(vXmlControl.Attribute("FG_REQUERIDO"), E_TIPO_DATO.BOOLEAN) ?? false)
                    {
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                        vFgAsignarXML   = vFgAsignarXML && vFgAsignarValor;
                        if (!vFgAsignarValor)
                        {
                            vMensajes += String.Format("El campo {0} es requerido.<br />", vNbControl);
                        }
                    }
                    break;

                case "COMBOBOX":
                    vNbValor = ((RadComboBox)vControl).SelectedValue;
                    //vDsValor = ((RadComboBox)vControl).Text;
                    if ((bool?)UtilXML.ValorAtributo(vXmlControl.Attribute("FG_REQUERIDO"), E_TIPO_DATO.BOOLEAN) ?? false)
                    {
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                        vFgAsignarXML   = vFgAsignarXML && vFgAsignarValor;
                        if (!vFgAsignarValor)
                        {
                            vMensajes += String.Format("El campo {0} es requerido.<br />", vNbControl);
                        }
                    }
                    break;

                case "LISTBOX":
                    RadListBox vRadListBox = ((RadListBox)vControl);
                    string     vClValor    = String.Empty;

                    foreach (RadListBoxItem item in vRadListBox.SelectedItems)
                    {
                        vNbValor = item.Value;
                        vDsValor = item.Text;
                    }

                    if ((bool?)UtilXML.ValorAtributo(vXmlControl.Attribute("FG_REQUERIDO"), E_TIPO_DATO.BOOLEAN) ?? false)
                    {
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                        vFgAsignarXML   = vFgAsignarXML && vFgAsignarValor;
                        if (!vFgAsignarValor)
                        {
                            vMensajes += String.Format("El campo {0} es requerido.<br />", vNbControl);
                        }
                    }
                    break;

                case "NUMERICBOX":
                    vNbValor        = ((RadNumericTextBox)vControl).Text;
                    vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                    if (vFgAsignarValor)
                    {
                        UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                    }
                    break;

                case "CHECKBOX":
                    vNbValor = (((RadButton)vControl).Checked) ? "1" : "0";
                    UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                    break;

                case "DATEAGE":
                    DateTime vFechaEdad = ((RadDatePicker)vControl).SelectedDate ?? DateTime.Now;
                    vNbValor        = vFechaEdad.ToString("dd/MM/yyyy");
                    vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                    if (vFgAsignarValor)
                    {
                        UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                    }
                    break;

                default:
                    vFgAsignarValor = false;
                    break;
                }
                if (vFgAsignarValor)
                {
                    XElement xXmlCampo = new XElement("CAMPO");

                    xXmlCampo.Add(new XAttribute("ID_CAMPO", vIdControl), new XAttribute("NO_VALOR", vNbValor), new XAttribute("DS_VALOR", vDsValor));
                    pXmlValoresAdicionales.Add(xXmlCampo);
                }
            }
            if (vFgAsignarXML)
            {
                return(pXmlValoresAdicionales);
            }
            else
            {
                UtilMensajes.MensajeResultadoDB(RadWindowManager1, vMensajes, E_TIPO_RESPUESTA_DB.WARNING);
                return(null);
            }
        }
        private XElement generalXmlAdicionales()
        {
            if (vXmlCamposAdicionales != null)
            {
                XElement pXmlAdicionales = XElement.Parse(vXmlCamposAdicionales);

                foreach (XElement vXmlControl in pXmlAdicionales.Elements("CAMPO"))
                {
                    string vClTipoControl = vXmlControl.Attribute("CL_TIPO").Value;
                    string vIdControl     = vXmlControl.Attribute("ID_CAMPO").Value;
                    string vNbControl     = vXmlControl.Attribute("NB_CAMPO").Value;
                    string vNbValor       = String.Empty;
                    string vDsValor       = "";

                    bool    vFgAsignarValor = true;
                    Control vControl        = divCamposExtras.FindControl(vIdControl);

                    switch (vClTipoControl)
                    {
                    case "TEXTBOX":
                        vNbValor        = ((RadTextBox)vControl).Text;
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        break;

                    case "MASKBOX":
                        vNbValor        = ((RadMaskedTextBox)vControl).Text;
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        break;

                    case "DATEPICKER":
                        DateTime vFecha = ((RadDatePicker)vControl).SelectedDate ?? DateTime.Now;

                        vNbValor        = vFecha.ToString("dd/MM/yyyy");
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        break;

                    case "COMBOBOX":
                        vNbValor = ((RadComboBox)vControl).SelectedValue;

                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        break;

                    case "LISTBOX":
                        RadListBox vRadListBox = ((RadListBox)vControl);
                        string     vClValor    = String.Empty;

                        foreach (RadListBoxItem item in vRadListBox.SelectedItems)
                        {
                            vNbValor = item.Value;
                            vDsValor = item.Text;
                        }

                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                            UtilXML.AsignarValorAtributo(vXmlControl, "DS_VALOR", vDsValor);
                        }

                        break;

                    case "NUMERICBOX":
                        vNbValor        = ((RadNumericTextBox)vControl).Text;
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }
                        break;

                    case "CHECKBOX":
                        vNbValor = (((RadButton)vControl).Checked) ? "1" : "0";
                        UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        break;

                    case "DATEAGE":
                        RadDatePicker vControlF = new RadDatePicker();
                        vControlF = (RadDatePicker)vControl;
                        string value = vControlF.DateInput.InvalidTextBoxValue;

                        if (value == string.Empty)
                        {
                            vFecha = ((RadDatePicker)vControl).SelectedDate ?? DateTime.Now;

                            if (vControlF.SelectedDate < vControlF.MinDate)
                            {
                                vFecha = DateTime.Now;
                            }
                            vNbValor        = vFecha.ToString("dd/MM/yyyy");
                            vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                            if (vFgAsignarValor)
                            {
                                UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                            }
                        }


                        break;
                    }
                }

                return(pXmlAdicionales);
            }
            else
            {
                return(null);
            }
        }
Beispiel #4
0
        private XElement generalXmlAdicionales()
        {
            if (vXmlCamposAdicionales != null)
            {
                XElement pXmlAdicionales = XElement.Parse(vXmlCamposAdicionales);

                foreach (XElement vXmlControl in pXmlAdicionales.Elements("CAMPO"))
                {
                    string vClTipoControl = vXmlControl.Attribute("CL_TIPO").Value;
                    string vIdControl     = vXmlControl.Attribute("ID_CAMPO").Value;
                    string vNbControl     = vXmlControl.Attribute("NB_CAMPO").Value;
                    string vNbValor       = String.Empty;
                    string vDsValor       = "";

                    bool    vFgAsignarValor = true;
                    Control vControl        = divCamposExtras.FindControl(vIdControl);

                    switch (vClTipoControl)
                    {
                    case "TEXTBOX":
                        vNbValor        = ((RadTextBox)vControl).Text;
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        break;

                    case "MASKBOX":
                        vNbValor        = ((RadMaskedTextBox)vControl).Text;
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        break;

                    case "DATEPICKER":
                        DateTime vFecha = ((RadDatePicker)vControl).SelectedDate ?? DateTime.Now;

                        vNbValor        = vFecha.ToString("dd/MM/yyyy");
                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        break;

                    case "COMBOBOX":
                        vNbValor = ((RadComboBox)vControl).SelectedValue;

                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);

                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                        }

                        //vXmlControl.Element("ITEMS").Remove();

                        break;

                    case "LISTBOX":
                        RadListBox vRadListBox = ((RadListBox)vControl);
                        string     vClValor    = String.Empty;

                        foreach (RadListBoxItem item in vRadListBox.SelectedItems)
                        {
                            vNbValor = item.Value;
                            vDsValor = item.Text;
                        }

                        vFgAsignarValor = !String.IsNullOrWhiteSpace(vNbValor);
                        if (vFgAsignarValor)
                        {
                            UtilXML.AsignarValorAtributo(vXmlControl, "NB_VALOR", vNbValor);
                            UtilXML.AsignarValorAtributo(vXmlControl, "DS_VALOR", vDsValor);
                        }

                        break;
                    }
                }

                return(pXmlAdicionales);
            }
            else
            {
                return(null);
            }
        }