SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: chorlatron en Sábado 6 de Octubre de 2007, 10:38

Título: Cystal Reports
Publicado por: chorlatron en Sábado 6 de Octubre de 2007, 10:38
Hola buenas, a ver si me pueden ayudar. Tengo un proyecto de vs2005 y quiero hacer un reporte. Tengo un formulario (frmfacpreliminar) que tienen un "crystalReportViewer", pues bien ya tengo hecho el report , entonces quiero hacer una vista preliminar en el "crystalReportViewer" pero me lo muestra en blanco, no se a que se puede deber esto, he examinado el código cientos de veces y no encuentro nada mal. Les pongo el código para que vean como lo hago:

private void vistapreliminarToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            EMPRESATableAdapter dapEmpr = new EMPRESATableAdapter();
            CLIENTESTableAdapter dapCl = new CLIENTESTableAdapter();
            FACTURASTableAdapter dapFac = new FACTURASTableAdapter();
            Art_RFacArtTableAdapter dapArtRFac = new Art_RFacArtTableAdapter();
            RWFac_DBDataSet Ds = new RWFac_DBDataSet();
            CrystalFactura CrysFac = new CrystalFactura();
            FrmFacturasPreliminar FrmFacPrelm = new FrmFacturasPreliminar();
            try
            {
                PoblarReporte(dapArtRFac, dapCl, dapEmpr, dapFac, Ds, CrysFac);
                FrmFacPrelm.crystalReportViewer1.ReportSource = CrysFac;
                FrmFacPrelm.Show();
           
            }
            catch (Exception ex)
            {
                Utilidades.MensajeErrorRestriccRWFac(ex.ToString());
            }
            finally
            {
                dapEmpr.Dispose();
                dapCl.Dispose();
                dapFac.Dispose();
                dapArtRFac.Dispose();
                Ds.Dispose();
               // CrysFac.Dispose();
                //FrmFacPrelm.Dispose();
            }
           
         
        }
        private void PoblarReporte(Art_RFacArtTableAdapter ArtRFacDap,      CLIENTESTableAdapter ClDap,EMPRESATableAdapter EmprDap, FACTURASTableAdapter FacDap, RWFac_DBDataSet ds,
             CrystalFactura CrysFac)
        {
            ds.Clear();
            ArtRFacDap.SelectArticulosDeUnaFactura(ds.Art_RFacArt, txtCodigo.Text);
            EmprDap.Fill(ds.EMPRESA);
            FacDap.SelectFacPorCod(ds.FACTURAS, txtCodigo.Text);
            ClDap.SelectClientePorRazonSoc(ds.CLIENTES, txtCliente.Text);
            CrysFac.SetDataSource(ds);
        }

Si se les ocurre otra forma más eficaz me sirve y si ven el fallo en esta también.... No se si está claro esto que pongo.... si no fuese lo suficientemente claro diganme que no entienden y yo les explico.... Gracias anticipadas