Ir para conteúdo
Fórum Script Brasil
  • 0

Informação repetida mesmo com Distinct


vitorm07

Pergunta

Bom dia, estou precisando de uma ajuda na query abaixo, pois em alguns casos, por exemplo quando existe 1 item que foi selecionado duas vezes no mesmo pedido com o mesmo lote, o agrupamento mínimo (PRO.AGRUPMIN) está sendo somado no momento da divisão do (ITEM.QTDNEG/PRO.AGRUPMIN) AS EMBALAGENS na linha 6, retornando uma quantidade incorreta de embalagens para separação.

Por exemplo, se eu tenho o produto de código 100 com o lote 123 selecionado duas vezes no mesmo pedido, com quantidade 20 em cada pedido e o agrupamento mínimo é 5, o resultado deveria ser:

Produto 100| Lote 123| Quantidade 40| Embalagens 8 (40/5)

Porém, o que está acontecendo é:

Produto 100|Lote 123| Quantidade 40| Embalagens 4 (40/(5+5))

 

SELECT DISTINCT
         PAR.NOMEPARC,
         CAB.NUNOTA,
         ITE.QTDNEG,
         AD_LAUDO,
         PRO.AGRUPMIN,
         (ITE.QTDNEG/PRO.AGRUPMIN) AS EMBALAGENS,
         CAB.ORDEMCARGA AS "N_Ordem_de_Carga",
         ORD.PESOMAX AS "Peso_Max",
         ORD.CODVEICULO AS "Cod_Veiculo_da_OC",
         VEI.MARCAMODELO AS "Modelo_Veiculo_OC",
         VEI.PLACA AS "Placa_OC",
         VEI.PESOMAX AS "Peso_Max_Veiculo_2",
         TPO.DESCROPER AS "NOMETOP",
         ITE.CODPROD AS "Codigo_do_Produto",
         PRO.DESCRPROD AS "Descrição_do_Produto",
         ITE.CONTROLE AS "Controle",
         PRO.CODVOL AS "Un",
         PRO.PESOBRUTO AS "Peso_Bruto",
         SUM (ITE.QTDNEG * (CASE WHEN CAB.TIPMOV = 'D' THEN -1 ELSE 1 END))
         AS "SOMA_QUANTIDADE_NEGOCIADA",
         SUM (ITE.QTDNEG * (CASE WHEN CAB.TIPMOV = 'D' THEN -1 ELSE 1 END))
         * PRO.PESOBRUTO
         AS "PESO_TOTAL_ITEM"
 FROM TGFCAB /*CC (Empresa, CODEMP) (Centro de Resultado, CODCENCUS) (Natureza, CODNAT) (Projeto, CODPROJ) (Parceiro, CODPARC) (TOP, CODTIPOPER) CC*/ CAB,
         TGFORD  /*CC (Empresa, CODEMP) CC*/ ORD,
         TGFVEI VEI,
         TGFITE /*CC (Empresa, CODEMP) (Local, CODLOCALORIG) CC*/ ITE,
         TGFPRO /*CC (Centro de Resultado, CODCENCUS) (Natureza, CODNAT) (Projeto, CODPROJ) (Parceiro, CODPARCFORN) (Produto, CODPROD) (Grupo de Produto, CODGRUPOPROD) CC*/ PRO,
         TGFTOP TPO,
         TGFPAR PAR
   WHERE ITE.NUNOTA = CAB.NUNOTA
         AND PAR.CODPARC = CAB.CODPARC
        -- AND CAB.CODEMP = ORD.CODEMP
         AND ORD.CODVEICULO = VEI.CODVEICULO
         AND ITE.CODPROD = PRO.CODPROD
         AND CAB.CODTIPOPER = TPO.CODTIPOPER
         AND CAB.DHTIPOPER = TPO.DHALTER
         AND CAB.ORDEMCARGA = ORD.ORDEMCARGA
         AND ((CAB.ORDEMCARGA=$P{P0}))
         AND PRO.USOPROD <> 'S'
         AND TPO.TIPMOV = 'P'
         AND TPO.CODTIPOPER NOT IN (123,129,121,127,39,130,3200,120,126)
GROUP BY
         PAR.NOMEPARC,
         CAB.NUNOTA,
         CAB.ORDEMCARGA,
         ORD.PESOMAX,
         ORD.CODVEICULO,
         VEI.MARCAMODELO,
         ITE.QTDNEG,
         VEI.PLACA,
         VEI.PESOMAX,
         ITE.CODPROD,
         PRO.DESCRPROD,
         TPO.DESCROPER,
         ITE.CONTROLE,
         PRO.CODVOL,
         PRO.PESOBRUTO,
         PRO.AGRUPMIN,
         AD_LAUDO
ORDER BY CAB.NUNOTA

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...