Fórum como carregar campos de uma tabela em um componente DBTEXT #548045
09/03/2016
0
tenho uma tabela de CLIENTES e nela tem um campo CL_CodCidade, esse campo recebe apenas o código da cidade que vem da tabela CODCIDADES(é nessa tabela que eu guardo a cidade e o estado). Durante um cadastro na tela de Clientes o usuário seleciona apenas o código da cidade e o mesmo carrega o nome da cidade e o estado, o detalhe está no memento de fazer uma consulta ou quando abro a tela de Clientes, nessas duas situações o código da cidade aparece até porque esse campo é da tabela de Clientes mas o s campos com o nome e o estado não mostram.
essa imagem mostra a tela aberta apenas para consulta mais sem carregar o nome e o estado da cidade
[img]http://arquivo.devmedia.com.br/forum/imagem/447550-20160309-144908.jpg[/img]
eu tentei esse código, mas n ta dando certo
if FDLerCodCidade.Locate('CI_NUMERO', DBCodCidade.Text, []) then
begin
DBCidade.Caption:= FDLerCodCidadeCI_NOME.Value;
DBUF.Caption:= FDLerCodCidadeCI_ESTADO.Value;
end;
alguém poderia me dar a dica?
Emanuel Gonçalves
Curtir tópico
+ 0Posts
09/03/2016
Raimundo Pereira
Codigo_Cidade, nome_cidade,sigla_uf
No seu data module a querycidade
No key press ou qualquer outro evento do campo editcodcidade
if editcodcidade.text='' then
begin
showmessage('Acesso negado, informe o código da cidade');
editcodcidade.setfocus;
end
else
begin
dm.querycidade.close;
querycidade.sql.clear;
querycidade.sql.text:='SELECT * FROM SUA_TABLE_CIDADE WHERE Codigo_Cidade='''+editcodcidade.TEXT+'''';
dm.querycidade.open;
if dm.querycidade.recordcont=0 then
begin
showmessage('Cidade não localizada na base de dados!');
editcodcidade.selectall;
editcodcidade.setfocus;
end
else
begin
dbedit_nome_cidade:=dm.querycidade.fielbyname('nome_cidade').asstring;
dbedit_sigla_uf:=dm.querycidade.fielbyname('sigla_uf').asstring;
end;
end;
Não testei o código acima, mais tente, se eu fosse usar a rotina criaria uma função ou uma procedure enxugando o máximo que puder o código.
Mais é isso espero que ajude.
Gostei + 0
09/03/2016
Emanuel Gonçalves
Gostei + 0
09/03/2016
Marco Antônio
Abra uma query com as cidades, linka a um DataSource e este aos DBEdits correspondentes ao nome e UF.
A cada change do campo 'Código Cidade' você dá um locate no código informado.
Abc.
Gostei + 0
10/03/2016
Emanuel Gonçalves
Resolvi, agradeço aos dois pela ajuda. Foram que grande valia
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)