Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT TOP 100 IdProduto,
- IdSetorProduto,
- Código_Produto AS Codigo,
- Descrição AS Descricao,
- Tamanho,
- Cor,
- Setor,
- /*Preço Médio*/
- (CASE WHEN SUM((CASE WHEN Preco_Item>0 THEN Qtde ELSE -1*Qtde END))<>0 THEN SUM(Preco_Item*Qtde)/SUM((CASE WHEN Preco_Item>0 THEN Qtde ELSE -1*Qtde END)) ELSE 0 END) AS Preco,
- SUM((CASE WHEN Preco_Item>0 THEN Qtde ELSE -1*Qtde END)) AS QtdeVendido,
- SUM(Desconto) AS Desconto,
- SUM(Acrescimo) AS Acrescimo,
- SUM(Frete) AS Frete,
- SUM(Preco_Item*Qtde)-SUM(Desconto)+SUM(Acrescimo)+SUM(Frete) AS Total
- FROM
- (
- SELECT Estq_cadProdutos.IdProduto,
- Estq_cadProdutos.IdSetorProduto,
- Estq_cadSetores.Descricao AS Setor,
- POV_cadPOV.Codigo AS Venda,
- POV_cadPOV.DATA,
- POV_cadItemPOV.Qtde,
- POV_cadItemPOV.Valor AS Preco_Item,
- /*---------------- Desconto --------------------- */
- (
- (CASE WHEN (SELECT SUM(Valor*Qtde)-SUM(Desconto)+SUM(Acrescimo) FROM POV_cadItemPOV WHERE IdPOV=POV_cadPOV.IdPOV)<>0 THEN
- (((POV_cadItemPOV.Valor*POV_cadItemPOV.Qtde)-POV_cadItemPOV.Desconto+POV_cadItemPOV.Acrescimo)
- /
- (SELECT SUM(Valor*Qtde)-SUM(Desconto)+SUM(Acrescimo) FROM POV_cadItemPOV WHERE IdPOV=POV_cadPOV.IdPOV))
- ELSE 0 END)
- *POV_cadPOV.Desconto)
- + POV_cadItemPOV.Desconto AS Desconto,
- /*----------------------------------------------- */
- /*---------------- Acréscimo --------------------- */
- (
- (CASE WHEN (SELECT SUM(Valor*Qtde)-SUM(Desconto)+SUM(Acrescimo) FROM POV_cadItemPOV WHERE IdPOV=POV_cadPOV.IdPOV)<>0 THEN
- (((POV_cadItemPOV.Valor*POV_cadItemPOV.Qtde)-POV_cadItemPOV.Desconto+POV_cadItemPOV.Acrescimo)
- /
- (SELECT SUM(Valor*Qtde)-SUM(Desconto)+SUM(Acrescimo) FROM POV_cadItemPOV WHERE IdPOV=POV_cadPOV.IdPOV)
- )
- ELSE 0 END)
- *POV_cadPOV.Acrescimo)
- +POV_cadItemPOV.Acrescimo AS Acrescimo,
- /*----------------------------------------------- */
- /*-------------------- Frete --------------------- */
- (
- (CASE WHEN (SELECT SUM(Valor*Qtde)-SUM(Desconto)+SUM(Acrescimo) FROM POV_cadItemPOV WHERE IdPOV=POV_cadPOV.IdPOV)<> 0 THEN
- (((POV_cadItemPOV.Valor*POV_cadItemPOV.Qtde)-POV_cadItemPOV.Desconto+POV_cadItemPOV.Acrescimo)
- /
- (SELECT SUM(Valor*Qtde)-SUM(Desconto)+SUM(Acrescimo) FROM POV_cadItemPOV WHERE IdPOV=POV_cadPOV.IdPOV)
- ) ELSE 0 END)
- *POV_cadPOV.Frete) AS Frete,
- /*----------------------------------------------- */
- (SELECT Descricao FROM Estq_cadClassProd5 WHERE Estq_cadClassProd5.IdClassProd5=POV_cadItemPOV.IdClassProd5) AS Tamanho,
- (SELECT Descricao FROM Estq_cadClassProd6 WHERE Estq_cadClassProd6.IdClassProd6=POV_cadItemPOV.IdClassProd6) AS Cor,
- Estq_cadProdutos.Codigo AS Código_Produto,
- Estq_cadProdutos.Descricao AS Descrição,
- /*-------------------- Lucro ------------------------ */
- (SELECT SUM(CustoTotal)/SUM(Qtde) AS CustoMedio FROM Estq_auxMovimentoEstoque
- WHERE Sentido=1 AND IdProduto=POV_cadItemPOV.IdProdServ)*POV_cadItemPOV.Qtde AS Custo_Médio,
- (Estq_cadProdutos.PrecoVenda*POV_cadItemPOV.Qtde-(CASE WHEN (SELECT SUM(Valor*Qtde)
- FROM POV_cadItemPOV WHERE IdPOV=POV_cadPOV.IdPOV)-
- (SELECT SUM(POV_cadItemPOV.Desconto) FROM POV_cadItemPOV WHERE POV_cadItemPOV.IdPOV=POV_cadPOV.IdPOV)
- +
- (SELECT SUM(POV_cadItemPOV.Acrescimo) FROM POV_cadItemPOV WHERE POV_cadItemPOV.IdPOV=POV_cadPOV.IdPOV)<>0 THEN ((POV_cadItemPOV.Valor/(SELECT SUM(Valor*Qtde) FROM POV_cadItemPOV
- WHERE IdPOV=POV_cadPOV.IdPOV))*POV_cadPOV.Desconto*Qtde)+POV_cadItemPOV.Desconto ELSE 0 END)-((SELECT SUM(CustoTotal)/SUM(Qtde) FROM Estq_auxMovimentoEstoque
- WHERE Sentido=1 AND IdProduto=POV_cadItemPOV.IdProdServ)*POV_cadItemPOV.Qtde)) AS Lucro
- /*--------------------------------------------------- */
- FROM (((POV_cadPOV INNER JOIN POV_cadItemPOV ON POV_cadPOV.IdPOV = POV_cadItemPOV.IdPOV)
- INNER JOIN Usr_cadUsuario ON Usr_cadUsuario.IdUsuario = POV_cadPOV.IdFuncionario) INNER JOIN Estq_cadProdutos ON POV_cadItemPOV.IdProdServ = Estq_cadProdutos.IdProduto)
- INNER JOIN Estq_cadSetores ON Estq_cadProdutos.IdSetorProduto=Estq_cadSetores.IdSetorProduto
- WHERE POV_cadPOV.Tipo=3 AND POV_cadItemPOV.Tipo=1 AND POV_cadPOV.Estornado=0 ) AS Consulta
- WHERE Data>=DATAINICIAL() AND Data<=DATAFINAL() GROUP BY Código_Produto,
- Descrição,
- Tamanho,
- Cor,
- Setor,
- IdProduto,
- IdSetorProduto
- ORDER BY QtdeVendido DESC
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement