예제 #1
0
        /* ****************************************************************************/

        /* Metodo que carga el DropList de Ciudades del Formulario de la Pagina
         * /* ****************************************************************************/
        protected void ddlCiudades_Load()
        {
            CnMysql Conexion = new CnMysql(Cn);

            try
            {
                MySqlCommand     comando     = new MySqlCommand("SELECT idCiudades, Descripcion_Ciudades FROM " + bd1 + ".ciudades ORDER BY Descripcion_Ciudades", Conexion.ObtenerCnMysql());
                MySqlDataAdapter da          = new MySqlDataAdapter(comando);
                DataSet          dsDataSet   = new DataSet();
                DataTable        dtDataTable = null;

                Conexion.AbrirCnMysql();
                da.Fill(dsDataSet);
                dtDataTable = dsDataSet.Tables[0];
                if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                {
                    ddlCiudades.DataSource     = dtDataTable;
                    ddlCiudades.DataTextField  = "Descripcion_Ciudades";
                    ddlCiudades.DataValueField = "idCiudades";
                    ddlCiudades.DataBind();
                }
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #2
0
        /* ****************************************************************************/

        /* Metodo que carga la informacion del empleado en el formulario
         * /* ****************************************************************************/
        public void CargarInfoEmpleado(string id_Empleado)
        {
            CnMysql Conexion = new CnMysql(Cn);

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd = new MySqlCommand(bd2 + ".sp_ConsultaEmpleados", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@idEmpleado", id_Empleado);
                cmd.Parameters.AddWithValue("@empresa", "SS");
                MySqlDataReader rd = cmd.ExecuteReader();

                if (rd.Read())
                {
                    Container_UpdatePanel2.Visible = true;
                    TxtDoc.Text             = rd["Id_Empleado"].ToString();
                    TxtNombres.Text         = rd["Nombres_Empleado"].ToString();
                    TxtPrimerApellido.Text  = rd["Primer_Apellido_empleado"].ToString();
                    TxtSegundoApellido.Text = rd["Segundo_Apellido_Empleado"].ToString();
                    if (rd["Sexo_Empleado"].ToString() != null)
                    {
                        TxtSexoEmp.SelectedValue = rd["Sexo_Empleado"].ToString();
                    }
                    TxtExp.Text       = rd["Lugar_expediccion_IdEmpleado"].ToString();
                    TxtCorreo.Text    = rd["Correo_Empleado"].ToString();
                    TxtBarrio.Text    = rd["Barrio_Empleado"].ToString();
                    TxtCelular.Text   = rd["Celular_Empleado"].ToString();
                    TxtEps.Text       = rd["EPS_Empleado"].ToString();
                    TxtAfp.Text       = rd["AFP_Empleado"].ToString();
                    TxtTelefono.Text  = rd["Telefono_Empleado"].ToString();
                    TxtCesantias.Text = rd["Cesantias_Empleado"].ToString();
                    if (rd["EstadoCivil_Empleado"].ToString() != null)
                    {
                        TxtEstCivil.SelectedValue = rd["EstadoCivil_Empleado"].ToString();
                    }
                    TxtDir.Text     = rd["Direccion_Empleado"].ToString();
                    TxtFechNac.Text = rd["Fecha_nacimiento_Empleado"].ToString();
                    if (ddlCiudades.Items.FindByValue(rd["Lugar_Nacimiento"].ToString()) != null)
                    {
                        ddlCiudades.SelectedValue = rd["Lugar_Nacimiento"].ToString();
                    }
                    Session.Add("Contrasena", rd["Contrasena_Empleado"].ToString());
                    Container_UpdatePanel2.Visible = true;
                }
                else
                {
                    MensajeError("No se encontro el número de identificación digitado. Por favor verifique.");
                }
                rd.Close();
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #3
0
        /// <summary>
        /// Maneja los eventos de la grilla objetivos
        /// </summary>
        /// <param name="sender">Objeto sender</param>
        /// <param name="e">evento e de la grilla</param>
        protected void gvObjetivosCreados_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            LblMsj.Visible = false;
            UpdatePanel3.Update();

            CnMysql Conexion = new CnMysql(Cn2);

            Conexion.AbrirCnMysql();

            try
            {
                string[] arg = new string[2];
                arg = e.CommandArgument.ToString().Split(';');
                int    idObjetivos   = Convert.ToInt32(arg[0]);
                string codEvaluacion = arg[1];

                Session.Add("idObjetivos", idObjetivos);

                if (e.CommandName == "Evaluacion")
                {
                    Container_UpdatePanelEval.Visible = true;
                    Container_UpdatePanel3.Visible    = false;
                    UpdatePanel1.Update();
                }
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #4
0
        /// <summary>
        /// Guardar Observacion y enviar evento
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void BtnGuardarObs_Click(object sender, EventArgs e)
        {
            if (this.CrearObservacion(Session["usuario"].ToString(), txtObservacion.Text, 3))
            {
                CnMysql Conexion = new CnMysql(Cn2);
                Conexion.AbrirCnMysql();

                int res = 0;

                try
                {
                    MySqlCommand cmd = new MySqlCommand("sp_CrearEtapaJefeEmpleado", Conexion.ObtenerCnMysql());
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@Etapas_idEtapas", 3);
                    cmd.Parameters.AddWithValue("@JefeEmpleado_idJefeEmpleado", Session["idJefeEmpleado"]);
                    cmd.Parameters.AddWithValue("@EstadoEtapa_idEstadoEtapa", 6);
                    cmd.Parameters.AddWithValue("@Fecha", DateTime.Now);

                    // Crea un parametro de salida para el SP
                    MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                    {
                        Direction = ParameterDirection.Output
                    };

                    cmd.Parameters.Add(outputIdParam);
                    cmd.ExecuteNonQuery();

                    //Almacena la respuesta de la variable de retorno del SP
                    res = int.Parse(outputIdParam.Value.ToString());

                    if (res == 1)
                    {
                        this.CargarObjetivoBloqueados(Session["idJefeEmpleado"].ToString());
                    }

                    Container_UpdatePanelObservaciones.Visible = false;
                    UpdatePanel1.Update();
                    MensajeError("Se envio correctamente la información");

                    Container_UpdatePanel1.Visible = false;
                    Container_UpdatePanel2.Visible = false;
                    Container_UpdatePanel3.Visible = false;
                    UpdatePanel1.Update();
                }
                catch (Exception ex)
                {
                    MensajeError("Ha ocurrido el siguiente error: " + ex.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                }
                finally
                {
                    Conexion.CerrarCnMysql();
                }
            }
            else
            {
                MensajeError("Hubo un error, por favor revise con su administrador");
            }
        }
예제 #5
0
        /// <summary>
        /// Maneja los eventos de la grilla objetivos
        /// </summary>
        /// <param name="sender">Objeto sender</param>
        /// <param name="e">evento e de la grilla</param>
        protected void gvObjetivosCreados_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            LblMsj.Visible = false;
            UpdatePanel3.Update();

            Container_UpdatePanel3.Visible = false;
            UpdatePanel1.Update();

            txtSeguimiento.Text = string.Empty;
            txtMeta.Text        = string.Empty;

            CnMysql Conexion = new CnMysql(Cn2);

            Conexion.AbrirCnMysql();

            try
            {
                string[] arg = new string[4];
                arg = e.CommandArgument.ToString().Split(';');
                int    idObjetivos       = Convert.ToInt32(arg[0]);
                int    estadoSeguimiento = Convert.ToInt32(arg[1]);
                string segDescripcion    = arg[2];
                string meta = string.Empty;

                if (arg[3] != "")
                {
                    meta = (Convert.ToDouble(arg[3]) * 100).ToString();
                }

                Session.Add("idObjetivos", idObjetivos);

                if (e.CommandName == "Seguimiento")
                {
                    if (estadoSeguimiento == 1)
                    {
                        BtnGuardar.Text     = "Editar";
                        txtSeguimiento.Text = segDescripcion;
                        txtMeta.Text        = meta;
                    }
                    else
                    {
                        BtnGuardar.Text = "Guardar";
                    }

                    Container_UpdatePanel2.Visible = true;
                    UpdatePanel1.Update();
                }
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #6
0
        /* ********************************************************************************************************/

        /* Evento que se produce al dar clic sobre el boton BtnEditar para almacenar la informacion del tercero
         * /* ********************************************************************************************************/
        protected void BtnEditar_Click(object sender, EventArgs e)
        {
            CnMysql Conexion = new CnMysql(Cn2);
            int     res      = 0;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd = new MySqlCommand(bd3 + ".AsignarJefe", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@idjefe", TxtDoc.Text);
                cmd.Parameters.AddWithValue("@idEmpleado", Session["usuario"].ToString());
                cmd.Parameters.AddWithValue("@empresa", "AE");
                cmd.Parameters.AddWithValue("@anio", Session["anoActivo"].ToString());

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());
                if (res == 0)
                {
                    MensajeError("Usted ya cuenta con un Jefe Asignado. ");
                    BtnEditar.Enabled = false;
                }
                else if (res == 3)
                {
                    MensajeError("Usted No puede ser su propio Jefe. ");
                    BtnEditar.Enabled = false;
                }
                else if (res == 2)
                {
                    MensajeError("El Jefe fue Actualizado. ");
                    BtnEditar.Enabled = false;
                }
                else
                {
                    MensajeError("El Jefe fue Asignado. ");
                    BtnEditar.Enabled = false;
                }
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #7
0
        /// <summary>
        /// Evaluacion Jefe
        /// </summary>
        /// <param name="sender">objeto sender</param>
        /// <param name="e">evento e</param>
        protected void BtnEvaluar_Click(object sender, EventArgs e)
        {
            CnMysql Conexion = new CnMysql(Cn2);
            int     res      = 0;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd;

                cmd             = new MySqlCommand("sp_ActualizarEvaluacionJefe", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@idObjetivos", Session["idObjetivos"]);
                cmd.Parameters.AddWithValue("@idJefeEmpleado", Session["idJefeEmpleado"]);
                cmd.Parameters.AddWithValue("@Cedula_Jefe", Session["usuario"]);
                cmd.Parameters.AddWithValue("@idCalificacionJefe", ddlEvaluacion.SelectedValue);

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());

                if (res == 1)
                {
                    MensajeError("Evaluación Registrada");
                }
                else
                {
                    MensajeError("Hubo un error al crear, por favor revise con su administrador");
                }

                this.ComprobarEvaluaciónTotal(Session["idJefeEmpleado"].ToString());
                ddlEvaluacion.SelectedIndex = 1;
                this.CargarObjetivos(Session["idJefeEmpleado"].ToString());
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Container_UpdatePanelEval.Visible = false;
                UpdatePanel1.Update();
                Conexion.CerrarCnMysql();
            }
        }
예제 #8
0
        /* ****************************************************************************/

        /* Metodo que se ejecuta al momento de la carga de la Pagina
         * /* ****************************************************************************/
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["usuario"] == null)
            {
                //Redirecciona a la pagina de login en caso de que el usuario no se halla autenticado
                Response.Redirect("~/Login.aspx");
            }
            else
            {
                if (!IsPostBack)
                {
                    if (Session["Seleccionjefe"] != null)
                    {
                        if (Session["Seleccionjefe"].ToString() == "1")
                        {
                            lblTexto.Visible = true;
                            Session.Remove("Seleccionjefe");
                        }
                    }

                    CnMysql Conexion = new CnMysql(Cn);
                    try
                    {
                        txtuser.Focus();

                        MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT descripcion FROM " + bd1 + ".Options_Menu WHERE url = 'Seleccionjefe.aspx' and Tipoportal = 'T'", Conexion.ObtenerCnMysql());
                        MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                        DataSet          dsDataSet         = new DataSet();
                        DataTable        dtDataTable       = null;

                        Conexion.AbrirCnMysql();
                        sdaSqlDataAdapter.Fill(dsDataSet);
                        dtDataTable = dsDataSet.Tables[0];
                        if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                        {
                            this.lblTitulo.Text = dtDataTable.Rows[0].ItemArray[0].ToString();
                        }

                        this.ObtenerPeriodoActivo();
                    }
                    catch (Exception E)
                    {
                        MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                    }
                    finally
                    {
                        Conexion.CerrarCnMysql();
                    }
                }
            }
        }
예제 #9
0
 public DataTable LoadTipoID(string command)
 {
     try
     {
         CnMysql loadCN = new CnMysql(ConfigurationManager.ConnectionStrings["trabajadoresConnectionString"].ConnectionString);
         loadCN.AbrirCnMysql();
         DataTable dbtable = loadCN.ConsultarRegistros(command);
         return(dbtable);
     }
     catch (Exception ex)
     {
         throw new System.Exception("Error presentado.", ex);
     }
 }
예제 #10
0
        /// <summary>
        /// Actualiza la tabla etapaJefe segun la decisión del jefe
        /// </summary>
        /// <param name="etapa">Etapa actual</param>
        /// <param name="estadoEtapa">Estado de la etapa</param>
        /// <returns>true si se realizo correctamente el procedimiento</returns>
        public bool ActualizarEtapa(int etapa, int estadoEtapa)
        {
            CnMysql Conexion = new CnMysql(Cn2);

            Conexion.AbrirCnMysql();

            int res = 0;

            try
            {
                MySqlCommand cmd = new MySqlCommand("sp_CrearEtapaJefeEmpleado", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@Etapas_idEtapas", etapa);
                cmd.Parameters.AddWithValue("@JefeEmpleado_idJefeEmpleado", Session["idJefeEmpleado"]);
                cmd.Parameters.AddWithValue("@EstadoEtapa_idEstadoEtapa", estadoEtapa);
                cmd.Parameters.AddWithValue("@Fecha", DateTime.Now);

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());

                if (res == 1)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                MensajeError("Ha ocurrido el siguiente error: " + ex.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                return(false);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #11
0
        /// <summary>
        /// Cargar informacion del usuario
        /// </summary>
        /// <param name="idUsuario">Id del usuario</param>
        /// <param name="externo">Indica si es un usuario externo</param>
        public void CargarInfoCliente(string idUsuario, bool externo)
        {
            this.LimpiarMensajes();
            CnMysql Conexion = new CnMysql(Cn1);

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd = new MySqlCommand(bd2 + ".sp_ConsultaEmpleadosExt", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@Id_Empleado", idUsuario);
                cmd.Parameters.AddWithValue("@Companias_idCompania", Session["compania"]);
                cmd.Parameters.AddWithValue("@empresa", Session["idEmpresa"]);
                MySqlDataReader rd = cmd.ExecuteReader();

                if (rd.Read())
                {
                    txtUser2.Text           = Session["usuario"].ToString();
                    txtNombres.Text         = rd["Nombres_Empleado"].ToString();
                    txtPrimerApellido.Text  = rd["Primer_Apellido_empleado"].ToString();
                    txtSegundoApellido.Text = rd["Segundo_Apellido_Empleado"].ToString();

                    if (rd["IdAreas"].ToString() != "")
                    {
                        ddlArea.SelectedValue = rd["IdAreas"].ToString();
                    }

                    if (rd["IdCargos"].ToString() != "")
                    {
                        ddlCargo.SelectedValue = rd["IdCargos"].ToString();
                    }
                }
                else
                {
                    MensajeError("Error al cargar la información");
                }

                rd.Close();
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #12
0
        /* ****************************************************************************/

        /* Metodo que se ejecuta al momento de la carga de la Pagina Maestra
         * /* ****************************************************************************/
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["usuario"] == null)
            {
                //Redirecciona a la pagina de login en caso de que el usuario no se halla autenticado
                Response.Redirect("~/Login.aspx");
            }
            else
            {
                if (!IsPostBack)
                {
                    LlenadoDropBox utilLlenar = new LlenadoDropBox();
                    string         command    = "SELECT idTiposolicitud, Nombre_TipoSolicitud FROM " + bd1 + ".TipoSolicitudes where TipoPortal = 'T' and Activo = 1 order by orden";
                    DropListTipoSol.Items.Clear();
                    DropListTipoSol.DataSource     = utilLlenar.LoadTipoID(command);
                    DropListTipoSol.DataTextField  = "Nombre_TipoSolicitud";
                    DropListTipoSol.DataValueField = "idTiposolicitud";
                    DropListTipoSol.DataBind();

                    CnMysql Conexion = new CnMysql(Cn);
                    try
                    {
                        MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT descripcion FROM " + bd1 + ".Options_Menu WHERE url = 'Contactenos.aspx'", Conexion.ObtenerCnMysql());
                        MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                        DataSet          dsDataSet         = new DataSet();
                        DataTable        dtDataTable       = null;

                        Conexion.AbrirCnMysql();
                        sdaSqlDataAdapter.Fill(dsDataSet);
                        dtDataTable = dsDataSet.Tables[0];
                        if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                        {
                            this.lblTitulo.Text = dtDataTable.Rows[0].ItemArray[0].ToString();
                        }
                    }
                    catch (Exception ex)
                    {
                        MensajeError("Ha ocurrido el siguiente error: " + ex.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                    }
                    finally
                    {
                        Conexion.CerrarCnMysql();
                    }
                }
            }
        }
예제 #13
0
        /// <summary>
        /// Edita los datos del usuario
        /// </summary>
        /// <param name="sender">objeto sender</param>
        /// <param name="e">evento e</param>
        protected void BtnEditar_Click(object sender, EventArgs e)
        {
            this.LimpiarMensajes();
            CnMysql Conexion = new CnMysql(Cn2);
            int     res      = 0;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd;

                cmd             = new MySqlCommand("sp_ActualizarAreaCargoEmp", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@TipoId_empleado", "2");
                cmd.Parameters.AddWithValue("@Id_Empleado", txtUser2.Text);
                cmd.Parameters.AddWithValue("@Companias_idEmpresa", Session["idEmpresa"]);
                cmd.Parameters.AddWithValue("@Companias_idCompania", Session["compania"]);
                cmd.Parameters.AddWithValue("@IdAreas", ddlArea.SelectedValue);
                cmd.Parameters.AddWithValue("@IdCargos", ddlCargo.SelectedValue);

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());

                if (res == 1)
                {
                    Response.Redirect("index.aspx", false);
                }
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #14
0
        /// <summary>
        /// Crea una observacion
        /// </summary>
        /// <param name="cedula">Cedula de quien observa</param>
        /// <param name="observacion">texto observacion</param>
        /// <returns>true si el proceso es correcto</returns>
        public bool CrearObservacion(string cedula, string observacion)
        {
            CnMysql Conexion = new CnMysql(Cn2);
            int     res      = 0;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd;

                cmd             = new MySqlCommand("sp_CrearObservacion", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@JefeEmpleado_idJefeEmpleado", Session["idJefeEmpleado"]);
                cmd.Parameters.AddWithValue("@Etapas_idEtapas", 2);
                cmd.Parameters.AddWithValue("@Cedula", cedula);
                cmd.Parameters.AddWithValue("@Descripcion", observacion);
                cmd.Parameters.AddWithValue("@Fecha", DateTime.Now);
                cmd.Parameters.AddWithValue("@Ano", Session["anoActivo"]);

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());

                if (res == 1)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                return(false);
            }
        }
예제 #15
0
        /* ***********************************************************************************************/

        /* Metodo que ejecuta el envío de correo y desactiva la contraseña para que la coloque de nuevo
         * /* ***********************************************************************************************/
        protected void btnSendPass_Click(object sender, EventArgs e)
        {
            bool    resultado = false;
            CnMysql Conexion  = new CnMysql(Cn);

            try
            {
                MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT Id_Empleado, Contrasena_Empleado FROM " + bd2 + ".empleados where Correo_Empleado = '" + this.txtMail.Text + "' and Id_Empleado = '" + this.txtIdentificacion.Text + "'", Conexion.ObtenerCnMysql());
                MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                DataSet          dsDataSet         = new DataSet();
                DataTable        dtDataTable       = null;

                Conexion.AbrirCnMysql();
                sdaSqlDataAdapter.Fill(dsDataSet);
                dtDataTable = dsDataSet.Tables[0];

                if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                {
                    string Id_Empleado = dtDataTable.Rows[0].ItemArray[0].ToString();
                    string Contrasena  = dtDataTable.Rows[0].ItemArray[1].ToString();

                    resultado = this.SendCorreo(Id_Empleado, Contrasena, this.txtMail.Text);
                }

                if (resultado)
                {
                    lblMsg.Text = "Se ha enviado un mensaje a su correo. Si no recibe este correo, comuniquese con el administrador.";

                    MySqlCommand sqlCommand = new MySqlCommand("UPDATE " + bd2 + ".empleados SET Contrasena_Activo = 1 WHERE Id_Empleado = '" + this.txtIdentificacion.Text + "'", Conexion.ObtenerCnMysql());
                    sqlCommand.ExecuteNonQuery();
                }
                else
                {
                    lblMsg.Text = "La información suministrada no es correcta, por favor comuniquese con el administrador.";
                }
            }
            catch (Exception ex)
            {
                throw new System.Exception("Error presentado.", ex);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #16
0
        /// <summary>
        /// Carga de la pagina
        /// </summary>
        /// <param name="sender">Objeto sender</param>
        /// <param name="e">Evento e</param>
        protected void Page_Load(object sender, EventArgs e)
        {
            claseConsultas = new ConsultasGenerales();

            if (Session["usuario"] == null)
            {
                //Redirecciona a la pagina de login en caso de que el usuario no se halla autenticado
                Response.Redirect("~/Login.aspx");
            }
            else
            {
                if (!IsPostBack)
                {
                    CnMysql Conexion = new CnMysql(Cn);
                    try
                    {
                        MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT descripcion FROM " + bd1 + ".Options_Menu WHERE url = 'ValidarSeguimiento1.aspx'", Conexion.ObtenerCnMysql());
                        MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                        DataSet          dsDataSet         = new DataSet();
                        DataTable        dtDataTable       = null;

                        Conexion.AbrirCnMysql();
                        sdaSqlDataAdapter.Fill(dsDataSet);
                        dtDataTable = dsDataSet.Tables[0];
                        if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                        {
                            this.lblTitulo.Text = dtDataTable.Rows[0].ItemArray[0].ToString();
                        }

                        this.ObtenerPeriodoActivo();
                        this.CargarEmpleados(Session["usuario"].ToString(), Session["compania"].ToString());
                    }
                    catch (Exception E)
                    {
                        MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                    }
                    finally
                    {
                        Conexion.CerrarCnMysql();
                    }
                }
            }
        }
예제 #17
0
        /* ****************************************************************************/

        /* Metodo que se ejecuta al momento de la carga de la Pagina
         * /* ****************************************************************************/
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["usuario"] == null)
            {
                //Redirecciona a la pagina de login en caso de que el usuario no se halla autenticado
                Response.Redirect("~/Login.aspx");
            }
            else
            {
                //Valida que la pagina ya fue enviada al servidor para que no se cargue otra vez el control menu
                if (!Page.IsPostBack)
                {
                    CnMysql Conexion = new CnMysql(Cn);
                    try
                    {
                        MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT descripcion FROM " + bd1 + ".Options_Menu WHERE url = 'IngRetenciones.aspx'", Conexion.ObtenerCnMysql());
                        MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                        DataSet          dsDataSet         = new DataSet();
                        DataTable        dtDataTable       = null;

                        Conexion.AbrirCnMysql();
                        sdaSqlDataAdapter.Fill(dsDataSet);
                        dtDataTable = dsDataSet.Tables[0];
                        if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                        {
                            this.lblTitulo.Text = dtDataTable.Rows[0].ItemArray[0].ToString();
                        }
                    }
                    catch (Exception ex)
                    {
                        MensajeError("Ha ocurrido el siguiente error: " + ex.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                    }
                    finally
                    {
                        Conexion.CerrarCnMysql();
                    }
                    //Abre una nueva ventana por fuera del Browser
                    ClientScript.RegisterStartupScript(this.Page.GetType(), "", "window.open('Retenciones.aspx', 'Graph', height=400, width=500);", true);
                    //Muestra un Mensaje en la aplicacion indicando al usuario que se abrio una nueva ventana
                    MensajeError("Su certificado se ha generado en una ventana externa.");
                }
            }
        }
예제 #18
0
        /* ****************************************************************************/

        /* Metodo que valida el password digitado en el servidor
         * /* ****************************************************************************/
        protected void ValidatorPass_ServerValidate(object source, ServerValidateEventArgs args)
        {
            if (TxtPass.Text.Count() < 5)
            {
                args.IsValid = false;
            }
            else
            {
                CnMysql Conexion = new CnMysql(Cn);
                try
                {
                    MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT Contrasena_Empleado FROM " + bd2 + ".empleados where Id_Empleado = '" + Session["usuario"].ToString() + "'", Conexion.ObtenerCnMysql());
                    MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                    DataSet          dsDataSet         = new DataSet();
                    DataTable        dtDataTable       = null;
                    Conexion.AbrirCnMysql();
                    sdaSqlDataAdapter.Fill(dsDataSet);
                    dtDataTable = dsDataSet.Tables[0];
                    if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                    {
                        string Contrasena = dtDataTable.Rows[0].ItemArray[0].ToString();
                        if (Contrasena != TxtPass.Text)
                        {
                            args.IsValid = true;
                            Editar_Click();
                        }
                        else
                        {
                            MensajeError("La contraseña no puede ser igual a la anterior.");
                            Conexion.CerrarCnMysql();
                        }
                    }
                }
                catch (Exception E)
                {
                    MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                }
                finally
                {
                    Conexion.CerrarCnMysql();
                }
            }
        }
예제 #19
0
        /* ****************************************************************************/

        /* Evento al dar clic en el boton para cambio de contraseña
         * /* ****************************************************************************/
        protected void btnlogin_Click(object sender, EventArgs e)
        {
            CnMysql          Conexion          = new CnMysql(Cn);
            MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT Contrasena_Empleado FROM " + bd2 + ".empleados where Id_Empleado = '" + Session["usuario"].ToString() + "'", Conexion.ObtenerCnMysql());
            MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
            DataSet          dsDataSet         = new DataSet();
            DataTable        dtDataTable       = null;

            Conexion.AbrirCnMysql();
            sdaSqlDataAdapter.Fill(dsDataSet);
            dtDataTable = dsDataSet.Tables[0];

            if (dtDataTable != null && dtDataTable.Rows.Count > 0)
            {
                string Contrasena = dtDataTable.Rows[0].ItemArray[0].ToString();
                try
                {
                    if (Contrasena != this.txtPass1.Text)
                    {
                        MySqlCommand sqlCommand2 = new MySqlCommand("UPDATE " + bd2 + ".empleados SET Contrasena_Activo = 0, Contrasena_Empleado = '" + this.txtPass1.Text + "' WHERE Id_Empleado = '" + Session["usuario"].ToString() + "'", Conexion.ObtenerCnMysql());
                        sqlCommand2.ExecuteNonQuery();

                        //redirecciona al usuario a la pagina principal de la encuesta si no la ha contestado
                        Response.Redirect("~/Portal/index.aspx");
                    }
                    else
                    {
                        MensajeError("La contraseña no puede ser igual a la anterior.");
                    }
                }
                catch (Exception E)
                {
                    MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                }
                finally
                {
                    Conexion.CerrarCnMysql();
                }
            }
        }
예제 #20
0
        /* ****************************************************************************/

        /* Metodo que se ejecuta al momento de la carga de la Pagina
         * /* ****************************************************************************/
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["usuario"] == null)
            {
                //Redirecciona a la pagina de login en caso de que el usuario no se halla autenticado
                Response.Redirect("~/Login.aspx");
            }
            else
            {
                SqlDataSource1.SelectCommand = "SELECT idfondo, anio_fondo, Mes_fondo, ruta_archivo_fondo as ruta,nombre_archivo_fondo as nombre FROM " + bd2 + ".fondo where Empleados_Id_Empleado =" + Session["usuario"].ToString() + ";";
                if (!IsPostBack)
                {
                    CnMysql Conexion = new CnMysql(Cn);
                    try
                    {
                        MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT descripcion FROM " + bd1 + ".Options_Menu WHERE url = 'EstadoFondo.aspx'", Conexion.ObtenerCnMysql());
                        MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                        DataSet          dsDataSet         = new DataSet();
                        DataTable        dtDataTable       = null;

                        Conexion.AbrirCnMysql();
                        sdaSqlDataAdapter.Fill(dsDataSet);
                        dtDataTable = dsDataSet.Tables[0];
                        if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                        {
                            this.lblTitulo.Text = dtDataTable.Rows[0].ItemArray[0].ToString();
                        }
                    }
                    catch (Exception ex)
                    {
                        MensajeError("Ha ocurrido el siguiente error: " + ex.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                    }
                    finally
                    {
                        Conexion.CerrarCnMysql();
                    }
                }
            }
        }
예제 #21
0
        /* ****************************************************************************/

        /* Metodo que inserta la informacion del tercero en la Base de datos
         * /* ****************************************************************************/
        public int CrearTercero()
        {
            CnMysql Conexion = new CnMysql(Cn);
            int     res      = 0;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd = new MySqlCommand(bd2 + ".sp_CrearTercero", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@NitTercero", TxtDoc.Text);
                cmd.Parameters.AddWithValue("@nombreTercero", TxtNombres.Text);

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());
                return(res);
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                return(res);
            }
            finally
            {
                Conexion.CerrarCnMysql();
                Session.Remove("Contrasena");
                Session.Remove("cambiaContrasena");
            }
        }
예제 #22
0
        /* ****************************************************************************/

        /* Metodo que carga la informacion del tercero en el formulario
         * /* ****************************************************************************/
        public void CargarInfoCliente(string IdJefe)
        {
            CnMysql Conexion = new CnMysql(Cn);

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd = new MySqlCommand(bd3 + ".ConsultarJefe", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@idjefe", IdJefe);
                cmd.Parameters.AddWithValue("@idEmpleado", Session["usuario"].ToString());
                cmd.Parameters.AddWithValue("@empresa", "AE");
                MySqlDataReader rd = cmd.ExecuteReader();

                if (rd.Read())
                {
                    Container_UpdatePanel2.Visible = true;
                    TxtDoc.Text     = rd["Id_Empleado"].ToString();
                    TxtNombres.Text = rd["Nombres_Completos_Empleado"].ToString();
                    BtnEditar.Text  = "Guardar Información";
                }
                else
                {
                    MensajeError("No se encontro el Número de Identificación. ");
                }
                rd.Close();
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #23
0
        /// <summary>
        /// Maneja los eventos de la grilla empleados
        /// </summary>
        /// <param name="sender">Objeto sender</param>
        /// <param name="e">evento e de la grilla</param>
        protected void gvEmpleadosAsociados_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            Container_UpdatePanelObservaciones.Visible = false;
            LblMsj.Visible = false;
            UpdatePanel3.Update();

            CnMysql Conexion = new CnMysql(Cn2);

            Conexion.AbrirCnMysql();

            try
            {
                string[] arg = new string[2];
                arg = e.CommandArgument.ToString().Split(';');
                int idJefeEmpleado = Convert.ToInt32(arg[0]);
                int cedulaEmpleado = Convert.ToInt32(arg[1]);

                Session.Add("idJefeEmpleado", idJefeEmpleado);

                DataSet   dsDataSet   = new DataSet();
                DataTable dtDataTable = null;

                MySqlCn = new MySqlConnection(Cn2);
                MySqlCommand scSqlCommand;
                scSqlCommand             = new MySqlCommand("sp_ConsultarObjetivosSeguimientos", MySqlCn);
                scSqlCommand.CommandType = CommandType.StoredProcedure;
                scSqlCommand.Parameters.AddWithValue("@idJefeEmpleado", idJefeEmpleado);

                MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                sdaSqlDataAdapter.Fill(dsDataSet);
                dtDataTable = dsDataSet.Tables[0];

                if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                {
                    gvObjetivosCreados.DataSource = dtDataTable;
                    this.CargarObservacionesEmpleado(idJefeEmpleado.ToString(), "2");

                    if (e.CommandName == "Evaluar")
                    {
                        this.BtnAceptar.Visible  = true;
                        this.BtnRechazar.Visible = true;
                    }
                    else if (e.CommandName == "Revisar")
                    {
                        this.BtnAceptar.Visible  = false;
                        this.BtnRechazar.Visible = false;
                    }
                }
                else
                {
                    gvObjetivosCreados.DataSource = null;
                    MensajeError("El empleado no ha realizado su seguimiento");
                    this.BtnAceptar.Visible  = false;
                    this.BtnRechazar.Visible = false;
                }

                gvObjetivosCreados.DataBind();

                Container_UpdatePanel1.Visible = false;
                Container_UpdatePanel2.Visible = true;
                UpdatePanel1.Update();
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #24
0
        /// <summary>
        /// Carga las areas y los cargos al ddl
        /// </summary>
        public void CargarAreasCargos()
        {
            this.LimpiarMensajes();
            CnMysql Conexion = new CnMysql(Cn2);
            string  msgError = string.Empty;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd = new MySqlCommand(bd2 + ".sp_ConsultaAreas", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@nitTercero", Session["nit"]);
                cmd.Parameters.AddWithValue("@idEmpresa", Session["idEmpresa"]);
                cmd.Parameters.AddWithValue("@estado", true);

                MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(cmd);
                DataSet          dsDataSet         = new DataSet();
                DataTable        dtDataTable       = null;
                MySqlCn.Open();
                sdaSqlDataAdapter.Fill(dsDataSet);
                dtDataTable = dsDataSet.Tables[0];

                if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                {
                    ddlArea.DataSource     = dtDataTable;
                    ddlArea.DataTextField  = "Area";
                    ddlArea.DataValueField = "IdAreas";
                    ddlArea.DataBind();

                    ddlArea.Items.Insert(0, new ListItem("---Seleccione---", "0", true));
                }
                else
                {
                    msgError = "No se han creado áreas. ";
                }

                cmd             = new MySqlCommand(bd2 + ".sp_ConsultaCargos", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@nitTercero", Session["nit"]);
                cmd.Parameters.AddWithValue("@idEmpresa", Session["idEmpresa"]);
                cmd.Parameters.AddWithValue("@estado", true);

                sdaSqlDataAdapter = new MySqlDataAdapter(cmd);
                DataSet   dsDataCargos      = new DataSet();
                DataTable dtDataTableCargos = null;
                sdaSqlDataAdapter.Fill(dsDataCargos);
                dtDataTableCargos = dsDataCargos.Tables[0];

                if (dtDataTableCargos != null && dtDataTableCargos.Rows.Count > 0)
                {
                    ddlCargo.DataSource     = dtDataTableCargos;
                    ddlCargo.DataTextField  = "Cargo";
                    ddlCargo.DataValueField = "IdCargos";
                    ddlCargo.DataBind();

                    ddlCargo.Items.Insert(0, new ListItem("---Seleccione---", "0", true));
                }
                else
                {
                    msgError += "No se han creado cargos. ";
                }

                if (msgError != string.Empty)
                {
                    MensajeError(msgError + "Comuniquese con su administrador.");
                }
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #25
0
        /* ****************************************************************************/

        /* Metodo que Carga Los Items del Control Menu
         * /* ****************************************************************************/
        protected void bindMenuControl(Boolean valor)
        {
            ConsultasGenerales consultaGeneral = new ConsultasGenerales();
            bool objetivos = consultaGeneral.ComprobarModuloObjetivos(Session["nit"].ToString(), Session["idEmpresa"].ToString());
            bool comp      = consultaGeneral.ComprobarModuloCompetencias(Session["nit"].ToString(), Session["idEmpresa"].ToString());
            bool activa    = consultaGeneral.ComprobarCompaniaActiva(Session["compania"].ToString(), Session["idEmpresa"].ToString());

            Session.Add("seguimientoPeriodo", consultaGeneral.ConsultarPeriodoSeguimiento(Session["compania"].ToString(), Session["idEmpresa"].ToString()));

            if (valor)
            {
                CnMysql          Conexion          = new CnMysql(Cn);
                MySqlCommand     cmd               = new MySqlCommand();
                MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter();
                DataTable        dtDataTable       = null;
                DataSet          dsDataSet         = new DataSet();

                try
                {
                    Conexion.AbrirCnMysql();
                    sdaSqlDataAdapter = new MySqlDataAdapter(bd1 + ".CargueMenu", Conexion.ObtenerCnMysql());
                    sdaSqlDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure;
                    sdaSqlDataAdapter.SelectCommand.Parameters.AddWithValue("@idEmpleado", Session["usuario"].ToString());
                    sdaSqlDataAdapter.SelectCommand.Parameters.AddWithValue("@Id_Empresa", "AE");
                    sdaSqlDataAdapter.SelectCommand.Parameters.AddWithValue("@TipoPortal", "T");
                    sdaSqlDataAdapter.SelectCommand.Parameters.AddWithValue("@IdRol", Session["rol"].ToString());
                    sdaSqlDataAdapter.SelectCommand.Parameters.AddWithValue("@Externo", this.Session["Externo"].ToString());
                    sdaSqlDataAdapter.Fill(dsDataSet);

                    dtDataTable = dsDataSet.Tables[1];
                    if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                    {
                        foreach (DataRow drDataRow in dtDataTable.Rows)
                        {
                            if (Convert.ToInt32(drDataRow[0]) == Convert.ToInt32(drDataRow[2]))
                            {
                                MySqlCommand rolCommand;

                                if (this.Session["Externo"].ToString() == "False")
                                {
                                    rolCommand = new MySqlCommand(
                                        "SELECT Id_Menu FROM " + bd1 +
                                        ".roles_menu WHERE (Id_Rol = " +
                                        this.Session["rol"].ToString() + " OR Id_Rol = 2)" +
                                        " AND Id_Menu = " +
                                        drDataRow[2], Conexion.ObtenerCnMysql());
                                }
                                else
                                {
                                    rolCommand = new MySqlCommand(
                                        "SELECT Id_Menu FROM " + bd1 +
                                        ".roles_menu WHERE Id_Rol = " +
                                        this.Session["rol"].ToString() + " AND Id_Menu = " +
                                        drDataRow[2], Conexion.ObtenerCnMysql());
                                }

                                MySqlDataAdapter rolDataAdapter = new MySqlDataAdapter(rolCommand);
                                DataSet          rolDataSet     = new DataSet();
                                DataTable        rolDataTable   = null;

                                rolDataAdapter.Fill(rolDataSet);
                                rolDataTable = rolDataSet.Tables[0];

                                if (!drDataRow[1].ToString().Contains("Gestión Desempeño") &&
                                    !drDataRow[1].ToString().Contains("Evaluar Competencias"))
                                {
                                    if (rolDataTable != null && rolDataTable.Rows.Count > 0)
                                    {
                                        MenuItem miMenuItem = new MenuItem(Convert.ToString(drDataRow[1]), Convert.ToString(drDataRow[0]), String.Empty, Convert.ToString(drDataRow[3]));
                                        this.MenuPrincipal.Items.Add(miMenuItem);
                                        AddChildItem(ref miMenuItem, dtDataTable);
                                    }
                                }
                                else
                                {
                                    if (drDataRow[1].ToString().Contains("Gestión Desempeño") && objetivos && activa)
                                    {
                                        if (rolDataTable != null && rolDataTable.Rows.Count > 0)
                                        {
                                            MenuItem miMenuItem = new MenuItem(Convert.ToString(drDataRow[1]), Convert.ToString(drDataRow[0]), String.Empty, Convert.ToString(drDataRow[3]));
                                            this.MenuPrincipal.Items.Add(miMenuItem);
                                            AddChildItem(ref miMenuItem, dtDataTable);
                                        }
                                    }

                                    if (drDataRow[1].ToString().Contains("Evaluar Competencias") && comp && activa)
                                    {
                                        if (rolDataTable != null && rolDataTable.Rows.Count > 0)
                                        {
                                            MenuItem miMenuItem = new MenuItem(Convert.ToString(drDataRow[1]), Convert.ToString(drDataRow[0]), String.Empty, Convert.ToString(drDataRow[3]));
                                            this.MenuPrincipal.Items.Add(miMenuItem);
                                            AddChildItem(ref miMenuItem, dtDataTable);
                                        }
                                    }
                                }
                            }
                        }
                        Session["Menu"] = dsDataSet;
                    }
                }
                catch (Exception E)
                {
                    MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                }
                finally
                {
                    if (Conexion.EstadoConexion() == ConnectionState.Open)
                    {
                        Conexion.CerrarCnMysql();
                        dtDataTable.Dispose();
                        dsDataSet.Dispose();
                        sdaSqlDataAdapter.Dispose();
                    }
                }
            }
            else
            {
                DataSet   dsDataSet   = new DataSet();
                DataTable dtDataTable = null;
                CnMysql   Conexion    = new CnMysql(Cn);
                try
                {
                    dsDataSet   = (DataSet)Session["Menu"];
                    dtDataTable = dsDataSet.Tables[1];
                    if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                    {
                        foreach (DataRow drDataRow in dtDataTable.Rows)
                        {
                            if (Convert.ToInt32(drDataRow[0]) == Convert.ToInt32(drDataRow[2]))
                            {
                                MySqlCommand rolCommand;

                                if (this.Session["Externo"].ToString() == "False")
                                {
                                    rolCommand = new MySqlCommand(
                                        "SELECT Id_Menu FROM " + bd1 +
                                        ".roles_menu WHERE (Id_Rol = " +
                                        this.Session["rol"].ToString() + " OR Id_Rol = 2)" +
                                        " AND Id_Menu = " +
                                        drDataRow[2], Conexion.ObtenerCnMysql());
                                }
                                else
                                {
                                    rolCommand = new MySqlCommand(
                                        "SELECT Id_Menu FROM " + bd1 +
                                        ".roles_menu WHERE Id_Rol = " +
                                        this.Session["rol"].ToString() + " AND Id_Menu = " +
                                        drDataRow[2], Conexion.ObtenerCnMysql());
                                }

                                MySqlDataAdapter rolDataAdapter = new MySqlDataAdapter(rolCommand);
                                DataSet          rolDataSet     = new DataSet();
                                DataTable        rolDataTable   = null;

                                rolDataAdapter.Fill(rolDataSet);
                                rolDataTable = rolDataSet.Tables[0];

                                if (!drDataRow[1].ToString().Contains("Gestión Desempeño") &&
                                    !drDataRow[1].ToString().Contains("Evaluar Competencias"))
                                {
                                    if (rolDataTable != null && rolDataTable.Rows.Count > 0)
                                    {
                                        MenuItem miMenuItem = new MenuItem(Convert.ToString(drDataRow[1]), Convert.ToString(drDataRow[0]), String.Empty, Convert.ToString(drDataRow[3]));
                                        this.MenuPrincipal.Items.Add(miMenuItem);
                                        AddChildItem(ref miMenuItem, dtDataTable);
                                    }
                                }
                                else
                                {
                                    if (drDataRow[1].ToString().Contains("Gestión Desempeño") && objetivos && activa)
                                    {
                                        if (rolDataTable != null && rolDataTable.Rows.Count > 0)
                                        {
                                            MenuItem miMenuItem = new MenuItem(Convert.ToString(drDataRow[1]), Convert.ToString(drDataRow[0]), String.Empty, Convert.ToString(drDataRow[3]));
                                            this.MenuPrincipal.Items.Add(miMenuItem);
                                            AddChildItem(ref miMenuItem, dtDataTable);
                                        }
                                    }

                                    if (drDataRow[1].ToString().Contains("Evaluar Competencias") && comp && activa)
                                    {
                                        if (rolDataTable != null && rolDataTable.Rows.Count > 0)
                                        {
                                            MenuItem miMenuItem = new MenuItem(Convert.ToString(drDataRow[1]), Convert.ToString(drDataRow[0]), String.Empty, Convert.ToString(drDataRow[3]));
                                            this.MenuPrincipal.Items.Add(miMenuItem);
                                            AddChildItem(ref miMenuItem, dtDataTable);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                catch (Exception E)
                {
                    MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                }
                finally
                {
                    if (Conexion.EstadoConexion() == ConnectionState.Open)
                    {
                        Conexion.CerrarCnMysql();
                        dtDataTable.Dispose();
                        dsDataSet.Dispose();
                    }
                }
            }
        }
예제 #26
0
        /// <summary>
        /// Carga de la pagina
        /// </summary>
        /// <param name="sender">Objeto sender</param>
        /// <param name="e">Evento e</param>
        protected void Page_Load(object sender, EventArgs e)
        {
            claseConsultas = new ConsultasGenerales();

            if (Session["usuario"] == null)
            {
                //Redirecciona a la pagina de login en caso de que el usuario no se halla autenticado
                Response.Redirect("~/Login.aspx");
            }
            else
            {
                if (!IsPostBack)
                {
                    CnMysql Conexion = new CnMysql(Cn);
                    try
                    {
                        MySqlCommand     scSqlCommand      = new MySqlCommand("SELECT descripcion FROM " + bd1 + ".Options_Menu WHERE url = 'FijarSeguimiento1.aspx'", Conexion.ObtenerCnMysql());
                        MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                        DataSet          dsDataSet         = new DataSet();
                        DataTable        dtDataTable       = null;

                        Conexion.AbrirCnMysql();
                        sdaSqlDataAdapter.Fill(dsDataSet);
                        dtDataTable = dsDataSet.Tables[0];

                        if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                        {
                            this.lblTitulo.Text = dtDataTable.Rows[0].ItemArray[0].ToString();
                        }

                        this.ObtenerPeriodoActivo();

                        //// Revisa si tiene un jefe asignado
                        if (this.CargarParametros())
                        {
                            //// Comprueba que este en las fechas de la etapa
                            if (this.ComprobarFechaEtapas("3", DateTime.Now))
                            {
                                //// Comprueba si esta en una estado de la etapa valido, sino restringe la vista
                                if (this.ComprobarEstadoEtapa(Session["idJefeEmpleado"].ToString(), "3"))
                                {
                                    //// Carga los objetivos Modificables
                                    this.CargarObjetivos(Session["idJefeEmpleado"].ToString());
                                }
                                else
                                {
                                    if (Session["idEstadoEtapa"] != null)
                                    {
                                        this.CargarObjetivoBloqueados(Session["idJefeEmpleado"].ToString());

                                        if (Session["idEstadoEtapa"].ToString() == "4")
                                        {
                                            MensajeError("El seguimiento fue aceptado por su jefe.");
                                        }
                                        else
                                        {
                                            MensajeError("Alerta, su seguimiento fue enviado, se carga una vista de solo lectura");
                                        }
                                    }
                                    else
                                    {
                                        MensajeError("No puede acceder a esta sección en el momento.");
                                    }
                                }
                            }
                            else
                            {
                                this.CargarObjetivoBloqueados(Session["idJefeEmpleado"].ToString());
                                MensajeError("Usted no puede continuar ya que esta por fuera de las fechas. Por favor comuniquese con su Jefe");
                            }

                            if (Session["idEstadoEtapa"] != null)
                            {
                                this.CargarObservaciones(Session["idJefeEmpleado"].ToString(), "3");
                            }
                        }
                        else
                        {
                            MensajeError("Usted no puede continuar hasta asignar un jefe, por favor revise la pagina Selección de Jefe");
                        }

                        this.ComprobarSeguimientoTotal(Session["idJefeEmpleado"].ToString());
                    }
                    catch (Exception E)
                    {
                        MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                    }
                    finally
                    {
                        Conexion.CerrarCnMysql();
                    }
                }
            }
        }
예제 #27
0
        /// <summary>
        /// Maneja los eventos de la grilla empleados
        /// </summary>
        /// <param name="sender">Objeto sender</param>
        /// <param name="e">evento e de la grilla</param>
        protected void gvEmpleadosAsociados_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            Container_UpdatePanelObservaciones.Visible = false;
            LblMsj.Visible = false;
            UpdatePanel3.Update();

            CnMysql Conexion = new CnMysql(Cn2);

            Conexion.AbrirCnMysql();

            try
            {
                string[] arg = new string[2];
                arg = e.CommandArgument.ToString().Split(';');
                int idJefeEmpleado = Convert.ToInt32(arg[0]);
                int cedulaEmpleado = Convert.ToInt32(arg[1]);

                Session.Add("idJefeEmpleado", idJefeEmpleado);

                DataSet   dsDataSet   = new DataSet();
                DataTable dtDataTable = null;

                MySqlCommand scSqlCommand;
                string       consulta = "SELECT objetivos.Descripcion, objetivos.Peso, objetivos.Meta " +
                                        "FROM " + bd3 + ".objetivos " +
                                        "INNER JOIN " + bd3 + ".jefeempleado " +
                                        "ON objetivos.JefeEmpleado_idJefeEmpleado = jefeempleado.idJefeEmpleado " +
                                        "where jefeempleado.Cedula_Jefe = " + Session["usuario"].ToString() +
                                        " AND jefeempleado.idCompania = '" + Session["compania"].ToString() +
                                        "' AND jefeempleado.idJefeEmpleado = " + idJefeEmpleado + ";";

                scSqlCommand = new MySqlCommand(consulta, Conexion.ObtenerCnMysql());
                MySqlDataAdapter sdaSqlDataAdapter = new MySqlDataAdapter(scSqlCommand);
                sdaSqlDataAdapter.Fill(dsDataSet);
                dtDataTable = dsDataSet.Tables[0];

                if (dtDataTable != null && dtDataTable.Rows.Count > 0)
                {
                    gvObjetivosCreados.DataSource = dtDataTable;
                    this.CargarObservacionesEmpleado(idJefeEmpleado.ToString(), "1");

                    if (e.CommandName == "Evaluar")
                    {
                        this.BtnAceptar.Visible  = true;
                        this.BtnRechazar.Visible = true;
                    }
                    else if (e.CommandName == "Revisar")
                    {
                        this.BtnAceptar.Visible  = false;
                        this.BtnRechazar.Visible = false;
                    }
                }
                else
                {
                    gvObjetivosCreados.DataSource = null;
                    MensajeError("El empleado no ha creado objetivos");
                    this.BtnAceptar.Visible  = false;
                    this.BtnRechazar.Visible = false;
                }

                gvObjetivosCreados.DataBind();
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Container_UpdatePanel1.Visible = false;
                Container_UpdatePanel2.Visible = true;
                UpdatePanel1.Update();
                Conexion.CerrarCnMysql();
            }
        }
예제 #28
0
        /* ****************************************************************************/

        /* Metodo que actualiza la informacion del empleado en la Base de datos
         * /* ****************************************************************************/
        public int GuardarInfoEmpleado(string id_Empleado)
        {
            CnMysql Conexion = new CnMysql(Cn);
            int     res      = 0;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd = new MySqlCommand(bd2 + ".sp_ActualizaEmpleado", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@idEmpleado", TxtDoc.Text);
                cmd.Parameters.AddWithValue("@nombresEmpleado", TxtNombres.Text);
                cmd.Parameters.AddWithValue("@PApellidoEmpleado", TxtPrimerApellido.Text);
                cmd.Parameters.AddWithValue("@SApellidoEmpleado", TxtSegundoApellido.Text);
                string NombreCompleto = TxtPrimerApellido.Text + " " + TxtSegundoApellido.Text + " " + TxtNombres.Text;
                cmd.Parameters.AddWithValue("@nombreCompletoEmpleado", NombreCompleto);
                cmd.Parameters.AddWithValue("@SexoEmpleado", TxtSexoEmp.SelectedValue);
                cmd.Parameters.AddWithValue("@expDocumento", TxtExp.Text);
                cmd.Parameters.AddWithValue("@correo", TxtCorreo.Text);
                cmd.Parameters.AddWithValue("@barrio", TxtBarrio.Text);
                cmd.Parameters.AddWithValue("@celular", TxtCelular.Text);
                cmd.Parameters.AddWithValue("@EPS", TxtEps.Text);
                cmd.Parameters.AddWithValue("@AFP", TxtAfp.Text);
                cmd.Parameters.AddWithValue("@telefono", TxtTelefono.Text);
                cmd.Parameters.AddWithValue("@cesantias", TxtCesantias.Text);
                cmd.Parameters.AddWithValue("@estadoCivil", TxtEstCivil.SelectedValue);
                cmd.Parameters.AddWithValue("@direccion", TxtDir.Text);
                string FechaNacimiento = TxtFechNac.Text.Replace("-", "").Replace("/", "");
                cmd.Parameters.AddWithValue("@fechaNacimiento", FechaNacimiento);
                cmd.Parameters.AddWithValue("@lugarNacimiento", ddlCiudades.SelectedValue);

                if (Session["cambiaContrasena"].ToString() == "True")
                {
                    cmd.Parameters.AddWithValue("@contrasena", TxtPass.Text);
                }
                else
                {
                    cmd.Parameters.AddWithValue("@contrasena", Session["Contrasena"].ToString());
                }

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());
                Session.Remove("Contrasena");
                Session.Remove("cambiaContrasena");
                return(res);
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                Session.Remove("Contrasena");
                Session.Remove("cambiaContrasena");
                return(res);
            }
            finally
            {
                Conexion.CerrarCnMysql();
            }
        }
예제 #29
0
        /// <summary>
        /// Guardar o editar los objetivos
        /// </summary>
        /// <param name="sender">objeto sender</param>
        /// <param name="e">evento e</param>
        protected void BtnGuardar_Click(object sender, EventArgs e)
        {
            CnMysql Conexion = new CnMysql(Cn2);
            int     res      = 0;

            try
            {
                Conexion.AbrirCnMysql();
                MySqlCommand cmd;

                if (BtnGuardar.Text == "Guardar")
                {
                    cmd             = new MySqlCommand("sp_CrearSeguimiento", Conexion.ObtenerCnMysql());
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@Objetivos_idObjetivos", Session["idObjetivos"]);
                    cmd.Parameters.AddWithValue("@Objetivos_JefeEmpleado_idJefeEmpleado", Session["idJefeEmpleado"]);
                    cmd.Parameters.AddWithValue("@Cedula", Session["usuario"]);
                    cmd.Parameters.AddWithValue("@Descripcion", txtSeguimiento.Text);
                    cmd.Parameters.AddWithValue("@Meta", Convert.ToDouble(txtMeta.Text) / 100);
                    cmd.Parameters.AddWithValue("@Fecha", DateTime.Now);
                    cmd.Parameters.AddWithValue("@Ano", Session["anoActivo"]);
                    cmd.Parameters.AddWithValue("@Periodo", "2");
                }
                else
                {
                    cmd             = new MySqlCommand("sp_ActualizarSeguimiento", Conexion.ObtenerCnMysql());
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@Objetivos_idObjetivos", Session["idObjetivos"]);
                    cmd.Parameters.AddWithValue("@Objetivos_JefeEmpleado_idJefeEmpleado", Session["idJefeEmpleado"]);
                    cmd.Parameters.AddWithValue("@Descripcion", txtSeguimiento.Text);
                    cmd.Parameters.AddWithValue("@Meta", Convert.ToDouble(txtMeta.Text) / 100);
                }

                // Crea un parametro de salida para el SP
                MySqlParameter outputIdParam = new MySqlParameter("@respuesta", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                cmd.Parameters.Add(outputIdParam);
                cmd.ExecuteNonQuery();

                //Almacena la respuesta de la variable de retorno del SP
                res = int.Parse(outputIdParam.Value.ToString());

                if (res == 1)
                {
                    if (BtnGuardar.Text == "Guardar")
                    {
                        MensajeError("Seguimiento creado correctamente");
                    }
                    else
                    {
                        MensajeError("Seguimiento actualizado correctamente");
                    }
                }
                else
                {
                    MensajeError("Hubo un error al crear, por favor revise con su administrador");
                }

                this.ComprobarSeguimientoTotal(Session["idJefeEmpleado"].ToString());
                txtSeguimiento.Text = string.Empty;
                txtMeta.Text        = string.Empty;
                this.CargarObjetivos(Session["idJefeEmpleado"].ToString());
            }
            catch (Exception E)
            {
                MensajeError("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            }
            finally
            {
                Container_UpdatePanel2.Visible = false;
                UpdatePanel1.Update();
                Conexion.CerrarCnMysql();
            }
        }
예제 #30
0
        /* ****************************************************************************/

        /* Metodo que genera el Certificado Laboral en una ventana Externa
         * /* ****************************************************************************/
        public void generarCertificado(string id_Empleado)
        {
            string          Cn       = ConfigurationManager.ConnectionStrings["trabajadoresConnectionString"].ConnectionString.ToString();
            string          bd2      = ConfigurationManager.AppSettings["BD2"].ToString();
            CnMysql         Conexion = new CnMysql(Cn);
            MySqlDataReader reader   = null;
            MySqlCommand    cmd      = new MySqlCommand();
            Document        document = new Document(PageSize.LETTER);

            try
            {
                Conexion.AbrirCnMysql();
                cmd             = new MySqlCommand(bd2 + ".sp_GenCertificado", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@NumCed", id_Empleado);

                reader = cmd.ExecuteReader();

                Response.ContentType = "application/pdf";
                Response.AddHeader("content-disposition", "inline;filename=CertificadoLaboral.pdf");
                Response.Cache.SetCacheability(HttpCacheability.NoCache);

                // Read in the contents of the Receipt.htm file...
                string contents = File.ReadAllText(Server.MapPath("~/Html/Aliados.html"));

                PdfWriter.GetInstance(document, Response.OutputStream);

                //open Document
                document.Open();

                iTextSharp.text.Image logo = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Img/Aliados.jpg"));
                logo.ScaleAbsolute(205, 44);
                logo.SetAbsolutePosition(205, 675);
                //logo.Alignment = iTextSharp.text.Image.ALIGN_CENTER;
                document.Add(logo);

                reader.Read();

                string   FechaInicial    = reader["Fecha_Ingreso_Empleado"].ToString();
                DateTime dt              = new DateTime(Convert.ToInt16(FechaInicial.Substring(0, 4)), Convert.ToInt16(FechaInicial.Substring(4, 2)), Convert.ToInt16(FechaInicial.Substring(6, 2)));
                string   fechaGeneracion = reader["Gen_Nomina"].ToString();

                string   d = DateTime.Now.ToString("yyyyMMdd");
                DateTime dt2;

                if (fechaGeneracion == "")
                {
                    dt2 = DateTime.ParseExact(d, "yyyyMMdd", CultureInfo.InvariantCulture);
                }
                else
                {
                    dt2 = new DateTime(Convert.ToInt16(fechaGeneracion.Substring(0, 4)), Convert.ToInt16(fechaGeneracion.Substring(4, 2)), Convert.ToInt16(fechaGeneracion.Substring(6, 2)));
                }

                // Replace the placeholders with the user-specified text
                contents = contents.Replace("[NOMBRE_EMPLEADO]", reader["Nombres_Completos_Empleado"].ToString());
                contents = contents.Replace("[TIPOID_EMPLEADO]", reader["Nombre_TipoID"].ToString());
                contents = contents.Replace("[ID_EMPLEADO]", reader["Id_Empleado"].ToString());
                contents = contents.Replace("[LUGAR_EXPEDICION_DOC]", reader["Lugar_expediccion_IdEmpleado"].ToString());

                if (reader["Marcacion_Descripcion"].ToString() == "1")
                {
                    contents = contents.Replace("[NOMBRE_COMPANIA]", reader["Descripcion_Compania2"].ToString());
                }
                else
                {
                    contents = contents.Replace("[NOMBRE_COMPANIA]", reader["Descripcion_compania"].ToString());
                }

                contents = contents.Replace("[CARGO_EMPLEADO]", reader["Nombre_Cargo_Empleado"].ToString());
                contents = contents.Replace("[FECHA_INI_CONTRATO]", dt.ToString("MMMM dd/yyyy"));
                contents = contents.Replace("[VALOR_CONTRATO_LETRAS]", enLetras(reader["Salario_Empleado"].ToString()) + " PESOS MCTE");
                contents = contents.Replace("[VALOR_CONTRATO_NUM]", String.Format(CultureInfo.CreateSpecificCulture("es-CO"), "{0:0,0.00}", reader["Salario_Empleado"]).ToString());

                contents = contents.Replace("[DIA_ACTUAL]", DateTime.Now.Day.ToString());
                contents = contents.Replace("[MES_ACTUAL]", mesLetras(DateTime.Now.Month));
                contents = contents.Replace("[ANIO_ACTUAL]", DateTime.Now.Year.ToString());
                contents = contents.Replace("[FECHA_ACTUALIZACION]", dt2.ToString("MMMM dd/yyyy"));

                if (reader["Fecha_terminacion_empleado"].ToString() == "" || reader["Fecha_terminacion_empleado"].ToString() == " ")
                {
                    contents = contents.Replace("[ESTADO_VINCULACION]", "está actualmente vinculado(a)");
                    contents = contents.Replace("[FECHA_FIN_CONTRATO]", ",");
                }
                else
                {
                    contents = contents.Replace("[ESTADO_VINCULACION]", "estuvo vinculado(a)");
                    string FechaFinal = reader["fecha_terminacion_empleado"].ToString();
                    dt       = new DateTime(Convert.ToInt16(FechaFinal.Substring(0, 4)), Convert.ToInt16(FechaFinal.Substring(4, 2)), Convert.ToInt16(FechaFinal.Substring(6, 2)));
                    contents = contents.Replace("[FECHA_FIN_CONTRATO]", " hasta " + dt.ToString("MMMM dd/yyyy") + ",");
                }

                iTextSharp.text.Image firma = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Img/Firma.png"));
                firma.ScaleAbsolute(180, 53);
                firma.SetAbsolutePosition(38, 242);
                document.Add(firma);

                contents = contents.Replace("[NOMBRE_DIRECTOR]", reader["Nombre_Firma"].ToString());
                contents = contents.Replace("[CARGO_DIRECTOR]", reader["Cargo_Firma"].ToString());

                // Step 4: Parse the HTML string into a collection of elements...
                var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(contents), null);

                // Enumerate the elements, adding each one to the Document...
                foreach (var htmlElement in parsedHtmlElements)
                {
                    document.Add(htmlElement as IElement);
                }
            }
            catch (Exception E)
            {
                Paragraph paragraph = new Paragraph();
                paragraph.Add("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                document.Add(paragraph);
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                cmd.Dispose();
                Conexion.CerrarCnMysql();
                //Finish Write PDF
                document.Close();
                Response.Write(document);
                Response.End();
            }
        }