diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioLinhasHorario.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioLinhasHorario.java index 6a99a29e5..cd936c73b 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioLinhasHorario.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioLinhasHorario.java @@ -392,9 +392,13 @@ public class RelatorioLinhasHorario extends Relatorio { StringBuffer sql = new StringBuffer(); sql.append("SELECT "); sql.append("RUTA_ID, GRUPO_RUTA, HORA, SERVICO, SENTIDO , LOT, CLA, TARIFA, ORIGEM, DESTINO, "); - sql.append("EXTENSAO, SUM(EQUIVALENTE * EXTENSAO) AS EXTENSAO_TRECHO, "); - sql.append("BAGAGENS, SUM(SEGURO) AS SEGURO, SUM(TX_EMBARQUE) AS TX_EMBARQUE, SUM(PEDAGIO) AS PEDAGIO, SUM(PASSAGENS) AS PASSAGENS, "); - sql.append("ORD, EXTRA, TIPO_LINHA, ABSOL, SUM(KM_REAL) AS KM_REAL "); + sql.append("EXTENSAO, COALESCE(SUM(EQUIVALENTE * EXTENSAO) ,0) AS EXTENSAO_TRECHO, "); + sql.append("COALESCE(BAGAGENS, 0) AS BAGAGENS, COALESCE(SUM(SEGURO), 0) AS SEGURO, "); + sql.append("COALESCE(SUM(TX_EMBARQUE), 0) AS TX_EMBARQUE, "); + sql.append("COALESCE(SUM(PEDAGIO), 0) AS PEDAGIO, "); + sql.append("COALESCE(SUM(PASSAGENS), 0) AS PASSAGENS, "); + sql.append("ORD, EXTRA, TIPO_LINHA, ABSOL, "); + sql.append("COALESCE(SUM(KM_REAL), 0) AS KM_REAL "); sql.append("FROM "); sql.append("(SELECT "); sql.append(" R.RUTA_ID, "); @@ -432,15 +436,17 @@ public class RelatorioLinhasHorario extends Relatorio { sql.append(" (SELECT C.CORRIDA_ID, C.ROLOPERATIVO_ID, TO_CHAR(C.FECHORSALIDA, 'HH24:MI') AS HORASALIDA, "); sql.append(" COUNT(1) AS ABSOL "); sql.append(" FROM CORRIDA C "); - sql.append(" LEFT JOIN BOLETO B ON (B.CORRIDA_ID = C.CORRIDA_ID AND B.FECCORRIDA = C.FECCORRIDA ) "); + sql.append(" LEFT JOIN BOLETO B ON (B.CORRIDA_ID = C.CORRIDA_ID AND B.FECCORRIDA = C.FECCORRIDA "); + sql.append(" AND B.MOTIVOCANCELACION_ID IS NULL "); + sql.append(" AND B.CATEGORIA_ID <> ").append(CONSTANTE_GRATUIDADE_CRIANCA).append(") "); sql.append(" WHERE C.ACTIVO = 1 "); sql.append(" AND C.FECCORRIDA BETWEEN :DATA_INICIO AND :DATA_FINAL "); sql.append(empresa == null ? "" : " AND C.EMPRESACORRIDA_ID = " + empresa.getEmpresaId()); - sql.append(" AND B.MOTIVOCANCELACION_ID IS NULL "); - sql.append(" AND B.CATEGORIA_ID <> ").append(CONSTANTE_GRATUIDADE_CRIANCA); +// sql.append(" AND B.MOTIVOCANCELACION_ID IS NULL "); +// sql.append(" AND B.CATEGORIA_ID <> ").append(CONSTANTE_GRATUIDADE_CRIANCA); sql.append(" GROUP BY C.CORRIDA_ID, C.ROLOPERATIVO_ID, TO_CHAR(C.FECHORSALIDA, 'HH24:MI')) TB4, "); sql.append(" CORRIDA C "); - sql.append("INNER JOIN "); + sql.append("LEFT JOIN "); sql.append(" (SELECT CO.FECCORRIDA, "); sql.append(" CO.CORRIDA_ID, "); sql.append(" CO.ROLOPERATIVO_ID, ");