ARPrado Postado Outubro 26, 2006 Denunciar Share Postado Outubro 26, 2006 Amigos, nunca usei um subreport e estou pegando uma surra. Estou usando dentro do VB para chamar o relatório principal no crystal com um filtro, como faço para filtrar também um sub-relatorio.veja como está feito a rotina .Private Sub cmdImprime_Click() Screen.MousePointer = vbHourglass 'SitProcesso.rpt -> relatorio principal 'MovProcesso.rpt -> sub-relatorio SQLQuery = "({tbProcesso.strNprocesso} = '" & txtProcesso.Text & "')" CrystalReport1.SelectionFormula = SQLQuery CrystalReport1.ReportFileName = Diretorio & "rpt\SitProcesso.rpt" CrystalReport1.WindowTitle = "Situação de processo" CrystalReport1.WindowState = crptMaximized CrystalReport1.WindowShowPrintSetupBtn = True CrystalReport1.Formulas(0) = "Licenca = '" & ReadINI("EMPRESA", "Razao_Social", Diretorio & "SAP.INI") & "'" 'CrystalReport1.Formulas(1) = "NProcesso = '" & Trim(txtProcesso.Text) & "'" CrystalReport1.Action = 1 CrystalReport1.Reset ZeraFormula Me Screen.MousePointer = vbNormalEnd SubAi como faço para filtrar o sub-relatorio com o mesmo número de processo? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Outubro 27, 2006 Denunciar Share Postado Outubro 27, 2006 hum... não manjo de como fazer usando o Crystal Reports Control (que é o que acho que você esta fazendo), não sei se é possivel...sei fazer usando a biblioteca Crystal Reports Design Runtime Library (que alias, se a sua versao do crystal suportar, recomendo que você deixe de usaro o Crystal Reports Control e passe a usar a essa biblioteca). seria tipo assim:Dim crAppl As CRAXDRT.Application, crRep As CRAXDRT.ReportDim x As CRAXDRT.Report Set crAppl = New CRAXDRT.Application Set crRep = crAppl.OpenReport(App.Path & "\NomeDoRelatorio.rpt") Set x = crRep.OpenSubreport("NomeDoSubReport")[/code] ai pra editar a formula do subreport é so fazer como no report principal: [code]crRep.RecordSelectionFormula = formula1x.RecordSelectionFormula = formula2depois é so imprimir/exibir o relatorio principal normalmente. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ARPrado Postado Outubro 30, 2006 Autor Denunciar Share Postado Outubro 30, 2006 Valeu por esta opção vou tentar fazer desta maneira. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ARPrado Postado Outubro 30, 2006 Autor Denunciar Share Postado Outubro 30, 2006 Como faço para exibir o relatório, usando este método? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Outubro 30, 2006 Denunciar Share Postado Outubro 30, 2006 eu uso o componente CrViewer, mas não lembro o codigo de cabeca. veja se você consegue, qualquer coisa a noite eu te passo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ARPrado Postado Outubro 30, 2006 Autor Denunciar Share Postado Outubro 30, 2006 Mesmo assim se puder me enviar o código te agradeço.Agora quando o relatório tem mais de uma página gera o seguinte error: The page size was not large enough to format the contents of an object is the report.o que faço para resolver isso? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Outubro 31, 2006 Denunciar Share Postado Outubro 31, 2006 você adiciona o componente Crystal Reports Viewer Control, adiciona o controle no formulario (o ideal é usar um formulario so para mostrar o relatorio).ai levando em conta que você abriu o report assim:Dim crAppl As CRAXDRT.Application, crRep As CRAXDRT.ReportDim x As CRAXDRT.Report Set crAppl = New CRAXDRT.Application Set crRep = crAppl.OpenReport(App.Path & "\NomeDoRelatorio.rpt") Set x = crRep.OpenSubreport("NomeDoSubReport")[/code] você mostra assim: [code]CRViewer1.ReportSource = crRepCRViewer1.ViewReportquanto a esse erro... você pos o subreport no report header?? porque acho que realmente não funciona com ele no header. senao tenta criar uma section separada so pra por o subreport. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --acabanas -- Postado Novembro 25, 2007 Denunciar Share Postado Novembro 25, 2007 Kuroi,Sua dica me ajudou demais, cara.Grande abraço.Armando Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ARPrado
Amigos, nunca usei um subreport e estou pegando uma surra. Estou usando dentro do VB para chamar o relatório principal no crystal com um filtro, como faço para filtrar também um sub-relatorio.
veja como está feito a rotina .
Private Sub cmdImprime_Click()
Screen.MousePointer = vbHourglass
'SitProcesso.rpt -> relatorio principal
'MovProcesso.rpt -> sub-relatorio
SQLQuery = "({tbProcesso.strNprocesso} = '" & txtProcesso.Text & "')"
CrystalReport1.SelectionFormula = SQLQuery
CrystalReport1.ReportFileName = Diretorio & "rpt\SitProcesso.rpt"
CrystalReport1.WindowTitle = "Situação de processo"
CrystalReport1.WindowState = crptMaximized
CrystalReport1.WindowShowPrintSetupBtn = True
CrystalReport1.Formulas(0) = "Licenca = '" & ReadINI("EMPRESA", "Razao_Social", Diretorio & "SAP.INI") & "'"
'CrystalReport1.Formulas(1) = "NProcesso = '" & Trim(txtProcesso.Text) & "'"
CrystalReport1.Action = 1
CrystalReport1.Reset
ZeraFormula Me
Screen.MousePointer = vbNormal
End Sub
Ai como faço para filtrar o sub-relatorio com o mesmo número de processo?
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.