public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument CreateReport()
        {
            crReporte rpt = new crReporte();

            rpt.Site = this.Site;
            return(rpt);
        }
        private void Reportar()
        {
            string sqlConsulta = "select * from Persona";

            dsPersona varDsPersona = new dsPersona();

            try
            {
                // creamos los data adapters
                SqlConnection  conn         = new SqlConnection("Data Source=ASUSCRACK\\SQLEXPRESS;Initial Catalog=Tutorial;Integrated Security=True");
                SqlDataAdapter sqlDaPersona = new SqlDataAdapter(sqlConsulta, conn);
                // empezamos a llenar las tablas
                sqlDaPersona.Fill(varDsPersona, "Persona");

                // ahora poblamos el informe y lo mostramos
                crReporte informe = new crReporte();
                informe.SetDataSource(varDsPersona);
                crvPersona.ReportSource = informe;
            }
            catch (Exception ex)
            {
                MessageBox.Show("No se pudo completar el reporte " + ex.ToString());
            }
        }