Ok entao, sua tabela esta certa assim mesmo como character.

Varchar eh um tipo especial de campo para economizar bytes no banco de dados, 
no qual
ele soh usa o tamanho necessario da string armazenada no registro.

Tipo assim, se vc tem um campo char(10) e digitar "0123" ele assim mesmo ocupa 
os 10 caracteres...
coisa que o varchar ira armazenar apenas os 4.

O que eh necessario verificar eh se o usuario na hora de cadastrar o codigo nao 
deixou um espaco em branco antes 
do codigo, tipo " 0123", entende. E dificil perceber qdo ha um espaco no inicio 
da string.

Talvez fosse necessario atualizar toda a coluna removendo os espacos da direta 
e da esquerda do codigo assim.

update tabela set codigo = LTrim(RTrim(codigo))

ou se vc esta migrando do Visual Fox ou clipper...

use tabela
replace all codigo with Alltrim(codigo)... "...que nostalgico...   :,( "


No mais o seu codigo esta correto...

Marcelo Horlle


  ----- Original Message ----- 
  From: caionmoreno 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, January 16, 2008 1:16 PM
  Subject: Re: RES: [delphi-br] dm.qProdutos.Locate


  Só para lembrar, a tabela aqui é .DBF, e os tipos de campos são:
  "Character, Float, Number, Date, Logical, Memo, OLE, Binary" E o
  código possui caracteres númericos e alfanuméricos.
  Qual seria o tipo de campo certo???

  --- Em delphi-br@yahoogrupos.com.br, "Apoio" <[EMAIL PROTECTED]> escreveu
  >
  > um estranho ...
  > 
  > qual tipo do campo de codigo?
  > 
  > veja se é char ...
  > usando char seu campo pode estar retornando assim: 
  > 
  > " 0123" no que varchar ele traria assim "0123"
  > ae na consulta ele nunca vai retornar so se vc digitar esses
  espaços antes sacou ...
  > 
  > V ae !
  > 
  > ----- Original Message ----- 
  > From: caionmoreno 
  > To: delphi-br@yahoogrupos.com.br 
  > Sent: Wednesday, January 16, 2008 11:25 AM
  > Subject: Re: RES: [delphi-br] dm.qProdutos.Locate
  > 
  > 
  > Você não entendeu, eu estou procurando por string, porém a string que
  > eu procuro é '0123', e eu coloco '0123', e ele não acha.
  > Quando eu procuro a string '123' e coloco '123' ele acha.
  > Entendeu?
  > 
  > --- Em delphi-br@yahoogrupos.com.br, "Vitor Redes"
  > <vredesredsystem@> escreveu
  > >
  > > Porque você está utilizando uma busca por Strings...
  > `0123' é
  > > muito diferente de `123'
  > > 
  > > Utilize assim, caso o código do produto seja inteiro:
  > Locate(
  > > `CODIGO', StrToInt( Edit1.Text ), [ loPartialKey ];
  > > 
  > > Case o código seja String, então o seu cliente deve
  > procurar com
  > > uma string mais lógica.
  > > 
  > > 
  > > 
  > > Vitor.
  > > 
  > > 
  > 
  > 
  > 
  > 
  > 
  > [As partes desta mensagem que não continham texto foram removidas]
  >



   


------------------------------------------------------------------------------
  E-mail classificado pelo Identificador de Spam Inteligente.
  Para alterar a categoria classificada, visite o Terra Mail 


[As partes desta mensagem que não continham texto foram removidas]

Responder a