[firebase-br] Duvida SQL

Matheus(GMAIL) matheus.jgs em gmail.com
Qua Out 3 10:54:47 -03 2012


Cara, acho que pra facilitar tua vida coloque  o group by com o nome dos
campos.

Ou tenta colocar o  (b.estoque_anterior, p.qtd_saldo) no group by...
Ve lá capaz que falta somente esses itens...  eu nao olhei afundo o teu
sql..
-----Original Message-----
From: lista [mailto:lista-bounces em firebase.com.br] On Behalf Of Pedro Braga
Sent: quarta-feira, 3 de outubro de 2012 10:49
To: FireBase
Subject: [firebase-br] Duvida SQL

Bom Dia a Todos Estou enfrentando uma dificuldade e gostaria de entender
qual o motivo do problema,

SQL:
select b.cod_produto, 0, 0, '0',cast('01/05/2012' as date),'0',
p.registro_ms,
 cast('01/05/2012' as date),0,cast('01/05/2012' as date),
 1,0,'M','M',
 '1','55',       p.qtd_saldo , b.estoque_anterior,
 p.qtd_saldo-(b.estoque_anterior+sum(b.entrada)-sum(b.saida)-sum(b.perda))
as diferenca
from balanco_controlado(:dat_inicial,:dat_final) b
join produtos p on p.cod_produto=b.cod_produto
group by 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 ,17,18
having ( p.qtd_saldo<>(
b.estoque_anterior+sum(b.entrada)-sum(b.saida)-sum(b.perda) ) )

o que preciso é trazar os dados da forma que estão sem as colunas
p.qtd_saldo e b.estoque_anterior contudo se removo as colunas ele me da erro
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid expression in the select list (not contained in either an aggregate
function or the GROUP BY clause).

esse sql será utilizado para realizar um insert em outra tabela  ficando
assim

INSERT INTO CONTROLADO_ENTRADA
(COD_PRODUTO, COD_FORNECEDOR, NUM_NF, CNPJ, DAT_NF, REGISTRO_MS,
DAT_RECEBIMENTO, LOTE_ANVISA, TRANSMISSAO_ANVISA,
NUM_ITEM, ESTOQUE_ANTERIOR, TIPO_CADASTRO, TIPO_PRODUTO,
SERIE, MODELO,DCB, QUANTIDADE)

select b.cod_produto, 0, 0, '0',cast('01/05/2012' as date),'0',
p.registro_ms,
 cast('01/05/2012' as date),0,cast('01/05/2012' as date),
 1,0,'M','M',
 '1','55',
 p.qtd_saldo-(b.estoque_anterior+sum(b.entrada)-sum(b.saida)-sum(b.perda))
as diferenca
from balanco_controlado(:dat_inicial,:dat_final) b
join produtos p on p.cod_produto=b.cod_produto
group by 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
having ( p.qtd_saldo<>(
b.estoque_anterior+sum(b.entrada)-sum(b.saida)-sum(b.perda) ) )

gostaria um auxilio dos colegas para solucionar o problema.

Pedro E. Braga
(18) 8144-3939
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista