Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   ASPX (.net) (http://www.forosdelweb.com/f78/)
-   -   Crystal Report con DataSet (http://www.forosdelweb.com/f78/crystal-report-con-dataset-432695/)

pedrito 09/10/2006 08:55

Crystal Report con DataSet
 
Foro, estoy haciendo un reporte, pero debo estar cometiendo algun error u olvidamdome de algo.
Yo armo el reporte, y desde el ayudante de crystal, le paso una consulta Sql, previa conexion a la base de datos. (todo desde el ayudante de crystal, en asp.net 2003). ese reporte por ejemplo, me lista todos los registros de una consulta. Pero mi idea, es generar un dataset y poder pasarselo al reporte para que me liste el contenido del dataset, es decir poder filtrar los datos en el dataset, esto es por que yo los dataset ya los tengo armado, y volvar toda la logica de esos dataset a consultas de sql para el crystal se me complica.
Ahora bien.... yo creo el dataset, se lo paso al reporte, pero el reporte no tiene en cuenta el dataset que yo le paso, me sigue listado el de la consulta que he generado en el asistente de Crystal.
Resumiendo, quiero poder armar un reporte y pasarle un dataset, el cual lo armo en mi codigo. Gracias.
Codigo.

dim repor As New CrystalReport1
Dim cn As New SqlConnection("server=servidor;database=Base;passw ord=sapass;uid=sa")
Dim da As New SqlDataAdapter(" SELECT idRegistro, DatoRegistro FROM Tabla ", cn)
Dim ds As New DataSet
da.Fill(ds)

repor.SetDataSource(ds)
Me.CrystalReportViewer1.ReportSource = repor

axpicasso 02/11/2006 10:24

Ayudita
 
Hola, si ya tienes creados los DataSet como objetos XSD, tendrias que crear el reporte con el DataTable del DataSet y mas no con el resultado de la base de datos.
Algo parecido a esto:


-DSFidoc es mi objeto DataSet (XSD)
-rpt es mi ReportDocument
-CRV1 es mi CrystalReportViewer
-ruta es la ruta fisica de mi reporte

ReportDocument rpt = new ReportDocument();
DSFidoc xds = new DSFidoc();
....
....
....
rpt.Load(ruta);
rpt.SetDataSource(xds);
CRV1.ReportSource = rpt;


espero esto te ayude. Cualquier consulta a disposición.
[email protected] :stress:

mellidecai 14/11/2006 03:33

¿Quiere eso decir que para asociar un dataset a un informe, en tiempo de diseño debemos asociarle un data set como origen de datos, en vez de una conexión a la bd??

jhonwilliams 14/11/2006 06:52

Cita:

Iniciado por mellidecai (Mensaje 1782126)
¿Quiere eso decir que para asociar un dataset a un informe, en tiempo de diseño debemos asociarle un data set como origen de datos, en vez de una conexión a la bd??

Si, debes asociar el DataSet como origen de datos para diseñar el reporte e identificar los campos que van en este. Pero una vez lo tengas listo puedes asociar un DataSet por codigo con el resultado de la consulta.

C#
Código:

Reporte1 rpt = new Reporte1();
rpt.SetDataSource (MiDataSet.Tables[0]);
CrystalReportViewer1.ReportSource=rpt;

Saludos
:adios:

yesmina 19/11/2006 18:10

hola, he intentado hacer un reporte pero no me salen los registros en la pagina web...

aki va el codigo:
------------------------------------------------------------

Dim oConn As SqlClient.SqlConnection = New SqlClient.SqlConnection(ConfigurationSettings.AppS ettings("conexion").ToString)
oConn.Open()
Dim STR_SQL As String

STR_SQL = "SELECT *FROM FSopTec"
Dim oCmd As New SqlCommand(STR_SQL, oConn)
Dim da As New SqlDataAdapter(oCmd)
Dim ds As New DataSet
da.Fill(ds)

Dim cr As New CrystalReport4

cr.SetDataSource(ds)
crvPrueba.ReportSource = cr

DONDE : crvPrueba es el CrystalReportViewer
---------------------------------------------

espero me puedan dar una pista sobre el problema...


La zona horaria es GMT -6. Ahora son las 23:06.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.