duvida no uso do parambyname

Delphi

13/08/2015

boa tarde, sou novo no fórum e no delphi

bem vamos aos detalhes

na query eu estou com esse select

SELECT F_FANTASIA, F_CNPJ_CPF, NE_VALORNOTA, NE_VALICMS
FROM FORNECEDORES
LEFT JOIN NOTAS_ENTRADAS ON F_NUMERO = NE_COD_FORNEC
WHERE F_NOME = :NOME

e no evento onclick do botão estou com esse código

FBQuery_Fornecedor.Close;
FBQuery_Fornecedor.SQL;
FBQuery_Fornecedor.ParamByName('nome').Value:= Edit1.Text;
FBQuery_Fornecedor.open;


a ideia é digitar parte do nome nesse edit1 e mostrar o resultado em um dbgrid, da forma que está a busta só retorna o resultado no dbgrid se for digitado o nome completo do fornecedor
Emanuel Gonçalves

Emanuel Gonçalves

Curtidas 0

Respostas

Mateus Ribeiro

Mateus Ribeiro

13/08/2015

Boa tarde!

Faça o seguinte:

SELECT F_FANTASIA, F_CNPJ_CPF, NE_VALORNOTA, NE_VALICMS 
FROM FORNECEDORES 
LEFT JOIN NOTAS_ENTRADAS ON F_NUMERO = NE_COD_FORNEC 
WHERE F_NOME  LIKE  ('%' || :NOME || '%')
GOSTEI 0
Emanuel Gonçalves

Emanuel Gonçalves

13/08/2015

Boa tarde!

Faça o seguinte:

SELECT F_FANTASIA, F_CNPJ_CPF, NE_VALORNOTA, NE_VALICMS 
FROM FORNECEDORES 
LEFT JOIN NOTAS_ENTRADAS ON F_NUMERO = NE_COD_FORNEC 
WHERE F_NOME  LIKE  ('%' || :NOME || '%')



Mateus o erro continua o mesmo

FBQuery_Fornecedor:parameter 'nome' not found.
GOSTEI 0
Emanuel Gonçalves

Emanuel Gonçalves

13/08/2015

Boa tarde!

Faça o seguinte:

SELECT F_FANTASIA, F_CNPJ_CPF, NE_VALORNOTA, NE_VALICMS 
FROM FORNECEDORES 
LEFT JOIN NOTAS_ENTRADAS ON F_NUMERO = NE_COD_FORNEC 
WHERE F_NOME  LIKE  ('%' || :NOME || '%')



Mateus o erro continua o mesmo

FBQuery_Fornecedor:parameter 'nome' not found.


fiz o que vc sugeriu, o erro não aparece, mas a pesquisa não retorna nenhum valor no dbgri
GOSTEI 0
Emanuel Gonçalves

Emanuel Gonçalves

13/08/2015

Boa tarde!

Faça o seguinte:

SELECT F_FANTASIA, F_CNPJ_CPF, NE_VALORNOTA, NE_VALICMS 
FROM FORNECEDORES 
LEFT JOIN NOTAS_ENTRADAS ON F_NUMERO = NE_COD_FORNEC 
WHERE F_NOME  LIKE  ('%' || :NOME || '%')



Mateus o erro continua o mesmo

FBQuery_Fornecedor:parameter 'nome' not found.


fiz o que vc sugeriu, o erro não aparece, mas a pesquisa não retorna nenhum valor no dbgri


Mateus resolvido, foi falta de atenção minha, não tinha colocado o LIKE. Obrigado !!!
GOSTEI 0
Raimundo Pereira

Raimundo Pereira

13/08/2015

Vitor boa tarde,

Não conseguir entender direito,

a ideia é digitar [parte] do nome nesse edit1 e mostrar o resultado em um dbgrid,
da forma que está a busca só retorna o resultado no dbgrid se for [digitado o nome completo] do fornecedor


A dúvida é se você pretende digitar parte do nome do fornecedor ou o nome completo do fornecedor dentro do edit1 .
GOSTEI 0
Emanuel Gonçalves

Emanuel Gonçalves

13/08/2015

Vitor boa tarde,

Não conseguir entender direito,

a ideia é digitar [parte] do nome nesse edit1 e mostrar o resultado em um dbgrid,
da forma que está a busca só retorna o resultado no dbgrid se for [digitado o nome completo] do fornecedor


A dúvida é se você pretende digitar parte do nome do fornecedor ou o nome completo do fornecedor dentro do edit1 .


Boa tarde P2

A ideia é digitar parte do nome do fornecedor, mas foi resolvido mudando apenas LIKE ('%' || :NOME || '%') na consulta dentro da Query

A consulta antiga estava assim

SELECT F_FANTASIA, F_CNPJ_CPF, NE_VALORNOTA, NE_VALICMS
FROM FORNECEDORES
LEFT JOIN NOTAS_ENTRADAS ON F_NUMERO = NE_COD_FORNEC
WHERE F_NOME = :NOME


A consulta corrigida ficou assim com o like no final

SELECT F_FANTASIA, F_CNPJ_CPF, NE_VALORNOTA, NE_VALICMS
FROM FORNECEDORES
LEFT JOIN NOTAS_ENTRADAS ON F_NUMERO = NE_COD_FORNEC
WHERE F_NOME LIKE ('%' || :NOME || '%')
GOSTEI 0
Mateus Ribeiro

Mateus Ribeiro

13/08/2015

Que bom que deu certo! Precisando estamos aí :D
GOSTEI 0
POSTAR