Eu estou usando um dbrichedit para um campo memo do banco de dados..o problema é q ele aceita apenas 255 caracteres... eu achava q ele era que nem o componente dbmemo, só que formatável.
E tb tem outro problema:
As vezes quando gravo umas 5 linhas de texto, com menos de 255 caracteres, e quando mando fazer uma busca nesse campo digitando a primeira letra em diante, ele só busca o texto pela metade, tipo, mostra umas 3 linhas apenas... por que isso acontece?
olha só, no campo change dele, ele chama o seguinte codigo
Function TFORM1.Procura1(tabela:ShortString ; CAMPO:ShorTString ; ABUSCA:TDBRichEdit; ordem:string) : ShortString;
begin
IF (Trim(abusca.Text)='') OR (NOR_SET=0) then
Begin Result:='';exit;
End;
With dm.QConsultas do
Begin
ParamCheck :=True;
Active:=False;
Close;
SQL.Clear;
SQL.add('Select '+CAMPO+' From '+TABELA+' Where '+CAMPO+' like '+#39+''+COPY(ABUSCA.TEXT,1,ABUSCA.SelStart)+'%'+#39 + ' order by ' + ordem + ' desc');
Pergunta
lucy4000
Oi pessoal,
Eu estou usando um dbrichedit para um campo memo do banco de dados..o problema é q ele aceita apenas 255 caracteres... eu achava q ele era que nem o componente dbmemo, só que formatável.
E tb tem outro problema:
As vezes quando gravo umas 5 linhas de texto, com menos de 255 caracteres, e quando mando fazer uma busca nesse campo digitando a primeira letra em diante, ele só busca o texto pela metade, tipo, mostra umas 3 linhas apenas... por que isso acontece?
olha só, no campo change dele, ele chama o seguinte codigo
Function TFORM1.Procura1(tabela:ShortString ; CAMPO:ShorTString ; ABUSCA:TDBRichEdit; ordem:string) : ShortString;
begin
IF (Trim(abusca.Text)='') OR (NOR_SET=0) then
Begin Result:='';exit;
End;
With dm.QConsultas do
Begin
ParamCheck :=True;
Active:=False;
Close;
SQL.Clear;
SQL.add('Select '+CAMPO+' From '+TABELA+' Where '+CAMPO+' like '+#39+''+COPY(ABUSCA.TEXT,1,ABUSCA.SelStart)+'%'+#39 + ' order by ' + ordem + ' desc');
open;
if tecla = true then
RESULT:=ABusca.Text
else
RESULT:=COPY(ABUSCA.TEXT,0,ABUSCA.SelStart)+COPY(Fieldbyname(CAMPO).AsString,ABUSCA.SelStart+1,255);
End;
IF NOR_SET=0 THEN NOR_SET:=1 ELSE NOR_SET:=0;
END;
Eu acho q o problema ta nessa linha:
RESULT:=COPY(ABUSCA.TEXT,0,ABUSCA.SelStart)+COPY(Fieldbyname(CAMPO).AsString,ABUSCA.SelStart+1,255)
já tentei substituir o 255 por 500 mas continua só aceitando 255...serah q é algum problema nesse copy?
Obrigada
Editado por lucy4000Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.