diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java index df0f7ff34..0bbf34364 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTabelaPreco.java @@ -18,10 +18,7 @@ public class RelatorioTabelaPreco extends Relatorio { super(parametros, conexao); this.isLayoutArtesp = (Boolean) parametros.get("isLayoutArtesp"); - if (isLayoutArtesp) { - URL url = getClass().getResource("/com/rjconsultores/ventaboletos/relatorios/imagens/artesp.png"); - parametros.put("artesp_logo", url.getPath()); - } + this.setCustomDataSource(new ArrayDataSource(this) { public void initDados() throws Exception { diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/render/RenderRelatorioJasper.java b/src/java/com/rjconsultores/ventaboletos/relatorios/render/RenderRelatorioJasper.java index 19e952106..067f8a9e4 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/render/RenderRelatorioJasper.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/render/RenderRelatorioJasper.java @@ -61,6 +61,7 @@ public class RenderRelatorioJasper { ResourceBundle resource = ResourceBundle.getBundle("com.rjconsultores.ventaboletos.relatorios.internacionalizacao." + this.relatorio.getNome(), locale); this.relatorio.getParametros().put(JRParameter.REPORT_RESOURCE_BUNDLE, resource); + this.relatorio.getParametros().put("BASE_DIR",this.relatorio.getBaseDir()); /* Adicionar o arquivo de internacionalização para o subreporte quando informado */ if(this.relatorio.getNomeSubReporte() != null && this.relatorio.getNomeSubReporte().length > 0) { diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jasper index e05888f69..6a58a3370 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPreco.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jasper index d366cadae..192795fab 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jrxml index 27ee89b30..73f9d8bd3 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioTabelaPrecoArtesp.jrxml @@ -3,7 +3,7 @@ - + @@ -50,6 +50,11 @@ + + + + + @@ -289,8 +294,8 @@ - - + + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java index 1ed8586a8..cc97e90fd 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java @@ -1,5 +1,6 @@ package com.rjconsultores.ventaboletos.relatorios.utilitarios; +import java.net.URL; import java.sql.Connection; import java.util.HashSet; import java.util.Map; @@ -18,6 +19,7 @@ import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; public abstract class Relatorio { private static Logger log = Logger.getLogger(Relatorio.class); + private static final String DEFAULT_BASE_DIR = "/com/rjconsultores/ventaboletos/relatorios"; private Connection conexao; protected Map parametros; @@ -27,13 +29,14 @@ public abstract class Relatorio { private Set infoMsg; private JRBeanCollectionDataSource collectionDataSource; private String[] nomeSubReporte; + private String baseDir; protected Relatorio(Map parametros, Connection conexao) { this.parametros = parametros; this.conexao = conexao; this.infoMsg = new HashSet(); } - + public Connection getConexao() { return conexao; } @@ -80,15 +83,16 @@ public abstract class Relatorio { * the customDataSource to set */ public void setCustomDataSource(IDataSource iDataSource) { - setCustomDataSource(true,iDataSource); + setCustomDataSource(true, iDataSource); } + /** * @param iDataSource * the customDataSource to set */ - public void setCustomDataSource(boolean closeConnection,IDataSource iDataSource) { + public void setCustomDataSource(boolean closeConnection, IDataSource iDataSource) { this.customDataSource = iDataSource; - if (closeConnection){ + if (closeConnection) { closeConnection(); } } @@ -144,10 +148,10 @@ public abstract class Relatorio { public void setNomeSubReporte(String[] nomeSubReporte) { this.nomeSubReporte = nomeSubReporte; } - + public void closeConnection() { try { - if(getConexao() != null && !getConexao().isClosed()) { + if (getConexao() != null && !getConexao().isClosed()) { getConexao().close(); log.info("Conexão relatorio fechada"); } @@ -156,4 +160,13 @@ public abstract class Relatorio { } } + public String getBaseDir() { + //setado como parametro em RenderRelatorioJasper com a chave "BASE_DIR" + return getClass().getResource(baseDir == null ? DEFAULT_BASE_DIR : baseDir).getPath(); + } + + public void setBaseDir(String baseDir) { + this.baseDir = baseDir; + } + } \ No newline at end of file