CONEXAO DE SUB RELATORIOS NO CRYSTAL

GESTORSANIK 03/01/2013 12:07:45
#416675
Bom dia pessoa!

Para conectar as tabelas no crystal no meu relatorio eu faço assim:

Dim crApp As New CRAXDRT.Application
Dim report As CRAXDRT.report [ô]HOLDS REPORT

Public Sub CarregarRelatorio( strRelatorio As String)

Set report = crApp.OpenReport(strRelatorio)

Dim intI As Integer
[ô]loop nas tabelas
For intI = 1 To report.Database.Tables.Count
report.Database.Tables(intI).ConnectionProperties([Ô]Provider[Ô]) = [Ô]MSDASQL[Ô]
report.Database.Tables(intI).ConnectionProperties([Ô]Data Source[Ô]) = [Ô]Data Source[Ô]
report.Database.Tables(intI).ConnectionProperties([Ô]Password[Ô]) = [Ô]Password[Ô]
[ô]report.Database.Tables(intI).ConnectionProperties([Ô]Data Source[Ô]) = [Ô]Data Source[Ô]
report.Database.Tables(intI).ConnectionProperties([Ô]User ID[Ô]) = [Ô]User ID[Ô]
Next intI

Ate ai tudo bem. Escabeço as conexoes para as tabelas do relatorio, mas dai como acessar o subrelatorio para estabelecer as conexoes la tbm?

Abçs
FEDERHEN 03/01/2013 14:49:00
#416688
Eu costumo usar assim:

Set Report = New CrwRelatorio
Report.Database.SetDataSource Conexao.Properties.Item([Ô]Data Source[Ô]).Value
Report.Database.Tables(1).Location = Conexao.Properties.Item([Ô]Data Source[Ô]).Value
[txt-color=#e80000]Report.OpenSubreport([Ô]CrwSubRelatorio[Ô]).Database.Tables(1).Location = Conexao.Properties.Item([Ô]Data Source[Ô]).Value[/txt-color]
GESTORSANIK 03/01/2013 15:23:39
#416689
e sem saber o nome do sub relatorio tem como? por exemplo que nem eu fiz no codigo acima, percorrendo buscando a quantidade de subrelatorios e percorrendo ele com o indice?
FEDERHEN 03/01/2013 17:32:52
#416699
Não conheço outro jeito...
Eu sempre informo os nomes dos subrelatórios, que afinal de contas não chegam a muitos... O maior que tenho, tem 4 subrelatorios.

Quanto as tabelas, pelo visto voce quer apontar todas as tabelas do db para o teu crystal...
Eu aponto somente as tabelas que uso no relatório e subrelatorio.
Faça seu login para responder