public Frm_PropiedadesApp(string usr, int mdl, int app, int rpt)
        {
            InitializeComponent();
            usuario = usr;
            PropiedadReporteControl propiedadControl = new PropiedadReporteControl();
            PropiedadReporte        propiedad        = propiedadControl.obtenerPropiedadPorUsuarioAplicacion(usr, app, mdl);

            Txt_Usuario.Text = usr;
            inicializarComboModulo();
            Modulo mdlTmp = (Modulo)Cmb_Modulo.SelectedItem;

            inicializarComboAplicacion(mdlTmp.MODULO);
            inicializarComboReporte();
            inicializarImprimir();


            Cmb_Reporte.Text    = propiedad.REPORTE.NOMBRE;
            Cmb_Aplicacion.Text = propiedad.APLICACION == null ? "" : propiedad.APLICACION.NOMBRE;
            Cmb_Modulo.Text     = propiedad.MODULO.NOMBRE;

            estado = propiedad.ESTADO == 1 ? 1 : 0;
            colorCheck(estado, Chk_Estado);
            impresion = propiedad.IMPRIMIR == 1 ? 1 : 0;
            colorCheck(impresion, Chk_Impresion);

            codModulo  = mdl;
            codReporte = rpt;
            codApp     = app;

            inicializarImprimir(mdl, rpt, app);
        }
        public void imprimirReporteAplicacion(string usuario, int Modulo, int Aplicacion)
        {
            PropiedadReporteControl propiedadReporteControl = new PropiedadReporteControl();
            PropiedadReporte        propiedadReporte        =
                propiedadReporteControl.obtenerPropiedadPorUsuarioAplicacion(usuario, Aplicacion, Modulo);

            ReporteAplicacionControl datos = new ReporteAplicacionControl();

            ReporteAplicacion repApp = datos.obtenerReporteApp(Aplicacion, Modulo);
            Reporte           rpt    = repApp.REPORTE;

            string           pathFile = rpt.CONFIGURACION.RUTA + rpt.NOMBRE_ARCHIVO;
            Frm_VistaReporte frmVistaRpt;

            switch (propiedadReporte.IMPRIMIR)
            {
            case 0:
                frmVistaRpt = new Frm_VistaReporte(pathFile, 0);
                frmVistaRpt.Show();
                break;

            case 1:
                frmVistaRpt = new Frm_VistaReporte(pathFile, 1);
                frmVistaRpt.Show();
                break;

            default:
                break;
            }
        }
        private void inicializarImprimir()
        {
            Modulo     mdlTmp = (Modulo)Cmb_Modulo.SelectedItem;
            Reporte    rptTmp = (Reporte)Cmb_Reporte.SelectedItem;
            Aplicacion appTmp = (Aplicacion)Cmb_Aplicacion.SelectedItem;
            PropiedadReporteControl propiedadControl = new PropiedadReporteControl();
            PropiedadReporte        propiedad        =
                propiedadControl.obtenerPropiedadPorUsuarioAplicacion(
                    usuario, appTmp.APLICACION, mdlTmp.MODULO);

            estado = propiedad.ESTADO == 1 ? 1 : 0;
            colorCheck(estado, Chk_Estado);
            impresion = propiedad.IMPRIMIR == 1 ? 1 : 0;
            colorCheck(impresion, Chk_Impresion);
        }
        private void Btn_Guardar_Click(object sender, EventArgs e)
        {
            deshabilitarBotones();
            PropiedadReporte        propiedad        = new PropiedadReporte();
            PropiedadReporteControl propiedadControl = new PropiedadReporteControl();
            UsuarioControl          usuario          = new UsuarioControl();

            propiedad.MODULO     = (Modulo)Cmb_Modulo.SelectedItem;
            propiedad.REPORTE    = (Reporte)Cmb_Reporte.SelectedItem;
            propiedad.APLICACION = (Aplicacion)Cmb_Aplicacion.SelectedItem;
            propiedad.USUARIO    = usuario.SetUsuario(this.usuario);
            propiedad.ESTADO     = estado == 1 ? 1 : 0;
            propiedad.IMPRIMIR   = impresion == 1 ? 1 : 0;

            propiedadControl.insertarPropiedadReporte(propiedad);

            MessageBox.Show("Se ha actualizado la propiedad");

            inicializarImprimir();
        }
        private void Btn_Borrar_Click(object sender, EventArgs e)
        {
            PropiedadReporteControl propiedad        = new PropiedadReporteControl();
            PropiedadReporte        propiedadReporte = new PropiedadReporte();

            propiedadReporte.APLICACION =

                this.accion = null;
            Dialogo dialogo      = new Dialogo();
            bool    confirmacion = dialogo.dialogoSiNo("Confirmacion", "Desea eliminar?");

            if (confirmacion)
            {
                reporteControl.eliminarReporte(this.reporte.REPORTE);
                UploadFile upload = new UploadFile(this.reporte.NOMBRE_ARCHIVO, this.reporte.CONFIGURACION.RUTA);
                upload.deleteFile();

                this.reporte = new Reporte();
                iniciazliarTbpConsulta();
                Tbc_Reporte.SelectedTab = Tbp_Consulta;
                llenarDgv();
            }
        }
        public void imprimirReporteModulo(int Reporte, string usuario, int Modulo)
        {
            PropiedadReporteControl propiedadReporteControl = new PropiedadReporteControl();
            PropiedadReporte        propiedadReporte        =
                propiedadReporteControl.obtenerPropiedadPorUsuarioModulo(Reporte, usuario, Modulo);

            ReporteModuloControl reporteMdlControl = new ReporteModuloControl();

            try
            {
                ReporteModulo reporteMdl = reporteMdlControl.obtenerReporteMdl(Modulo, Reporte);
                Reporte       rpt        = reporteMdl.REPORTE;

                string           pathFile = rpt.CONFIGURACION.RUTA + rpt.NOMBRE_ARCHIVO;
                Frm_VistaReporte frmVistaRpt;
                switch (propiedadReporte.IMPRIMIR)
                {
                case 0:
                    frmVistaRpt = new Frm_VistaReporte(pathFile, 0);
                    frmVistaRpt.Show();
                    break;

                case 1:
                    frmVistaRpt = new Frm_VistaReporte(pathFile, 1);
                    //frmVistaRpt.Show();
                    break;

                default:
                    break;
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.ToString() + "Error en impresion, no se pudo obtener reporte.");
            }
        }