Adicionando query de vendas IA loja vdm
davinTI/app-dono-modulos/pipeline/head This commit looks good
davinTI/app-dono-modulos/pipeline/head This commit looks good
This commit is contained in:
@@ -1167,7 +1167,87 @@ where 1 = 0`,
|
||||
},
|
||||
flash_vendas_ai: (args) => {
|
||||
return {
|
||||
sql: /*sql*/``
|
||||
sql: /*sql*/`
|
||||
SELECT * FROM (
|
||||
WITH Parametros AS (
|
||||
SELECT
|
||||
TO_DATE(\${args.data_venda}, 'YYYY-MM-DD') AS dt_ref,
|
||||
TRUNC(TO_DATE(\${args.data_venda}, 'YYYY-MM-DD'), 'MM') AS dt_inicio_mes,
|
||||
ADD_MONTHS(TRUNC(TO_DATE(\${args.data_venda}, 'YYYY-MM-DD'), 'MM'), -1) AS dt_inicio_mes_ant,
|
||||
ADD_MONTHS(TO_DATE(\${args.data_venda}, 'YYYY-MM-DD'), -1) AS dt_fim_mes_ant,
|
||||
ADD_MONTHS(TRUNC(TO_DATE(\${args.data_venda}, 'YYYY-MM-DD'), 'MM'), -12) AS dt_inicio_ano_ant,
|
||||
ADD_MONTHS(TO_DATE(\${args.data_venda}, 'YYYY-MM-DD'), -12) AS dt_fim_ano_ant
|
||||
FROM DUAL
|
||||
),
|
||||
Vendas AS (
|
||||
SELECT n.cod_empresa AS loja,
|
||||
r.data_referencia AS data,
|
||||
r.valor_venda AS venda,
|
||||
0 AS meta
|
||||
FROM VERDEMAR.TB_FLASH_NODO_RESUMO_VENDA r
|
||||
JOIN VERDEMAR.TB_FLASH_NODO n ON n.id_nodo = r.id_nodo
|
||||
CROSS JOIN Parametros p
|
||||
WHERE n.tipo_nodo = 'EMPRESA'
|
||||
AND n.ativo = 'S'
|
||||
AND n.cod_empresa IN (\${args.ctx_user_companies_for_module})
|
||||
AND ( r.data_referencia BETWEEN p.dt_inicio_mes AND p.dt_ref
|
||||
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)
|
||||
),
|
||||
Metas AS (
|
||||
SELECT FNC_CODIGOLOJA(m.loja_ajustada) AS loja,
|
||||
m.data,
|
||||
0 AS venda,
|
||||
m.meta_diaria AS meta
|
||||
FROM VERDEMAR.ORCADO_METAS_IMPORT m
|
||||
CROSS JOIN Parametros p
|
||||
WHERE m.data BETWEEN p.dt_inicio_mes AND LAST_DAY(p.dt_ref)
|
||||
AND FNC_CODIGOLOJA(m.loja_ajustada) IN (\${args.ctx_user_companies_for_module})
|
||||
),
|
||||
DadosUnificados AS (
|
||||
SELECT * FROM Vendas
|
||||
UNION ALL
|
||||
SELECT * FROM Metas
|
||||
),
|
||||
Agrupado AS (
|
||||
SELECT
|
||||
d.loja,
|
||||
SUM(CASE WHEN d.data BETWEEN p.dt_inicio_mes AND p.dt_ref THEN d.venda ELSE 0 END) AS v_mes,
|
||||
SUM(CASE WHEN d.data BETWEEN p.dt_inicio_mes AND LAST_DAY(p.dt_ref) THEN d.meta ELSE 0 END) AS m_mes,
|
||||
SUM(CASE WHEN d.data BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant THEN d.venda ELSE 0 END) AS v_mes_ant,
|
||||
SUM(CASE WHEN d.data BETWEEN p.dt_inicio_mes_ant AND p.dt_fim_mes_ant THEN d.meta ELSE 0 END) AS m_mes_ant,
|
||||
SUM(CASE WHEN d.data BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant THEN d.venda ELSE 0 END) AS v_ano_ant,
|
||||
SUM(CASE WHEN d.data BETWEEN p.dt_inicio_ano_ant AND p.dt_fim_ano_ant THEN d.meta ELSE 0 END) AS m_ano_ant
|
||||
FROM DadosUnificados d
|
||||
CROSS JOIN Parametros p
|
||||
GROUP BY d.loja
|
||||
)
|
||||
SELECT
|
||||
'Lojas' AS canalapp,
|
||||
(loja) AS cod_empresa,
|
||||
FNC_NOMEPESSOAS(loja) AS nomeempresaapp,
|
||||
GROUPING(loja) AS is_total,
|
||||
|
||||
SUM(m_mes) AS meta_mes,
|
||||
SUM(v_mes) AS mes_atual,
|
||||
SUM(v_mes) - SUM(m_mes) AS dif_mes_atual,
|
||||
ROUND(NVL((SUM(v_mes) / NULLIF(SUM(m_mes), 0)) * 100 - 100, 0), 2) AS variacao_atual,
|
||||
|
||||
SUM(m_mes_ant) AS meta_mes_anterior,
|
||||
SUM(v_mes_ant) AS mes_anterior,
|
||||
SUM(v_mes) - SUM(v_mes_ant) AS dif_mes_anterior,
|
||||
ROUND(NVL((SUM(v_mes) / NULLIF(SUM(v_mes_ant), 0)) * 100 - 100, 0), 2) AS variacao_mes_anterior,
|
||||
|
||||
SUM(m_ano_ant) AS meta_ano_anterior,
|
||||
SUM(v_ano_ant) AS ano_anterior,
|
||||
SUM(v_mes) - SUM(v_ano_ant) AS dif_ano_anterior,
|
||||
ROUND(NVL((SUM(v_mes) / NULLIF(SUM(v_ano_ant), 0)) * 100 - 100, 0), 2) AS variacao_ano_anterior
|
||||
FROM Agrupado
|
||||
GROUP BY GROUPING SETS ((loja), ())
|
||||
) x
|
||||
WHERE 1=1
|
||||
--FILTROS--
|
||||
`
|
||||
}
|
||||
},
|
||||
query_vazia : (args) => {
|
||||
|
||||
Reference in New Issue
Block a user