Skip to content

Instantly share code, notes, and snippets.

@danielbaccin
Last active November 23, 2015 13:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save danielbaccin/1cfb8d6027afb4d11908 to your computer and use it in GitHub Desktop.
Save danielbaccin/1cfb8d6027afb4d11908 to your computer and use it in GitHub Desktop.
reprocessa vendas consolidadas
TRUNCATE TABLE VENDA_CONSOLIDADA_PRODUTO;
TRUNCATE TABLE VENDA_CONSOLIDADA_FINALIZADORA;
TRUNCATE TABLE VENDA_CONSOLIDADA_LOJA;
INSERT INTO VENDA_CONSOLIDADA_PRODUTO (ID, LOJCOD, VCPDAT, PROCOD, VCPQTD, VCPVLRTOT)
SELECT nextval('SQ_VENDA_CONSOLIDADA_PRODUTO')
, T.LOJCOD
, T.TRNDAT AS VCPDAT
, IV.PROCOD
, SUM(IV.ITVQTDVDA) AS VCPQTD
, SUM(IV.ITVVLRTOT) AS VCPVLRTOT
FROM TRANSACAO T
JOIN ITEM_VENDA IV ON (T.TRNSEQ = IV.TRNSEQ
AND T.CXANUM = IV.CXANUM
AND T.TRNDAT = IV.TRNDAT
AND T.LOJCOD = IV.LOJCOD
AND IV.ITVTIP = '1')
WHERE T.TRNTIP = '1'
-- AND T.TRNDAT >= '2014-09-01'
GROUP BY T.LOJCOD, T.TRNDAT, IV.PROCOD
;
INSERT INTO VENDA_CONSOLIDADA_FINALIZADORA (ID, LOJCOD, VCFDAT, FZDCOD, VCFVLRTOT, VCFQTDCLI)
SELECT nextval('SQ_VENDA_CONSOLIDADA_FINALIZA')
, LOJCOD
, TRNDAT
, FZDCOD
, SUM(VCLVLRTOT) VCLVLRTOT
, COUNT(*) AS VCLQTDCLI
FROM (SELECT T.LOJCOD
, T.TRNDAT
, T.CXANUM
, T.TRNSEQ
, F.FZDCOD
, SUM(F.FZCVLR - F.FZCCTRVAL) VCLVLRTOT
FROM TRANSACAO T
INNER JOIN FINALIZACAO F ON (F.LOJCOD = T.LOJCOD
AND F.TRNDAT = T.TRNDAT
AND F.CXANUM = T.CXANUM
AND F.TRNSEQ = T.TRNSEQ)
WHERE T.TRNTIP = '1'
-- AND T.TRNDAT >= '2014-09-01'
GROUP BY T.LOJCOD, T.TRNDAT, T.CXANUM, T.TRNSEQ, F.FZDCOD) R
GROUP BY LOJCOD,TRNDAT,FZDCOD
;
INSERT INTO VENDA_CONSOLIDADA_LOJA (ID, LOJCOD, VCLDAT, VCLVLRTOT, VCLQTDCLI)
SELECT nextval('SQ_VENDA_CONSOLIDADA_LOJA')
, LOJCOD
, TRNDAT
, SUM(VCLVLRTOT) VCLVLRTOT
, COUNT(*) AS VCLQTDCLI
FROM (SELECT T.LOJCOD
, T.TRNDAT
, T.CXANUM
, T.TRNSEQ
, SUM(F.FZCVLR - F.FZCCTRVAL) VCLVLRTOT
FROM TRANSACAO T
INNER JOIN FINALIZACAO F ON (F.LOJCOD = T.LOJCOD
AND F.TRNDAT = T.TRNDAT
AND F.CXANUM = T.CXANUM
AND F.TRNSEQ = T.TRNSEQ)
WHERE T.TRNTIP = '1'
-- AND T.TRNDAT >= '2014-09-01'
GROUP BY T.LOJCOD,T.TRNDAT,T.CXANUM,T.TRNSEQ) R
GROUP BY LOJCOD,TRNDAT
;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment