private Boolean pu_AnularSolicitud()
        {
            try
            {
                Boolean valorRetornar = false;
                int     id            = 0;

                if (info != null)
                {
                    // Motivo por Anulación
                    string motiAnulacion     = "";
                    FrmGe_MotivoAnulacion fr = new FrmGe_MotivoAnulacion();
                    fr.ShowDialog();
                    motiAnulacion        = fr.motivoAnulacion;
                    info.MotivoAnulacion = motiAnulacion;
                    info.Observacion     = motiAnulacion;
                    info.FechaAnulacion  = param.Fecha_Transac;
                    info.IdUsuario_Anu   = param.IdUsuario;
                    info.ip                 = param.ip;
                    info.nom_pc             = param.nom_pc;
                    info.IdEstadoAprobacion = "Negado";
                    info.Estado             = "I";

                    //REVERTIR EL SALDO DE DIAS TOMADOS
                    RoHistoricoVacaInfoLst = new BindingList <ro_historico_vacaciones_x_empleado_Info>(oRo_historico_vacaciones_x_empleado_Bus.pu_RevertirVacaciones(info.IdEmpresa, info.IdEmpleado, Convert.ToInt32(info.Dias_a_disfrutar)));

                    //GRABA LA SOLICITUD
                    if (solicitudBus.GrabarBD(info, ref id, ref mensaje))
                    {
                        foreach (ro_historico_vacaciones_x_empleado_Info item in RoHistoricoVacaInfoLst)
                        {
                            if (!oRo_historico_vacaciones_x_empleado_Bus.GrabarBD(item, ref id, ref mensaje))
                            {
                                valorRetornar = false; break;
                            }
                        }
                    }
                }

                return(valorRetornar);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString());
                return(false);
            }
        }
        private Boolean pu_GrabarHistorico()
        {
            try {
                int id = 0;

                foreach (ro_historico_vacaciones_x_empleado_Info item in RoHistoricoVacaInfoLst)
                {
                    if (!oRo_historico_vacaciones_x_empleado_Bus.GrabarBD(item, ref id, ref mensaje))
                    {
                        return(false);
                    }
                }

                return(true);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString());
                return(false);
            }
        }