RELATORIO NAO LEVA EM CONTA CONSULTA
Pessoal,
Segue abaixo como está a codificação:
Option Explicit
Dim BancoDeDados As Database
Dim TbCClientes As Recordset
Dim TbClientes As Recordset
Dim TbConsulta As Recordset
Private Sub Command1_Click()
Set TbConsulta = BancoDeDados.OpenRecordset([Ô]SELECT * FROM Clientes WHERE Data BETWEEN #[Ô] & Format(Text1, [Ô]dd/mm/yyyy[Ô]) & [Ô]# And #[Ô] & Format(Text2, [Ô]dd/mm/yyyy[Ô]) & [Ô]#[Ô], dbOpenDynaset)
If Text1.Text = [Ô][Ô] Then
MsgBox ([Ô]Preencha uma data válida[Ô])
Else
Me.MousePointer = 11
CrystalReport1.ReportFileName = App.Path & [Ô]elatório.RPT[Ô]
CrystalReport1.Datafiles(0) = App.Path + [Ô]\BD.mdb[Ô]
CrystalReport1.Destination = 0
CrystalReport1.CopiestoPrinter = 1
CrystalReport1.Action = 1
Me.MousePointer = 0
End If
End Sub
O relatório está mostrando todos os dados da tabela e [Ô]naum[Ô] leva em consideração a consulta feita, parece que a consulta naum está gerando na tabela selecionada.
Alguém pode dar alguma dica do que está errado???
Grato desde já!!
abraços
Segue abaixo como está a codificação:
Option Explicit
Dim BancoDeDados As Database
Dim TbCClientes As Recordset
Dim TbClientes As Recordset
Dim TbConsulta As Recordset
Private Sub Command1_Click()
Set TbConsulta = BancoDeDados.OpenRecordset([Ô]SELECT * FROM Clientes WHERE Data BETWEEN #[Ô] & Format(Text1, [Ô]dd/mm/yyyy[Ô]) & [Ô]# And #[Ô] & Format(Text2, [Ô]dd/mm/yyyy[Ô]) & [Ô]#[Ô], dbOpenDynaset)
If Text1.Text = [Ô][Ô] Then
MsgBox ([Ô]Preencha uma data válida[Ô])
Else
Me.MousePointer = 11
CrystalReport1.ReportFileName = App.Path & [Ô]elatório.RPT[Ô]
CrystalReport1.Datafiles(0) = App.Path + [Ô]\BD.mdb[Ô]
CrystalReport1.Destination = 0
CrystalReport1.CopiestoPrinter = 1
CrystalReport1.Action = 1
Me.MousePointer = 0
End If
End Sub
O relatório está mostrando todos os dados da tabela e [Ô]naum[Ô] leva em consideração a consulta feita, parece que a consulta naum está gerando na tabela selecionada.
Alguém pode dar alguma dica do que está errado???
Grato desde já!!
abraços
Eu não lembro muito de Crystal Reports, mas pelo que eu vi, você não informou a consulta nos parâmetros do relatório.
Wolfroud, vc esta tentando fazer um relatorio por periodo eh isso.
Olha só este problema é comum, se o banco for access e o campo data for do tipo data e hora, a formatação é que está errada, veja
você formata como dd/mm/yyyy, e o access só irá entender mm/dd/yyyy
então mude sua query e teste novamente
abaixo a query já alterarda teste
você formata como dd/mm/yyyy, e o access só irá entender mm/dd/yyyy
então mude sua query e teste novamente
abaixo a query já alterarda teste
Set TbConsulta = BancoDeDados.OpenRecordset([Ô]SELECT * FROM Clientes WHERE Data BETWEEN #[Ô] & Format(Text1, [Ô]mm/dd/yyyy[Ô]) & [Ô]# And #[Ô] & Format(Text2, [Ô]mm/dd/yyyy[Ô]) & [Ô]#[Ô], dbOpenDynaset)
Faltou passar o filtro para o crystal
CrystalReport1.SelectionFormula = [Ô]{Clientes .data} >= Date([Ô] & Year(Text1.Text) & [Ô],[Ô] & Month(Text1.Text) & [Ô],[Ô] & Day(Text1.Text) & [Ô]) [Ô] & _
[Ô] And {Clientes .data} <= Date([Ô] & Year(Text2.Text) & [Ô],[Ô] & Month(Text2.Text) & [Ô],[Ô] & Day(Text2.Text) & [Ô])[Ô]
CrystalReport1.SelectionFormula = [Ô]{Clientes .data} >= Date([Ô] & Year(Text1.Text) & [Ô],[Ô] & Month(Text1.Text) & [Ô],[Ô] & Day(Text1.Text) & [Ô]) [Ô] & _
[Ô] And {Clientes .data} <= Date([Ô] & Year(Text2.Text) & [Ô],[Ô] & Month(Text2.Text) & [Ô],[Ô] & Day(Text2.Text) & [Ô])[Ô]
Srs.
Grato pelas informações que deram, implementei as alterações sugeridas e surgiu o seguinte erro:
Run-time error [ô]20534[ô]:
Error detected by database DLL.
O que poderia ser??
Aquele abraço!
Ps. Sr. Ferraz, é exatamente isso, uma pesquisa por perÃodo determinado pelas TxtBox 1 e 2.
Grato pelas informações que deram, implementei as alterações sugeridas e surgiu o seguinte erro:
Run-time error [ô]20534[ô]:
Error detected by database DLL.
O que poderia ser??
Aquele abraço!
Ps. Sr. Ferraz, é exatamente isso, uma pesquisa por perÃodo determinado pelas TxtBox 1 e 2.
Srs.
Porque haveria um erro de DLL?
Abraços
Porque haveria um erro de DLL?
Abraços
Pessoal,
andei estudando e notei que o Crystal usa ADO350.dll e o meu access está usando ADO360.dll, será este o problema??
Atte,
andei estudando e notei que o Crystal usa ADO350.dll e o meu access está usando ADO360.dll, será este o problema??
Atte,
Tópico encerrado , respostas não são mais permitidas