Ligar DBLookupComboBox
Bom dia Pessoal, primeira vez que estou postando algo no fórum.
Tenho uma dúvida, onde não estou conseguindo fazer um procedimento em um formulário de cadastro.
1 - Tenha um formulário de Cadastro de Unidades, onde se encontram duas chaves estrangeiras: ID_UF (tabela UF) e ID_Cidade (tabela Cidade).
2 - Gostaria de fazer o seguinte procedimento: Ao clicar no UF desejado, por exemplo, caso clicado no UF - SP, serão listados em outro campo (DBlookupcombox) as cidades referente a UF - SP.
Aí que está o problema, não estou conseguindo fazer este procedimento.
OBS..: Na tabela cidade tenho como chave estrangeira ID_UF, então eu consegui criar o DBLookupComboBox desse campo (aparece os códigos do uf) e quando seleciono esse código aparecem as cidades desse UF, mas, isso para o usuário é inviável, pq ele não precisa decorar os códigos.
Alguém pode me ajudar?
Agradeço a atenção de vocês!!!!
Tenho uma dúvida, onde não estou conseguindo fazer um procedimento em um formulário de cadastro.
1 - Tenha um formulário de Cadastro de Unidades, onde se encontram duas chaves estrangeiras: ID_UF (tabela UF) e ID_Cidade (tabela Cidade).
2 - Gostaria de fazer o seguinte procedimento: Ao clicar no UF desejado, por exemplo, caso clicado no UF - SP, serão listados em outro campo (DBlookupcombox) as cidades referente a UF - SP.
Aí que está o problema, não estou conseguindo fazer este procedimento.
OBS..: Na tabela cidade tenho como chave estrangeira ID_UF, então eu consegui criar o DBLookupComboBox desse campo (aparece os códigos do uf) e quando seleciono esse código aparecem as cidades desse UF, mas, isso para o usuário é inviável, pq ele não precisa decorar os códigos.
Alguém pode me ajudar?
Agradeço a atenção de vocês!!!!
Mauriciopr17
Curtidas 0
Respostas
Crpavao
19/11/2008
Vc faz uma query para a tabela cidade:
Select * From CIDADE Where ID_UF = :UF
(Parametro UF)
No Datasource do DblokupComboBox da cidade vc referencia esta query
No evento onclick no DblooukComboBox de UF vc faz o seguinte
QueryCidade.ParamByName(´UF´).asstring := DbLookupComboBox1.Text;
QueryCidade.Close;
QueryCidade.Ope;
Não sei se deu prá sacar, mas é mais ou menos assim, ficam alguns detalhes a definir.
Select * From CIDADE Where ID_UF = :UF
(Parametro UF)
No Datasource do DblokupComboBox da cidade vc referencia esta query
No evento onclick no DblooukComboBox de UF vc faz o seguinte
QueryCidade.ParamByName(´UF´).asstring := DbLookupComboBox1.Text;
QueryCidade.Close;
QueryCidade.Ope;
Não sei se deu prá sacar, mas é mais ou menos assim, ficam alguns detalhes a definir.
GOSTEI 0
Mauriciopr17
19/11/2008
E aí Pavão tudo bom?
Agradeço pela sua ajuda.
Hoje no período da manhã resolvi esse problema desta maneira:
procedure Tfrm_unidade.ds_selectufDataChange(Sender: TObject;
Field: TField);
var
recebe : String;
begin
recebe := ´SELECT * FROM TAB_CIDADE WHERE ID_UF =´ + cds_selectuf.FieldByname(´ID_UF´).AsString + ´ORDER BY DESCRICAO_CIDADE´;
cds_cidade1.Close;
qr_cidade1.SQL.Clear;
qr_cidade1.SQL.Add(recebe);
qr_cidade1.ExecSQL();
cds_cidade1.Open;
end;
Obrigado pela colaboração!!!
Agradeço pela sua ajuda.
Hoje no período da manhã resolvi esse problema desta maneira:
procedure Tfrm_unidade.ds_selectufDataChange(Sender: TObject;
Field: TField);
var
recebe : String;
begin
recebe := ´SELECT * FROM TAB_CIDADE WHERE ID_UF =´ + cds_selectuf.FieldByname(´ID_UF´).AsString + ´ORDER BY DESCRICAO_CIDADE´;
cds_cidade1.Close;
qr_cidade1.SQL.Clear;
qr_cidade1.SQL.Add(recebe);
qr_cidade1.ExecSQL();
cds_cidade1.Open;
end;
Obrigado pela colaboração!!!
GOSTEI 0
Crpavao
19/11/2008
O bom de desenvolvimento são as mil opções para se resolver um problema.
Vai lá, cara!
Vai lá, cara!
GOSTEI 0
Mauriciopr17
19/11/2008
Opa, isso ai Pavão...
Estudando Delphi aqui pra entrar no mercado de trabalho....
Valeu t+...
Estudando Delphi aqui pra entrar no mercado de trabalho....
Valeu t+...
GOSTEI 0
Demytrius
19/11/2008
Alguém tem um BD com as tabelas UF e Cidades completas do Brasil?
se sim, agradeceria muito se me enviassem!
Abraços!
se sim, agradeceria muito se me enviassem!
Abraços!
GOSTEI 0