CRYSTAL REPORT 8.0 X VB

JOSESANTOS 20/09/2011 19:40:07
#384794
Boa noite, amigos!

Estou começando a trabalhar com o Crystal Report 8 no VB.
A minha dúvida é como passar 1 parâmetro, ou seja, quero escolher o funcionário(combobox) e a data e a partir disso gerar o relatório que já está pronto.

Att.
TECLA 20/09/2011 20:25:34
#384795
Utilize a propriedade SelecionFormula do objeto CrystalViewer para fazer o filtro no Report.
Exemplo:
CrystalReport1.SelectionFormula = [Ô]{AGENDA.NOME} >= [Ô] & [Ô][ô][ô][Ô] & [Ô]J[Ô] & [Ô][ô][ô][Ô]
JCARLOS 21/09/2011 11:14:48
#384845
CrystalReport1.SelectionFormula = [Ô]{tbFuncionario.cdFunc}=[Ô] & txtcdFuncionario.text & _
[Ô] and {tbFuncionario.dtAdmissao}>=date([ô][Ô] & Format(cdate(txtdtInicio), [Ô]yyyy-mm-dd[Ô]) & [Ô][ô])[Ô] & _
[Ô] and {tbFuncionario.dtAdmissao}<date([ô][Ô] & Format(cdate(txtdtFinal) + 1, [Ô]yyyy-mm-dd[Ô]) & [Ô][ô])[Ô]
ROBIU 21/09/2011 12:39:36
#384858
Não entendi seu codigo: Tem vários funcionários com o mesmo código, por acaso? Você usa o CR por dentro ou por fora do vb6?
Eu não uso fórmulas. Filtro os dados diretos no SELECT ... Where e o resultado mando para o relatório. Segue exemplo:

JOSESANTOS 21/09/2011 14:17:18
#384865
Estou usando o Crystal Reports por dentro do VB.
O arquivo que tu me mandou não roda.
Dá o erro em anexo.
Att.
JOSESANTOS 22/09/2011 08:35:44
#384921
Bem Robiu......ou quem esteja disposto a ajudar....!
Não teve jeito de abrir o teu aplicativo aqui, então estou mandando o meu para que tu analise.
O que quero é gerar o relatorio a partir da escolha dos prifissionais em um ComboBox(frmRelatorio.cbProfissional).
O relatório terá que mostrar os serviços do profissional escolhido e um subRelatório com os adiantamentos deste profissional.
Estou mandando os forms e o banco.
Tu pode me passar teu email? Não estou conseguindo anexar a pasta compactada.
Att.
ROBIU 22/09/2011 15:51:04
#384965
Realmente, o meu projeto não abre na sua máquina por causa da versão do CR. Também não consegui rodar seu projeto aqui. Testa a rotina abaixo, no form que carrega o relatório:

Option Explicit
Dim Report As New CrystalReport1
Private Sub Form_Load()
Dim Rs As New ADODB.Recordset
sSql = [Ô]SELECT IDFunc, NomeFunc FROM tbFuncionario [Ô]
sSql = sSql & [Ô]WHERE NomeFunc=[ô][Ô] & frmRelatorio.cbProfissional.Text & [Ô][ô] ORDER BY NomeFunc[Ô]
Rs.CursorLocation = adUseClient
Rs.Open sSql, Banco, adOpenKeyset, adLockPessimistic

Report.DiscardSavedData
Report.Database.SetDataSource Rs

Rs.Close
Screen.MousePointer = vbHourglass
CRViewer1.ReportSource = Report
CRViewer1.ViewReport
Screen.MousePointer = vbDefault

End Sub
JOSESANTOS 22/09/2011 17:51:04
#384978
To fazendo assim...


Option Explicit
Dim Report As New CrystalReport2
Dim rs As New ADODB.Recordset
Private Sub Form_Load()

sSql = [Ô]SELECT * FROM ConsultaQuit [Ô]
sSql = sSql & [Ô]WHERE IDFunc=[Ô] & frmRelatorio.cbProfissional.ItemData(frmRelatorio.cbProfissional.ListIndex)
rs.CursorLocation = adUseClient
rs.Open sSql, Banco, adOpenKeyset, adLockReadOnly
MsgBox rs.RecordCount
Report.DiscardSavedData
Report.Database.SetDataSource rs

rs.Close
Screen.MousePointer = vbHourglass
CRViewer1.ReportSource = Report
CRViewer1.ViewReport
Screen.MousePointer = vbDefault

End Sub

Private Sub Form_Resize()

CRViewer1.Top = 0
CRViewer1.Left = 0
CRViewer1.Height = ScaleHeight
CRViewer1.Width = ScaleWidth

End Sub

Está abrindo o relatório mas não está filtrando. Existe alguma configuração que estou esquecendo?

Vlw !
JOSESANTOS 22/09/2011 22:48:34
#385005
Tá acontecendo o seguinte: Consegui fazer o relatório me mostrar o que quero usando SelectionFormula. Porém, só filtra se 1 break ao lado do código abaixo:

Screen.MousePointer = vbHourglass
CRViewer1.ReportSource = Report
CRViewer1.ViewReport
Screen.MousePointer = vbDefault

  • F9 With CRViewer1
    .SelectionFormula =
  • [Ô]{ConsultaQuit.idfunc} = [Ô] & frmRelatorio.cbProfissional.ItemData(frmRelatorio.cbProfissional.ListIndex)
    End With

    Se não tiver o break aparecem todos os dados do relatório.

    Essa é boa....!


    E agora?
    XXXANGELSXXX 28/09/2011 00:31:35
    #385436
    isso aqui nao ta posicionando errado nao? frmRelatorio.cbProfissional.ItemData(frmRelatorio.cbProfissional.ListIndex)
    Página 1 de 2 [11 registro(s)]
    Tópico encerrado , respostas não são mais permitidas