×
Linguagem de Programação ADVPL
Perguntas AJUDA COM QUERY
- will3698
- Autor do Tópico
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 310
- Obrigados Recebidos: 1
11 anos 2 semanas atrás #18284
por will3698
AJUDA COM QUERY foi criado por will3698
Ola boa tarde !
minha sala esta fedendo queimado já de tanto queimar minha mufa pra tentar resolver um problema
é simples, desenvolvi uma query, com o conhecimento limitado que tenho em sql, para me trazer algumas informações, ela esta em anexo, e tirando a parte que eu comentei esta funcionando perfeitamente, só que o abençoado usuário que que apareça o campo com a quantidade da nota de entrada. enfim, olhando a parte que eu comentei vai ficar melhor de entender . quando eu coloco ela, os registros duplicam em algumas ocasiões onde eu tenho mais de uma entrada no periodo
fico grato !
SELECT DISTINCT(D1_COD) PRODUTO,
B1_DESC DESCRICAO,
TO_CHAR(TO_DATE(MAX(D1_DTDIGIT), 'yyyymmdd'), 'DD/MM/YYYY') AS ULT_ENTRADA,
-- D1_QUANT QTD_ENTRADA,
TO_CHAR(TO_DATE(MAX(D2_EMISSAO), 'yyyymmdd'), 'DD/MM/YYYY') AS ULT_SAIDA,
TO_DATE(MAX(D2_EMISSAO), 'yyyymmdd')-TO_DATE(MAX(D1_DTDIGIT), 'yyyymmdd') AS TEMPO_PARADO,
B2_QATU QTD_ATUAL,
D1_LOCAL ARMAZEN
FROM SD1010 D1,SD2010 D2, SB1010 B1, SB2010 B2
WHERE D1.D1_DTDIGIT BETWEEN '20130101' AND '20131105'
AND D1.D1_COD = D2.D2_COD
AND D1.D1_FILIAL = D2.D2_FILIAL
AND D1.D_E_L_e_T_ <> '*'
AND D2.D_E_L_e_T_ <> '*'
AND B1.D_E_L_e_T_ <> '*'
AND B2.D_E_L_E_T_ <> '*'
AND D1.D1_COD = B2.B2_COD
AND D1.D1_LOCAL = B2.B2_LOCAL
AND D1.D1_FILIAL = B2.B2_FILIAL
AND D1.D1_COD = B1.B1_COD
AND B2.B2_QATU > 0
AND D1.D1_COD IN (SELECT B1_COD FROM SB1010 WHERE B1_GRUPO BETWEEN '2001' AND '2001')
AND D1.D1_COD BETWEEN ' ' AND 'ZZZZZZZZZ'
AND D1.D1_LOCAL BETWEEN '05' AND '05'
AND D1.D1_FILIAL BETWEEN '06' AND '06'
AND D1.D1_TIPO <> 'D'
GROUP BY D1_COD,B1_DESC,D1_LOCAL,B2_QATU--,D1_QUANT
ORDER BY D1_COD;
minha sala esta fedendo queimado já de tanto queimar minha mufa pra tentar resolver um problema
é simples, desenvolvi uma query, com o conhecimento limitado que tenho em sql, para me trazer algumas informações, ela esta em anexo, e tirando a parte que eu comentei esta funcionando perfeitamente, só que o abençoado usuário que que apareça o campo com a quantidade da nota de entrada. enfim, olhando a parte que eu comentei vai ficar melhor de entender . quando eu coloco ela, os registros duplicam em algumas ocasiões onde eu tenho mais de uma entrada no periodo
fico grato !
SELECT DISTINCT(D1_COD) PRODUTO,
B1_DESC DESCRICAO,
TO_CHAR(TO_DATE(MAX(D1_DTDIGIT), 'yyyymmdd'), 'DD/MM/YYYY') AS ULT_ENTRADA,
-- D1_QUANT QTD_ENTRADA,
TO_CHAR(TO_DATE(MAX(D2_EMISSAO), 'yyyymmdd'), 'DD/MM/YYYY') AS ULT_SAIDA,
TO_DATE(MAX(D2_EMISSAO), 'yyyymmdd')-TO_DATE(MAX(D1_DTDIGIT), 'yyyymmdd') AS TEMPO_PARADO,
B2_QATU QTD_ATUAL,
D1_LOCAL ARMAZEN
FROM SD1010 D1,SD2010 D2, SB1010 B1, SB2010 B2
WHERE D1.D1_DTDIGIT BETWEEN '20130101' AND '20131105'
AND D1.D1_COD = D2.D2_COD
AND D1.D1_FILIAL = D2.D2_FILIAL
AND D1.D_E_L_e_T_ <> '*'
AND D2.D_E_L_e_T_ <> '*'
AND B1.D_E_L_e_T_ <> '*'
AND B2.D_E_L_E_T_ <> '*'
AND D1.D1_COD = B2.B2_COD
AND D1.D1_LOCAL = B2.B2_LOCAL
AND D1.D1_FILIAL = B2.B2_FILIAL
AND D1.D1_COD = B1.B1_COD
AND B2.B2_QATU > 0
AND D1.D1_COD IN (SELECT B1_COD FROM SB1010 WHERE B1_GRUPO BETWEEN '2001' AND '2001')
AND D1.D1_COD BETWEEN ' ' AND 'ZZZZZZZZZ'
AND D1.D1_LOCAL BETWEEN '05' AND '05'
AND D1.D1_FILIAL BETWEEN '06' AND '06'
AND D1.D1_TIPO <> 'D'
GROUP BY D1_COD,B1_DESC,D1_LOCAL,B2_QATU--,D1_QUANT
ORDER BY D1_COD;
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.089 segundos