terça-feira, 12 de dezembro de 2023

SELECT considerando unidade alternativa (TGFVOA)

SELECT    
    CASE WHEN EXISTS(SELECT 1 FROM TGFVOA WHERE CODPROD = ITE.CODPROD AND VOA.CODVOL = ITE.CODVOL) THEN
        CASE WHEN VOA.DIVIDEMULTIPLICA = 'M' 
          THEN ITE.QTDNEG * VOA.QUANTIDADE 
          ELSE ITE.QTDNEG / VOA.QUANTIDADE
        END
    ELSE 
        ITE.QTDNEG
    END AS QTDNEG,
    CASE WHEN EXISTS(SELECT 1 FROM TGFVOA WHERE CODPROD = ITE.CODPROD AND VOA.CODVOL = ITE.CODVOL) THEN
        CASE WHEN VOA.DIVIDEMULTIPLICA = 'M' 
          THEN (ITE.VLRUNIT - (ITE.VLRDESC / ITE.QTDNEG)) * VOA.QUANTIDADE 
          ELSE (ITE.VLRUNIT - (ITE.VLRDESC / ITE.QTDNEG)) / VOA.QUANTIDADE
        END
    ELSE 
        (ITE.VLRUNIT - (ITE.VLRDESC / ITE.QTDNEG))
    END AS VLRUNITLIQ
FROM
    TGFITE ITE
    LEFT JOIN TGFVOA VOA ON ITE.CODPROD = VOA.CODPROD AND ITE.CODVOL = VOA.CODVOL

Nenhum comentário:

Postar um comentário