[RESOLVIDO]Acréscimo de valores no Relatório em JAVA

10 respostas
lais_freitas

Bom dia, :D :D

Antes de mais nada vou explicar o que estou desenvolvendo. Estou fazendo um Sistema que quando o usuário digitar a quantidade de etiquetas e a o inicio da contagem dos números ex: inicio 30 elas são impressas. E em cada etiqueta vai uma Letra e número Ex: A 30, A 31, A32, A33.... e assim por diante. O Relatório está pronto, pois o mesmo foi desenvolvido no IReport e estou fazendo com passagem de parametro para que seja feita a chamada da função no JAVA. Ele "Sistema" está 75% pronto, pois faço a chamada do relatório e as quantidade de etiquetas que devem ser impressas, mas NÃO estou conseguindo :?: :?: :roll: fazer com que ACRESCENTE O VALOR PARA CADA ETIQUETA impressa como informei anteriormente. "Obs. NÃO estou trabalhando com Banco de Dados no IReport." Segue a minha classe Relatório e a Classe Imprimir para conferência: :oops:
package colecao;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

//package atualizacaocadastral;


/*
* @(#)Relatorio.java   1.0 28/04/2006
*
* Copyright 2006 Marcos Vinícius Soares. Todos os direitos reservados.
* [email removido]
*
*/

import java.sql.*;
import java.net.URL;
import java.util.HashMap;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JasperViewer;
import net.sf.jasperreports.engine.*;



/**
* Relatorio.java<br>
*
* <p>A classe Relatorio deve ser utilizada para emissão de relatórios. Após a
* criação de algum relatório é possível exibí-lo na tela, exportá-lo para um
* arquivo pdf/html ou enviá-lo direto para impressão.</p>
*
* <p>A classe manipula relatórios desenvolvidos utilizando-se a ferramenta
* iReport e utiliza a ferramenta JasperReports para emissão dos relatórios</p>
*
* @author  Marcos Vinícius Soares
*/
public class Relatorio {

