7
respostas

coleção como imprimir

Bom dia. Como imprimir uma lista de uma coleção.

Se form um objeto ok beleza. porem se for uma coleção de objetos atraves do jpa ?

exemplo  Recibo x ItemsRecibo
    recibo id 
    datavencimento
    dataemissao
    List<Itemrecibo> itens
    ...get/set

Itemrecibo
    id    
    descricao
    referencia
    valor
    get/set

sendo que cliente e relacionado com recibo tambem.

como imprimir ja que ambos tem id por exemplo como ficam os nomes dos fields no jasper report..

vou continuar tentando mas ja quebrei a cuca e nada......

7 respostas

Pelo que entendi você tem o relatório para um Clienteque tem vários Recibo. E cada Recibotem váriosItemRecibo.

Você pode usar um JRBeanCollectionDataSource.

List<Cliente> clientes = dao.buscaClienteComItens(...);
JRBeanCollectionDataSource clientesDS = new JRBeanCollectionDataSource(clientes);
jasperPrint = JasperFillManager.fillReport(jasperReport, params, clientesDS);

No iReport você deve criar um subreport para as coleções, passando também um JRBeanCollectionDataSource:

new JRBeanCollectionDataSource($F{itens})

Obrigado... eu consegui. Agora como eu formato uma data LocalDate. esta sendo impresso MM/dd/yyyy.

Obrigado pela dica

Botão direito no campo > Text field (ou campo de texto) > Pattern (ou modelo padrão) > dd/MM/yyyy

Alexandre, obrigado pela resposta porem continua saindo a yyyy-MM-dd, mesmo colocando no pattern dd/MM/yyyy

se alguem ja teve este problema e souber asolução. Agradeco a ajuda.

Obrigado

O povo também faz:

new SimpleDateFormat("dd/MM/yyyy").format($F{dataEmissao})

Obrigado, agora da o seguinte erro :

net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new SimpleDateFormat("dd/MM/yyyy").format($F{datavencimento})

Caused by: java.lang.IllegalArgumentException: Cannot format given Object as a Date

[resolvido] bom dia a todos. Alexandre obrigado pela ajuda. Consegui resolver