Fórum Carregar dados de tabela no ComboBox ou DBComboBox #407317
02/09/2011
Estou com dificuldades em jogar os dados de uma tabela "cadastro de pessoas", na realidade os nomes das pessoas cadastrado no campo nome, para um ComboBox ou DBComboBox a fim de selecionar algum dos nomes e fazer um comparação, o problema é estou tentando jogar os dados da tabela para um comboBox e não estou conseguindo, se alguém puder postar uma maneira de fazer isso ficarei grato, estou usando o interbase, delphi 7 e o componene SimpleDataSet
Posts
tem que dar uses ao sqlquery do dbexpress, ou joga o componente na tela e depois tira.dessa forma funciona e não fica com componente na tela.
with TSqlQuery.create(nil) dotry Sqlconnection := "o componente sqlconnection"; Close; Clear; Sql.add(' select nome from clientes'); Open; if not isempty then begin First; while not eof do begin combobox.items.add(fieldbyname('nomedocampo').asstring); next; end; end;finally Close; Free;end;
04/09/2011
Claudemir Lima
Consegui que a rotina jogasse os dados da tabela no comboBox, porém, está inserindo somente um registro, a quantidade de vezes de acordo com a quantia de registro que existe na tabela, ex:
na tabela tem 20 registros com diferentes nomes, o ComboBox está sendo preenchido com somente um registro 20 vezes, não estou conseguindo resolver, agradeço quem puder me ajudar.
begin
SimpleDataSet1.Close;
SimpleDataSet1.DataSet.CommandText := 'Select NOME_GUERRA From TB_PESSOAL order by NOME_GUERRA';
SimpleDataSet1.Open;
If Not SimpleDataSet1.IsEmpty then
begin
SimpleDataSet1.first;
while not SimpleDataSet1.Eof do
begin
combobox2.Items.Add(Dm.SDCautela.FieldByName('NOME_GUERRA').value);
SimpleDataSet1.next;
end;
end;
// SimpleDataSet1.Close;
// SimpleDataSet1.Free;
end;
pelo que eu vi no teu código tu esta adicionando no combobox o valor de um simpledataset diferente do que tu esta usando no código ex: tu pega o valor do simpledataset"SDCautela ", mas esta mandando executar no SimpleDataSet1
05/09/2011
Claudemir Lima
Obrigado Tiago, resolvido o problema, agradeço a atenção, Deus lhe pague!