Ajuste query flash categoria
davinTI/app-dono-modulos/pipeline/head There was a failure building this commit

This commit is contained in:
Sarah Magalhães
2026-06-03 14:14:49 -03:00
parent cb155585cd
commit c0c54543a3
+9 -6
View File
@@ -1078,7 +1078,15 @@ where 1 = 0`,
), ),
filhos AS ( filhos AS (
SELECT SELECT
n.id_nodo,n.ID_NODO as codigo, n.nome, n.tipo_nodo, n.nivel, n.id_nodo,
-- Alterao cirrgica: unifica o cdigo pelo nome apenas se no houver os filtros
CASE
WHEN p.cod_empresa IS NULL AND p.codigo_categoria_pai IS NULL THEN
MIN(n.ID_NODO) OVER (PARTITION BY n.nome)
ELSE
n.ID_NODO
END AS codigo,
n.nome, n.tipo_nodo, n.nivel,
n.cod_empresa, n.ordem_exibicao n.cod_empresa, n.ordem_exibicao
FROM VERDEMAR.TB_FLASH_NODO n FROM VERDEMAR.TB_FLASH_NODO n
CROSS JOIN Parametros p CROSS JOIN Parametros p
@@ -1109,11 +1117,9 @@ where 1 = 0`,
MAX(v.nivel) AS nivel, MAX(v.nivel) AS nivel,
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.data_venda 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.data_venda 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
@@ -1126,7 +1132,6 @@ where 1 = 0`,
tipo_nodo AS canalapp, tipo_nodo AS canalapp,
codigo AS cod_empresa, codigo AS cod_empresa,
is_total, is_total,
m_mes AS meta_mes, m_mes AS meta_mes,
v_mes AS mes_atual, v_mes AS mes_atual,
(v_mes - m_mes) AS dif_mes_atual, (v_mes - m_mes) AS dif_mes_atual,
@@ -1134,12 +1139,10 @@ where 1 = 0`,
WHEN m_mes = 0 THEN 0 WHEN m_mes = 0 THEN 0
ELSE ROUND(((v_mes / m_mes) * 100) - 100, 2) ELSE ROUND(((v_mes / m_mes) * 100) - 100, 2)
END AS variacao_atual, END AS variacao_atual,
m_mes_ant AS meta_mes_anterior, m_mes_ant AS meta_mes_anterior,
v_mes_ant AS mes_anterior, v_mes_ant AS mes_anterior,
(v_mes - v_mes_ant) AS dif_mes_anterior, (v_mes - v_mes_ant) AS dif_mes_anterior,
ROUND(NVL((v_mes / NULLIF(v_mes_ant, 0)) * 100 - 100, 0), 2) AS variacao_mes_anterior, ROUND(NVL((v_mes / NULLIF(v_mes_ant, 0)) * 100 - 100, 0), 2) AS variacao_mes_anterior,
m_ano_ant AS meta_ano_anterior, m_ano_ant AS meta_ano_anterior,
v_ano_ant AS ano_anterior, v_ano_ant AS ano_anterior,
(v_mes - v_ano_ant) AS dif_ano_anterior, (v_mes - v_ano_ant) AS dif_ano_anterior,