Não sei como chamar subrelatorio
Como chamar subrelatorio ireport na aplicação java ?
16 Respostas
poste oque você já fez até agora para lhe ajudarmos, assim não sabemos nem por onde começar.
try {
conexao con = new conexao();
con.conectar("jdbc:mysql://localhost:3306/caixa?zeroDateTimeBehavior=convertToNull","root","evolution");
String sql = "select * from vendas where COD_VENDA ='"+CODVEND.getText()+"'" ;
con.ExecutaSQL(sql);
JRResultSetDataSource relatresult = new JRResultSetDataSource(con.resultset);
servico ser = new servico();
ser.setServico("ALINHAMENTO");
ser.setQuantidade("1");
ser.setValor("30");
lista.add(ser);
System.out.println(lista);
HashMap parametros = new HashMap();
parametros.put("CODVEND",Integer.parseInt(CODVEND.getText()));
parametros.put("SUBREPORT_DIR", "src\\relatorios\\");
parametros.put("REPORT_CONNECTION", con.createConnection());
parametros.put("list", lista);
JasperPrint jpPrint = JasperFillManager.fillReport("src\\relatorios\\relatoriovenda.jasper",parametros,relatresult);
JasperViewer jv = new JasperViewer(jpPrint,false);
jv.setVisible(true);
} catch (JRException e) {
JOptionPane.showMessageDialog(rootPane, "erro ao chamar relatorio"+e);
}
o codigo que chama o relatorio esta assim criei uma lista rapida ai so para mim aprender a chamar o sub relatorio
criei um sub relatorio simples so para aprender a chamalo na aplicação
quando chamo o relatorio me aparece essse erro agora não sei se estou chamando o relatorio certo.
você criou um Field list -> $F{list}, mas tem que ser um Parâmetro list -> $P{list}
sera que é só isso pelo que vc viu vou testar aqui
não sei te dizer se é só isso, mas isso com certeza está errado, declarando um Field o ireport tenta encontrar uma coluna no banco de dados e não encontra por isso o erro que deu. Aliás no banco não, nas fields que você utilizou do banco.
mas esse é o caminho para chamar o sub relatorio neh ? to no caminho certo ?
vlew sandro pela ajuda muito obrigado de verdade , eu aprendendo a chamar o sub relatorio o resto eu faço de boa dai vo tentar aqui.
há várias formas, essa é uma delas, está no caminho sim.
fiquei a noite inteira cara desde ontem ate agora juro por deus , e nao consegui resolver ainda vo ficar acordado ate resolver vlew pela ajuda
as vezes não adianta, voce bate, bate a cabeça e não resolve, porque a cabeça está cansada e você não raciocina direito, dai dorme e no outro dia resolve facilmente, já aconteceu comigo. pega leve ai.
arrumei o parametro list tipo list
coloquei list tipo list no sub relatorio
recebi o parametro list pelo data source expression
me voltou esse erro agora
eu preciso mudar algo nas filds do subrelatorio ?
só para vc ver como estou passando o parametro list na aplicação
o erro que deu aparenta ser na fild servico do sub relatorio ok ? tem alguma ideia é a primeira vez que faço por isso nao tenho ideia muito obrigado fico no aguardo
como está este atributo servico na classe? tem que ser exatamente igual ao Field do relatorio
reparando vi que você declarou o serviço como uma List?? está certo isso?
oque seria esta Field servico?? é um atributo? ou é uma classe?
velho, você colocou tudo como List
Quantidade e valor também, mas eles tem que ser do tipo que você declarou no java.
se é String tem que colocar String, se for double tem que por double, e assim por diante
caraaa juro se eu fosse mulher dava pra vc velhooo , deu certo parceiroo
deu certoo caraaa posso durmir em pazzz agora .
agora sei como funciona ate chegar ao resultadoooo puta que pariu que alegriaaaa vleww mesmoo cara deus abencoe muito vc caraaa vlew vlew vlew vlewww
agora sei como funciona a mecanica do bagulho agora apareceu o resultado sei como fazer o resto muito muito obrigadoo vlewwwww !!!
hehehehe ficou feliz mesmo, que bom velho, também fico feliz em ter te ajudado, também sou novato e sei como é quando as coisas não funcionam. Boa sorte ai, que Deus Abençoe você também.











