IMPRIMIR SOMENTE ALGUNS CAMPOS COM CRYSTAL REPORTS

USUARIO.EXCLUIDOS 07/12/2006 08:44:49
#188482
Gostaria de saber se é possível imprimir somente os campos resultantes de uma busca.

Por exemplo, no código fonte existe a seguinte instrução:

Set rs = db.OpenRecordset("SELECT * " & _
"FROM tblReceber " & _
"INNER JOIN tblCliente " & _
"ON tblReceber.IDCliente = tblCliente.IDClnt " & _
"WHERE Dia = " & " " & varDia & " "


Ou seja, o relatório deverá ser impresso todos os recebimentos de clientes que estão agendados para o dia varDia.

Não encontro opção no crystal reports (v4.6) que me permita usar o WHERE e restringir a impressão somente a um determinado dia.

Existe isso no cristal reports? O Cristal Reports pode ler o conteúdo de uma variável do meu form?

Já encontei vários tutoriais que dizem como usar o cristal reports, mas a maioria ensina como imprimir uma tabela inteira, ou determinados campos de uma tabela, mas não econtro nada dizendo como posso imprimir apenas os resultados de uma busca.

Só gostaria de saber se é possível fazer isso, e se tem que ser no construtor do Cristal Reports ou se tem que ser configurado no código-fonte do programa.

Obrigado!

[ ]ÂÂÂ's
USUARIO.EXCLUIDOS 07/12/2006 09:07:26
#188488
Resposta escolhida
vc pode filtrar sim, não lembro de no 4.6 tem:

  

CrystalReports1.Formula = "{dia} = " & "'" & varDia & "'"


USUARIO.EXCLUIDOS 07/12/2006 10:14:29
#188506
Não consegui usar CrystalReports1.Formula = .....

Mas tem CristalReports1.SQLQuery

Tentei colocar minha intrução SQL e ficou assim:


cr1.Destination = 0
cr1.ReportFileName = "z:\dados\ok1.rpt"
cr1.SQLQuery = "SELECT * " & _
"FROM tblPagar " & _
"INNER JOIN tblFornec " & _
"ON tblPagar.IDFornec = tblFornec.IDFrnc " & _
"WHERE Dia = " & " " & varIDDiaPagar & " " & _
"AND Mes = " & " " & varIDMesPagar & " " & _
"AND Ano = " & " " & varIDAnoPagar & " " & _
"ORDER BY Fornec "


cr1.Action = 1


Mas não funcionou.... tà' fazendo certo!?
USUARIO.EXCLUIDOS 07/12/2006 10:42:38
#188519
Nõa dá pra inserir intruções SQL??
USUARIO.EXCLUIDOS 07/12/2006 10:46:31
#188520
os campos tem que estar entre {} acho que é isso... faz anos que não uso o 4.6

USUARIO.EXCLUIDOS 07/12/2006 10:55:03
#188525
Não funciona com { }. Dá erro em tempo de projeto dizendo que os caracteres são inválidos.

Na própria ajuda do Crystal Reports diz q é pra usar exatamente como escrevi o código aí em cima, mas quando executo o botão, abre somente o ok1.rpt, com todos os dados, da mesma maneira que defini no construtor, ou seja, com todos os dados...

Parece que tanto fez eu colocar a instrução SQL. Ele a ignora...

Talvez usando outro parà¢metro ao invés de cr1.Destinatiom ou cr1.ReportFileName??

USUARIO.EXCLUIDOS 07/12/2006 12:28:30
#188557
Alguém aí sabe se a única maneira de inserir instruções SQL no Crystal Reports é por meio de fórmulas??
USUARIO.EXCLUIDOS 07/12/2006 12:43:15
#188562
Desculpem a insistência... mas o Andre Milare tinha razão.

Pra quem tiver o mesmo problema, faça:

'Para imprimir na tela faça:
CrystalReport1.Destination = 0
'Após editar o seu report e salvá-lo, indique onde o salvou:
CrystalReport1.ReportFileName = "z:\dados\ok1.rpt"
'Aqui que estava o problema. Assim, a impressão será apenas dos dias que estão
'na variável varIDDiaPagar, que é definida conforme o usuário escolhe uma
'data no calendário.
CrystalReport1.SelectionFormula = "{tblpagar.dia} = " & " " & varIDDiaPagar & " " & ""

CrystalReport1.Action = 1


Obrigado a todos!!

[]ÂÂÂ's
Tópico encerrado , respostas não são mais permitidas