Fórum carregando o conteúdo de um field na tabela em um Edit #549686
28/03/2016
0
tenho uma tabela de cliente e preciso carregar o CPF ou CNPJ de um determinado cliente em um Edit.
tenho uma procedure que chama o Form de pesquisa
procedure Chama_pesq_CadCliente ( campo : TEdit );
var PesqCadClientes : TFrmPesqCadClientes;
begin
PesqCadClientes := TFrmPesqCadClientes.Create(Application);
PesqCadClientes.Edit_retorno := campo;
PesqCadClientes.campo_retorno := 'CL_CNPJ_CPF';
PesqCadClientes.ShowModal;
FreeAndNil ( PesqCadClientes );
end;
essa procedure está implementada em uma Unit Funções, é nessa Unit que fica todas as minhas Funções e Procedures Globais.
no Form em questão onde preciso carregar o CPF ou CNPJ do cliente no edit eu faço a chamada da procedure Chama_pesq_CadCliente
no evento OnClick do botão com o respectivo código
procedure TfrmRelNotasCliente.BtnPesqClick(Sender: TObject);
begin
inherited;
Chama_pesq_CadCliente(MskCpf);
end;
isso vai abri o Form de pesquisa de cliente e ao escolher no cliente o mesmo deveria me retornar o cnpj ou cpf no edit
=====================================================
Nos eventos OnExit desse edit em questão eu tenho o código abaixo
=====================================================
procedure TfrmRelNotasCliente.MskCpfExit(Sender: TObject);
begin
inherited;
If Length(apenas_numeros(MskCpf.Text)) = 14 then
begin
MskCpf.Text := FormatMaskText('99.999.999/9999-99;0;', MskCpf.Text);
//MskCpf(Sender).Text := Mascara(MskCpf(Sender).Text, '99.999.999/9999-99');
end;
If Length(apenas_numeros(MskCpf.Text)) = 11 then
begin
MskCpf.Text := FormatMaskText('999.999.999-99;0;', MskCpf.Text);
//MskCpf(Sender).Text := Mascara(MskCpf(Sender).Text, '999.999.999-99;0;');
end;
end;
já tentei de duas formas mostrar e formatar o conteúdo mais seque é carregado o campo
Emanuel Gonçalves
Curtir tópico
+ 0Posts
28/03/2016
Raimundo Pereira
if Length(MskCpf.Text)=11 then
BEGIN
MskCpf.Text:=FormatMaskText('999.999.999-99;0', MskCpf.Text);
END
ELSE
BEGIN
if Length(MskCpf.Text)=14 then
BEGIN
MskCpf.Text:=FormatMaskText('99.999.999/9999-99;0', MskCpf.Text);
END;
END;
end;
Funcionando
Gostei + 0
29/03/2016
Emanuel Gonçalves
if Length(MskCpf.Text)=11 then
BEGIN
MskCpf.Text:=FormatMaskText('999.999.999-99;0', MskCpf.Text);
END
ELSE
BEGIN
if Length(MskCpf.Text)=14 then
BEGIN
MskCpf.Text:=FormatMaskText('99.999.999/9999-99;0', MskCpf.Text);
END;
END;
end;
Funcionando
Eu fiz assim P2
procedure TfrmRelNotasCliente.MskCpfExit(Sender: TObject);
begin
inherited;
MskCpf.TEXT:=FrmPesqCadClientes.FDPesqPadrao.FieldByName('CL_CNPF_CPF').ASSTRING; <<<<<<<<<<<<<<<<<
If Length(apenas_numeros(MskCpf.Text)) = 14 then
begin
MskCpf.Text := FormatMaskText('99.999.999/9999-99;0;', MskCpf.Text);
//MskCpf(Sender).Text := Mascara(MskCpf(Sender).Text, '99.999.999/9999-99');
end;
If Length(apenas_numeros(MskCpf.Text)) = 11 then
begin
MskCpf.Text := FormatMaskText('999.999.999-99;0;', MskCpf.Text);
//MskCpf(Sender).Text := Mascara(MskCpf(Sender).Text, '999.999.999-99;0;');
end;
end;
Não deu certo!!
Gostei + 0
29/03/2016
Emanuel Gonçalves
procedure Chama_pesq_CadCliente ( campo : TEdit );
var PesqCadClientes : TFrmPesqCadClientes;
begin
PesqCadClientes := TFrmPesqCadClientes.Create(Application);
PesqCadClientes.Edit_retorno := campo;
PesqCadClientes.campo_retorno := 'CL_CNPJ_CPF';
PesqCadClientes.ShowModal;
FreeAndNil ( PesqCadClientes );
end;
Gostei + 0
29/03/2016
Emanuel Gonçalves
Gostei + 0
29/03/2016
Emanuel Gonçalves
agora ficou assim
if Length(MskCpf2.Text) = 11 then
MskCpf.Text := FormatMaskText('999.999.999-99;0;', MskCpf.Text)
else
if Length(MskCpf2.Text) = 14 then
MskCpf.Text := FormatMaskText('99.999.999/9999-99;0;', MskCpf.Text);
antes era assim
If Length(apenas_numeros(MskCpf2.Text)) = 14 then
begin
MskCpf2.Text := FormatMaskText('99.999.999/9999-99;0;', MskCpf2.Text);
end;
If Length(apenas_numeros(MskCpf2.Text)) = 11 then
begin
MskCpf2.Text := FormatMaskText('999.999.999-99;0;', MskCpf2.Text);
end;
Gostei + 0
29/03/2016
Emanuel Gonçalves
procedure TfrmRelNotasCliente.MskCpfExit(Sender: TObject);
var tam : integer;
begin
inherited;
tam:= Length(MskCpf.Text);
if tam = 11 then
begin
MskCpf.Text := FormatMaskText('999.999.999-99;0;', MskCpf.Text);
end
else
if tam = 14 then
MskCpf.Text := FormatMaskText('99.999.999/9999-99;0;', MskCpf.Text);
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)