Perguntas Duvida Query
- juliocesar
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 5
- Obrigados Recebidos: 0
12 anos 5 meses atrás #1871
por juliocesar
Duvida Query foi criado por juliocesar
Bom dia Pessoal,
Estou com um problema na query abaixo, estou usando o SUM para trazer o que tenho no meu estoque(SB2) e o que esta liberado pelo financeiro(SC9), no resultado a query esta me trazendo um valor bem acima di que tenho liberado pelo meu Financeiro no (SC9).
Se alguem puder me ajudar.
Segue Query:
select
SALDOPRODUTO.B2_COD AS 'CODIGO',
SALDOPRODUTO.B2_QATU AS 'SALDO EM ESTOQUE',
SALDOPRODUTO.B2_LOCAL AS 'ARMAZEM',
SALDOPRODUTO.B2_QEMP AS 'EMPENHO',
SUM (PEDSLIBERADOS.C9_QTDLIB) AS 'QTDE COM LIB FINANC',
SUM(OP.C2_QUANT) AS 'QTDE OP'
FROM SB2010 AS SALDOPRODUTO
LEFT OUTER JOIN SC9010 AS PEDSLIBERADOS ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = PEDSLIBERADOS.C9_PRODUTO+PEDSLIBERADOS.C9_LOCAL
LEFT OUTER JOIN SC2010 AS OP ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = OP.C2_PRODUTO+OP.C2_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
PEDSLIBERADOS.D_E_L_E_T_ <>'*' AND
OP.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL ='01'AND
PEDSLIBERADOS.C9_LOCAL ='01'
GROUP BY SALDOPRODUTO.B2_COD,SALDOPRODUTO.B2_QATU,SALDOPRODUTO.B2_LOCAL,SALDOPRODUTO.B2_QEMP
ORDER BY SALDOPRODUTO.B2_COD ASC
Estou com um problema na query abaixo, estou usando o SUM para trazer o que tenho no meu estoque(SB2) e o que esta liberado pelo financeiro(SC9), no resultado a query esta me trazendo um valor bem acima di que tenho liberado pelo meu Financeiro no (SC9).
Se alguem puder me ajudar.
Segue Query:
select
SALDOPRODUTO.B2_COD AS 'CODIGO',
SALDOPRODUTO.B2_QATU AS 'SALDO EM ESTOQUE',
SALDOPRODUTO.B2_LOCAL AS 'ARMAZEM',
SALDOPRODUTO.B2_QEMP AS 'EMPENHO',
SUM (PEDSLIBERADOS.C9_QTDLIB) AS 'QTDE COM LIB FINANC',
SUM(OP.C2_QUANT) AS 'QTDE OP'
FROM SB2010 AS SALDOPRODUTO
LEFT OUTER JOIN SC9010 AS PEDSLIBERADOS ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = PEDSLIBERADOS.C9_PRODUTO+PEDSLIBERADOS.C9_LOCAL
LEFT OUTER JOIN SC2010 AS OP ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = OP.C2_PRODUTO+OP.C2_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
PEDSLIBERADOS.D_E_L_E_T_ <>'*' AND
OP.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL ='01'AND
PEDSLIBERADOS.C9_LOCAL ='01'
GROUP BY SALDOPRODUTO.B2_COD,SALDOPRODUTO.B2_QATU,SALDOPRODUTO.B2_LOCAL,SALDOPRODUTO.B2_QEMP
ORDER BY SALDOPRODUTO.B2_COD ASC
Por favor Acessar ou Registrar para participar da conversa.
- Andre.Esteves
- Desconectado
- Membro Júnior
Menos
Mais
- Postagens: 31
- Obrigados Recebidos: 0
12 anos 5 meses atrás #1872
por Andre.Esteves
Respondido por Andre.Esteves no tópico Re: Duvida Query
FILTRA NO SC9 O QUE JA FOI FATURADO.
Por favor Acessar ou Registrar para participar da conversa.
- juliocesar
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 5
- Obrigados Recebidos: 0
12 anos 5 meses atrás #1875
por juliocesar
Respondido por juliocesar no tópico Re: Duvida Query
Andre Obrigado!!!!
Poderia me dar uma luz nessa outra query?
Quando tento trazer a quantidade empenhada(C2_QUANT) na sub query ele ma da o erro abaixo:
ERRO: (Subconsulta retornou mais de 1 valor. Isso não é permitido quando a subconsulta segue =,! =, <, <=,>,> = Ou quando a subconsulta é usado como uma expressão.)
select
SALDOPRODUTO.B2_COD AS 'CODIGO',
SALDOPRODUTO.B2_QATU AS 'SALDO EM ESTOQUE',
SUM(PEDSLIBERADOS.C9_QTDLIB) AS 'QTDE COM LIB FINANC',
SALDOPRODUTO.B2_LOCAL AS 'ARMAZEM',
SALDOPRODUTO.B2_QEMP AS 'EMPENHO',
(select
SUM(OP.C2_QUANT) AS 'QTDE OP'
FROM SB2990 AS SALDOPRODUTO
INNER JOIN SC2990 AS OP ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = OP.C2_PRODUTO+OP.C2_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
OP.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL =
GROUP BY SALDOPRODUTO.B2_COD) AS 'TESTE'
FROM SB2990 AS SALDOPRODUTO
INNER JOIN SC9990 AS PEDSLIBERADOS ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = PEDSLIBERADOS.C9_PRODUTO+PEDSLIBERADOS.C9_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
PEDSLIBERADOS.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL ='01'AND
PEDSLIBERADOS.C9_LOCAL ='01'
GROUP BY SALDOPRODUTO.B2_COD,SALDOPRODUTO.B2_QATU,SALDOPRODUTO.B2_LOCAL,SALDOPRODUTO.B2_QEMP
ORDER BY SALDOPRODUTO.B2_COD ASC
Poderia me dar uma luz nessa outra query?
Quando tento trazer a quantidade empenhada(C2_QUANT) na sub query ele ma da o erro abaixo:
ERRO: (Subconsulta retornou mais de 1 valor. Isso não é permitido quando a subconsulta segue =,! =, <, <=,>,> = Ou quando a subconsulta é usado como uma expressão.)
select
SALDOPRODUTO.B2_COD AS 'CODIGO',
SALDOPRODUTO.B2_QATU AS 'SALDO EM ESTOQUE',
SUM(PEDSLIBERADOS.C9_QTDLIB) AS 'QTDE COM LIB FINANC',
SALDOPRODUTO.B2_LOCAL AS 'ARMAZEM',
SALDOPRODUTO.B2_QEMP AS 'EMPENHO',
(select
SUM(OP.C2_QUANT) AS 'QTDE OP'
FROM SB2990 AS SALDOPRODUTO
INNER JOIN SC2990 AS OP ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = OP.C2_PRODUTO+OP.C2_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
OP.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL =
GROUP BY SALDOPRODUTO.B2_COD) AS 'TESTE'
FROM SB2990 AS SALDOPRODUTO
INNER JOIN SC9990 AS PEDSLIBERADOS ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = PEDSLIBERADOS.C9_PRODUTO+PEDSLIBERADOS.C9_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
PEDSLIBERADOS.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL ='01'AND
PEDSLIBERADOS.C9_LOCAL ='01'
GROUP BY SALDOPRODUTO.B2_COD,SALDOPRODUTO.B2_QATU,SALDOPRODUTO.B2_LOCAL,SALDOPRODUTO.B2_QEMP
ORDER BY SALDOPRODUTO.B2_COD ASC
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
12 anos 5 meses atrás #1876
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Re: Duvida Query
select
SALDOPRODUTO.B2_COD AS 'CODIGO',
SALDOPRODUTO.B2_QATU AS 'SALDO EM ESTOQUE',
SALDOPRODUTO.B2_LOCAL AS 'ARMAZEM',
SALDOPRODUTO.B2_QEMP AS 'EMPENHO',
SUM(PEDSLIBERADOS.C9_QTDLIB) AS 'QTDE COM LIB FINANC',
ISNULL((SELECT SUM(OP.C2_QUANT) FROM SC2990 AS OP WHERE SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = OP.C2_PRODUTO+OP.C2_LOCAL AND OP.D_E_L_E_T_ <>'*'),0) AS 'QTDE OP'
FROM SB2990 AS SALDOPRODUTO
INNER JOIN SC9990 AS PEDSLIBERADOS
ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = PEDSLIBERADOS.C9_PRODUTO+PEDSLIBERADOS.C9_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
PEDSLIBERADOS.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL ='01'AND
PEDSLIBERADOS.C9_LOCAL ='01' AND
SALDOPRODUTO.B2_FILIAL = '01' AND
PEDSLIBERADOS.C9_FILIAL = '01'
GROUP BY SALDOPRODUTO.B2_COD,SALDOPRODUTO.B2_QATU,SALDOPRODUTO.B2_LOCAL,SALDOPRODUTO.B2_QEMP
ORDER BY SALDOPRODUTO.B2_COD ASC
veja se funfa ai.
SALDOPRODUTO.B2_COD AS 'CODIGO',
SALDOPRODUTO.B2_QATU AS 'SALDO EM ESTOQUE',
SALDOPRODUTO.B2_LOCAL AS 'ARMAZEM',
SALDOPRODUTO.B2_QEMP AS 'EMPENHO',
SUM(PEDSLIBERADOS.C9_QTDLIB) AS 'QTDE COM LIB FINANC',
ISNULL((SELECT SUM(OP.C2_QUANT) FROM SC2990 AS OP WHERE SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = OP.C2_PRODUTO+OP.C2_LOCAL AND OP.D_E_L_E_T_ <>'*'),0) AS 'QTDE OP'
FROM SB2990 AS SALDOPRODUTO
INNER JOIN SC9990 AS PEDSLIBERADOS
ON SALDOPRODUTO.B2_COD+SALDOPRODUTO.B2_LOCAL = PEDSLIBERADOS.C9_PRODUTO+PEDSLIBERADOS.C9_LOCAL
WHERE
SALDOPRODUTO.D_E_L_E_T_ <>'*' AND
PEDSLIBERADOS.D_E_L_E_T_ <>'*' AND
SALDOPRODUTO.B2_LOCAL ='01'AND
PEDSLIBERADOS.C9_LOCAL ='01' AND
SALDOPRODUTO.B2_FILIAL = '01' AND
PEDSLIBERADOS.C9_FILIAL = '01'
GROUP BY SALDOPRODUTO.B2_COD,SALDOPRODUTO.B2_QATU,SALDOPRODUTO.B2_LOCAL,SALDOPRODUTO.B2_QEMP
ORDER BY SALDOPRODUTO.B2_COD ASC
veja se funfa ai.
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- juliocesar
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 5
- Obrigados Recebidos: 0
12 anos 5 meses atrás #1877
por juliocesar
Respondido por juliocesar no tópico Re: Duvida Query
Luiz Alberto é isso mesmo, muito obrigado!!!
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
12 anos 5 meses atrás #1878
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Re: Duvida Query
Blz Julio, precisando só perguntar ai ok, divulga o site para os amigos e posta sua foto no perfil, e mais fotos para incentivarmos a galera ok.
Abraços.
Abraços.
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.101 segundos