GERAR RELATORIO COM CRAXDRT OU CRVIEWER

BISSON 15/02/2017 10:32:00
#471640
Estou gerando um arquivo PDF com craxdrt e ele faz tudo direitinho. Posso pedir varias vezes que não dá nenhum erro,
porem,
Quando peço para gerar um relatorio com Crystal Report e DEPOIS eu peço para gerar PDF ele dá um erro no windows (APPCRASH) e fecha tudo [Não é erro do VB. é do windows. trava tudo e fecha o vb]
Já tentei em vários computadores diferente e dá a mesma coisa.
Alguém já passou por isso?

Para gerar o PDF eu faço assim:
Dim crxAPP As New CRAXDRT.Application
Dim crxRPT As CRAXDRT.Report

filenamepdf=app.path & [Ô]
omearquivo.pdf[Ô]
ExportReporttoPDF crxRPT, filenamepdf

Private Sub ExportReporttoPDF(ReportObject As CRAXDRT.Report, ByVal FileNamepdf As String)
Set ObjExportOptions = Nothing
With ReportObject
.EnableParameterPrompting = False
.MorePrintEngineErrorMessages = True
End With
Set ObjExportOptions = ReportObject.ExportOptions
With ObjExportOptions
.DestinationType = crEDTDiskFile
.DiskFileName = FileNamepdf
.FormatType = crEFTPortableDocFormat
.PDFExportAllPages = True
End With
ReportObject.Export False

End Sub


Para gerar em Crystal eu faço assim:

crpListagem.DataFiles(0) = app.path & [Ô]\ARQUIVOS.MDB[Ô]
crpListagem.ReportFileName = LocArq & [Ô]elatorios\fornecedores.rpt[Ô]
crpListagem.SelectionFormula = [Ô]{fornecedor.codigo}>= [Ô] & txtCodDe & [Ô] and {fornecedor.codigo}<= [Ô] & txtCodAte
crpListagem.Destination = 0
crpListagem.Action = 1
FUTURA 15/02/2017 12:16:22
#471655
Bisson, também estou tentando gerar o pdf, no meu caso, uso o crystal 8.5 e os rpts são todos externos, feitos no crystal. Onde você informa o rpt de origem que vai ser exportado ?
FUTURA 15/02/2017 12:26:21
#471657
sim, mas ai ja é onde vc esta gerando pelo crystal e não exportando, eu tbm uso assim no meu sistema, a dúvida, é exatamente onde vc consegue exportar para o pdf, eu procuro ha tempos, e nunca consegui... para vc exportar para o pdf, precisa passar a origem, certo ?, essa exportação, é apenas através do crviewer ?
BISSON 15/02/2017 12:32:06
#471658
Citação:

:
sim, mas ai ja é onde vc esta gerando pelo crystal e não exportando, eu tbm uso assim no meu sistema, a dúvida, é exatamente onde vc consegue exportar para o pdf, eu procuro ha tempos, e nunca consegui... para vc exportar para o pdf, precisa passar a origem, certo ?, essa exportação, é apenas através do crviewer ?


eu tinha postado errado, mas estou substituindo.
é na seguinte linha:

Set crxRPT = crxAPP.OpenReport(LocArq & [Ô]Relatorios\danfe.rpt[Ô])
crxRPT.FormulaFields.GetItemByName([Ô]emitente_nome[Ô]).Text = [Ô][ô][Ô] & EmpREsaS!descricao & [Ô][ô][Ô]
crxRPT.FormulaFields.GetItemByName([Ô]emitente_endereco[Ô]).Text = [Ô][ô][Ô] & EmpREsaS!tiporua & [Ô] [Ô] & EmpREsaS!Endereco & [Ô], [Ô] & EmpREsaS!Numero & [Ô] [Ô] & EmpREsaS!complemento & [Ô][ô][Ô]
crxRPT.FormulaFields.GetItemByName([Ô]emitente_bairro_cep[Ô]).Text = [Ô][ô][Ô] & EmpREsaS!Bairro & [Ô] Cep: [Ô] & EmpREsaS!CEP & [Ô][ô][Ô]
FUTURA 15/02/2017 12:43:09
#471659
sua função é bem parecida com uma que eu ja tinha aqui, o sistema não acusa nehum erro, mas não gera o pdf... copiei seu bloco e só passei meu rpt, veja, o que será que falta ? ( eu uso a ocx crystl32.ocx)

