
10/09/2007, 13:47
|
| | Fecha de Ingreso: octubre-2006
Mensajes: 86
Antigüedad: 18 años, 4 meses Puntos: 1 | |
Re: varios registros en un informe crystal reports te voy a explicar como hago yo los reportes talvez te sirve de ayuda
1.- me voy a agregar un nuevo elemento en mi proyecto y agrego un Conjunto de datos o un dataset.
2.- Dentro del Dataset creo un DataTable que me sirve para volcar toda la informacion que jalo con el Query es importante que dentro del DataTable crees todos los campos que vas a ocupar en tu reporte para agregar una columna debes de darle click derecho sobre el Datatable luego das click sobre agregar y seleccionas columna y asi hasta crear todas las que necesitas.
3.- Agregas un Crytal Reports a tu proyecto igual que el Dataset.
4.- Luego en el Crystal Reports seleccionas el menu explorador de campos y dentro de ese menu da click derecho sobre el submenu campos de base de datos.
Seleccionas el item que dice asistente de base de datos luego seleccionas la carpeta Project data luego ADO.NET Dataset y luego elegis el DataTable que creaste.
5.- Una vez hecho esto te apareceran todos los campos que creaste en el Datatable ahora solo tenes que darle forma al reporte.
6.- Luego que ya tenes tu reporte hecho te vas al formulario de donde lo vas a llamar y agregas un CrystalReportViewer.
7.- En tu formulario agregas el siguiente codigo.
Public MyRdSS OleDbDataReader
Public MyAdSS OleDbDataAdapter
Public dt As DataTable
Public dr As DataRow
Private Sub CrystalR_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CrystalR.Load
Me.MyAdSS = New OleDbDataAdapter(ConsultaSl, cnc)
Me.MyAdSS.SelectCommand.CommandTimeout = 150
Me.MyRdSS = MyAdSS.SelectCommand.ExecuteReader()
dt = New DatasetCreado.DataTableCreado
dt.Clear()
With MyRdSS
While .Read()
dr = dt.NewRow()
dr(0) = .GetString(0) 'Donde dr() es la columna de el DataTable
dr(1) = .GetDecimal(1) 'loque esta despues del igual el Get.... va a depender de el tipo de
dr(2) = .GetString(2) 'valor que estes leyendo de la base de datos y el numero indica la posicion en la consulta.
.
.
dr(n) = .GetString(n)
dt.Rows.Add(dr)
End While
End With
Nombredelreporte.SetDataSource(dt)
CrystalReportViewer.ReportSource = nombredelreporte
End Sub
Espero que te sirva cualquier cosa no dudes en preguntar
Última edición por NEST; 10/09/2007 a las 13:59 |