[firebase-br] Duvida SubSelect

Pedro Ernesto Braga bragaped em gmail.com
Sáb Jan 2 16:31:15 -03 2010


Em 31/12/2009 09:59, Everton Barbosa escreveu:
> select nf.num_nf,nf.cod_fornecedor,nf.num_pedido from nfentrada as nf
> where nf.cod_fornecedor=(select f.fornecedor from fornecedores as f where
> f.cpfcnpj=:cnpj)
> and nf.num_nf=:num_nf and nf.num_pedido=0 and nf.cod_empresa=:cod_empresa
>
> como vc está fazendo uma comparação de codigo fornecedor se for igual a
> fornecedor...
>
> where nf.cod_fornecedor=(select f.cod_fornecedor from fornecedores as f
> where
> f.cpfcnpj=:cnpj)
> faça um join aki para resolver este problema do código.
>
> "select nf.num_nf,nf.cod_fornecedor,nf.num_pedido from nfentrada nf,
> fornecedor f
> where nf.cod_fornecedor = f.fornecedor"
>
> não se pode comparar number com string, varchar(a não ser que seja número).
>   e os campos num_nf e cod_empresa vem de qual table?
> ______________________________________________
> 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
>
>    
o Problema é que o sistema não verificava o cnpj anteriormente para 
evitar esse erro, agora foi colocado essa verificação e o alterei o 
subselect colocando (select first 1 f.fornecedor from fornecedores as f 
where f.cpjcnpj=:cnpj) ai mesmo que tenha 2 fornecedores com o mesmo 
cnpj cadastraro ira retornar apenas 1 fazendo e informando o usuario 
caso existe 2 para o mesmo corrigir o problema. Obrigado.

-- 
Pedro Braga
Desenvolvedor



Mais detalhes sobre a lista de discussão lista