[firebase-br] Duvida SQL

Pedro Braga bragaped em gmail.com
Qua Out 3 10:48:38 -03 2012


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



Mais detalhes sobre a lista de discussão lista