GARANTIR DESCONTO

Fórum Problema com consulta ADOQuery #266827

31/01/2005

0

Estou usando um delphi 7 com sql server.

Estou com problema nesta rotina:

Uso adoquery, (no meu datamoduulo, esta configurado o parametro e a sql), só que qdo executo, fala que o parametro txtcodigo não existe.

Se alguem puder me ajudar? :?:

DM.QRelRastrear.SQL.Clear;
DM.QRelRastrear.SQL.Add(´select i.codped, p.dtpedido, p.codcli, p.cliente, i.produto, i.qtde, i.nossolote from itens2 as i inner join pedidos2 as p´);
DM.qRelRastrear.SQL.Add(´on i.codped = p.codped´);
DM.QRelRastrear.SQL.Add(´WHERE i.produto like ´´:txtcodigo´´´);
DM.QRelRastrear.SQL.Add(´ORDER BY p.dtpedido´);

DM.QRelRastrear.Parameters.ParamByName(´txtcodigo´).Value := cbxProduto.Text;
ShowMessage(DM.QRelRastrear.Parameters.ParamByName(´txtcodigo´).Value);
DM.QRelRastrear.ExecSQL;


Mfilho

Mfilho

Responder

Posts

31/01/2005

Sandra

mfilho,

O que realmente deseja fazer com sua ADOQuery: consultar ([b:1e36ea6411]Select[/b:1e36ea6411]) ou inserir, alterar ou deletar ([b:1e36ea6411]Insert[/b:1e36ea6411], [b:1e36ea6411]Update[/b:1e36ea6411] ou [b:1e36ea6411]Delete[/b:1e36ea6411]) dados?

Pergunto pois, se quer consultar (devido a instrução Select), utilize o ´DM.QRelRastrear.Open;´. Utilize o ´DM.QRelRastrear.ExecSQL;´ somente se for inserir, alterar ou deletar dados.

Obs.: antes do ´DM.QRelRastrear.SQL.Clear;´ não se esqueça do ´DM.QRelRastrear.Close´.


Espero que ajude.


Responder

Gostei + 0

31/01/2005

Mfilho

O meu problema está nesta linha, o parametro não esta sendo substituido pela variavel

Estou fazendo uma consulta para rastrear os lotes que o produto pertence.
O parametro txtcodigo, eu criei no adoquery, mas na hora de executar a consulta ele fala que o parametro não existe.
nesta linha abaixo.

DM.QRelRastrear.SQL.Add(´WHERE i.produto like ´´:txtcodigo´´´);


Responder

Gostei + 0

31/01/2005

Sandra

Tente fazer sua consulta assim:

DM.QRelRastrear.SQL.Add(´WHERE i.produto like :txtcodigo´);
Sem o par de aspas simples.

Outra coisa, substituiu o ExecSQL por Open?


Responder

Gostei + 0

31/01/2005

Mfilho

legal, sem as aspas funcionou.

Tive que tirar tambem o ¬ do parametro do like para funcionar, só que desse jeito ele só consulta o produto com o nome exato, quanto colocar as primeiras palavras do produto, consulte todos que começam com a palavra colocado.

Alguem pode me ajudar?


Responder

Gostei + 0

31/01/2005

Vinicius2k

Colega,
lTive que tirar tambem o ¬ do parametro do like para funcionar, só que desse jeito ele só consulta o produto com o nome exato, quanto colocar as primeiras palavras do produto, consulte todos que começam com a palavra colocado.


Vc deve colocar o [b:9cf1f01cca]¬[/b:9cf1f01cca] no valor que estará sendo passado ao parametro, por exemplo, desta forma :
DM.QRelRastrear.Parameters.ParamByName(´txtcodigo´).Value := cbxProduto.Text + ´¬´; 


T+


Responder

Gostei + 0

31/01/2005

Mfilho

legal, era isso mesmo.

muito obrigado.


Responder

Gostei + 0

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

Aceitar