Subreport dentro de subreport-RESOLVIDO

Bem, continuo a minha luta nos subreports

Ja consegui fazer chamar um subreporto meu relatorio e chamar um subreport

[code] JasperReport jasperReport = (JasperReport) JRLoader.loadObject(arquivo);
JasperReport jasperReport2 = (JasperReport) JRLoader.loadObject(arquivo2);

Map parametros = new HashMap();
parametros.put("pathsubrel",arquivo2.toString());
parametros.put("obra", obra);
parametros.put("versao", versao);

JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parametros,con);

JasperViewer jrviewer = new JasperViewer( jasperPrint, true);
 jrviewer.setVisible(true);[/code]

agora necessitava que o meu subreport tivesse um subreport. Isto é possivel?
Eu estou a tentar fazer isso, e mando no meu “parametros” o caminho do subsubreport, mas não ta a funcionar 8O 8O

Agora acontece-me uma coisa bastante estranha
Tenho um relatorio que tem um subrelatorio que por sua vez tem um subrelatorio.

Está tudo a funcionar perfeitamente(parece-me 8O ), mas quando chamo o meu relatório ele só mostra o relatorio e o subrelatorio. Bem, poderia pensar que há algo de errado com o subsubrelatorio, mas quando faço o teste e chamo o meu subrelatorio, ele mostra o subrelatorio e o subsubrelatorio.
Estranho…já alguém passou por isso??não sei mais o que fazer… :roll:

[code]

JasperReport jasperReport = (JasperReport) JRLoader.loadObject(arquivo);
JasperReport jasperReport2 = (JasperReport) JRLoader.loadObject(arquivo2);
JasperReport jasperReport3 = (JasperReport) JRLoader.loadObject(arquivo3);

Map parametros = new HashMap();
parametros.put("pathsubrel",jasperReport2); //caminho do subrelatorio
parametros.put("obra", s_obra);
parametros.put("versao", versao);


Map parametros2 = new HashMap();
parametros2.put("pathsubrel2",jasperReport3);//caminho do subsubrelatorio
parametros2.put("obra", s_obra);
parametros2.put("versao", versao);


Map parametros3 = new HashMap();
parametros3.put("obra", s_obra);
parametros3.put("versao", versao);

// JasperPrint jasperPrint2 = JasperFillManager.fillReport(jasperReport2, parametros2,con);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parametros,con);

JasperViewer jrviewer = new JasperViewer( jasperPrint, true);
 jrviewer.setVisible(true);[/code]

obrigado

Boa Tarde,

Cara, eu já passei por isso sim acredito vc esteja usando o Jasper.

Vamos lá,

Comigo estava ocorrendo algo mais estranho ainda, ocorria um OutOfMemoryError!!!

Depois de solucionado isso, as vezes não aparecia meu sub-subrelatório.

Mas vamos a solução:

1)Certifique-se que DE FATO vc está passando os parametros corretos ao seu sub-subrelatorio.

2)Rode a query com os paremetros que ele está recebendo e certifique-se que estão sendo trazidos os dados corretamente.

No meu caso, chegou até esse passo, e a solução por mais estranha q pareca, resolveu meu problema:

3)Evite deixar áreas em branco em seu relatório, por exemplo, supondo que vc tenha um columnHeader que vc nem está usando, retire-o do relatório.

Toda e qualquer área em branco deve ser evitada quando vc está “cascateando” relatórios.

Demorei quase um dia inteiro pra ter a maldita idéia de fazer isso, e só encontrei um cara na internet q passou pelo mesmo problema,hehe.

Em todo caso, geralmente com os itens 1 e 2 vc resolve seus problemas.

Qualquer dúvida só avisar.

[]’'s

Olá GraveDigger

Muito obrigado pela ajuda!!!
Continuo sem conseguir, por isso, num caso de desespero estou a fazer um novo relatorio, que só tem um subrelatório, e passar o resto por parâmetro.
Não fica muito profissional, mas…

Tenho é uma pergunta a fazer-te, se não for abuso…
No meu relatório eu tenho uma query, do tipo

select campo1, campo2, campo3 from tabela ......

No subrelatorio necessitava de fazer uma query do género

select valor1, valor2 from tabela2 where teste=campo1

Deu para entender?
Queria passar um field para o meu subrelatorio, mas nao por parâmetros.

È possivel fazer isto??
Obrigado desde já pela ajuda!!! :slight_smile: :slight_smile:

ta resolvido!!! :lol: :lol: :lol:

Sei que o post é antigo, mas estou passando pelo mesmo problema.Só que no meu caso o único jeito é usar subreport mesmo.No meu quando é gerado no netbeans só carrega o rel e o 1° subrel daí pra frente tudo em branco.Alguém tem uma solução?
Obs.: já segui os passos do GraveDiggerPJ e estão todos certos.