No me carga datos al informe

09/02/2009 - 15:40 por TioCar | Informe spam
Tengo el siguiente código para mostrar datos en un ifnorme con Crystall
Report, leo desde una base de datos access. El caso es que me muestra la
cabecera del informe pero ningún solo registro. Cuelgo el código a ver si me
saben decir que hago mal.

private void crystalReportViewer1_Load_1(object sender, EventArgs e)
{
// Averiguo ruta a la base de datos access
Configuración.Config cfg = new INTEGRA.Configuración.Config();
string bd = cfg.BaseDeDatos;
// configuro un tableAdapter para acceder a la tabla de socios
Datos.DataSetTableAdapters.SOCIOSTableAdapter taSocios = new
INTEGRA.Datos.DataSetTableAdapters.SOCIOSTableAdapter();
taSocios.Connection.ConnectionString =
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + bd;
// Instancio un DataTable de la tabla socios para llenarla con
los datos de los socios.
Datos.DataSet.SOCIOSDataTable dtSocios = new
INTEGRA.Datos.DataSet.SOCIOSDataTable();
// lleno el DataTable de los socios.
taSocios.Fill(dtSocios);


Listados.cr reporte = new cr(); ; // Instancio del informe
Datos.DataSet ds = new INTEGRA.Datos.DataSet();
reporte.SetDataSource(ds);
crv.ReportSource=reporte;

}

Preguntas similare

Leer las respuestas

#6 Alberto Poblacion
14/02/2009 - 12:44 | Informe spam
"TioCar" wrote in message
news:
Disculpa que siga insistiendo, pero del DataTable (dtSocios) no se como me
dices que sacque otro dataTabla para pasarlo al crystall, siempre me da
error de tipos). ¿Puedes indicarme la línea de código para ésta
operación?.



No entiendo el problema. Si ya tienes la tabla, ¿para qué quieres sacar
otra? No tienes más que asignar la referencia a la que ya tienes.
Es decir, en el código que "posteaste" tenías ya una línea así:
taSocios.Fill(dtSocios);
que te carga los datos dentro del datatable dtSocios.
Sólo necesitas asignarle ese mismo datatable al listado:
reporte.SetDataSource(dtSocios);
Respuesta Responder a este mensaje
#7 TioCar
14/02/2009 - 19:06 | Informe spam
¡Hola y gracias!

Verás , ahí está el problema, que crystall chilla cuando hago eso, vamos,
que no se lo traga, pero voy a crear un proyecto nuevo para probarlo no vaya
a ser que tenga algo raro en éste.

Lo he vuelto a revisar y éste es el error que arroja (el cual nunca habia
visto antes)


Error2 la llamada es ambigua entre los siguientes métodos o propiedades:
'CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSource(System.Collections.IEnumerable)'
y
'CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSource(System.Data.DataTable)' C:\Users\Carmelo\Documents\Visual
Studio 2008\Projects\INTEGRA\INTEGRA\Listados\ListadoSocios.cs 43 13 INTEGRA


No se cual puede ser el problema, en la ayuda de VS2008 dice que se le puede
pasar un DataTable, pero si se lo paso ese es el mensaje de compilación que
indica.

¿se te ocurre que puede ser? Porque yo ya estoy tirando la toalla.
Respuesta Responder a este mensaje
#8 TioCar
14/02/2009 - 19:09 | Informe spam
además pongo el código que utilizo, por si alguien puede echar una mano.

// Averiguo ruta a la base de datos access
Configuración.Config cfg = new INTEGRA.Configuración.Config();
string bd = cfg.BaseDeDatos;
// configuro un tableAdapter para acceder a la tabla de socios
Datos.DataSetTableAdapters.SOCIOSTableAdapter taSocios = new
INTEGRA.Datos.DataSetTableAdapters.SOCIOSTableAdapter();
taSocios.Connection.ConnectionString =
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + bd;
// Instancio un DataTable de la tabla socios para llenarla con
los datos de los socios.
Datos.DataSet.SOCIOSDataTable dtSocios = new
INTEGRA.Datos.DataSet.SOCIOSDataTable();
// lleno el DataTable de los socios.
taSocios.Fill(dtSocios);


Listados.cr reporte = new cr(); ; // Instancio del informe
reporte.SetDataSource(dtSocios);

//reporte.SetDataSource(dtSocios);
crv.ReportSource = reporte;
Respuesta Responder a este mensaje
#9 Alberto Poblacion
14/02/2009 - 22:22 | Informe spam
"TioCar" wrote in message
news:
Lo he vuelto a revisar y éste es el error que arroja (el cual nunca habia
visto antes) Error2 la llamada es ambigua entre los siguientes métodos o
propiedades: [...] (System.Collections.IEnumerable)
y [...] (System.Data.DataTable)



Prueba a ponerle un "cast" para desambiguarlo:

reporte.SetDataSource((DataTable)dtSocios);
Respuesta Responder a este mensaje
#10 TioCar
16/02/2009 - 19:52 | Informe spam
Directo al clavo, como se suele decir. Problema solucionado, ya me funciona.
Que iluso, no caí en hacer un cast.

Mil gracias!, esta noche voy a dormir mejor ;)

"Alberto Poblacion"
escribió en el mensaje de noticias:
"TioCar" wrote in message
news:
Lo he vuelto a revisar y éste es el error que arroja (el cual nunca habia
visto antes) Error2 la llamada es ambigua entre los siguientes métodos o
propiedades: [...] (System.Collections.IEnumerable)
y [...] (System.Data.DataTable)



Prueba a ponerle un "cast" para desambiguarlo:

reporte.SetDataSource((DataTable)dtSocios);


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida