3
I have the following query:
SELECT
MOVTIPOPRODUTO.ID_ENTIDADE, 
ENTIDADE.NOMECLIENTE, 
PRODUTO.NOMEPRODUTO, 
TIPOPRODUTO.DESCRICAO,
MOVTIPOPRODUTO.ID_PRODUTO, 
MOVTIPOPRODUTO.ID_TIPOPRODUTO, 
MOVTIPOPRODUTO.ID_SAFRA,  
MOVTIPOPRODUTO.ID_LOCALESTOQUE, 
MOVTIPOPRODUTO.TIPOLCTO, 
SUM(QTDEKG) AS SALDO_KG
FROM MOVTIPOPRODUTO 
INNER JOIN PRODUTO ON PRODUTO.ID_PRODUTO = MOVTIPOPRODUTO.ID_PRODUTO 
INNER JOIN TIPOPRODUTO ON TIPOPRODUTO.ID_TIPOPRODUTO = MOVTIPOPRODUTO.ID_TIPOPRODUTO 
LEFT JOIN ENTIDADE ON ENTIDADE.ID_CLIENTE = MOVTIPOPRODUTO.ID_ENTIDADE 
LEFT JOIN PESAGEM ON PESAGEM.REFERENCIA = MOVTIPOPRODUTO.REFERENCIA 
WHERE (MOVTIPOPRODUTO.ID_ENTIDADE > 0) 
AND ISNULL(MOVTIPOPRODUTO.ID_ENTIDADE, 0) = 88
AND MOVTIPOPRODUTO.CANCELADO = 0 
GROUP BY 
MOVTIPOPRODUTO.ID_PRODUTO, 
MOVTIPOPRODUTO.ID_TIPOPRODUTO, 
MOVTIPOPRODUTO.ID_SAFRA, 
MOVTIPOPRODUTO.ID_ENTIDADE, 
MOVTIPOPRODUTO.ID_LOCALESTOQUE, 
PRODUTO.NOMEPRODUTO, 
TIPOPRODUTO.DESCRICAO, 
ENTIDADE.NOMECLIENTE, 
MOVTIPOPRODUTO.TIPOLCTO
ORDER BY PRODUTO.NOMEPRODUTO
And I need that depending on the TIPOLCTO the value (SUM(QTDEKG) AS SALDO_KG) be subtracted instead of summed. 
Ex:
- If TIPOLCTO = 1, he must add
- If TIPOLCTO = 2, he must subtract
- If TIPOLCTO = 3, it must subtract (also)
- If TIPOLCTO = 0, he must ignore the value
I’ve tried everything, but I can’t understand how he’s gonna do it
Today is returning me the following result:
ID  NOME            PROD.   TIPO PROD.      ID1 ID2 ID3 ID4 TIPOLCTO    SALDO_KG
88  NOME DO CLIENTE SOJA    SOJA INTACTA    1   3   3   1   4           1243997,496
88  NOME DO CLIENTE TRIGO   TRIGO TIPO 1    3   4   1   1   4           800265,21
88  NOME DO CLIENTE TRIGO   TRIGO TIPO 1    3   4   2   1   4           780134,434
88  NOME DO CLIENTE TRIGO   TRIGO TIPO 2    3   5   1   1   4           438133,43
88  NOME DO CLIENTE TRIGO   TRIGO TIPO 2    3   5   2   1   4           71170,524
88  NOME DO CLIENTE TRIGO   TRIGO TIPO 3    3   6   1   1   2           570,00
88  NOME DO CLIENTE TRIGO   TRIGO TIPO 3    3   6   1   1   4           65413,94
Today I’m listing this table in a PHP table, thanks in advance!
and when it is
4(as in most lines)?– rLinhares
It will subtract as well, because the launch type in the case means whether the value gave input, output, internal or external transfer which would also be subtraction in the case! Thank you
– Emerson - IGS Informática