Como fazer tratamento do campo edit no delphi 7
Boa tarde pessoal,
Manos, estou com um probleminha e se alguém ai puder de ajudar rapidamente, agradeço muitissimio:
É o seguinte: tenho um form que possuí um campo chamado editcod.text que tem o seguinte código:
if IsNumber(editCod.Text) then
begin
Tabela.Open;
Tabela.DisableControls;
EditCod.Enabled := False;
with Tabela do begin
TipoDoc:=2;
Close;
SQL.Clear;
SQL.Add(''select * from docs where controle=''+EditCod.Text+'' and tipo_doc=''+IntToStr(TipoDoc));
Open;
if recordcount = 0 then begin
Tabela.Append;
TabelaCONTROLE.Value := StrToInt(EditCod.Text);
TabelaTIPO_DOC.Value := TipoDoc;
DBDateEdit1.SetFocus;
end else
EditCod.Text := TabelaCONTROLE.CurValue;
GroupBox2.SetFocus;
if TabelaTIPO_BENEF.AsString=''S''then
chk_1.Checked
else
chk_2.Checked;
Tabela.EnableControls;
end;
end;
end;
Gostaria de saber como fazer o tramento, porque o usuário poderá deixar o campo em branco e carregar dados atraves de um dbgrid. Mas ta gerando um exceção de erro, porque o foco está saíndo do editcod.txt e deixando ele em branco.
Manos, estou com um probleminha e se alguém ai puder de ajudar rapidamente, agradeço muitissimio:
É o seguinte: tenho um form que possuí um campo chamado editcod.text que tem o seguinte código:
if IsNumber(editCod.Text) then
begin
Tabela.Open;
Tabela.DisableControls;
EditCod.Enabled := False;
with Tabela do begin
TipoDoc:=2;
Close;
SQL.Clear;
SQL.Add(''select * from docs where controle=''+EditCod.Text+'' and tipo_doc=''+IntToStr(TipoDoc));
Open;
if recordcount = 0 then begin
Tabela.Append;
TabelaCONTROLE.Value := StrToInt(EditCod.Text);
TabelaTIPO_DOC.Value := TipoDoc;
DBDateEdit1.SetFocus;
end else
EditCod.Text := TabelaCONTROLE.CurValue;
GroupBox2.SetFocus;
if TabelaTIPO_BENEF.AsString=''S''then
chk_1.Checked
else
chk_2.Checked;
Tabela.EnableControls;
end;
end;
end;
Gostaria de saber como fazer o tramento, porque o usuário poderá deixar o campo em branco e carregar dados atraves de um dbgrid. Mas ta gerando um exceção de erro, porque o foco está saíndo do editcod.txt e deixando ele em branco.
Marcos Morais
Curtidas 0
Respostas
Marcos Morais
06/09/2012
Blz,
Ai galera conseguir resolver o problema da seguinte maneira:
procedure TfrmAtestadoPobreza.EditCodExit(Sender: TObject);
begin
if(EditCod.Text<>'')then begin
if IsNumber(editCod.Text) then
begin
Tabela.Open;
Tabela.DisableControls;
EditCod.Enabled := False;
with Tabela do begin
TipoDoc:=2;
Close;
SQL.Clear;
SQL.Add('select * from docs where controle='+EditCod.Text+' and tipo_doc='+IntToStr(TipoDoc));
Open;
if recordcount = 0 then begin
Tabela.Append;
TabelaCONTROLE.Value := StrToInt(EditCod.Text);
TabelaTIPO_DOC.Value := TipoDoc;
DBDateEdit1.SetFocus;
end else
EditCod.Text := TabelaCONTROLE.CurValue;
GroupBox2.SetFocus;
if TabelaTIPO_BENEF.AsString='S'then
chk_1.Checked
else
chk_2.Checked;
Tabela.EnableControls;
end;
end;
end else
//
end;
Não sei se está correta, mais ta funcional. Valeu a atenção de todos.
Ai galera conseguir resolver o problema da seguinte maneira:
procedure TfrmAtestadoPobreza.EditCodExit(Sender: TObject);
begin
if(EditCod.Text<>'')then begin
if IsNumber(editCod.Text) then
begin
Tabela.Open;
Tabela.DisableControls;
EditCod.Enabled := False;
with Tabela do begin
TipoDoc:=2;
Close;
SQL.Clear;
SQL.Add('select * from docs where controle='+EditCod.Text+' and tipo_doc='+IntToStr(TipoDoc));
Open;
if recordcount = 0 then begin
Tabela.Append;
TabelaCONTROLE.Value := StrToInt(EditCod.Text);
TabelaTIPO_DOC.Value := TipoDoc;
DBDateEdit1.SetFocus;
end else
EditCod.Text := TabelaCONTROLE.CurValue;
GroupBox2.SetFocus;
if TabelaTIPO_BENEF.AsString='S'then
chk_1.Checked
else
chk_2.Checked;
Tabela.EnableControls;
end;
end;
end else
//
end;
Não sei se está correta, mais ta funcional. Valeu a atenção de todos.
GOSTEI 0
Joel Rodrigues
06/09/2012
Obrigado por compartilhar a solução.
Boa sorte em seus projetos.
Estou encerrando este tópico.
Boa sorte em seus projetos.
Estou encerrando este tópico.
GOSTEI 0