    /** Representa o relatório gerado. */
    private JasperPrint jasperPrint_;
    //private Conexao db = new Conexao();



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(Conexao db, HashMap parameters, URL localRelatorio) throws JRException, Exception{

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, db.getConnection());

    } catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(Conexao db, HashMap parameters, String localRelatorio) throws JRException, Exception{

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, db.getConnection());

    } catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  sql  Expressão SQL (SELECT...) a ser utilizada para preenchimento do relatório
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     * @throws  SQLException  Caso exista alguma divergência ou problema com
     * a Expressão SQL passada como parâmetro, uma exceção é gerada.
     */
    public Relatorio(Conexao db, String sql,
            HashMap parameters, URL localRelatorio) throws SQLException, JRException {

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // Resultado da consulta
            ResultSet rs = db.executeQuery(sql);

            // JRResultSetDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet
            JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrRS);
            rs.close();
        }
        catch (SQLException e) { throw e; }
        catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  sql  Expressão SQL (SELECT...) a ser utilizada para preenchimento do relatório
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     * @throws  SQLException  Caso exista alguma divergência ou problema com
     * a Expressão SQL passada como parâmetro, uma exceção é gerada.
     */
    public Relatorio(Conexao db, String sql,
            HashMap parameters, String localRelatorio) throws SQLException, JRException {
        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // Resultado da consulta
            ResultSet rs = db.executeQuery(sql);

            // JRResultSetDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet
            JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrRS);

            rs.close();

        }
        catch (SQLException e) { throw e; }
        catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(HashMap parameters, URL localRelatorio) throws JRException {

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport) JRLoader.loadObject(localRelatorio);

            // JREmptyDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet, que, neste caso, é vazio
            JREmptyDataSource jrEDS = new JREmptyDataSource();

            // Jasper Print representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrEDS);

        } catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio
     *
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(HashMap parameters, String localRelatorio) throws JRException {

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport) JRLoader.loadObject(localRelatorio);

            // JREmptyDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet, que, neste caso, é vazio
            JREmptyDataSource jrEDS = new JREmptyDataSource();

            // Jasper Print representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrEDS);

        } catch (JRException e) { throw e; }
    }

    Relatorio(HashMap parameters, String path, String aux) {
        throw new UnsupportedOperationException(&quot;Not yet implemented&quot;);
    }



    /**
     * Exibe o relatório na tela.
     */
    public void exibirRelatorio() {
        // emite o relatório na tela
        // false indica que a aplicação não será finalizada caso o relatório seja fechado
        JasperViewer.viewReport(this.jasperPrint_, false);
    }



    /**
     * Grava o relatório em um arquivo de formato pdf.
     *
     * @param  caminhoDestino  Caminho onde o arquivo será gravado.
     */
    public void exportaParaPdf(String caminhoDestino) throws JRException {

        try {
            // Gera o arquivo PDF
            JasperExportManager.exportReportToPdfFile(this.jasperPrint_, caminhoDestino);
        } catch (JRException e) { throw e; }
    }



    /**
     * Grava o relatório em um arquivo de formato html.
     *
     * @param  caminhoDestino  Caminho onde o arquivo será gravado.
     */
    public void exportaParaHtml(String caminhoDestino) throws JRException {

        try {
            // Gera o arquivo PDF
            JasperExportManager.exportReportToHtmlFile(this.jasperPrint_, caminhoDestino);
        } catch (JRException e) { throw e; }
    }



    /**
     * Envia o relatório para impressão, exibindo uma caixa de dialogo de impressão ou não.
     *
     * @param  exibeCaixaDialogo  Boolean indicando se será exibida uma caixa de diálogo ou não.
     */
    public void imprimir(boolean exibeCaixaDialogo) throws JRException {

        try {
            // Imprime o relatório
            // o segundo parâmetro indica se existirá uma caixa de dialogo antes ou nao
            JasperPrintManager.printReport(this.jasperPrint_, exibeCaixaDialogo);
        } catch (JRException e) { throw e; }

    }
}
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {                                      
        int i, n;
        int[] a;        
        String aux = &quot;&quot;;
        Relatorio relatorio = null;
        HashMap parameters = new HashMap();
        Scanner s = new Scanner(txtNumero.getText());
        i = s.nextInt();
        a = new int[1+i];
        n = a.length + 1;
        for (i = 1; i &lt; a.length; i++) {           
            System.out.println(&quot;Etiqueta Número[&quot; + i + &quot;]=&quot; + a[i]);
            parameters.put(&quot;letra&quot;, txtLetra.getText());
            //parameters.get(&quot;numero1&quot;+i++);
            //parameters.get(&quot;numero2&quot;+i++);
            //parameters.get(&quot;numero3&quot;+i++);
            parameters.put(&quot;numero1&quot;, txtNumero.getUIClassID().valueOf(i++));
            parameters.put(&quot;numero2&quot;, txtNumero.getUIClassID().valueOf(i++));
            parameters.put(&quot;numero3&quot;, txtNumero.getUIClassID().valueOf(i++));
            String path = &quot;etiquetas.jasper&quot;;
            
            /*TRY PARA EXIBIR*/
            try {
                //}
                relatorio = new Relatorio(parameters, path);
            } catch (JRException ex) {
                Logger.getLogger(imprimir.class.getName()).log(Level.SEVERE, null, ex);
                //Logger.getLogger(etiqueta.class.getName()).log(Level.SEVERE, null, ex);
            }
            relatorio.exibirRelatorio();
            /*TRY PARA IMPRESSÃO*/
            /*try {
                relatorio = new Relatorio(parameters, path);    
                relatorio.imprimir(true);
            } catch (JRException ex) {
                Logger.getLogger(Imprecao.class.getName()).log(Level.SEVERE, null, ex);
            }*/
           
        }
}

Alterieo o Código e segue agora o Correto...

Segue as imagens para ter uma idéia...



10 Respostas

S

Olá,

Criei um exemplo aqui, com ireport 4, está com aprox. 8MB devido conter as bibliotecas dependentes.

link:

http://www.4shared.com/file/MlKd8sBM/etiqueta.html

teste ai, veja se é isso.

at+

Jailes

lais_freitas

Não consegui executar o Arquivo Etiqueta.jar e nem abrir o mesmo…

S

olá

voce consegui descompactar o arquivo etiqueta.rar

lais_freitas

Sim descompactei o arquivo, mas o Etiqueta.jar não executa e tbm não consigo abrir no netbeans
Se tiver como vc passar o código das classes talvez fica mais fácil…
Ahhh quero desde de já agradecer pela sua ajuda e atenção nesse caso :lol: :lol:

