CRYSTAL REPORT
Boa noite
Estou tentando gerar um relatório, porem o mesmo está há um erro, já pesquisei e aparentemente o código esta correto.
Dim intCodigo As String
intCodigo = lstRecibos.ItemData(lstRecibos.ListIndex)
With crRecibo
.ReportFileName = App.Path & [Ô]\Recibo.rpt[Ô]
.SelectionFormula = [Ô]toText({TbRecibo.Codigo})=[ô][Ô] & intCodigo & [Ô][ô][Ô]
.Action = 1
End With
Depois de selecionar o recibo desejado, quando clico em imprimir aparece o recibo vazio, não preenchido. Estou usando o Banco de Dados Firebird 2.5. Quando tiro a 6ª linha visualiza todos os recibos emitidos.
Estou tentando gerar um relatório, porem o mesmo está há um erro, já pesquisei e aparentemente o código esta correto.
Dim intCodigo As String
intCodigo = lstRecibos.ItemData(lstRecibos.ListIndex)
With crRecibo
.ReportFileName = App.Path & [Ô]\Recibo.rpt[Ô]
.SelectionFormula = [Ô]toText({TbRecibo.Codigo})=[ô][Ô] & intCodigo & [Ô][ô][Ô]
.Action = 1
End With
Depois de selecionar o recibo desejado, quando clico em imprimir aparece o recibo vazio, não preenchido. Estou usando o Banco de Dados Firebird 2.5. Quando tiro a 6ª linha visualiza todos os recibos emitidos.
Bom dia DINHORSO,
Não vejo necessidade de está convertendo a chave primária para texo. Seria melhor tirar essa conversão e deixar assim:
SelectionFormula = [Ô]{TbRecibo.Codigo} = [Ô] & intCodigo
Retire também as aspas simples.
O banco é protegido com senha? Porque se estiver, você deve especificar isso programaticamente.
Não vejo necessidade de está convertendo a chave primária para texo. Seria melhor tirar essa conversão e deixar assim:
SelectionFormula = [Ô]{TbRecibo.Codigo} = [Ô] & intCodigo
Retire também as aspas simples.
O banco é protegido com senha? Porque se estiver, você deve especificar isso programaticamente.
Boa noite ACCIOLLY,
Fiz a conversão porque realmente na tabela Codigo é um Integer, e quando tento sem a conversão dá erro de execução. Realmente o Banco é firebird e tem senha, alguma sugestão pois tem anos que nao mexo em vb e estou voltando aos poucos por necessidade mesmo.
Fiz a conversão porque realmente na tabela Codigo é um Integer, e quando tento sem a conversão dá erro de execução. Realmente o Banco é firebird e tem senha, alguma sugestão pois tem anos que nao mexo em vb e estou voltando aos poucos por necessidade mesmo.
Pra isso seria interessante passar pra nós como você faz para conectar seu relatório ao banco. Mas em todo caso, veja se isso te ajuda:
https://social.msdn.microsoft.com/Forums/vstudio/pt-BR/ef227a75-b113-4a3e-85fb-c96e0cf52044/relatorio-com-firebird-crystal-report-c?forum=vscsharppt
https://social.msdn.microsoft.com/Forums/vstudio/pt-BR/ef227a75-b113-4a3e-85fb-c96e0cf52044/relatorio-com-firebird-crystal-report-c?forum=vscsharppt
Código Completo
Dim intCodigo As String
intCodigo = lstRecibos.ItemData(lstRecibos.ListIndex)
With crRecibo
.Connect = ([Ô]DRIVER={Firebird/InterBase(r) driver};[Ô] & _
[Ô]user=SYSDBA; password=masterkey; DBNAME=[Ô] & App.Path & [Ô]\BaseClientes.FDB;[Ô])
.ReportFileName = App.Path & [Ô]\Recibo.rpt[Ô]
.SelectionFormula = [Ô]{TbRecibo.Codigo}=[ô][Ô] & intCodigo & [Ô][ô][Ô]
.Action = 1
End With
Dim intCodigo As String
intCodigo = lstRecibos.ItemData(lstRecibos.ListIndex)
With crRecibo
.Connect = ([Ô]DRIVER={Firebird/InterBase(r) driver};[Ô] & _
[Ô]user=SYSDBA; password=masterkey; DBNAME=[Ô] & App.Path & [Ô]\BaseClientes.FDB;[Ô])
.ReportFileName = App.Path & [Ô]\Recibo.rpt[Ô]
.SelectionFormula = [Ô]{TbRecibo.Codigo}=[ô][Ô] & intCodigo & [Ô][ô][Ô]
.Action = 1
End With
Tente chamar o report sem o selection formula pra ver se a query não está errada. Se o erro persistir, então o problema estará na string de conexão.
Boa tarde
Estou achando meu problema é a conexão do Banco de Dados, alguem poderia me dá um sugestão de conectar o VB com o Firebird + Crystal Report para gerar o relatorio?
Estou achando meu problema é a conexão do Banco de Dados, alguem poderia me dá um sugestão de conectar o VB com o Firebird + Crystal Report para gerar o relatorio?
Tópico encerrado , respostas não são mais permitidas