Fórum SELECT LEVANDO MAIS DE 5 MINUTOS #536802
10/11/2015
0
Obs: Banco de Dados Oracle e estou usando o TOAD.
O relatório Básicamente tem que trazer as informações assim:
SEMANA 1 Total Contas a Pagar daquele dia
01-01-2015(segunda) - 20000
01-02-2015(terça) - 30000
01-03-2015(quarta) - 40000
01-04-2015(quinta) - 10000
01-05-2015(sexta) - 0
SEMANA 2
01-08-2015(segunda) - 12000
01-09-2015(terça) - 1000
01-10-2015(quarta) - 2100
01-11-2015(quinta) - 500
01-12-2015(sexta) - 1200
SELECT
DISTINCT
TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') AS MES2,
TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MONTH') AS MES,
TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'W') AS SEMANA,
--SEMANAS DIAS--
--SEMANA1
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 1 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEG_S1,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 1 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS TER_S1,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 1 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUAR_S1,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 1 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUIN_S1,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 1 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEX_S1,
--SEMANA2
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 2 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEG_S2,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 2 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS TER_S2,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 2 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUAR_S2,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 2 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUIN_S2,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 2 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEX_S2,
--SEMANA3
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 3 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEG_S3,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 3 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS TER_S3,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 3 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUAR_S3,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 3 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUIN_S3,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 3 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEX_S3,
--SEMANA4
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 4 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEG_S4,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 4 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS TER_S4,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 4 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUAR_S4,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 4 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUIN_S4,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 4 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEX_S4,
--SEMANA5
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 5 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEG_S5,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 5 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS TER_S5,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 5 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUAR_S5,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 5 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS QUIN_S5,
(SELECT DISTINCT TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'DD/MM/YYYY') FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 5 AND (usf_ultimo_dia_util(FIN.DTVENC) >= '01/11/2015' AND usf_ultimo_dia_util(FIN.DTVENC) <= '20/11/2015') AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') ) AS SEX_S5,
---------------------------------------------------------------------EMPRESA 1-----------------------------------------------------
--SEMANA 1
-- VALOR TOTAL SEMANA 1
(SELECT NVL(NVL(SUM(FIN.VLRDESDOB),0),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN2.CODTIPTIT <> 35) AS SEGUNDA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS TERCA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUARTA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUINTA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS SEXTA_S1_E1,
--VALOR PROVISAO SEMANA 1
(SELECT NVL(NVL(SUM(FIN.VLRDESDOB),0),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEGUNDA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_TERCA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUARTA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUINTA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 1 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEXTA_S1_E1,
--SEMANA 2
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35) AS SEGUNDA_S2_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS TERCA_S2_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUARTA_S2_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUINTA_S2_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS SEXTA_S2_E1,
--PROVISAO SEMANA 2
(SELECT NVL(NVL(SUM(FIN.VLRDESDOB),0),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEGUNDA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_TERCA_S2_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUARTA_S2_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUINTA_S2_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 2 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEXTA_S2_E1,
--SEMANA 3
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN2.CODTIPTIT <> 35) AS SEGUNDA_S3_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS TERCA_S3_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUARTA_S3_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUINTA_S3_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS SEXTA_S3_E1,
--PROVISAO SEMANA 3
(SELECT NVL(NVL(SUM(FIN.VLRDESDOB),0),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEGUNDA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_TERCA_S3_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUARTA_S3_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUINTA_S3_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 3 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEXTA_S3_E1,
--SEMANA 4
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN2.CODTIPTIT <> 35) AS SEGUNDA_S4_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS TERCA_S4_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUARTA_S4_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUINTA_S4_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS SEXTA_S4_E1,
--PROVISAO SEMANA 4
(SELECT NVL(NVL(SUM(FIN.VLRDESDOB),0),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEGUNDA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_TERCA_S4_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUARTA_S4_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUINTA_S4_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 4 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEXTA_S4_E1,
--SEMANA 5
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN2.CODTIPTIT <> 35) AS SEGUNDA_S5_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS TERCA_S5_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUARTA_S5_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS QUINTA_S5_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'N' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS SEXTA_S5_E1,
--PROVISAO SEMANA 5
(SELECT NVL(NVL(SUM(FIN.VLRDESDOB),0),0) FROM TGFFIN FIN WHERE (TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 7 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 1 OR TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 2) AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND ( FIN.DTVENC >= '01/11/2015'
AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEGUNDA_S1_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 3 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_TERCA_S5_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 4 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUARTA_S5_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 5 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W') = 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_QUINTA_S5_E1,
(SELECT NVL(SUM(FIN.VLRDESDOB),0) FROM TGFFIN FIN WHERE TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'D') = 6 AND TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'W')= 5 AND (FIN.DTVENC >= '01/11/2015' AND FIN.DTVENC <= '20/11/2015') AND FIN.RECDESP = -1 AND FIN.PROVISAO = 'S' AND FIN.DHBAIXA IS NULL AND FIN.CODEMP = 1 AND TO_CHAR(usf_ultimo_dia_util(FIN2.DTVENC),'MM') = TO_CHAR(usf_ultimo_dia_util(FIN.DTVENC),'MM') AND FIN.CODTIPTIT <> 35 AND FIN.CODTIPOPER IN (200,30)) AS PRO_SEXTA_S5_E1
FROM TGFFIN FIN2
WHERE
FIN2.DTVENC >= '01/11/2015'
AND FIN2.DTVENC <= '20/11/2015'
AND FIN2.RECDESP = -1
AND FIN2.DHBAIXA IS NULL
AND FIN2.CODTIPTIT <> 35
AND FIN2.CODTIPOPER IN (200,30)
ORDER BY SEMANA
Michel Silva
Curtir tópico
+ 0Post mais votado
10/11/2015
Pela quantidade de DISTINCTS no código, não existe dúvida alguma que a causa da lentidão é a quantidade de subqueries aninhadas.
Sugiro que você faça diferente : para cada subquery crie um tabela temporária e, depois, trate tudo de uma só vez baseado nas temporárias.
Também é possível gerar tudo em uma temporária só, diferenciado por semana, empresa e etc... Nesse caso, continue trabalhando com queries de insert separadas.
Marcos P
Gostei + 1
Mais Posts
10/11/2015
Jothaz
Pela quantidade de DISTINCTS no código, não existe dúvida alguma que a causa da lentidão é a quantidade de subqueries aninhadas.
Sugiro que você faça diferente : para cada subquery crie um tabela temporária e, depois, trate tudo de uma só vez baseado nas temporárias.
Também é possível gerar tudo em uma temporária só, diferenciado por semana, empresa e etc... Nesse caso, continue trabalhando com queries de insert separadas.
Perfeito! Comece seguindo estas dicas para refinar a lógica e DISTINCTS com subqueries é o caminho mais curto para o inferno.
Gostei + 0
10/11/2015
Michel Silva
Com relação aos DISTINCTS, atrapalha muito na performance?
Gostei + 0
10/11/2015
Marcos P
Portanto, o fato de existir uma ( ou mais ) temporária em cada consulta, não é restrição alguma.
Quanto à performance do DISTINCT + Subquery, sua consulta é um belo exemplo de como não fazer as coisas !
Gostei + 0
10/11/2015
Michel Silva
Gostei + 0
11/11/2015
Marcos P
Quando eu tiver um tempo, te chamo...
Gostei + 0
12/11/2015
Michel Silva
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)