lais_freitas
Ahhh Eu tenho o código que fiz essas alterações....
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {                                      
        int i, n;
        int[] a;
        String aux = &quot;&quot;;     
        Relatorio relatorio = null;
        HashMap parameters = new HashMap();
        Scanner s = new Scanner(txtQtd.getText()); /*ESTA LINHA DEFINE A QUANTIADE DE ETIQUETAS*/      
        i = s.nextInt();
        a = new int[1+i];
        n = a.length + 1; 
        /*ESTE FOR FAZ A CONTAGEM DAS ETIQUETAS COM OS NÚMEROS*/
         
        for (i = 1; i &lt; a.length; i++ ) {
            System.out.println(&quot;Etiqueta Número[&quot; + i + &quot;]=&quot; + a[i]); 
            parameters.put(JRParameter.IS_IGNORE_PAGINATION, false);  
            parameters.put(&quot;letra&quot;, ComboLetra.getSelectedItem().toString()); 
            parameters.put(&quot;numero1&quot;, txtQtd.getUIClassID().valueOf(i++));
            parameters.put(&quot;numero2&quot;, txtQtd.getUIClassID().valueOf(i++));
            parameters.put(&quot;numero3&quot;, txtQtd.getUIClassID().valueOf(i));
        }
        
             //String path = &quot;etiquetas_2.jasper&quot;;
         String path = &quot;etiquetas.jasper&quot;;
            /*TRY PARA EXIBIR*/
        try {              
                relatorio = new Relatorio(parameters, path);
            } catch (JRException ex) {
                Logger.getLogger(imprimir.class.getName()).log(Level.SEVERE, null, ex);               
            }
            relatorio.exibirRelatorio(); 
            /*TRY PARA IMPRESSÃO*/
            /*try {
                relatorio = new Relatorio(parameters, path);    
                relatorio.imprimir(true);
            } catch (JRException ex) {
                Logger.getLogger(Impressao.class.getName()).log(Level.SEVERE, null, ex);
            }*/
}
S

Beleza

vou te manda as fontes para netbeans, ai so voce adicionar as bibliotecas da pasta lib(que descompactor)
ao prjeto e testar.

informa um email para te envia as fontes.

lais_freitas

Segue o email:
[email removido]

jokacwb

Oi Lais,

Não sei se é isto que está causando o problema, tb nao sei se entendi bem a lógica, mas fiquei intrigado com este seu trecho de código:

for (i = 1; i < a.length; i++ ) {  
            System.out.println("Etiqueta Número[" + i + "]=" + a[i]);   
            parameters.put(JRParameter.IS_IGNORE_PAGINATION, false);    
            parameters.put("letra", ComboLetra.getSelectedItem().toString());   
            parameters.put("numero1", txtQtd.getUIClassID().valueOf(i++));  
            parameters.put("numero2", txtQtd.getUIClassID().valueOf(i++));  
            parameters.put("numero3", txtQtd.getUIClassID().valueOf(i));  
        }

Ele incremente o i dentro do for que tb faz isso, talvez tenha que usar outra variável e soma-la ao i
execute o exemplo abaixo e vc vai entender o que estou dizendo,

for (int i = 0; i < 10; i++)
			System.out.println("Etiqueta Número["+i+"]");
		System.out.println("========================");
		for (int i = 0; i < 10; i++)
			System.out.println("Etiqueta Número["+(i++)+"]"); //somando novamente +1 no i

