Olá a todos
Estou desenvolvendo um relatório no IReport 3.5.0 para uma aplicação Desktop com NetBeans, no meu trabalho. Já estou como Sistema 85% PRONTO. O que eu gostária é o seguinte, que o usuário irá digitar no campo a letra e depois o inicio do Número e o final da contagem .Isso vai ser impresso em uma impressora de Etiquetas com 3 colunas no qual cada uma vai ter a sua numeração definida pela contagem que o usuário determinou.
Lembrando que ele insere os registros normalemente, mas a minha MAIOR DÚVIDA :?: é como fazer com esses números sejam ordenados .
Ex: A1, A2, A3, A4 A5…até A45…
As etiquetas são de 3 colunas
etiqueta1|etiqueta2|etiqueta3
A1 A2 A3
A4 A5 A6
A7 A8 A9
A10 A11 A12
…A45
“Obs.Estou passando por parametro cada campo para o Netbeans… E NÃO ESTOU USANDO BANCO DE DADOS”
Segue o código qe chama o .jasper
private void BtnImprimirMouseClicked(java.awt.event.MouseEvent evt) {
if (TxtLetra.getText().trim().length() == 0 || TxtPrimNum.getText().trim().length() == 0 || TxtSegNum.getText().trim().length() == 0) {
JOptionPane.showMessageDialog(null, "Os Campos são de preenchimento obrigatório!");
} else {
Relatorio relatorio = null;
HashMap parameters = new HashMap();
parameters.put("letra", TxtLetra.getText());
parameters.put("num_1", TxtPrimNum.getText());
parameters.put("num_2", TxtSegNum.getText());
parameters.put("num_3", TxtSegNum.getText());
parameters.put("data", TxtData.getText());
String path = "Tres_Colun.jasper";
try {
//}
relatorio = new Relatorio(parameters, path);
} catch (JRException ex) {
Logger.getLogger(Etiqueta.class.getName()).log(Level.SEVERE, null, ex);
}
relatorio.exibirRelatorio();
}
}
Classe Relatório
package etiqueta_patologia;
/*
* 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.
* mvsoares@estadao.com.br
*
*/
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; }
}
/**
* 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; }
}
}
Atenciosamente :lol:
Lais