This commit is contained in:
+10
-12
@@ -1059,19 +1059,19 @@ where 1 = 0`,
|
|||||||
sql: /*sql*/`
|
sql: /*sql*/`
|
||||||
WITH Parametros_Base AS (
|
WITH Parametros_Base AS (
|
||||||
SELECT
|
SELECT
|
||||||
TO_DATE(${args.data_venda}, 'YYYY-MM-DD') AS dt_ref,
|
TO_DATE(${args.data_venda}, 'YYYY-MM-DD') AS data_venda,
|
||||||
${args.codigo_categoria_pai} AS codigo_categoria_pai,
|
${args.codigo_categoria_pai} AS codigo_categoria_pai,
|
||||||
${args.cod_empresa} AS cod_empresa
|
${args.cod_empresa} AS cod_empresa
|
||||||
FROM DUAL
|
FROM DUAL
|
||||||
),
|
),
|
||||||
Parametros AS (
|
Parametros AS (
|
||||||
SELECT
|
SELECT
|
||||||
dt_ref,
|
data_venda,
|
||||||
TRUNC(dt_ref, 'MM') AS dt_inicio_mes,
|
TRUNC(data_venda, 'MM') AS dt_inicio_mes,
|
||||||
ADD_MONTHS(TRUNC(dt_ref, 'MM'), -1) AS dt_inicio_mes_ant,
|
ADD_MONTHS(TRUNC(data_venda, 'MM'), -1) AS dt_inicio_mes_ant,
|
||||||
ADD_MONTHS(dt_ref, -1) AS dt_fim_mes_ant,
|
ADD_MONTHS(data_venda, -1) AS dt_fim_mes_ant,
|
||||||
ADD_MONTHS(TRUNC(dt_ref, 'MM'), -12) AS dt_inicio_ano_ant,
|
ADD_MONTHS(TRUNC(data_venda, 'MM'), -12) AS dt_inicio_ano_ant,
|
||||||
ADD_MONTHS(dt_ref, -12) AS dt_fim_ano_ant,
|
ADD_MONTHS(data_venda, -12) AS dt_fim_ano_ant,
|
||||||
codigo_categoria_pai,
|
codigo_categoria_pai,
|
||||||
cod_empresa
|
cod_empresa
|
||||||
FROM Parametros_Base
|
FROM Parametros_Base
|
||||||
@@ -1097,14 +1097,12 @@ where 1 = 0`,
|
|||||||
FROM filhos f
|
FROM filhos f
|
||||||
JOIN VERDEMAR.TB_FLASH_NODO_RESUMO_VENDA r ON r.id_nodo = f.id_nodo
|
JOIN VERDEMAR.TB_FLASH_NODO_RESUMO_VENDA r ON r.id_nodo = f.id_nodo
|
||||||
CROSS JOIN Parametros p
|
CROSS JOIN Parametros p
|
||||||
WHERE ( r.data_referencia BETWEEN p.dt_inicio_mes AND p.dt_ref
|
WHERE ( r.data_referencia BETWEEN p.dt_inicio_mes AND p.data_venda
|
||||||
OR r.data_referencia BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant
|
OR r.data_referencia BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant
|
||||||
OR r.data_referencia BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant)
|
OR r.data_referencia BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant)
|
||||||
),
|
),
|
||||||
Agrupado AS (
|
Agrupado AS (
|
||||||
SELECT
|
SELECT
|
||||||
-- Quando N�O tem filtro de empresa: agrupa por CODIGO (consolida v�rias empresas)
|
|
||||||
-- Quando TEM filtro de empresa: agrupa por ID_NODO (cada empresa separada)
|
|
||||||
v.codigo AS codigo,
|
v.codigo AS codigo,
|
||||||
MAX(v.nome) AS nome,
|
MAX(v.nome) AS nome,
|
||||||
MAX(v.tipo_nodo) AS tipo_nodo,
|
MAX(v.tipo_nodo) AS tipo_nodo,
|
||||||
@@ -1116,11 +1114,11 @@ where 1 = 0`,
|
|||||||
MAX(v.ordem_exibicao) AS ordem_exibicao,
|
MAX(v.ordem_exibicao) AS ordem_exibicao,
|
||||||
GROUPING(v.codigo) AS is_total,
|
GROUPING(v.codigo) AS is_total,
|
||||||
|
|
||||||
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes AND p.dt_ref THEN v.venda ELSE 0 END) AS v_mes,
|
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes AND p.data_venda THEN v.venda ELSE 0 END) AS v_mes,
|
||||||
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant THEN v.venda ELSE 0 END) AS v_mes_ant,
|
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant THEN v.venda ELSE 0 END) AS v_mes_ant,
|
||||||
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant THEN v.venda ELSE 0 END) AS v_ano_ant,
|
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant THEN v.venda ELSE 0 END) AS v_ano_ant,
|
||||||
|
|
||||||
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes AND p.dt_ref THEN v.meta ELSE 0 END) AS m_mes,
|
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes AND p.data_venda THEN v.meta ELSE 0 END) AS m_mes,
|
||||||
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant THEN v.meta ELSE 0 END) AS m_mes_ant,
|
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant THEN v.meta ELSE 0 END) AS m_mes_ant,
|
||||||
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant THEN v.meta ELSE 0 END) AS m_ano_ant
|
SUM(CASE WHEN v.data BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant THEN v.meta ELSE 0 END) AS m_ano_ant
|
||||||
FROM Vendas_Metas v
|
FROM Vendas_Metas v
|
||||||
|
|||||||
Reference in New Issue
Block a user