Gravar valor de combobox.
09/03/2013
0
Preciso mais uma vez da ajuda de vocês.
No meu banco tenho um cadastro de CLIENTES que tem um campo ESTADO que é chave estrangeira da TABELA ESTADO.
No meu form carrego todos os estados (as siglas deles) no CB. Só que não consegui fazer com que, ao mandar gravar, ele grave o ID do estado ao invés da sigla.
Como eu faria isso ?
Desde já,
Obrigado
Felipe Ribeiro
Posts
09/03/2013
Joel Rodrigues
Se não tiver, você pode pegar a sigla acessando diretamente o dataset ao qual o ComboBox está ligado. Por exemplo:
ALGUMA_COISA = queryEstados.FieldByName('SIGLA').AsString;
Por que isso?
Quando você liga o componente ao DataSource que está ligado ao DataSet, este componente exibe sempre o valor que está selecionado no DataSet, então você pode acessar esse valor diretamente, sem precisar pegar o valor do componente.
Não sei se fui claro.
09/03/2013
Marco Salles
Preciso mais uma vez da ajuda de vocês.
No meu banco tenho um cadastro de CLIENTES que tem um campo ESTADO que é chave estrangeira da TABELA ESTADO.
No meu form carrego todos os estados (as siglas deles) no CB. Só que não consegui fazer com que, ao mandar gravar, ele grave o ID do estado ao invés da sigla.
Como eu faria isso ?
Desde já,
Obrigado
var
I: Integer;
begin
ComboBox1.Items.AddObject('Mg',Tobject(Integer(1)));
ComboBox1.Items.AddObject('Sp',Tobject(Integer(2)));
for I := 0 to Pred(ComboBox1.Items.Count) do
Showmessage(inttostr(integer(ComboBox1.Items.Objects[1])));
11/03/2013
Felipe Ribeiro
Problema resolvido.
Acabei decidindo por gravar a própria sigla mesmo..
Abraço.
11/03/2013
Joel Rodrigues
Eu acabei me enrolando na explicação, pois considerei um lookup e não um combobox comum.
Mas como você resolveu, estou encerrando este tópico.
Abraço.
Clique aqui para fazer login e interagir na Comunidade :)