public Decimal ActualizarPruebasPerfil(Decimal ID_PERFIL, List <pruebaPerfil> pruebas, Boolean realizarVersionamientoManual, Decimal ID_VERSIONAMIENTO, ManualServicio _manual, Decimal ID_EMPRESA, Conexion conexion) { Boolean continuarNormalmente = true; pruebaPerfil _pruebaPerfil = new pruebaPerfil(Empresa, Usuario); Boolean eliminarPrueba = true; Boolean insertarPrueba = true; DataTable tablaPruebasActuales = _pruebaPerfil.ObtenerPorIdPerfil(ID_PERFIL, conexion); for (int i = 0; i < tablaPruebasActuales.Rows.Count; i++) { DataRow filaPruebaActual = tablaPruebasActuales.Rows[i]; Decimal ID_PRUEBA_ACTUAL = Convert.ToDecimal(filaPruebaActual["Código Prueba"]); eliminarPrueba = true; foreach (pruebaPerfil p in pruebas) { if (p.IDPRUEBA == ID_PRUEBA_ACTUAL.ToString()) { eliminarPrueba = false; break; } } if (eliminarPrueba == true) { if (realizarVersionamientoManual == true) { ID_VERSIONAMIENTO = _manual.RegistrarDesactivacionRegistroTabla(ID_EMPRESA, ManualServicio.ListaSecciones.Seleccion, ManualServicio.AccionesManual.Eliminar, "PRUEBA_PERFIL", "Prueba de Perfil", ID_PRUEBA_ACTUAL.ToString(), ID_VERSIONAMIENTO, conexion); if (ID_VERSIONAMIENTO == -1) { continuarNormalmente = false; ID_VERSIONAMIENTO = 0; return(-1); } } if (continuarNormalmente == true) { if (_pruebaPerfil.EliminarPruebaDePerfil(ID_PERFIL, ID_PRUEBA_ACTUAL, conexion) == false) { MensajeError = _pruebaPerfil.MensajeError; return(-1); } } } } foreach (pruebaPerfil p in pruebas) { insertarPrueba = true; for (int i = 0; i < tablaPruebasActuales.Rows.Count; i++) { DataRow filaPruebaActual = tablaPruebasActuales.Rows[i]; Decimal ID_PRUEBA_ACTUAL = Convert.ToDecimal(filaPruebaActual["Código Prueba"]); if (p.IDPRUEBA == ID_PRUEBA_ACTUAL.ToString()) { insertarPrueba = false; break; } } if (insertarPrueba == true) { if (realizarVersionamientoManual == true) { ID_VERSIONAMIENTO = _manual.RegistrarInsersionRegistroTabla(ID_VERSIONAMIENTO, ManualServicio.ListaSecciones.Seleccion, "PRUEBA_PERFIL", "Prueba de Perfil", p.IDPRUEBA, ManualServicio.AccionesManual.Insertar, ID_EMPRESA, conexion); if (ID_VERSIONAMIENTO == -1) { continuarNormalmente = false; ID_VERSIONAMIENTO = 0; return(-1); } } if (continuarNormalmente == true) { if (_pruebaPerfil.Adicionar(ID_PERFIL, Convert.ToDecimal(p.IDPRUEBA), conexion) == false) { MensajeError = _pruebaPerfil.MensajeError; return(-1); } } } } return(ID_VERSIONAMIENTO); }
/// <summary> /// hecho por cear pulido /// el dia 17 de enero de 2013 /// paracargar en el pdf la seccion de docuemntos y pruebas aplicadas a un perfil /// </summary> /// <param name="ID_EMPRESA"></param> /// <returns></returns> private String CargarDocumentosPruebasPerfiles(Decimal ID_EMPRESA, Conexion _datos) { DataTable tablaPerfilesDocumentosPruebas = ConfigurarTablaPerfilesDocumentosPruebas(); //capturamos los perfils de la empresa perfil _perfil = new perfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); //ok ----------------------- DataTable tablaPerfiles = _perfil.ObtenerVenDPerfilesConOcupacionPorIdEmpresa(ID_EMPRESA, _datos); String htmlSeccion = String.Empty; //recorremos cada uno de los perfiles de la tabla foreach (DataRow filaPerfil in tablaPerfiles.Rows) { Decimal ID_PERFIL = Convert.ToDecimal(filaPerfil["REGISTRO"]); //CAPTURAMMOS DOCUEMNTOS REQUERIDOS PARA ESTE PERFIL documentoPerfil _documentoPerfil = new documentoPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); //ok ------------------------ DataTable tablaDocumentos = _documentoPerfil.ObtenerPorIdPerfil(ID_PERFIL, _datos); String DOCUMENTOS_REQUERIDOS = String.Empty; foreach (DataRow filaDocumento in tablaDocumentos.Rows) { if (String.IsNullOrEmpty(DOCUMENTOS_REQUERIDOS) == true) { DOCUMENTOS_REQUERIDOS = filaDocumento["Documento"].ToString().Trim(); } else { DOCUMENTOS_REQUERIDOS += ", " + filaDocumento["Documento"].ToString().Trim(); } } //CAPTURAMOS LAS PRUEBAS QUE DEBEN SER APLICADAS AL PERFIL pruebaPerfil _pruebaPerfil = new pruebaPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); //ok --------------------------------- DataTable tablaPruebas = _pruebaPerfil.ObtenerPorIdPerfil(ID_PERFIL, _datos); String PRUEBAS_APLICADAS = String.Empty; foreach (DataRow filaPrueba in tablaPruebas.Rows) { if (String.IsNullOrEmpty(PRUEBAS_APLICADAS) == true) { PRUEBAS_APLICADAS = filaPrueba["Prueba"].ToString().Trim(); } else { PRUEBAS_APLICADAS += ", " + filaPrueba["Prueba"].ToString().Trim(); } } //ahora creamos la fila que se le ira asignando a la tabla para llenar a grilla de docuemntos y pruebas por perfil DataRow filaPerfilDocumentosPruebas = tablaPerfilesDocumentosPruebas.NewRow(); /* tablaTemp.Columns.Add("REGISTRO"); tablaTemp.Columns.Add("NOM_OCUPACION"); tablaTemp.Columns.Add("DOCUMENTOS_REQUERIDOS"); tablaTemp.Columns.Add("PRUEBAS_APLICADAS"); */ filaPerfilDocumentosPruebas["REGISTRO"] = filaPerfil["REGISTRO"]; filaPerfilDocumentosPruebas["NOM_OCUPACION"] = filaPerfil["NOM_OCUPACION"]; if (String.IsNullOrEmpty(DOCUMENTOS_REQUERIDOS) == true) { filaPerfilDocumentosPruebas["DOCUMENTOS_REQUERIDOS"] = "Ninguno."; } else { filaPerfilDocumentosPruebas["DOCUMENTOS_REQUERIDOS"] = DOCUMENTOS_REQUERIDOS; } if (String.IsNullOrEmpty(PRUEBAS_APLICADAS) == true) { filaPerfilDocumentosPruebas["PRUEBAS_APLICADAS"] = "Ninguna."; } else { filaPerfilDocumentosPruebas["PRUEBAS_APLICADAS"] = PRUEBAS_APLICADAS; } //asignamos la fila a la tabla final tablaPerfilesDocumentosPruebas.Rows.Add(filaPerfilDocumentosPruebas); tablaPerfilesDocumentosPruebas.AcceptChanges(); } //tablaTemp.Columns.Add("REGISTRO"); //tablaTemp.Columns.Add("NOM_OCUPACION"); //tablaTemp.Columns.Add("DOCUMENTOS_REQUERIDOS"); //tablaTemp.Columns.Add("PRUEBAS_APLICADAS"); foreach(DataRow fila in tablaPerfilesDocumentosPruebas.Rows) { htmlSeccion += "<tr>"; htmlSeccion += " <td width=\"25%\" style=\"text-align:left;\">"; htmlSeccion += fila["NOM_OCUPACION"].ToString().Trim(); htmlSeccion += " </td>"; htmlSeccion += " <td width=\"42%\" style=\"text-align:justify;\">"; htmlSeccion += fila["DOCUMENTOS_REQUERIDOS"].ToString().Trim(); htmlSeccion += " </td>"; htmlSeccion += " <td width=\"33%\" style=\"text-align:justify;\">"; htmlSeccion += fila["PRUEBAS_APLICADAS"].ToString().Trim(); htmlSeccion += " </td>"; htmlSeccion += "</tr>"; } return htmlSeccion; }
public Decimal Adicionar(Decimal ID_EMPRESA, Decimal ID_OCUPACION, String EDAD_MIN, String EDAD_MAX, String SEXO, String EXPERIENCIA, String NIV_ESTUDIOS, List <documentoPerfil> documentos, List <pruebaPerfil> pruebas, String OBSERVACIONES_ESPECIALES, String TIPO_ENTREVISTA, Decimal ID_CATEGORIA_REFERENCIA, Decimal ID_ASSESMENT_CENTER, Boolean ESTADO, String NIVEL_REQUERIMIENTO) { Decimal ID_VERSIONAMIENTO = 0; Boolean realizarVersionamientoManual = true; Boolean continuarNormalmente = true; ManualServicio _manual = new ManualServicio(Empresa, Usuario); Boolean correcto = true; Decimal ID_PERFIL = 0; Conexion conexion = new Conexion(Empresa); conexion.IniciarTransaccion(); try { realizarVersionamientoManual = _manual.EmpresaConManualDeServicioCreado(ID_EMPRESA, conexion); if (realizarVersionamientoManual == true) { ID_VERSIONAMIENTO = _manual.RegistrarInsersionRegistroTabla(ID_VERSIONAMIENTO, ManualServicio.ListaSecciones.Seleccion, "PERFIL", "Perfil", ID_OCUPACION.ToString(), ManualServicio.AccionesManual.Insertar, ID_EMPRESA, conexion); if (ID_VERSIONAMIENTO == -1) { conexion.DeshacerTransaccion(); correcto = false; continuarNormalmente = false; ID_VERSIONAMIENTO = 0; } } if (continuarNormalmente == true) { ID_PERFIL = AdicionarVenDPerfiles(ID_EMPRESA, ID_OCUPACION, EDAD_MIN, EDAD_MAX, SEXO, EXPERIENCIA, NIV_ESTUDIOS, OBSERVACIONES_ESPECIALES, TIPO_ENTREVISTA, ESTADO, ID_CATEGORIA_REFERENCIA, ID_ASSESMENT_CENTER, NIVEL_REQUERIMIENTO, conexion); if (ID_PERFIL <= 0) { conexion.DeshacerTransaccion(); correcto = false; ID_PERFIL = 0; } else { documentoPerfil _documentoPerfil = new documentoPerfil(Empresa, Usuario); foreach (documentoPerfil d in documentos) { if (_documentoPerfil.Adicionar(ID_PERFIL, Convert.ToDecimal(d.IDDOCUMENTO), conexion) == false) { conexion.DeshacerTransaccion(); correcto = false; ID_PERFIL = 0; MensajeError = _documentoPerfil.MensajeError; break; } } if (correcto == true) { pruebaPerfil _pruebaPerfil = new pruebaPerfil(Empresa, Usuario); foreach (pruebaPerfil p in pruebas) { if (_pruebaPerfil.Adicionar(ID_PERFIL, Convert.ToDecimal(p.IDPRUEBA), conexion) == false) { conexion.DeshacerTransaccion(); correcto = false; ID_PERFIL = 0; MensajeError = _pruebaPerfil.MensajeError; break; } } } } } if (correcto == true) { conexion.AceptarTransaccion(); } } catch (Exception ex) { conexion.DeshacerTransaccion(); correcto = false; MensajeError = ex.Message; } finally { conexion.Desconectar(); } return(ID_PERFIL); }
/// <summary> /// HECHO POR CESAR PULIDO /// EL DIA 18 DE DICIMEBRE DE 2012 /// PARA GENERAR LA ENTRVISTA CON O SIN COMPETENCIAS /// </summary> /// <returns></returns> public byte[] GenerarPDFEntrevista(Decimal ID_SOLICITUD, Decimal ID_PERFIL) { //ok tools _tools = new tools(); radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaSolicitud = _radicacionHojasDeVida.ObtenerRegSolicitudesingresoPorIdSolicitud(Convert.ToInt32(ID_SOLICITUD)); DataRow filaSolicitud = tablaSolicitud.Rows[0]; String NOMBRE_ASPIRANTE = filaSolicitud["NOMBRES"].ToString().Trim() + " " + filaSolicitud["APELLIDOS"].ToString().Trim(); String DOC_IDENTIDAD_ASPIRANTE = filaSolicitud["TIP_DOC_IDENTIDAD"].ToString().Trim() + " " + filaSolicitud["NUM_DOC_IDENTIDAD"].ToString().Trim(); int EDAD_ASPIRANTE = 0; if (DBNull.Value.Equals(filaSolicitud["FCH_NACIMIENTO"]) == false) { try { EDAD_ASPIRANTE = _tools.ObtenerEdadDesdeFechaNacimiento(Convert.ToDateTime(filaSolicitud["FCH_NACIMIENTO"])); } catch { EDAD_ASPIRANTE = 0; } } String TIPO_VIVIENDA_ASPIRANTE = "Desconocida"; if(DBNull.Value.Equals(filaSolicitud["TIPO_VIVIENDA"]) == false) { TIPO_VIVIENDA_ASPIRANTE = filaSolicitud["TIPO_VIVIENDA"].ToString().Trim(); } String CIUDAD_ASPIRANTE = "Desconocida"; if (DBNull.Value.Equals(filaSolicitud["NOMBRE_CIUDAD"]) == false) { CIUDAD_ASPIRANTE = filaSolicitud["NOMBRE_CIUDAD"].ToString().Trim(); } String DIRECCION_ASPIRANTE = filaSolicitud["DIR_ASPIRANTE"].ToString().Trim(); String SECTOR_ASPIRANTE = filaSolicitud["SECTOR"].ToString().Trim(); String ESTRATO_ASPIRANTE = "Desconocido"; if (DBNull.Value.Equals(filaSolicitud["ESTRATO"]) == false) { ESTRATO_ASPIRANTE = filaSolicitud["ESTRATO"].ToString().Trim(); } String TELEFONOS_ASPIRANTE = filaSolicitud["TEL_ASPIRANTE"].ToString(); String ASPIRACION_SALARIAL_ASPIRANTE; try { ASPIRACION_SALARIAL_ASPIRANTE = Convert.ToInt32(filaSolicitud["ASPIRACION_SALARIAL"]).ToString(); } catch { ASPIRACION_SALARIAL_ASPIRANTE = "Desconocido."; } String ESTADO_CIVIL = "Desconocido"; if (DBNull.Value.Equals(filaSolicitud["ESTADO_CIVIL"]) == false) { ESTADO_CIVIL = filaSolicitud["ESTADO_CIVIL"].ToString().Trim(); } String EMAIL_ASPIRANTE = filaSolicitud["E_MAIL"].ToString().Trim(); //FEMENINO, MASCULINO String SEXO = "Desconocido."; String LIBRETA_MILITAR = "Desconocida."; if (DBNull.Value.Equals(filaSolicitud["SEXO"]) == false) { if (filaSolicitud["SEXO"].ToString().ToUpper() == "F") { SEXO = "Femenino"; LIBRETA_MILITAR = "No Aplica"; } else { if (filaSolicitud["SEXO"].ToString().ToUpper() == "M") { SEXO = "Masculino"; LIBRETA_MILITAR = filaSolicitud["LIB_MILITAR"].ToString(); } } } //cargo al que aspira el candidato (cargo generico) String CARGO_APLICA = "Desconocido"; Decimal ID_OCUPACION = 0; perfil _perfil = new perfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaPerfil = new DataTable(); Decimal ID_ASSESMENT_CENTER = 0; if (ID_PERFIL <= 0) { CARGO_APLICA = "Entrevista por Producción."; ID_ASSESMENT_CENTER = 0; } else { tablaPerfil = _perfil.ObtenerPorRegistro(ID_PERFIL); if (tablaPerfil.Rows.Count <= 0) { CARGO_APLICA = "Desconocido."; ID_ASSESMENT_CENTER = 0; } else { DataRow filaPerfil = tablaPerfil.Rows[0]; try { ID_OCUPACION = Convert.ToDecimal(filaPerfil["ID_OCUPACION"]); } catch { ID_OCUPACION = 0; } if (ID_OCUPACION > 0) { cargo _cargo = new cargo(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaOcupacionAspira = _cargo.ObtenerOcupacionPorIdOcupacion(ID_OCUPACION); if (tablaOcupacionAspira.Rows.Count > 0) { DataRow filaOcupacionAspira = tablaOcupacionAspira.Rows[0]; CARGO_APLICA = filaOcupacionAspira["NOM_OCUPACION"].ToString().Trim(); } } //DETERMINAMOS SI SE TIENE UN ID_ASSESMENT_CENTER ASOCIADO AL PERFIL if(filaPerfil["TIPO_ENTREVISTA"].ToString().Trim() == "A") { try { ID_ASSESMENT_CENTER = Convert.ToDecimal(filaPerfil["ID_ASSESMENT_CENTAR"]); } catch { ID_ASSESMENT_CENTER = 0; } } else { ID_ASSESMENT_CENTER = 0; } } } //si la entrevista basica existe ya hojasVida _hojasVida = new hojasVida(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaEntrevista = _hojasVida.ObtenerSelRegEntrevistasPorIdSolicitud(ID_SOLICITUD); String FECHA_ENTREVISTA = "Desconocida."; String COMPOSICION_FAMILIAR_ASPIRANTE = "Desconocida."; String INFO_ACADEMICA_ASPIRANTE = "Desconocida."; String EXPERIENCIA_LAB_ASPIRANTE = "Desconocida."; String CONCEPTO_GENERAL = "Desconodido."; String USUARIO_ENTREVISTADOR = Session["USU_LOG"].ToString(); Decimal ID_ENTREVISTA = 0; if (tablaEntrevista.Rows.Count > 0) { DataRow filaEntrevista = tablaEntrevista.Rows[0]; ID_ENTREVISTA = Convert.ToDecimal(filaEntrevista["REGISTRO"]); try { FECHA_ENTREVISTA = Convert.ToDateTime(filaEntrevista["FCH_ENTREVISTA"]).ToShortDateString(); } catch { FECHA_ENTREVISTA = "Desconocida."; } COMPOSICION_FAMILIAR_ASPIRANTE = filaEntrevista["COM_C_FAM"].ToString().Trim(); INFO_ACADEMICA_ASPIRANTE = filaEntrevista["COM_C_ACA"].ToString().Trim(); EXPERIENCIA_LAB_ASPIRANTE = filaEntrevista["COM_F_LAB"].ToString().Trim(); CONCEPTO_GENERAL = filaEntrevista["COM_C_GEN"].ToString().Trim(); if (DBNull.Value.Equals(filaEntrevista["USU_MOD"]) == false) { USUARIO_ENTREVISTADOR = filaEntrevista["USU_MOD"].ToString().Trim(); } else { USUARIO_ENTREVISTADOR = filaEntrevista["USU_CRE"].ToString().Trim(); } } String NIVEL_ESCOLARIDAD = "Desconocido"; if (DBNull.Value.Equals(filaSolicitud["NIVEL_ESCOLARIDAD"]) == false) { if (filaSolicitud["NIVEL_ESCOLARIDAD"].ToString().Trim() == "NO REQUERIDO") { NIVEL_ESCOLARIDAD = "NO APLICA"; } else { NIVEL_ESCOLARIDAD = filaSolicitud["NIVEL_ESCOLARIDAD"].ToString().Trim(); } } String PROFESION_ASPIRANTE = "Desconocida"; if (DBNull.Value.Equals(filaSolicitud["ID_NUCLEO_FORMACION"]) == false) { PROFESION_ASPIRANTE = filaSolicitud["ID_NUCLEO_FORMACION"].ToString().Trim(); } String ESPECIALIZACION_ASPIRANTE = "Desconocida"; if (DBNull.Value.Equals(filaSolicitud["AREA_INTERES"]) == false) { ESPECIALIZACION_ASPIRANTE = filaSolicitud["AREA_INTERES"].ToString().Trim().ToUpper(); } String CABEZA_FAMILIA = "Desconocido"; if (DBNull.Value.Equals(filaSolicitud["C_FMLIA"]) == false) { if (filaSolicitud["C_FMLIA"].ToString().Trim() == "S") { CABEZA_FAMILIA = "SI"; } else { CABEZA_FAMILIA = "NO"; } } String NUM_HIJOS = "Desconocido"; if (DBNull.Value.Equals(filaSolicitud["NRO_HIJOS"]) == false) { NUM_HIJOS = filaSolicitud["NRO_HIJOS"].ToString().Trim(); } /* * Generación del archi de informe de selección * Stream con el contenido del pdf. */ String html_encabezado = "<html>"; html_encabezado += "<head>"; html_encabezado += "</head>"; html_encabezado += "<body>"; String html_pie = "</body>"; html_pie += "</html>"; //para el concepto general en entrevista o resultado de competencias. String html_concepto = "<div style=\"text-align: left; margin: 0 0 0 20px; text-decoration: underline; font-weight: bold;\">"; html_concepto += "CONCEPTO DEL ENTREVISTADOR"; html_concepto += "</div>"; html_concepto += "<br />"; html_concepto += "<div style=\"text-align: justify;\">"; html_concepto += "[CONCEPTO_GENERAL]"; html_concepto += "</div>"; //En esta variable cargamos el documento plantilla StreamReader archivo_original = new StreamReader(Server.MapPath(@"~\plantillas_reportes\entrevista.htm")); String html_formato_entrevista = html_encabezado + archivo_original.ReadToEnd(); archivo_original.Dispose(); archivo_original.Close(); // ----------------------------------- html_formato_entrevista = html_formato_entrevista.Replace("[CARGO_APLICA]", CARGO_APLICA); html_formato_entrevista = html_formato_entrevista.Replace("[FECHA_ENTREVISTA]", FECHA_ENTREVISTA); // ----------------------------------- // ----------------------------------- html_formato_entrevista = html_formato_entrevista.Replace("[NOMBRE_ASPIRANTE]", NOMBRE_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[DOC_IDENTIDAD_ASPIRANTE]", DOC_IDENTIDAD_ASPIRANTE); if (EDAD_ASPIRANTE > 0) { html_formato_entrevista = html_formato_entrevista.Replace("[EDAD_ASPIRANTE]", EDAD_ASPIRANTE.ToString() + " Años."); } else { html_formato_entrevista = html_formato_entrevista.Replace("[EDAD_ASPIRANTE]", "Desconocida."); } html_formato_entrevista = html_formato_entrevista.Replace("[DIRECCION_ASPIRANTE]", DIRECCION_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[TIPO_VIVIENDA_ASPIRANTE]", TIPO_VIVIENDA_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[CIUDAD_ASPIRANTE]", CIUDAD_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[SECTOR_ASPIRANTE]", SECTOR_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[ESTRATO_ASPIRANTE]", ESTRATO_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[TELEFONOS_ASPIRANTE]", TELEFONOS_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[ASPIRACION_SALARIAL_ASPIRANTE]", ASPIRACION_SALARIAL_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[ESTADO_CIVIL_ASPIRANTE]", ESTADO_CIVIL); html_formato_entrevista = html_formato_entrevista.Replace("[EMAIL_ASPIRANTE]", EMAIL_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[LIBRETA_MILITAR]", LIBRETA_MILITAR); // ----------------------------------- // ----------------------------------- html_formato_entrevista = html_formato_entrevista.Replace("[COMPOSICION_FAMILIAR_ASPIRANTE]", COMPOSICION_FAMILIAR_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[INFO_ACADEMICA_ASPIRANTE]", INFO_ACADEMICA_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[EXPERIENCIA_LAB_ASPIRANTE]", EXPERIENCIA_LAB_ASPIRANTE); // ----------------------------------- // ----------------------------------- html_formato_entrevista = html_formato_entrevista.Replace("[NIVEL_ESCOLARIDAD]", NIVEL_ESCOLARIDAD); html_formato_entrevista = html_formato_entrevista.Replace("[PROFESION_ASPIRANTE]", PROFESION_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[ESPECIALIZACION_ASPIRANTE]", ESPECIALIZACION_ASPIRANTE); html_formato_entrevista = html_formato_entrevista.Replace("[CABEZA_FAMILIA]", CABEZA_FAMILIA); html_formato_entrevista = html_formato_entrevista.Replace("[NUM_HIJOS]", NUM_HIJOS); // ----------------------------------- //TABLA DE COMPOSICION FAMILIAR String html_tabla_composicion_familiar = "<table border=\"1\" cellpadding=\"1\" cellspacing=\"0\" width=\"100%\" align=\"center\" style=\"font-size:8px; line-height:9px;\">"; html_tabla_composicion_familiar += "<tr>"; html_tabla_composicion_familiar += "<td width=\"14%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_composicion_familiar += "PARENTESCO"; html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"25%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_composicion_familiar += "NOMBRES Y APELLIDOS"; html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"10%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_composicion_familiar += "EDAD"; html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"20%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_composicion_familiar += "¿A QUÉ SE DEDICA?"; html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"19%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_composicion_familiar += "VIVE EN"; html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"12%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_composicion_familiar += "VIVE CON EL CANDIDATO"; html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "</tr>"; DataTable tablainfofamiliar = _hojasVida.ObtenerSelRegComposicionFamiliar(ID_ENTREVISTA); foreach(DataRow filaComposicion in tablainfofamiliar.Rows) { html_tabla_composicion_familiar += "<tr>"; html_tabla_composicion_familiar += "<td width=\"14%\" style=\"text-align:left;\">"; html_tabla_composicion_familiar += filaComposicion["ID_TIPO_FAMILIAR"].ToString().Trim(); html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"25%\" style=\"text-align:left;\">"; html_tabla_composicion_familiar += filaComposicion["NOMBRES"].ToString().Trim() + " " + filaComposicion["APELLIDOS"].ToString().Trim(); html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"10%\" style=\"text-align:center;\">"; try { html_tabla_composicion_familiar += _tools.ObtenerEdadDesdeFechaNacimiento(Convert.ToDateTime(filaComposicion["FECHA_NACIMIENTO"])); } catch { html_tabla_composicion_familiar += "Desconocida"; } html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"20%\" style=\"text-align:left;\">"; html_tabla_composicion_familiar += filaComposicion["PROFESION"].ToString().Trim(); html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"19%\" style=\"text-align:left;\">"; if (filaComposicion["ID_CIUDAD"].ToString().Trim() == "EXTRA") { html_tabla_composicion_familiar += "Extranjero"; } else { html_tabla_composicion_familiar += filaComposicion["NOMBRE_CIUDAD"].ToString().Trim(); } html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "<td width=\"12%\" style=\"text-align:center;\">"; if(filaComposicion["VIVE_CON_EL"].ToString().Trim().ToUpper() == "TRUE") { html_tabla_composicion_familiar += "SI"; } else { html_tabla_composicion_familiar += "NO"; } html_tabla_composicion_familiar += "</td>"; html_tabla_composicion_familiar += "</tr>"; } html_tabla_composicion_familiar += "</table>"; html_formato_entrevista = html_formato_entrevista.Replace("[TABLA_COMPOSICION_FAMILIAR]", html_tabla_composicion_familiar); //EDUCACION FORMAL String html_tabla_educacion_formal = "<table border=\"1\" cellpadding=\"1\" cellspacing=\"0\" width=\"100%\" align=\"center\" style=\"font-size:8px; line-height:9px;\">"; html_tabla_educacion_formal += "<tr>"; html_tabla_educacion_formal += "<td width=\"40%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_educacion_formal += "Grado de Instrucción alcanzado:<\br>Especialización, Profesional, Bachiller."; html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "<td width=\"25%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_educacion_formal += "Institución"; html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "<td width=\"12%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_educacion_formal += "Año"; html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "<td width=\"23%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_educacion_formal += "Observaciones"; html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "</tr>"; DataTable tablaEducacionFormal = _hojasVida.ObtenerSelRegInformacionAcademica(ID_ENTREVISTA, "FORMAL"); foreach (DataRow filaEducacionFormal in tablaEducacionFormal.Rows) { html_tabla_educacion_formal += "<tr>"; html_tabla_educacion_formal += "<td width=\"40%\" style=\"text-align:left;\">"; html_tabla_educacion_formal += filaEducacionFormal["NOMBRE_NIVEL_ACADEMICO"].ToString().Trim(); html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "<td width=\"25%\" style=\"text-align:left;\">"; html_tabla_educacion_formal += filaEducacionFormal["INSTITUCION"].ToString().Trim(); html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "<td width=\"12%\" style=\"text-align:center;\">"; html_tabla_educacion_formal += filaEducacionFormal["ANNO"].ToString().Trim(); html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "<td width=\"23%\" style=\"text-align:justify;\">"; html_tabla_educacion_formal += filaEducacionFormal["OBSERVACIONES"].ToString().Trim(); html_tabla_educacion_formal += "</td>"; html_tabla_educacion_formal += "</tr>"; } html_tabla_educacion_formal += "</table>"; html_formato_entrevista = html_formato_entrevista.Replace("[TABLA_EDUCACION_FORMAL]", html_tabla_educacion_formal); //EDUCACION NO FORMAL String html_tabla_educacion_no_formal = "<table border=\"1\" cellpadding=\"1\" cellspacing=\"0\" width=\"100%\" align=\"center\" style=\"font-size:8px; line-height:9px;\">"; html_tabla_educacion_no_formal += "<tr>"; html_tabla_educacion_no_formal += "<td width=\"40%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_educacion_no_formal += "Cursos libres - Diplomados"; html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "<td width=\"25%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_educacion_no_formal += "Institución"; html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "<td width=\"12%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_educacion_no_formal += "Duración"; html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "<td width=\"23%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_educacion_no_formal += "Observaciones"; html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "</tr>"; DataTable tablaEducacionNoFormal = _hojasVida.ObtenerSelRegInformacionAcademica(ID_ENTREVISTA, "NO FORMAL"); foreach (DataRow filaEducacionNoFormal in tablaEducacionNoFormal.Rows) { html_tabla_educacion_no_formal += "<tr>"; html_tabla_educacion_no_formal += "<td width=\"40%\" style=\"text-align:left;\">"; html_tabla_educacion_no_formal += filaEducacionNoFormal["CURSO"].ToString().Trim(); html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "<td width=\"25%\" style=\"text-align:left;\">"; html_tabla_educacion_no_formal += filaEducacionNoFormal["INSTITUCION"].ToString().Trim(); html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "<td width=\"12%\" style=\"text-align:center;\">"; html_tabla_educacion_no_formal += filaEducacionNoFormal["DURACION"].ToString().Trim() + " " + filaEducacionNoFormal["UNIDAD_DURACION"].ToString().Trim(); html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "<td width=\"23%\" style=\"text-align:justify;\">"; html_tabla_educacion_no_formal += filaEducacionNoFormal["OBSERVACIONES"].ToString().Trim(); html_tabla_educacion_no_formal += "</td>"; html_tabla_educacion_no_formal += "</tr>"; } html_tabla_educacion_no_formal += "</table>"; html_formato_entrevista = html_formato_entrevista.Replace("[TABLA_EDUCACION_NO_FORMAL]", html_tabla_educacion_no_formal); //EXPERIENCIA LABORAL String html_tabla_experiencia_laboral = ""; DataTable tablaExperiencia = _hojasVida.ObtenerSelRegExperienciaLaboral(ID_ENTREVISTA); Int32 contador = 1; foreach (DataRow filaExperienciaLaboral in tablaExperiencia.Rows) { if (contador == 1) { html_tabla_experiencia_laboral += "<table border=\"1\" cellpadding=\"1\" cellspacing=\"0\" width=\"100%\" align=\"center\" style=\"font-size:8px; line-height:9px;\">"; } else { html_tabla_experiencia_laboral += "<br><table border=\"1\" cellpadding=\"1\" cellspacing=\"0\" width=\"100%\" align=\"center\" style=\"font-size:8px; line-height:9px;\">"; } html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += contador.ToString() + ". EMPRESA:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += filaExperienciaLaboral["EMPRESA"].ToString().Trim(); html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += "CARGO DESEMPEÑADO:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += filaExperienciaLaboral["CARGO"].ToString().Trim(); html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += "FUNCIONES REALIZADAS:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += filaExperienciaLaboral["FUNCIONES"].ToString().Trim(); html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += "FECHA INGRESO:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += Convert.ToDateTime(filaExperienciaLaboral["FECHA_INGRESO"]).ToShortDateString(); html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += "FECHA RETIRO:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; try { html_tabla_experiencia_laboral += Convert.ToDateTime(filaExperienciaLaboral["FECHA_RETIRO"]).ToShortDateString(); } catch { html_tabla_experiencia_laboral += ""; } html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += "TIEMPO TRABAJADO:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; Boolean correcto = true; DateTime fechaIngreso; DateTime fechaRetiro; try { fechaIngreso = Convert.ToDateTime(filaExperienciaLaboral["FECHA_INGRESO"]); } catch { correcto = false; fechaIngreso = new DateTime(); } if (correcto == true) { Boolean conContratoVigente = true; try { fechaRetiro = Convert.ToDateTime(filaExperienciaLaboral["FECHA_RETIRO"]); conContratoVigente = false; } catch { conContratoVigente = true; fechaRetiro = Convert.ToDateTime(DateTime.Now.ToShortDateString()); } if (fechaRetiro < fechaIngreso) { html_tabla_experiencia_laboral += "Error en fechas."; } else { if (conContratoVigente == true) { html_tabla_experiencia_laboral += "Lleva trabajando: " + _tools.DiferenciaFechas(fechaRetiro, fechaIngreso); } else { html_tabla_experiencia_laboral += "Trabajó: " + _tools.DiferenciaFechas(fechaRetiro, fechaIngreso); } } } else { html_tabla_experiencia_laboral += "Desconocido."; } html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += "MOTIVO_RETIRO:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += filaExperienciaLaboral["MOTIVO_RETIRO"].ToString().Trim(); html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "<tr>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += "ULTIMO SALARIO:"; html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "<td width=\"50%\" style=\"text-align:left;\">"; html_tabla_experiencia_laboral += String.Format("$ {0:N2}", Convert.ToDecimal(filaExperienciaLaboral["ULTIMO_SALARIO"])); html_tabla_experiencia_laboral += "</td>"; html_tabla_experiencia_laboral += "</tr>"; html_tabla_experiencia_laboral += "</table>"; contador += 1; } html_formato_entrevista = html_formato_entrevista.Replace("[TABLA_EXPERIENCIA_LABORAL]", html_tabla_experiencia_laboral); //ahora: si es entrevista por produccion se debe determinar que pruebas se han aplicado al candidato //y mostrarlas en el informe de seleccion //lo mismo con habilidades / competencias pruebaPerfil _pruebaPerfil = new pruebaPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); FabricaAssesment _fabrica = new FabricaAssesment(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaPruebas = new DataTable(); DataTable tablaAssesmentCenter = new DataTable(); DataTable tablaCompetencias = new DataTable(); String TIPO_ENTREVISTA = String.Empty; if (ID_PERFIL <= 0) { //ES ENTREVISTA POR PRODUCCION tablaPruebas = _pruebaPerfil.ObtenerAplicadasAIdSolicitudConResultados(ID_SOLICITUD); tablaCompetencias = _fabrica.ObtenerAplicacionCompetenciasPorSolicitudIngreso(ID_SOLICITUD); if (tablaCompetencias.Rows.Count <= 0) { TIPO_ENTREVISTA = "B"; } else { TIPO_ENTREVISTA = "A"; } } else { //es entrevista asociada a perfil entonces cargamos lo pertinente a ese perfil tablaPruebas = _pruebaPerfil.ObtenerPorIdPerfilConResultadosIdSolicitud(ID_PERFIL, ID_SOLICITUD); if (ID_ASSESMENT_CENTER > 0) { TIPO_ENTREVISTA = "A"; //se tiene un assesmentcenter associado tablaAssesmentCenter = _fabrica.ObtenerAssesmentCentePorId(ID_ASSESMENT_CENTER); tablaCompetencias = _fabrica.ObtenerCompetenciasAssesmentCenteActivos(ID_ASSESMENT_CENTER, ID_SOLICITUD); } else { TIPO_ENTREVISTA = "B"; } } //AHORA SI SEGUN LOS ObTENIDOS DE LAS TABLAS SE MUESTRA EN EL INFORME. if (tablaPruebas.Rows.Count > 0) { String html_resultados_pruebas; html_resultados_pruebas = "<br />"; html_resultados_pruebas += "<div style=\"text-align: left; margin: 0 0 0 20px; text-decoration: underline; font-weight: bold;\">"; html_resultados_pruebas += "RESULTADO DE PRUEBAS PSICOTÉCNICAS"; html_resultados_pruebas += "</div>"; for (int i = 0; i < tablaPruebas.Rows.Count; i++) { DataRow filaPrueba = tablaPruebas.Rows[i]; String NOM_PRUEBA = filaPrueba["NOM_PRUEBA"].ToString().Trim(); String RESULTADO = filaPrueba["RESULTADOS"].ToString().Trim(); html_resultados_pruebas += "<br />"; html_resultados_pruebas += "<div style=\"text-align: left; margin: 0 0 0 20px; font-weight: bold; font-size:9px;\">"; html_resultados_pruebas += NOM_PRUEBA; html_resultados_pruebas += "</div>"; html_resultados_pruebas += "<div style=\"text-align: justify;\">"; if (String.IsNullOrEmpty(RESULTADO) == false) { html_resultados_pruebas += RESULTADO; } else { html_resultados_pruebas += "Desconocido."; } html_resultados_pruebas += "</div>"; } html_resultados_pruebas += "<br />"; html_formato_entrevista = html_formato_entrevista.Replace("[TABLA_RESULTADO_PRUEBAS]", html_resultados_pruebas); } else { html_formato_entrevista = html_formato_entrevista.Replace("[TABLA_RESULTADO_PRUEBAS]", "<br />"); } //FORMATO DE ASSESMENT CENTER if (TIPO_ENTREVISTA.Contains("A") == true) { String NOMBRE_ASSESMENT = ""; if (tablaAssesmentCenter.Rows.Count > 0) { DataRow filaAssesment = tablaAssesmentCenter.Rows[0]; NOMBRE_ASSESMENT = filaAssesment["NOMBRE_ASSESMENT"].ToString().Trim(); } //En esta variable cargamos el documento plantilla por habilidades archivo_original = new StreamReader(Server.MapPath(@"~\plantillas_reportes\formato_evaluacion_assesmentcenter.htm")); String html_formato_assesment_center = archivo_original.ReadToEnd(); archivo_original.Dispose(); archivo_original.Close(); String html_tabla_assesment = "<table border=\"1\" cellpadding=\"1\" cellspacing=\"0\" width=\"100%\" align=\"center\" style=\"font-size:8px; line-height:9px;\">"; html_tabla_assesment += "<tr>"; html_tabla_assesment += "<td width=\"25%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_assesment += "COMPETENCIA / HABILIDAD"; html_tabla_assesment += "</td>"; html_tabla_assesment += "<td width=\"35%\" style=\"text-align:center; font-weight: bold;\">"; html_tabla_assesment += "CALIFICACIÓN"; html_tabla_assesment += "</td>"; html_tabla_assesment += "<td width=\"40%\" style=\"text-align:center; font-weight: bold; \">"; html_tabla_assesment += "OBSERVACIONES"; html_tabla_assesment += "</td>"; html_tabla_assesment += "</tr>"; foreach (DataRow filaCalificacionCompetencias in tablaCompetencias.Rows) { html_tabla_assesment += "<tr>"; html_tabla_assesment += "<td width=\"25%\" style=\"text-align:left; \">"; html_tabla_assesment += filaCalificacionCompetencias["COMPETENCIA"].ToString().Trim(); html_tabla_assesment += "</td>"; html_tabla_assesment += DevuelveTdsConCalificacionSegunDataRow(filaCalificacionCompetencias); html_tabla_assesment += "<td width=\"40%\" style=\"text-align:justify; \">"; html_tabla_assesment += filaCalificacionCompetencias["OBSERVACIONES"].ToString().Trim(); html_tabla_assesment += "</td>"; } html_tabla_assesment += "</table>"; html_formato_assesment_center = html_formato_assesment_center.Replace("[NOMBRE_ASSESMENT]", NOMBRE_ASSESMENT); html_formato_assesment_center = html_formato_assesment_center.Replace("[TABLA_DE_ASSESMENT_CENTER]", html_tabla_assesment); html_formato_entrevista = html_formato_entrevista.Replace("[FORMATO_EVALUACION_ASSESMENTCENTER]", html_formato_assesment_center); } else { html_formato_entrevista = html_formato_entrevista.Replace("[FORMATO_EVALUACION_ASSESMENTCENTER]", ""); } // concepto general html_concepto = html_concepto.Replace("[CONCEPTO_GENERAL]", CONCEPTO_GENERAL); // concepto general html_formato_entrevista = html_formato_entrevista.Replace("[CONCEPTO_GENERAL]", html_concepto); // USUARIO QUE HIZO LA ENTREVISTA usuario _usuario = new usuario(Session["idEmpresa"].ToString()); DataTable tablaUsuario = _usuario.ObtenerUsuarioPorUsuLog(USUARIO_ENTREVISTADOR); //ACA VA ES EL DE LA ENTREVISTA DataRow filaUsuario = tablaUsuario.Rows[0]; if (filaUsuario["USU_TIPO"].ToString().ToUpper() == "PLANTA") { html_formato_entrevista = html_formato_entrevista.Replace("[NOMBRE_PSICOLOGO]", filaUsuario["NOMBRES"].ToString().Trim() + " " + filaUsuario["APELLIDOS"].ToString().Trim()); } else { html_formato_entrevista = html_formato_entrevista.Replace("[NOMBRE_PSICOLOGO]", filaUsuario["NOMBRES_EXTERNO"].ToString().Trim() + " " + filaUsuario["APELLIDOS_EXTERNO"].ToString().Trim()); } html_formato_entrevista = html_formato_entrevista.Replace("[CARGO_SICOLOGO]", "Psicólogo de Selección"); html_formato_entrevista += html_pie; //creamos un configuramos el documento de pdf //(tamaño de la hoja,margen izq, margen der, margin arriba margen abajo) iTextSharp.text.Document document = new iTextSharp.text.Document(new Rectangle(595, 842), 50, 50, 80, 45); using (MemoryStream streamArchivo = new MemoryStream()) { iTextSharp.text.pdf.PdfWriter writer = PdfWriter.GetInstance(document, streamArchivo); // Our custom Header and Footer is done using Event Handler pdfEvents PageEventHandler = new pdfEvents(); writer.PageEvent = PageEventHandler; // Define the page header // Define the page header if (Session["idEmpresa"].ToString() == "1") { PageEventHandler.dirImagenHeader = Server.MapPath("~/imagenes/reportes/logo_sertempo.png"); } else { PageEventHandler.dirImagenHeader = Server.MapPath("~/imagenes/reportes/logo_eficiencia.png"); } PageEventHandler.fechaImpresion = DateTime.Now; PageEventHandler.tipoDocumento = "entrevista"; document.Open(); //capturamos el archivo temporal del response String tempFile = Path.GetTempFileName(); //y lo llenamos con el html de la plantilla using (StreamWriter tempwriter = new StreamWriter(tempFile, false)) { tempwriter.Write(html_formato_entrevista); } //leeemos el archivo temporal y lo colocamos en el documento de pdf List<IElement> htmlarraylist = HTMLWorker.ParseToList(new StreamReader(tempFile), new StyleSheet()); foreach (IElement element in htmlarraylist) { if (element.Chunks.Count > 0) { if (element.Chunks[0].Content == "linea para paginacion de pdf") { document.NewPage(); } else { document.Add(element); } } else { document.Add(element); } } //limpiamos todo document.Close(); writer.Close(); return streamArchivo.ToArray(); } }
/// <summary> /// HECHO POR CESAR /// EL DIA 18 DE DICIEMBRE DE 2012 /// PARA GENERAR LOS ARCHIVOS DE LAS PRUEBAS /// </summary> /// <param name="prefijoNombreArchivo"></param> /// <returns></returns> public Dictionary<String, byte[]> ObtenerArchivosPruebas(String prefijoNombreArchivo, Decimal ID_PERFIL, Decimal ID_SOLICITUD) { Dictionary<String, byte[]> listaArchivos = new Dictionary<string, byte[]>(); //obtenemos las pruebas por perfil y con los resultados asociados /* SRAP.ARCHIVO_PRUEBA, SRAP.ARCHIVO_EXTENSION, SRAP.ARCHIVO_TAMANO, SRAP.ARCHIVO_TYPE, */ pruebaPerfil _pruebaPerfil = new pruebaPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaPruebas = _pruebaPerfil.ObtenerPorIdPerfilConResultadosIdSolicitud(ID_PERFIL, ID_SOLICITUD); for (int i = 0; i < tablaPruebas.Rows.Count; i++) { DataRow filaArchivo = tablaPruebas.Rows[i]; if (DBNull.Value.Equals(filaArchivo["ARCHIVO_PRUEBA"]) == false) { String NOM_PRUEBA = filaArchivo["NOM_PRUEBA"].ToString().Trim(); NOM_PRUEBA = NOM_PRUEBA.Replace(' ', '_'); byte[] ARCHIVO = (byte[])filaArchivo["ARCHIVO_PRUEBA"]; String EXTENSION = filaArchivo["ARCHIVO_EXTENSION"].ToString().Trim(); listaArchivos.Add((prefijoNombreArchivo + "PRUEBA-" + NOM_PRUEBA + EXTENSION).Replace(' ', '_'), ARCHIVO); } } return listaArchivos; }
private void Actualizar() { Decimal ID_PERFIL = Convert.ToDecimal(HiddenField_ID_PERFIL.Value); Decimal ID_EMPRESA = Convert.ToDecimal(HiddenField_ID_EMPRESA.Value); String EDADMIN = TextBox_EDAD_MINIMA.Text; String EDADMAX = TextBox_EDAD_MAXIMA.Text; String EXPERIENCIA = DropDownList_Experiencia.SelectedValue; String SEXO = DropDownList_SEXO.SelectedValue; String NIV_ACADEMICO = DropDownList_NIV_ACADEMICO.SelectedValue; String OBSERVACIONES_ESPECIALES = TextBox_OBSERVACIONES_ESPECIALES.Text; Boolean ESTADO = true; List<documentoPerfil> listaDocumentos = new List<documentoPerfil>(); foreach (DataRow fila in obtenerTablaDeGrillaDocumentos().Rows) { documentoPerfil _documento = new documentoPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); _documento.IDDOCUMENTO = fila["Código Documento"].ToString().Trim(); _documento.IDEMPRESA = ID_EMPRESA; listaDocumentos.Add(_documento); } List<pruebaPerfil> listaPruebas = new List<pruebaPerfil>(); foreach (DataRow fila in obtenerTablaDeGrillaPruebas().Rows) { pruebaPerfil _pruebaPerfil = new pruebaPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); _pruebaPerfil.IDPRUEBA = fila["Código Prueba"].ToString().Trim(); listaPruebas.Add(_pruebaPerfil); } String NIVEL_REQUERIMIENTO = RadioButtonList_NivelDificultadReq.SelectedValue; Decimal ID_CATEGORIA_REFERENCIA = Convert.ToDecimal(DropDownList_TipoConfirmacionReferencia.SelectedValue); Decimal ID_ASSESMENT_CENTER = 0; Boolean actualizarTipoEntrevista = true; String TIPO_ENTREVISTA = null; actualizarTipoEntrevista = true; if (CheckBox_TipoBasica.Checked == true) { TIPO_ENTREVISTA = "B"; } else { if (CheckBox_TipoCompetencias.Checked == true) { TIPO_ENTREVISTA = "A"; ID_ASSESMENT_CENTER = Convert.ToDecimal(DropDownList_AssesmentCenter.SelectedValue); } } perfil _perfil = new perfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); Boolean correcto = _perfil.Actualizar(ID_PERFIL, ID_EMPRESA, EDADMIN, EDADMAX, SEXO, EXPERIENCIA, NIV_ACADEMICO, listaDocumentos, listaPruebas, OBSERVACIONES_ESPECIALES, actualizarTipoEntrevista, TIPO_ENTREVISTA,ID_CATEGORIA_REFERENCIA, ID_ASSESMENT_CENTER, ESTADO, NIVEL_REQUERIMIENTO); if (correcto == false) { Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _perfil.MensajeError, Proceso.Error); } else { maestrasInterfaz _maestrasInterfaz = new maestrasInterfaz(); _maestrasInterfaz.CargarEnBdElManualServicioActual(ID_EMPRESA); Cargar(ID_PERFIL, false); Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "El Perfil fue modificado correctamente.", Proceso.Correcto); } }
private void llenarGridPruebas(Decimal idPerfil) { pruebaPerfil _prueba = new pruebaPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable _dataTable = _prueba.ObtenerPorIdPerfil(idPerfil); if (_dataTable.Rows.Count > 0) { Cargar_GridView_NOMBRE_PRUEBA_desde_tabla(_dataTable); } else { GridView_NOMBRE_PRUEBA.DataSource = null; GridView_NOMBRE_PRUEBA.DataBind(); } }
public Decimal Adicionar(Decimal ID_EMPRESA, Decimal ID_OCUPACION, String EDAD_MIN, String EDAD_MAX, String SEXO, String EXPERIENCIA, String NIV_ESTUDIOS, List<documentoPerfil> documentos, List<pruebaPerfil> pruebas, String OBSERVACIONES_ESPECIALES, String TIPO_ENTREVISTA, Decimal ID_CATEGORIA_REFERENCIA, Decimal ID_ASSESMENT_CENTER, Boolean ESTADO, String NIVEL_REQUERIMIENTO) { Decimal ID_VERSIONAMIENTO = 0; Boolean realizarVersionamientoManual = true; Boolean continuarNormalmente = true; ManualServicio _manual = new ManualServicio(Empresa, Usuario); Boolean correcto = true; Decimal ID_PERFIL = 0; Conexion conexion = new Conexion(Empresa); conexion.IniciarTransaccion(); try { realizarVersionamientoManual = _manual.EmpresaConManualDeServicioCreado(ID_EMPRESA, conexion); if (realizarVersionamientoManual == true) { ID_VERSIONAMIENTO = _manual.RegistrarInsersionRegistroTabla(ID_VERSIONAMIENTO, ManualServicio.ListaSecciones.Seleccion, "PERFIL", "Perfil", ID_OCUPACION.ToString(), ManualServicio.AccionesManual.Insertar, ID_EMPRESA, conexion); if (ID_VERSIONAMIENTO == -1) { conexion.DeshacerTransaccion(); correcto = false; continuarNormalmente = false; ID_VERSIONAMIENTO = 0; } } if (continuarNormalmente == true) { ID_PERFIL = AdicionarVenDPerfiles(ID_EMPRESA, ID_OCUPACION, EDAD_MIN, EDAD_MAX, SEXO, EXPERIENCIA, NIV_ESTUDIOS, OBSERVACIONES_ESPECIALES, TIPO_ENTREVISTA, ESTADO, ID_CATEGORIA_REFERENCIA, ID_ASSESMENT_CENTER, NIVEL_REQUERIMIENTO, conexion); if (ID_PERFIL <= 0) { conexion.DeshacerTransaccion(); correcto = false; ID_PERFIL = 0; } else { documentoPerfil _documentoPerfil = new documentoPerfil(Empresa, Usuario); foreach (documentoPerfil d in documentos) { if (_documentoPerfil.Adicionar(ID_PERFIL, Convert.ToDecimal(d.IDDOCUMENTO), conexion) == false) { conexion.DeshacerTransaccion(); correcto = false; ID_PERFIL = 0; MensajeError = _documentoPerfil.MensajeError; break; } } if (correcto == true) { pruebaPerfil _pruebaPerfil = new pruebaPerfil(Empresa, Usuario); foreach (pruebaPerfil p in pruebas) { if (_pruebaPerfil.Adicionar(ID_PERFIL, Convert.ToDecimal(p.IDPRUEBA), conexion) == false) { conexion.DeshacerTransaccion(); correcto = false; ID_PERFIL = 0; MensajeError = _pruebaPerfil.MensajeError; break; } } } } } if (correcto == true) { conexion.AceptarTransaccion(); } } catch (Exception ex) { conexion.DeshacerTransaccion(); correcto = false; MensajeError = ex.Message; } finally { conexion.Desconectar(); } return ID_PERFIL; }
public Decimal ActualizarPruebasPerfil(Decimal ID_PERFIL, List<pruebaPerfil> pruebas, Boolean realizarVersionamientoManual, Decimal ID_VERSIONAMIENTO, ManualServicio _manual, Decimal ID_EMPRESA, Conexion conexion) { Boolean continuarNormalmente = true; pruebaPerfil _pruebaPerfil = new pruebaPerfil(Empresa, Usuario); Boolean eliminarPrueba = true; Boolean insertarPrueba = true; DataTable tablaPruebasActuales = _pruebaPerfil.ObtenerPorIdPerfil(ID_PERFIL, conexion); for (int i = 0; i < tablaPruebasActuales.Rows.Count; i++) { DataRow filaPruebaActual = tablaPruebasActuales.Rows[i]; Decimal ID_PRUEBA_ACTUAL = Convert.ToDecimal(filaPruebaActual["Código Prueba"]); eliminarPrueba = true; foreach (pruebaPerfil p in pruebas) { if (p.IDPRUEBA == ID_PRUEBA_ACTUAL.ToString()) { eliminarPrueba = false; break; } } if (eliminarPrueba == true) { if (realizarVersionamientoManual == true) { ID_VERSIONAMIENTO = _manual.RegistrarDesactivacionRegistroTabla(ID_EMPRESA, ManualServicio.ListaSecciones.Seleccion, ManualServicio.AccionesManual.Eliminar, "PRUEBA_PERFIL", "Prueba de Perfil", ID_PRUEBA_ACTUAL.ToString(), ID_VERSIONAMIENTO, conexion); if (ID_VERSIONAMIENTO == -1) { continuarNormalmente = false; ID_VERSIONAMIENTO = 0; return -1; } } if (continuarNormalmente == true) { if (_pruebaPerfil.EliminarPruebaDePerfil(ID_PERFIL, ID_PRUEBA_ACTUAL, conexion) == false) { MensajeError = _pruebaPerfil.MensajeError; return -1; } } } } foreach (pruebaPerfil p in pruebas) { insertarPrueba = true; for (int i = 0; i < tablaPruebasActuales.Rows.Count; i++) { DataRow filaPruebaActual = tablaPruebasActuales.Rows[i]; Decimal ID_PRUEBA_ACTUAL = Convert.ToDecimal(filaPruebaActual["Código Prueba"]); if (p.IDPRUEBA == ID_PRUEBA_ACTUAL.ToString()) { insertarPrueba = false; break; } } if (insertarPrueba == true) { if (realizarVersionamientoManual == true) { ID_VERSIONAMIENTO = _manual.RegistrarInsersionRegistroTabla(ID_VERSIONAMIENTO, ManualServicio.ListaSecciones.Seleccion, "PRUEBA_PERFIL", "Prueba de Perfil", p.IDPRUEBA, ManualServicio.AccionesManual.Insertar, ID_EMPRESA, conexion); if (ID_VERSIONAMIENTO == -1) { continuarNormalmente = false; ID_VERSIONAMIENTO = 0; return -1; } } if (continuarNormalmente == true) { if (_pruebaPerfil.Adicionar(ID_PERFIL, Convert.ToDecimal(p.IDPRUEBA), conexion) == false) { MensajeError = _pruebaPerfil.MensajeError; return -1; } } } } return ID_VERSIONAMIENTO; }
private void CargarSeleccion(Decimal ID_EMPRESA,tabla.proceso proceso) { contactos _contacto = new contactos(Session["idEmpresa"].ToString()); DataTable tablaContactosOriginal = _contacto.ObtenerContactosPorIdEmpresa(ID_EMPRESA, proceso); GridView_ContactosSeleccion.DataSource = tablaContactosOriginal; GridView_ContactosSeleccion.DataBind(); pruebaPerfil _pp = new pruebaPerfil(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaPruebas = _pp.ObtenerPruebasVSCargoPorEmpresa(ID_EMPRESA); CargarTablaConfiguradaParaPruebasCargosSeleccion(tablaPruebas); envioCandidato _envioCandidato = new envioCandidato(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString()); DataTable tablaCondicionesEnvio = _envioCandidato.ObtenerTodosLosContactosParaEnvioDeCandidatosPorIdEmpresa(ID_EMPRESA); if (tablaCondicionesEnvio.Rows.Count > 0) { GridView_CondEnvioSeleccion.DataSource = tablaCondicionesEnvio; GridView_CondEnvioSeleccion.DataBind(); } else { GridView_CondEnvioSeleccion.DataSource = null; GridView_CondEnvioSeleccion.DataBind(); } }