GERAR RELATORIO DE CONSULTA

WOLFROUD 19/04/2011 19:53:12
#371934
Srs(as),

Preciso de ajuda novamente, tenho uma consulta SQL em um banco Access, bem antigo pra dizer a verdade. O fato é que preciso gerar um relatório com as informações resultantes da consulta.

Segue a consulta:

Set TbClientes = BancoDeDados.OpenRecordset([Ô]SELECT * FROM Clientes WHERE data BETWEEN #01/01/2011# AND #12/31/2011#[Ô], dbOpenDynaset)

Se esta consulta gerar os dados em uma outra tabela do BD já me ajuda bastante.

Desde já muito Obrigado.


TECLA 19/04/2011 20:23:28
#371939
Resposta escolhida
Qual o gerador de relatório você quer usar?
WOLFROUD 19/04/2011 21:33:08
#371946
Pode ser o cristal report, tenho um pouquinho mais de facilidade com ele mas pode ser outra opção melhor.

Abraços
WOLFROUD 21/04/2011 13:04:35
#372127
Pessoal,

Socorram-me!!
WOLFROUD 22/04/2011 15:13:00
#372190
Segue o que eu tenho até agora, mas naum fumega!!!

Private Sub Command1_Click()
Set BancoDeDados = OpenDatabase(App.Path & [Ô]\Dados.mdb[Ô])
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

CR1.ReportFileName = App.Path + [Ô]elatório.RPT[Ô]
CR1.Datafiles(0) = App.Path + [Ô]\Dados.mdb[Ô]
CR1.CopiestoPrinter = 1
CR1.Action = 1

Me.MousePointer = 0

End If


O que há de errado????
Abraços
TECLA 22/04/2011 18:55:42
#372195
CR1.SelectionFormula = [Ô]{clientes.data} >= Date(2011, 12, 31) And {clientes.data} <= Date(2011, 1, 1) [Ô]
CR1.Action = 1
WOLFROUD 22/04/2011 19:25:18
#372199
Caro amigo TECLA, Naum fumegou

Segue o erro:
[Ô] Run time error 91
Object variable or with block variable not set[Ô]

Segue o cód desde o início:

Option Explicit
Dim BancoDeDados As Database
Dim TbCClientes As Recordset
Dim TbClientes As Recordset
Dim TbConsulta As Recordset
Dim CR1 As Report

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

CR1.ReportFileName = App.Path + [Ô]elatório.RPT[Ô]
CR1.Datafiles(0) = App.Path + [Ô]\Dados.mdb[Ô]
CR1.SelectionFormula = [Ô]{clientes.data} >= Date(2011, 12, 31) And {clientes.data} <= Date(2011, 1, 1) [Ô]
CR1.CopiestoPrinter = 1
CR1.Action = 1

Me.MousePointer = 0

End If

End Sub


Ainda naum fumega!!!

Abraços,
TECLA 22/04/2011 20:31:29
#372203
Qual a linha do erro?
WOLFROUD 26/04/2011 19:35:03
#372527
Srs. resolvi o problema do relatório, consegui faze-lo funcionar.

Tá assim:

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 + [Ô]\Banco de Dados.mdb[Ô]
CrystalReport1.Destination = 0
CrystalReport1.CopiestoPrinter = 1
CrystalReport1.Action = 1

Me.MousePointer = 0

End If

End Sub
Tópico encerrado , respostas não são mais permitidas