Dim crxAPP As New CRAXDRT.Application
Dim crxRPT As CRAXDRT.Report
FileNamepdf = [Ô]c:    este.pdf[Ô]
Set crxRPT = crxAPP.OpenReport(App.Path & dbrpt & [Ô]listacli.rpt[Ô])
ExportReporttoPDF crxRPT, FileNamepdf

Private Sub ExportReporttoPDF(ReportObject As CRAXDRT.Report, ByVal FileNamepdf As String)
Set ObjExportOptions = Nothing
With ReportObject
.EnableParameterPrompting = False
.MorePrintEngineErrorMessages = True
End With
Set ObjExportOptions = ReportObject.ExportOptions
With ObjExportOptions
.DestinationType = crEDTDiskFile
.DiskFileName = FileNamepdf
.FormatType = crEFTPortableDocFormat
.PDFExportAllPages = True
End With
ReportObject.Export False
End Sub
FUTURA 15/02/2017 13:17:51
#471660
peguei outra função parecida na net, fiz debug, passa a função toda, não da erro algum, mas não gera o pdf.. Qual componente precisa estar referenciado no vb ?

Dim crxApplication As CRAXDRT.Application
Dim oReport As CRAXDRT.Report
Dim crxExportOptions As CRAXDRT.ExportOptions

Set crxApplication = New CRAXDRT.Application
Set oReport = crxApplication.OpenReport(App.Path & [Ô]ptsql\listacli.rpt[Ô])
With oReport
With .ExportOptions
.UseReportDateFormat = True
.UseReportNumberFormat = True
.FormatType = crEFTPortableDocFormat
.DestinationType = crEDTDiskFile
.DiskFileName = [Ô]c:    este.pdf[Ô]
End With
.Export False
End With
BISSON 15/02/2017 13:31:13
#471661
Citação:

:
sua função é bem parecida com uma que eu ja tinha aqui, o sistema não acusa nehum erro, mas não gera o pdf... copiei seu bloco e só passei meu rpt, veja, o que será que falta ? ( eu uso a ocx crystl32.ocx)

Dim crxAPP As New CRAXDRT.Application
Dim crxRPT As CRAXDRT.Report
FileNamepdf = [Ô]c: este.pdf[Ô]
Set crxRPT = crxAPP.OpenReport(App.Path & dbrpt & [Ô]listacli.rpt[Ô])
ExportReporttoPDF crxRPT, FileNamepdf

Private Sub ExportReporttoPDF(ReportObject As CRAXDRT.Report, ByVal FileNamepdf As String)
Set ObjExportOptions = Nothing
With ReportObject
.EnableParameterPrompting = False
.MorePrintEngineErrorMessages = True
End With
Set ObjExportOptions = ReportObject.ExportOptions
With ObjExportOptions
.DestinationType = crEDTDiskFile
.DiskFileName = FileNamepdf
.FormatType = crEFTPortableDocFormat
.PDFExportAllPages = True
End With
ReportObject.Export False
End Sub



Muito estranho o seu nao funcionar. Conferi linha a linha do código que voce me enviou e está identico ao meu. O meu funciona normalmente.
utilizo crystal 8.5.0.217
Referencio:
Crystal reports 8.5 activex designer design
Crystal reports 8.5 activex designer run
Crystal reports 8.5 library
Crystal report viewer control

FUTURA 15/02/2017 13:35:21
#471662
qual seu banco de dados ?, estou vendo aqui, e qdo uso impressão normal, eu passo o login no sql server.. acho q é isso, não ta logando.. Estou tentando achar a string para a variável/objeto [Ô]oReport[Ô] , se conectar ao sql passando os parâmetros.
Para a listagem com a ocx, eu passo assim:

cr1.Connect = [Ô]DSN=[Ô] & dbserver & [Ô];UID=[Ô] & dbuser & [Ô];PWD=[Ô] & dbpass

onde cr1, é o componente ocx.
BISSON 15/02/2017 13:49:23
#471664
eu uso ACCESS - meu bd está sem senha
FUTURA 15/02/2017 14:31:03
#471665
pelo jeito é isso.. vou tentar achar a forma de fazer o login no banco, e depois vou testar pra ver se acusa o erro do qual vc abriu o tópico.. vlw..
FUTURA 15/02/2017 18:11:15
#471668
BISSON, eu consegui fazer a conexão ao sql para exportar, e na sequência, gerei o relatório pelo crystal via ocx, não deu crash não..vc tentou debugar ?
Página 1 de 2 [13 registro(s)]
Faça seu login para responder