Criei um relatório com sub-relatorio no IReport, no ireport funciona normalmente mas pelo Java não aparece o sub-relatório, só que é o seguinte: o usuário vai escolher o código do pedido selecionado numa tabela, isso eu fiz, ele seleciona numa tabela de pesquisa e os dados são exibidos no TextFields e outra tabela, onde é exibido os produtos, então quero fazer um relatório principal"Pedido de Compras" com os produtos selecionados, então meu relatório haverá a parte mestre que é o pedido de compras junto com o subrelatório que são os produtos, mas não pode esquecer que tem que o relatório está amarrado pelo número do pedido que é o: getPedComCodigo(), tanto o relatório mestre como o subrelatório, não estou conseguindo fazer isso, preciso de ajuda, abaixo está o código que tentei fazer, mas não deu certo.
public void relatorioPedidoCompras(PedidoCompraVO q) throws ClassNotFoundException, SQLException, JRException
{
String pdf = "c:\geff\relatorios\compras.pdf";
String relat = "c:\geff\relatorios\compras.jasper";
String relatsub = "c:\geff\relatorios\comprassubrelatorio.jasper";
String driver = "org.postgresql.Driver";
String url = "jdbc:postgresql://"+endereco+":5432/geff";
String login = "Alex";
String senha = "mattos";
Class.forName(driver);
Connection conn = DriverManager.getConnection(url,login,senha);
conn.setAutoCommit(false);
PreparedStatement consulta = conn.prepareStatement( "SELECT p.pedcomcodigo, p.pedcomdata, c.clinome,
p.pedcomvaltotal, p.pedcomcondpagamento, p.pedcompraentrega, p.pedcomfrete, p.pedcomimpostos,
p.pedcomobservacoes, p.pedresponsavel FROM pedidocompra p,clientes c WHERE p.clicodigo=c.clicodigo and
p.pedcomcodigo='"+q.getPedComCodigo()+"';");
ResultSet rs = consulta.executeQuery();
JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
HashMap parameters = new HashMap();
parameters.put("SUBREPORT_DIR", relatsub);
String impressao = JasperFillManager.fillReportToFile(relat, parameters, jrRS);
JasperViewer.viewReport("c:\geff\relatorios\compras.jrprint",false,false);
JasperExportManager.exportReportToPdfFile(impressao, pdf);
conn.rollback();
consulta.close();
}
