Paso de paràmetros
Publicado por Josep (5 intervenciones) el 17/05/2017 14:30:47
Buenos días.
Llevo unos dias liado con el tema de los reportes con Crystal Reports.
Tengo hecho un reporte, conectado a una base de datos. Lo que quiero hacer és filtrar por nombre de usuario y por fechas. La base de datos contiene valores de viajes, cada viaje separado por una fecha. Por ejemplo quiero ver los km realizados por el usuario Josep, entre los dias 1 de abril y 10 de mayo. Esos valores los puedo escojer desde un formulario.
En el codigo que llama al report le he puesto una query filtrando por esos campos. Lo que me pasa es que me muestra el report con todos los registros sin filtrar.
Gracias.
Pego aqui el código:
Llevo unos dias liado con el tema de los reportes con Crystal Reports.
Tengo hecho un reporte, conectado a una base de datos. Lo que quiero hacer és filtrar por nombre de usuario y por fechas. La base de datos contiene valores de viajes, cada viaje separado por una fecha. Por ejemplo quiero ver los km realizados por el usuario Josep, entre los dias 1 de abril y 10 de mayo. Esos valores los puedo escojer desde un formulario.
En el codigo que llama al report le he puesto una query filtrando por esos campos. Lo que me pasa es que me muestra el report con todos los registros sin filtrar.
Gracias.
Pego aqui el código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Private Sub CrystalReportViewer1_Load(sender As Object, e As EventArgs) Handles CrystalReportViewer1.Load
TextBox1.Text = Module1.usuari
Me.DateTimePicker1.Value = consultar.DateTimePicker1.Text
Me.DateTimePicker2.Value = consultar.DateTimePicker2.Text
Dim sql As String
Dim cn As SqlConnection
Dim cm As New SqlCommand
Dim da As SqlDataAdapter
Dim dt As New DataTable
Dim adapter As New SqlDataAdapter()
'Dim ds As New Data.DataSet()
cn = New SqlConnection("Data Source=Josep-Pc\sqlexpress;Initial Catalog=Desplacaments;Integrated Security=SSPI")
cn.Open()
sql = "select data, iddesti, km from Viatge where data between '" & Convert.ToDateTime(DateTimePicker1.Text) & "' and '" & Convert.ToDateTime(DateTimePicker2.Text) & "' and usuari ='" & usuari & "'"
Try
cm = New SqlCommand()
cm.CommandText = sql
cm.CommandType = CommandType.Text
cm.Connection = cn
da = New SqlDataAdapter(cm)
dt = New DataTable()
da.Fill(dt)
adapter.SelectCommand = cm
adapter.Fill(ds)
Catch Excep As Exception
MessageBox.Show(Excep.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
printPreviewButton_Click(sender, e)
End Sub
Private Sub printPreviewButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles printPreviewButton.Click
Try
Dim rept As New ReportDocument()
rept.Load("C:\Users\Josep\Desktop\viatge.rpt")
rept.SetDataSource(ds)
CrystalReportViewer1.ReportSource = rept
Catch ex As Exception
MessageBox.Show("No es por obrir el document")
End Try
End Sub
Valora esta pregunta


0