From ac785770ae8c0726487b3b2a862be9f76e46d47c Mon Sep 17 00:00:00 2001 From: gleimar Date: Wed, 28 Oct 2015 01:38:41 +0000 Subject: [PATCH] fixes bug#6777 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@49512 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../relatorios/impl/RelatorioTaxasLinha.java | 29 ++----------------- .../relatorios/utilitarios/Relatorio.java | 20 +++++++++---- .../RelatorioTaxasLinhaController.java | 24 ++++++++++----- 3 files changed, 32 insertions(+), 41 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTaxasLinha.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTaxasLinha.java index 3fd9e6215..c80021eab 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTaxasLinha.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioTaxasLinha.java @@ -12,7 +12,7 @@ import java.util.HashMap; import java.util.Map; import com.rjconsultores.ventaboletos.relatorios.negocio.CalculoImposto; -import com.rjconsultores.ventaboletos.relatorios.utilitarios.ArrayDataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; import com.rjconsultores.ventaboletos.relatorios.utilitarios.ExceptionConfiguracao; import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.utilerias.DateUtil; @@ -33,7 +33,7 @@ public class RelatorioTaxasLinha extends Relatorio { super(parametros, conexao); CalculoImposto.limpaCache(); - this.setCustomDataSource(new ArrayDataSource(this) { + this.setCustomDataSource(false,new DataSource(this) { public void initDados() throws Exception { Connection conexao = this.relatorio.getConexao(); @@ -65,31 +65,6 @@ public class RelatorioTaxasLinha extends Relatorio { ResultSet rset = stmt.executeQuery(); - while (rset.next()) { - - Map dataResult = new HashMap(); - - dataResult.put("PREFIXO", rset.getString("PREFIXO")); - dataResult.put("CIDADE_ORIGEM", rset.getString("CIDADE_ORIGEM")); - dataResult.put("CIDADE_DESTINO", rset.getString("CIDADE_DESTINO")); - dataResult.put("IMPORTETAXAEMBARQUE", rset.getBigDecimal("IMPORTETAXAEMBARQUE")); - dataResult.put("IMPORTEPEDAGIO", rset.getBigDecimal("IMPORTEPEDAGIO")); - dataResult.put("IMPORTESEGURO", rset.getBigDecimal("IMPORTESEGURO")); - dataResult.put("NOMBEMPRESA", rset.getString("NOMBEMPRESA")); - dataResult.put("NOMBPUNTOVENTA", rset.getString("NOMBPUNTOVENTA")); - dataResult.put("EMBARQUE_VENDIDOS", rset.getBigDecimal("EMBARQUE_VENDIDOS")); - dataResult.put("PEDAGIO_VENDIDOS", rset.getBigDecimal("PEDAGIO_VENDIDOS")); - dataResult.put("SEGURO_VENDIDOS", rset.getBigDecimal("SEGURO_VENDIDOS")); - dataResult.put("ORIGEM_ESTADO_ID", rset.getInt("ORIGEM_ESTADO_ID")); - dataResult.put("DESTINO_ESTADO_ID", rset.getInt("DESTINO_ESTADO_ID")); - dataResult.put("INTERESTADUAL", rset.getString("INTERESTADUAL")); - dataResult.put("TOTAL_EMBARQUE", rset.getBigDecimal("TOTAL_EMBARQUE")); - dataResult.put("TOTAL_PEDAGIO", rset.getBigDecimal("TOTAL_PEDAGIO")); - dataResult.put("TOTAL_SEGURO", rset.getBigDecimal("TOTAL_SEGURO")); - - this.dados.add(dataResult); - } - this.resultSet = rset; } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java index 5a1956c88..7827d920f 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/Relatorio.java @@ -81,13 +81,21 @@ public abstract class Relatorio { * the customDataSource to set */ public void setCustomDataSource(IDataSource iDataSource) { + setCustomDataSource(true,iDataSource); + } + /** + * @param iDataSource + * the customDataSource to set + */ + public void setCustomDataSource(boolean closeConnection,IDataSource iDataSource) { this.customDataSource = iDataSource; - - try { - if (!this.conexao.isClosed()) - this.conexao.close(); - } catch (SQLException e) { - log.error("Erro ao fechar a conexion", e); + if (closeConnection){ + try { + if (!this.conexao.isClosed()) + this.conexao.close(); + } catch (SQLException e) { + log.error("Erro ao fechar a conexion", e); + } } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTaxasLinhaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTaxasLinhaController.java index f718aad4c..3b3c77e9e 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTaxasLinhaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioTaxasLinhaController.java @@ -4,6 +4,7 @@ */ package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; +import java.sql.Connection; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -227,14 +228,21 @@ public class RelatorioTaxasLinhaController extends MyGenericForwardComposer { filtro.append("Todos;"); } - parametros.put("FILTROS", filtro.toString()); - relatorio = new RelatorioTaxasLinha(parametros, dataSourceRead.getConnection()); - - Map args = new HashMap(); - args.put("relatorio", relatorio); - - openWindow("/component/reportView.zul", - Labels.getLabel("relatorioTaxasLinhaController.window.title"), args, MODAL); + Connection connection = dataSourceRead.getConnection(); + try{ + parametros.put("FILTROS", filtro.toString()); + relatorio = new RelatorioTaxasLinha(parametros, connection); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", + Labels.getLabel("relatorioTaxasLinhaController.window.title"), args, MODAL); + }finally{ + if ( (connection != null) && !connection.isClosed()){ + connection.close(); + } + } } public List getLsEmpresa() {