vendaweb-api/src/domain/entity/Scripts/Criacao_Views_Sales.sql

51 lines
2.5 KiB
MySQL
Raw Normal View History

CREATE OR REPLACE VIEW ESVPRODUTOSVENDA
AS
SELECT ROWNUM SEQ, PCPRODUT.CODPROD, PCPRODUT.DESCRICAO, PCPRODUT.NOMEECOMMERCE, PCPRODUT.CODFAB,
PCPRODUT.CODAUXILIAR, CASE WHEN PCPRODUT.TIPOPRODUTO = 'S' THEN 'SHOWROOM'
WHEN PCPRODUT.TIPOPRODUTO = 'A' THEN 'AUTOSSERVICO'
ELSE 'NÃO DEFINIDO' END TIPOPRODUTO,
PCPRODUT.DADOSTECNICOS, PCPRODUT.INFORMACOESTECNICAS, PCPRODUT.URLIMAGEM,
PCPRODUT.ENVIAECOMMERCE, PCPRODUT.CODMARCA CODIGOMARCA, PCMARCA.MARCA NOMEMARCA,
PCPRODUT.CODEPTO CODIGODEPARTAMENTO, PCDEPTO.DESCRICAO NOMEDEPARTAMENTO,
PCPRODUT.CODSEC CODIGOSECAO, PCSECAO.DESCRICAO NOMESECAO,
PCPRODUT.CODCATEGORIA CODIGOCATEGORIA, PCCATEGORIA.CATEGORIA NOMECATEGORIA,
PCPRODUT.CODFORNEC, PCFORNEC.FORNECEDOR NOMEFORNECEDOR, PCPRODFILIAL.CLASSEESTOQUE,
PCPRODFILIAL.CLASSEVENDA, PCPRODFILIAL.CODFILIAL CODIGOFILIAL
FROM PCPRODUT, PCDEPTO, PCSECAO, PCCATEGORIA, PCMARCA, PCFORNEC, PCPRODFILIAL
WHERE PCPRODUT.DTEXCLUSAO IS NULL
AND NVL(PCPRODUT.OBS,'X') <> 'PV'
AND PCPRODUT.CODEPTO = PCDEPTO.CODEPTO
AND PCPRODUT.CODSEC = PCSECAO.CODSEC
AND PCPRODUT.CODPROD = PCPRODFILIAL.CODPROD
AND PCPRODUT.CODSEC = PCCATEGORIA.CODSEC (+)
AND PCPRODUT.CODCATEGORIA = PCCATEGORIA.CODCATEGORIA (+)
AND PCPRODUT.CODFORNEC = PCFORNEC.CODFORNEC (+)
AND PCPRODUT.CODMARCA = PCMARCA.CODMARCA (+) ;
CREATE OR REPLACE VIEW ESVPRECOVENDA
AS
SELECT PCTABPR.NUMREGIAO NUMEROREGIAO
,PCTABPR.CODPROD
,PCTABPR.PVENDA1 PRECOVENDA
,( SELECT PCPRECOPROM.PRECOFIXO
FROM PCPRECOPROM
WHERE PCPRECOPROM.NUMREGIAO = PCTABPR.NUMREGIAO
AND PCPRECOPROM.CODPROD = PCTABPR.CODPROD
AND TRUNC(SYSDATE) BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA ) PRECOOFERTA
FROM PCTABPR
WHERE PCTABPR.PVENDA > 0
AND NVL(PCTABPR.EXCLUIDO, 'N') = 'N';
CREATE OR REPLACE VIEW ESVESTOQUEVENDA
AS
SELECT PCEST.CODFILIAL, PCEST.CODPROD,
( NVL(PCEST.QTESTGER,0) - NVL(PCEST.QTRESERV,0) - NVL(PCEST.QTBLOQUEADA,0) - NVL(PCEST.QTPENDENTE,0) ) QUANTIDADEESTOQUEDISPONIVEL,
( SELECT MIN(PCPEDIDO.dtprevent) FROM PCITEM, PCPEDIDO
WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
AND ( PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE,0) ) > 0
AND PCITEM.CODPROD = PCEST.CODPROD ) DATAPREVISAOENTREGA
FROM PCEST
WHERE PCEST.CODFILIAL <> '99';