Fórum duvida no uso do parambyname #528625

13/08/2015

0

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

Responder

Posts

13/08/2015

Mateus Ribeiro

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 || '%')
Responder

Gostei + 0

13/08/2015

Emanuel Gonçalves

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.
Responder

Gostei + 0

13/08/2015

Emanuel Gonçalves

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
Responder

Gostei + 0

13/08/2015

Emanuel Gonçalves

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 !!!
Responder

Gostei + 0

13/08/2015

Raimundo Pereira

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 .
Responder

Gostei + 0

13/08/2015

Emanuel Gonçalves

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 || '%')
Responder

Gostei + 0

13/08/2015

Mateus Ribeiro

Que bom que deu certo! Precisando estamos aí :D
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar