コード例 #1
0
        public Boolean ActualizarEntrevista(Decimal ID_SOLICITUD,
            DateTime FCH_ENTREVISTA,
            String COM_C_FAM,
            String COM_F_LAB,
            String COM_C_ACA,
            String COM_C_GEN,
            List<listaPruebasAplicados> listaPruebas,
            Decimal ID_REQUERIMIENTO,
            List<ComposicionFamiliar> listaComposicionFamiliar,
            List<FormacionAcademica> listaFormacionAcademica,
            List<ExperienciaLaboral> listaExperienciaLaboral,
            Decimal REGISTRO_ENTREVISTA,
            Decimal ID_PERFIL,
            List<AplicacionCompetencia> listaCompetencias)
        {
            Boolean correcto = true;
            Conexion conexion = new Conexion(Empresa);
            conexion.IniciarTransaccion();

            try
            {
                if (ActualizarSelRegEntrevistas(ID_SOLICITUD, FCH_ENTREVISTA, COM_C_FAM, COM_F_LAB, COM_C_ACA, COM_C_GEN, conexion) == false)
                {
                    conexion.DeshacerTransaccion();
                    correcto = false;
                }
                else
                {
                    if (guardarPruebas(listaPruebas, conexion) == false)
                    {
                        correcto = false;
                        conexion.DeshacerTransaccion();
                    }
                    else
                    {
                        if (guardarCompetencias(listaCompetencias, conexion) == false)
                        {
                            correcto = false;
                            conexion.DeshacerTransaccion();
                        }
                        else
                        {
                            if (ActulizarComposicionFamiliarEntrevista(REGISTRO_ENTREVISTA, listaComposicionFamiliar, conexion) == false)
                            {
                                correcto = false;
                                conexion.DeshacerTransaccion();
                            }
                            else
                            {
                                if (ActualizarFormacionAcademicaEntrevistado(REGISTRO_ENTREVISTA, listaFormacionAcademica, conexion) == false)
                                {
                                    correcto = false;
                                    conexion.DeshacerTransaccion();
                                }
                                else
                                {
                                    if (ActualizarExperienciaLaboralEntrevistado(REGISTRO_ENTREVISTA, listaExperienciaLaboral, conexion) == false)
                                    {
                                        correcto = false;
                                        conexion.DeshacerTransaccion();
                                    }
                                    else
                                    {
                                        radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Empresa, Usuario);

                                        if (ID_REQUERIMIENTO > 0)
                                        {
                                            if (!_radicacionHojasDeVida.ActualizarRequisicionSolicitud(ID_SOLICITUD, ID_REQUERIMIENTO, conexion))
                                            {
                                                MensajeError = _radicacionHojasDeVida.MensajeError;
                                                correcto = false;
                                                conexion.DeshacerTransaccion();
                                            }
                                        }

                                        if (correcto == true)
                                        {
                                            DataTable tablaSolicitud = _radicacionHojasDeVida.ObtenerRegSolicitudesingresoPorIdSolicitud(ID_SOLICITUD, conexion);
                                            DataRow filaSolicitud = tablaSolicitud.Rows[0];

                                            if (filaSolicitud["ARCHIVO"].ToString().Trim() != "EN CLIENTE")
                                            {
                                                if (_radicacionHojasDeVida.ActualizarEstadoSolicitud(ID_SOLICITUD, conexion) == false)
                                                {
                                                    correcto = false;
                                                    MensajeError = _radicacionHojasDeVida.MensajeError;
                                                    conexion.DeshacerTransaccion();
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                if (correcto == true)
                {
                    conexion.AceptarTransaccion();
                }
            }
            catch (Exception ex)
            {
                conexion.DeshacerTransaccion();
                MensajeError = ex.Message;
                correcto = false;
            }
            finally
            {
                conexion.Desconectar();
            }

            return correcto;
        }