SELECT
it.CodVendedor AS 'vendedor',
ven.Nome,
dbo.convertemoedareal(it.ValorMeta) AS 'meta',
dbo.ConverteMoedaReal((SELECT
SUM((CASE
WHEN O.TipoMovimento = 1 AND
P.TipoControle = 1 THEN (CASE
WHEN 1 = 1 THEN (ISNULL((ME.ValorTotal
), 0.00) * -1)
ELSE 0.00
END)
WHEN O.TipoMovimento <> 1 AND
P.TipoControle = 2 THEN ISNULL((ME.ValorTotal
), 0.00)
ELSE 0.00
END))
FROM NotasFiscais P
LEFT JOIN Operacoes O
ON O.Codigo = P.CodOperacao
LEFT JOIN MovEstoque ME
ON ME.TipoControle = P.TipoControle
AND ME.CodControle = P.CodControle
AND ME.Empresa = P.Empresa
LEFT JOIN LetraComissaoPreco LC
ON ME.TipoPrecoProduto = LC.TipoPreco
AND ME.CodLetraComissao = LC.CodLetraComissao
LEFT JOIN Entidades E
ON E.Codigo = P.CodEntidade
LEFT JOIN Cidades Cid
ON E.CodCidade = Cid.Codigo
LEFT JOIN Produtos Prod
ON ME.CodProduto = Prod.Codigo
LEFT JOIN Entidades F
ON Prod.CodFornecedor = F.Codigo
WHERE ((P.TipoControle = 1
AND O.TipoMovimento = 1)
OR (P.TipoControle = 2
AND 2 = 2
AND (O.TipoMovimento = 0
)))
AND (P.Empresa
IN (1,3,5,7,11,17,33,35,37,39))
AND P.CodOperacao IN (20,434,13,17)
AND P.CodVendInterno = IT.CodVendedor
AND P.DataMovimento >= CAST((select m.DataInicial
from MetaVendedor m
where m.Codigo = it.CodMeta) AS datetime)
AND P.DataMovimento <= CAST((select m.DataFinal
from MetaVendedor m
where m.Codigo = it.CodMeta) AS datetime))
)
AS 'faturado',
dbo.convertemoedareal(it.ValorMeta / (SELECT
m.DiasUteis
FROM MetaVendedor m
WHERE m.Codigo = 478)
) AS 'metadiaria',
dbo.ConverteMoedaReal((SELECT
SUM((CASE
WHEN O.TipoMovimento = 1 AND
P.TipoControle = 1 THEN (CASE
WHEN 1 = 1 THEN (ISNULL((ME.ValorTotal
), 0.00) * -1)
ELSE 0.00
END)
WHEN O.TipoMovimento <> 1
AND P.CodOperacao IN (20,434)
AND P.TipoControle = 2 THEN ISNULL((ME.ValorTotal
), 0.00)
ELSE 0.00
END))
FROM NotasFiscais P
LEFT JOIN Operacoes O
ON O.Codigo = P.CodOperacao
LEFT JOIN MovEstoque ME
ON ME.TipoControle = P.TipoControle
AND ME.CodControle = P.CodControle
AND ME.Empresa = P.Empresa
LEFT JOIN LetraComissaoPreco LC
ON ME.TipoPrecoProduto = LC.TipoPreco
AND ME.CodLetraComissao = LC.CodLetraComissao
LEFT JOIN Entidades E
ON E.Codigo = P.CodEntidade
LEFT JOIN Cidades Cid
ON E.CodCidade = Cid.Codigo
LEFT JOIN Produtos Prod
ON ME.CodProduto = Prod.Codigo
LEFT JOIN Entidades F
ON Prod.CodFornecedor = F.Codigo
WHERE ((P.TipoControle = 1
AND O.TipoMovimento = 1)
OR (P.TipoControle = 2
AND 2 = 2
AND P.CodOperacao IN (20,434,13,17)
AND (O.TipoMovimento = 0
)))
AND (P.Empresa
IN (1,3,5,7,11,17,33,35,37,39))
AND P.CodVendInterno = IT.CodVendedor
AND P.DataMovimento = CONVERT(datetime, FLOOR(CONVERT(float(24), GETDATE()))))
)
AS 'faturahoje',
dbo.ConverteMoedaReal(
it.ValorMeta / (SELECT
m.DiasUteis
FROM MetaVendedor m
WHERE m.Codigo = 478)
- (SELECT
SUM((CASE
WHEN O.TipoMovimento = 1 AND
P.TipoControle = 1 THEN (CASE
WHEN 1 = 1 THEN (ISNULL((ME.ValorTotal
), 0.00) * -1)
ELSE 0.00
END)
WHEN O.TipoMovimento <> 1
AND P.CodOperacao IN (20,434,13,17)
AND P.TipoControle = 2 THEN ISNULL((ME.ValorTotal
), 0.00)
ELSE 0.00
END))
FROM NotasFiscais P
LEFT JOIN Operacoes O
ON O.Codigo = P.CodOperacao
LEFT JOIN MovEstoque ME
ON ME.TipoControle = P.TipoControle
AND ME.CodControle = P.CodControle
AND ME.Empresa = P.Empresa
LEFT JOIN LetraComissaoPreco LC
ON ME.TipoPrecoProduto = LC.TipoPreco
AND ME.CodLetraComissao = LC.CodLetraComissao
LEFT JOIN Entidades E
ON E.Codigo = P.CodEntidade
LEFT JOIN Cidades Cid
ON E.CodCidade = Cid.Codigo
LEFT JOIN Produtos Prod
ON ME.CodProduto = Prod.Codigo
LEFT JOIN Entidades F
ON Prod.CodFornecedor = F.Codigo
WHERE ((P.TipoControle = 1
AND O.TipoMovimento = 1)
OR (P.TipoControle = 2
AND 2 = 2
AND P.CodOperacao IN (20,434,13,17)
AND (O.TipoMovimento = 0
)))
AND (P.Empresa
IN (1,3,5,7,11,17,33,35,37,39))
AND P.CodVendInterno = IT.CodVendedor
AND P.DataMovimento = CONVERT(datetime, FLOOR(CONVERT(float(24), GETDATE()))))
) AS 'faltametadiaria',
dbo.ConverteMoedaReal(
it.ValorMeta - (SELECT
SUM((CASE
WHEN O.TipoMovimento = 1 AND
P.TipoControle = 1 THEN (CASE
WHEN 1 = 1 THEN (ISNULL((ME.ValorTotal
), 0.00) * -1)
ELSE 0.00
END)
WHEN O.TipoMovimento <> 1
AND P.CodOperacao IN (20,434,13,17)
AND P.TipoControle = 2 THEN ISNULL((ME.ValorTotal
), 0.00)
ELSE 0.00
END))
FROM NotasFiscais P
LEFT JOIN Operacoes O
ON O.Codigo = P.CodOperacao
LEFT JOIN MovEstoque ME
ON ME.TipoControle = P.TipoControle
AND ME.CodControle = P.CodControle
AND ME.Empresa = P.Empresa
LEFT JOIN LetraComissaoPreco LC
ON ME.TipoPrecoProduto = LC.TipoPreco
AND ME.CodLetraComissao = LC.CodLetraComissao
LEFT JOIN Entidades E
ON E.Codigo = P.CodEntidade
LEFT JOIN Cidades Cid
ON E.CodCidade = Cid.Codigo
LEFT JOIN Produtos Prod
ON ME.CodProduto = Prod.Codigo
LEFT JOIN Entidades F
ON Prod.CodFornecedor = F.Codigo
WHERE ((P.TipoControle = 1
AND O.TipoMovimento = 1)
OR (P.TipoControle = 2
AND 2 = 2
AND P.CodOperacao IN (20,434,13,17)
AND (O.TipoMovimento = 0
)))
AND (P.Empresa
IN (1,3,5,7,11,17,33,35,37,39))
AND P.CodVendInterno = IT.CodVendedor
AND P.DataMovimento >= CAST((select m.DataInicial
from MetaVendedor m
where m.Codigo = it.CodMeta) AS datetime)
AND P.DataMovimento <= CAST((select m.DataFinal
from MetaVendedor m
where m.Codigo = it.CodMeta) AS datetime))
) AS 'faltameta', dbo.ConverteMoedaReal(
((it.ValorMeta - (SELECT
SUM((CASE
WHEN O.TipoMovimento = 1 AND
P.TipoControle = 1 THEN (CASE
WHEN 1 = 1 THEN (ISNULL((ME.ValorTotal
), 0.00) * -1)
ELSE 0.00
END)
WHEN O.TipoMovimento <> 1
AND P.CodOperacao IN (20,434,13,17)
AND P.TipoControle = 2 THEN ISNULL((ME.ValorTotal
), 0.00)
ELSE 0.00
END))
FROM NotasFiscais P
LEFT JOIN Operacoes O
ON O.Codigo = P.CodOperacao
LEFT JOIN MovEstoque ME
ON ME.TipoControle = P.TipoControle
AND ME.CodControle = P.CodControle
AND ME.Empresa = P.Empresa
LEFT JOIN LetraComissaoPreco LC
ON ME.TipoPrecoProduto = LC.TipoPreco
AND ME.CodLetraComissao = LC.CodLetraComissao
LEFT JOIN Entidades E
ON E.Codigo = P.CodEntidade
LEFT JOIN Cidades Cid
ON E.CodCidade = Cid.Codigo
LEFT JOIN Produtos Prod
ON ME.CodProduto = Prod.Codigo
LEFT JOIN Entidades F
ON Prod.CodFornecedor = F.Codigo
WHERE ((P.TipoControle = 1
AND O.TipoMovimento = 1)
OR (P.TipoControle = 2
AND 2 = 2
AND P.CodOperacao IN (20,434,13,17)
AND (O.TipoMovimento = 0
)))
AND (P.Empresa
IN (1,3,5,7,11,17,33,35,37,39))
AND P.CodVendInterno = IT.CodVendedor
AND P.DataMovimento >= CAST((select m.DataInicial
from MetaVendedor m
where m.Codigo = it.CodMeta) AS datetime)
AND P.DataMovimento <= CAST((select m.DataFinal
from MetaVendedor m
where m.Codigo = it.CodMeta) AS datetime))
)
/
it.ValorMeta) * 100) as 'falta'
FROM MetaVendedorItem it
LEFT JOIN Vendedores ven ON IT.CodVendedor= VEN.Codigo
WHERE it.CodMeta = 484
AND it.CodVendedor in (1013,1023,1025,1029,1030,1051,1055,1056,1104,1226,1319,3030,27006,1119,1324,1177,21040,21064)
ORDER BY 6 desc