Fórum Duvida para montar um grid usando consulta SQL #243121
14/07/2004
0
qMensagensPedidas.ParamByName(´Nome´).AsString := dbNome.Text;
Eu consulto na tabela Pedidos e se houver algum pedido com o nome do atual cliente pesquisado no form de cadastro, ele é mostrado no grid.
Até aí tudo blz, só que eu preciso fazer essa pesquisa pelo CODIGO do cliente e não mais pelo nome, o código do cliente é um campo do tipo Integer, e está dando erro na hora de montar a query.
Alguém sabe pq? não é permitido usar parametros com campo do tipo Integer?
qMensagensPedidas.ParamByName(´Codigo´).AsInteger := dbCodigo.Text;
Dá erro nesse comando, ´Type mismatch in expression´.
Marco
Curtir tópico
+ 0Posts
14/07/2004
Paulo_amorim
Olá
O texto em negrito já diz tudo...
Vc tá passando um texto pruma String...
apesar do seu texto ser um numero, ele não sabe disso...vc tem que especificar
ou vc faz
.AsString := dbCodigo.Text
ou então
.AsInteger := StrToInt(dbCodigo.Text);
Espero que ajude
Até+
Gostei + 0
14/07/2004
Marco
select i.NumeroPedido, i.NumeroItem, i.NomeDestinatario, i.Ddd, i.Telefone, i.DataParaEnviar, i.TemaMensagem, i.ValorMensagem, i.MensagemJaEnviada, i.MensagemJaPaga, p.CodigoCliente, p.NomeCliente, p.Numero, i.CaminhoMensagem
from Itens i inner join Pedidos p on ( p.Numero = I.NumeroPedido )
where p.CodigoCliente like:codigo
order by DataParaEnviar desc
Depois qdo vou adicionar os campos na query já dá a mensagem ´Type mismatch in expression´.
Gostei + 0
14/07/2004
Tnaires
O LIKE só funciona para campos que contem caracteres. Substitua o LIKE por =, e dá certo.
E não se esqueça do q o Paulo Amorim falou: vc tem q converter o texto do Edit para o tipo apropriado!
Abraços
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)