No segundo for ele somou de 2 em 2 (1 pelo for e outro pelo ("==> "+ (i++)), no seu caso ele somando 3 a cada volta do for.

lais_freitas

Obrigada por todos que me ajudara consegui solucionar atravéz do seliaj que me auxiliou e fiz alguns complementos importantes no Código.

lais_freitas
lais_freitas:
Bom dia, :D :D Antes de mais nada vou explicar o que estou desenvolvendo. Estou fazendo um Sistema que quando o usuário digitar a quantidade de etiquetas e a o inicio da contagem dos números ex: inicio 30 elas são impressas. E em cada etiqueta vai uma Letra e número Ex: A 30, A 31, A32, A33.... e assim por diante. O Relatório está pronto, pois o mesmo foi desenvolvido no IReport e estou fazendo com passagem de parametro para que seja feita a chamada da função no JAVA. Ele "Sistema" está 75% pronto, pois faço a chamada do relatório e as quantidade de etiquetas que devem ser impressas, mas NÃO estou conseguindo :?: :?: :roll: fazer com que ACRESCENTE O VALOR PARA CADA ETIQUETA impressa como informei anteriormente. "Obs. NÃO estou trabalhando com Banco de Dados no IReport." Segue a minha classe Relatório e a Classe Imprimir para conferência: :oops:
package colecao;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

//package atualizacaocadastral;


/*
* @(#)Relatorio.java   1.0 28/04/2006
*
* Copyright 2006 Marcos Vinícius Soares. Todos os direitos reservados.
* [email removido]
*
*/

import java.sql.*;
import java.net.URL;
import java.util.HashMap;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JasperViewer;
import net.sf.jasperreports.engine.*;



/**
* Relatorio.java<br>
*
* <p>A classe Relatorio deve ser utilizada para emissão de relatórios. Após a
* criação de algum relatório é possível exibí-lo na tela, exportá-lo para um
* arquivo pdf/html ou enviá-lo direto para impressão.</p>
*
* <p>A classe manipula relatórios desenvolvidos utilizando-se a ferramenta
* iReport e utiliza a ferramenta JasperReports para emissão dos relatórios</p>
*
* @author  Marcos Vinícius Soares
*/
public class Relatorio {

    /** Representa o relatório gerado. */
    private JasperPrint jasperPrint_;
    //private Conexao db = new Conexao();



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(Conexao db, HashMap parameters, URL localRelatorio) throws JRException, Exception{

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, db.getConnection());

    } catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(Conexao db, HashMap parameters, String localRelatorio) throws JRException, Exception{

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, db.getConnection());

    } catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  sql  Expressão SQL (SELECT...) a ser utilizada para preenchimento do relatório
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     * @throws  SQLException  Caso exista alguma divergência ou problema com
     * a Expressão SQL passada como parâmetro, uma exceção é gerada.
     */
    public Relatorio(Conexao db, String sql,
            HashMap parameters, URL localRelatorio) throws SQLException, JRException {

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // Resultado da consulta
            ResultSet rs = db.executeQuery(sql);

            // JRResultSetDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet
            JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrRS);
            rs.close();
        }
        catch (SQLException e) { throw e; }
        catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  conn  Conexão com o banco de dados.
     * @param  sql  Expressão SQL (SELECT...) a ser utilizada para preenchimento do relatório
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     * @throws  SQLException  Caso exista alguma divergência ou problema com
     * a Expressão SQL passada como parâmetro, uma exceção é gerada.
     */
    public Relatorio(Conexao db, String sql,
            HashMap parameters, String localRelatorio) throws SQLException, JRException {
        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport)JRLoader.loadObject(localRelatorio);

            // Resultado da consulta
            ResultSet rs = db.executeQuery(sql);

            // JRResultSetDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet
            JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);

            // JasperPrint representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrRS);

            rs.close();

        }
        catch (SQLException e) { throw e; }
        catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio.
     *
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(HashMap parameters, URL localRelatorio) throws JRException {

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport) JRLoader.loadObject(localRelatorio);

            // JREmptyDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet, que, neste caso, é vazio
            JREmptyDataSource jrEDS = new JREmptyDataSource();

            // Jasper Print representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrEDS);

        } catch (JRException e) { throw e; }
    }



    /**
     * Cria um novo Relatorio
     *
     * @param  parameters  Parâmetros a serem exibidos no relatório.
     * @param  localRelatorio  Localização do relatório.
     * @throws  JRException  Caso o relatório não seja encontrado ou haja
     * algum problema com ele, uma exceção é gerada.
     */
    public Relatorio(HashMap parameters, String localRelatorio) throws JRException {

        try {

            // O objeto JasperReport representa o objeto JasperDesign (arquivo .jrxml) compilado.
            // Ou seja, o arquivo .jasper
            JasperReport jr = (JasperReport) JRLoader.loadObject(localRelatorio);

            // JREmptyDataSource é uma implementaçao de JRDataSource, o qual é requerido
            // como parametro para preencher o relatório criado.
            // Ele armazena o dados do ResultSet, que, neste caso, é vazio
            JREmptyDataSource jrEDS = new JREmptyDataSource();

            // Jasper Print representa o relatório gerado.
            // É criado um JasperPrint a partir de um JasperReport, contendo o
            // relatório preenchido.
            this.jasperPrint_ = JasperFillManager.fillReport(jr, parameters, jrEDS);

        } catch (JRException e) { throw e; }
    }

    Relatorio(HashMap parameters, String path, String aux) {
        throw new UnsupportedOperationException(&quot;Not yet implemented&quot;);
    }



    /**
     * Exibe o relatório na tela.
     */
    public void exibirRelatorio() {
        // emite o relatório na tela
        // false indica que a aplicação não será finalizada caso o relatório seja fechado
        JasperViewer.viewReport(this.jasperPrint_, false);
    }



    /**
     * Grava o relatório em um arquivo de formato pdf.
     *
     * @param  caminhoDestino  Caminho onde o arquivo será gravado.
     */
    public void exportaParaPdf(String caminhoDestino) throws JRException {

        try {
            // Gera o arquivo PDF
            JasperExportManager.exportReportToPdfFile(this.jasperPrint_, caminhoDestino);
        } catch (JRException e) { throw e; }
    }



    /**
     * Grava o relatório em um arquivo de formato html.
     *
     * @param  caminhoDestino  Caminho onde o arquivo será gravado.
     */
    public void exportaParaHtml(String caminhoDestino) throws JRException {

        try {
            // Gera o arquivo PDF
            JasperExportManager.exportReportToHtmlFile(this.jasperPrint_, caminhoDestino);
        } catch (JRException e) { throw e; }
    }



    /**
     * Envia o relatório para impressão, exibindo uma caixa de dialogo de impressão ou não.
     *
     * @param  exibeCaixaDialogo  Boolean indicando se será exibida uma caixa de diálogo ou não.
     */
    public void imprimir(boolean exibeCaixaDialogo) throws JRException {

        try {
            // Imprime o relatório
            // o segundo parâmetro indica se existirá uma caixa de dialogo antes ou nao
            JasperPrintManager.printReport(this.jasperPrint_, exibeCaixaDialogo);
        } catch (JRException e) { throw e; }

    }
}
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {                                      
        int i, n;
        int[] a;        
        String aux = &quot;&quot;;
        Relatorio relatorio = null;
        HashMap parameters = new HashMap();
        Scanner s = new Scanner(txtNumero.getText());
        i = s.nextInt();
        a = new int[1+i];
        n = a.length + 1;
        for (i = 1; i &lt; a.length; i++) {           
            System.out.println(&quot;Etiqueta Número[&quot; + i + &quot;]=&quot; + a[i]);
            parameters.put(&quot;letra&quot;, txtLetra.getText());
            //parameters.get(&quot;numero1&quot;+i++);
            //parameters.get(&quot;numero2&quot;+i++);
            //parameters.get(&quot;numero3&quot;+i++);
            parameters.put(&quot;numero1&quot;, txtNumero.getUIClassID().valueOf(i++));
            parameters.put(&quot;numero2&quot;, txtNumero.getUIClassID().valueOf(i++));
            parameters.put(&quot;numero3&quot;, txtNumero.getUIClassID().valueOf(i++));
            String path = &quot;etiquetas.jasper&quot;;
            
            /*TRY PARA EXIBIR*/
            try {
                //}
                relatorio = new Relatorio(parameters, path);
            } catch (JRException ex) {
                Logger.getLogger(imprimir.class.getName()).log(Level.SEVERE, null, ex);
                //Logger.getLogger(etiqueta.class.getName()).log(Level.SEVERE, null, ex);
            }
            relatorio.exibirRelatorio();
            /*TRY PARA IMPRESSÃO*/
            /*try {
                relatorio = new Relatorio(parameters, path);    
                relatorio.imprimir(true);
            } catch (JRException ex) {
                Logger.getLogger(Imprecao.class.getName()).log(Level.SEVERE, null, ex);
            }*/
           
        }
}

Alterieo o Código e segue agora o Correto...

Segue as imagens para ter uma idéia...

Criado 2 de maio de 2011
Ultima resposta 11 de mai. de 2011
Respostas 10
Participantes 3