private DataTable CrearDataTableEvaluacion(int vIdEmpleado, int vIdEvaluado) { DataTable dtCuestionarios = new DataTable(); dtCuestionarios.Columns.Add("ID_EVALUADO"); dtCuestionarios.Columns.Add("AUTOEVALUACION"); dtCuestionarios.Columns.Add("SUPERIOR"); dtCuestionarios.Columns.Add("SUBORDINADO"); dtCuestionarios.Columns.Add("INTERRELACIONADO"); dtCuestionarios.Columns.Add("OTROS"); StringBuilder vSbAuto = new StringBuilder(); StringBuilder vSbSup = new StringBuilder(); StringBuilder vSbSub = new StringBuilder(); StringBuilder vSbInter = new StringBuilder(); StringBuilder vSbOtros = new StringBuilder(); string vNameCheck = ""; string vIsChecked = ""; string vTextoClEmpleado = "Clave empledo:"; string vTextoClPuesto = "Clave puesto:"; if (vClIdioma != E_IDIOMA_ENUM.ES.ToString()) { //Asignar texto variables vista TraduccionIdiomaTextoNegocio oNegocio = new TraduccionIdiomaTextoNegocio(); SPE_OBTIENE_TRADUCCION_TEXTO_Result vTxtClEmpleado = oNegocio.ObtieneTraduccion(pCL_TEXTO: "CB_ClaveEmpleado", pCL_MODULO: "FYD", pCL_PROCESO: "EC_MATRIZCUESTIONARIO", pCL_IDIOMA: "PORT").FirstOrDefault(); if (vTxtClEmpleado != null) { vTextoClEmpleado = vTxtClEmpleado.DS_TEXTO; } SPE_OBTIENE_TRADUCCION_TEXTO_Result vTxtPuesto = oNegocio.ObtieneTraduccion(pCL_TEXTO: "CB_ClavePuesto", pCL_MODULO: "FYD", pCL_PROCESO: "EC_MATRIZCUESTIONARIO", pCL_IDIOMA: "PORT").FirstOrDefault(); if (vTxtPuesto != null) { vTextoClPuesto = vTxtPuesto.DS_TEXTO; } } string vPlantillaDivs = " <table border=\"0\" style=\"width:100%; padding:3px;\"> " + "<tr>" + "<td style=\"width:90%;\" title=\"{0}\">" + "<div class=\"{3}\"> " + "<span>{1}<br /> " + "<span style=\"font-weight: bold;\">{2}</span>" + "</span> " + " </div> " + " <div style=\"clear:both; height: 2px;\"></div>" + "</td>" + "<td style=\"width:10%;\">" + "<div class=\"checkc\">" + "<input type=\"checkbox\" name=\"{4}\" {5} class=\"{6}\" />" + "</div> " + "</td>" + "</tr>" + "</table>"; var vListaEvaluado = vLstPlaneacion.Where(t => t.ID_EMPLEADO_EVALUADO == vIdEmpleado).ToList(); foreach (var item in vListaEvaluado) { switch (item.CL_ROL_EVALUADOR) { case "AUTOEVALUACION": vNameCheck = item.ID_EVALUADO.ToString() + "," + item.ID_EMPLEADO_EVALUADOR.ToString() + ",AE"; vIsChecked = item.FG_CUESTIONARIO ? "checked" : ""; vSbAuto.Append(string.Format(vPlantillaDivs, vTextoClEmpleado + " " + item.CL_EMPLEADO + ", " + vTextoClPuesto + " " + item.CL_PUESTO, item.NB_EMPLEADO_COMPLETO, item.NB_PUESTO, item.CL_ROL_EVALUADOR, vNameCheck, vIsChecked, "AE")); break; case "SUPERIOR": vNameCheck = item.ID_EVALUADO.ToString() + "," + item.ID_EMPLEADO_EVALUADOR.ToString() + ",SP"; vIsChecked = item.FG_CUESTIONARIO ? "checked" : ""; vSbSup.Append(string.Format(vPlantillaDivs, vTextoClEmpleado + " " + item.CL_EMPLEADO + ", " + vTextoClPuesto + " " + item.CL_PUESTO, item.NB_EMPLEADO_COMPLETO, item.NB_PUESTO, item.CL_ROL_EVALUADOR, vNameCheck, vIsChecked, "SP")); break; case "SUBORDINADO": vNameCheck = item.ID_EVALUADO.ToString() + "," + item.ID_EMPLEADO_EVALUADOR.ToString() + ",SB"; vIsChecked = item.FG_CUESTIONARIO ? "checked" : ""; vSbSub.Append(string.Format(vPlantillaDivs, vTextoClEmpleado + " " + item.CL_EMPLEADO + ", " + vTextoClPuesto + " " + item.CL_PUESTO, item.NB_EMPLEADO_COMPLETO, item.NB_PUESTO, item.CL_ROL_EVALUADOR, vNameCheck, vIsChecked, "SB")); break; case "INTERRELACIONADO": vNameCheck = item.ID_EVALUADO.ToString() + "," + item.ID_EMPLEADO_EVALUADOR.ToString() + ",IN"; vIsChecked = item.FG_CUESTIONARIO ? "checked" : ""; vSbInter.Append(string.Format(vPlantillaDivs, vTextoClEmpleado + " " + item.CL_EMPLEADO + ", " + vTextoClPuesto + " " + item.CL_PUESTO, item.NB_EMPLEADO_COMPLETO, item.NB_PUESTO, item.CL_ROL_EVALUADOR, vNameCheck, vIsChecked, "IN")); break; case "OTRO": vNameCheck = item.ID_EVALUADO.ToString() + "," + item.ID_EMPLEADO_EVALUADOR.ToString() + ",OT"; vIsChecked = item.FG_CUESTIONARIO ? "checked" : ""; vSbOtros.Append(string.Format(vPlantillaDivs, vTextoClEmpleado + " " + item.CL_EMPLEADO + ", " + vTextoClPuesto + " " + item.CL_PUESTO, item.NB_EMPLEADO_COMPLETO, item.NB_PUESTO, item.CL_ROL_EVALUADOR, vNameCheck, vIsChecked, "OT")); break; } } dtCuestionarios.Rows.Add(vIdEmpleado, vSbAuto.ToString(), vSbSup.ToString(), vSbSub.ToString(), vSbInter.ToString(), vSbOtros.ToString()); return(dtCuestionarios); }
protected void btnGuardar_Click(object sender, EventArgs e) { XElement vXmlCampo = new XElement("CAMPO"); if (txtClave.Text != "" && txtNombre.Text != "") { string vClTipoCampo = cmbTipoControl.SelectedValue; vXmlCampo.SetAttributeValue("CL_TIPO", vClTipoCampo); vXmlCampo.SetAttributeValue("ID_CAMPO", txtClave.Text); vXmlCampo.SetAttributeValue("NB_CAMPO", txtNombre.Text); vXmlCampo.SetAttributeValue("NB_TOOLTIP", txtTooltip.Text); if (ValidarPregunta()) { switch (vClTipoCampo) { case "TEXTBOX": vXmlCampo.SetAttributeValue("NO_LONGITUD", txtTextboxLongitud.Text); vXmlCampo.SetAttributeValue("NO_ANCHO", int.Parse(txtTextboxLongitud.Text) * 2); vXmlCampo.SetAttributeValue("NO_VALOR_DEFECTO", txtTextboxDefault.Text); if (int.Parse(txtTextboxLongitud.Text) > 200) { vXmlCampo.SetAttributeValue("NO_ANCHO", txtTextboxLongitud.Text); vXmlCampo.SetAttributeValue("FG_MULTILINEA", "1"); } else { vXmlCampo.SetAttributeValue("NO_LARGO", 30); vXmlCampo.SetAttributeValue("NO_ANCHO", int.Parse(txtTextboxLongitud.Text) * 3); vXmlCampo.SetAttributeValue("FG_MULTILINEA", "0"); } break; case "DATEPICKER": case "DATEAGE": if (txtDateDefault.SelectedDate != null) { vXmlCampo.SetAttributeValue("NO_VALOR_DEFECTO", ((DateTime)txtDateDefault.SelectedDate).ToString("dd/MM/yyyy")); } break; case "COMBOBOX": vXmlCampo.SetAttributeValue("ID_CATALOGO", cmbComboboxCatalogo.SelectedValue); vXmlCampo.SetAttributeValue("NO_VALOR_DEFECTO", cmbComboboxDefault.SelectedValue); break; case "MASKBOX": vXmlCampo.SetAttributeValue("NO_ANCHO", 100); vXmlCampo.SetAttributeValue("NB_MASCARA", txtMaskboxMascara.Text); break; case "NUMERICBOX": vXmlCampo.SetAttributeValue("NO_DECIMALES", txtNumericboxDecimales.Text); vXmlCampo.SetAttributeValue("NO_ENTEROS", txtNumericboxEnteros.Text); vXmlCampo.SetAttributeValue("NO_ANCHO", String.Format("{0:N0},{1:N0}", txtNumericboxEnteros.Value + txtNumericboxDecimales.Value, txtNumericboxDecimales.Value)); vXmlCampo.SetAttributeValue("NO_VALOR_DEFECTO", (decimal)txtNumericboxDefault.Value); break; case "CHECKBOX": vXmlCampo.SetAttributeValue("NO_VALOR_DEFECTO", chkCheckboxDefault.Checked ? "1" : "0"); break; } //XElement vXmlPreguntasAdicionales = new XElement("PREGUNTAS_ADICIONALES"); //vXmlPreguntasAdicionales.Add(lstCampoAdicional.Items.Where(w => !w.Value.Equals(String.Empty)).Select(s => new XElement("PREGUNTA", new XAttribute("ID_CAMPO", s.Value)))); SIGE.Negocio.FormacionDesarrollo.PeriodoNegocio nPeriodo = new SIGE.Negocio.FormacionDesarrollo.PeriodoNegocio(); E_CL_CUESTIONARIO_OBJETIVO vClCuestionarioObjetivo = E_CL_CUESTIONARIO_OBJETIVO.AMBOS; if (btnCuestionarioAutoevaluacion.Checked) { vClCuestionarioObjetivo = E_CL_CUESTIONARIO_OBJETIVO.AUTOEVALUACION; } if (btnCuestionarioOtros.Checked) { vClCuestionarioObjetivo = E_CL_CUESTIONARIO_OBJETIVO.OTROS; } string vClTipoTransaccion = "I"; if (vIdPregunta != null) { vClTipoTransaccion = "A"; } E_RESULTADO vResultado = nPeriodo.InsertaPreguntasAdicionales(vIdPeriodo, vIdPregunta, txtNombre.Text, vXmlCampo, vClCuestionarioObjetivo.ToString(), vClUsuario, vNbPrograma, vClTipoTransaccion); string vMensaje = vResultado.MENSAJE.Where(w => w.CL_IDIOMA.Equals(vClIdioma.ToString())).FirstOrDefault().DS_MENSAJE; UtilMensajes.MensajeResultadoDB(rwmAlertas, vMensaje, vResultado.CL_TIPO_ERROR, pCallBackFunction: "generateDataForParent"); } else { if (vClIdioma != E_IDIOMA_ENUM.ES.ToString()) { TraduccionIdiomaTextoNegocio oNegocio = new TraduccionIdiomaTextoNegocio(); SPE_OBTIENE_TRADUCCION_TEXTO_Result vLstTextosTraduccion = oNegocio.ObtieneTraduccion(pCL_TEXTO: "vCB_ValidaClaveNombre", pCL_MODULO: "FYD", pCL_PROCESO: "EC_PREGUNTASADICIONALES", pCL_IDIOMA: "PORT").FirstOrDefault(); if (vLstTextosTraduccion != null) { UtilMensajes.MensajeResultadoDB(rwmAlertas, vLstTextosTraduccion.DS_TEXTO, E_TIPO_RESPUESTA_DB.ERROR, pCallBackFunction: ""); } } else { UtilMensajes.MensajeResultadoDB(rwmAlertas, "Ya existe un registro con esta clave.", E_TIPO_RESPUESTA_DB.ERROR, pCallBackFunction: ""); } } } else { if (vClIdioma != E_IDIOMA_ENUM.ES.ToString()) { TraduccionIdiomaTextoNegocio oNegocio = new TraduccionIdiomaTextoNegocio(); SPE_OBTIENE_TRADUCCION_TEXTO_Result vLstTextosTraduccion = oNegocio.ObtieneTraduccion(pCL_TEXTO: "vCB_ValidaPregunta", pCL_MODULO: "FYD", pCL_PROCESO: "EC_PREGUNTASADICIONALES", pCL_IDIOMA: "PORT").FirstOrDefault(); if (vLstTextosTraduccion != null) { UtilMensajes.MensajeResultadoDB(rwmAlertas, vLstTextosTraduccion.DS_TEXTO, E_TIPO_RESPUESTA_DB.ERROR, pCallBackFunction: ""); } } else { UtilMensajes.MensajeResultadoDB(rwmAlertas, "La clave y el tÃtulo del campo son requeridos.", E_TIPO_RESPUESTA_DB.ERROR, pCallBackFunction: ""); } } }