Fórum Popular DBComboBox com dados do banco #374533
02/09/2009
0
PELO QUE EU ANDEI PESQUISANDO NO FÓRUM DA DEVMEDIA, VI MUITA RECOMENDAÇÃO PRA USAR O DBLOOKUPCOMBOBOX. EU ANDEI TENTANDO MAS TAMBÉM NÃO DEI CONTA. PELO MENOS NÃO CONSEGUI EDITITAR UMA MARCA ´NOVA´ NO DBLOOKUPCOMBOBOX.
ESTOU UTILIZANDO DELPHI 2009, FIREBIRD 2.0 E COMPONENTES DBEXPRESS. TENHO UM DATAMODULE COM OS COMPONENTES PARA CONEXÃO COM O BANCO. (SQLDATASET, DATASETPROVIDER E CLIENTDATASET), NO MEU FORM DE CADASTRO DE PRODUTOS TEM UM DATASOURSE LIGADO COM O CLIENTDATASET DO DATAMODULE.
DESDE JÁ AGRADEÇO!!
Tpaulon
Curtir tópico
+ 0Posts
03/09/2009
Osocram
DBComboBox vc tem que popular no braço. Por exemplo no OnShow da tela vc faz um loop em seu ClientDataSet e faz ComboBox.Item.append(clientdataSet.FieldByName(´ds_marca´).ASstring)
Agora o DBLookUpComboBox ele tem umas propriedades no qual vc tem que ligar ou outro ClientDataSet que vai ter todos os registros que vc quer, no seu caso um select ds_marca from marca. E não da p editar uma nova marca nele... somente selecionar uma ja existente.
Gostei + 0
03/09/2009
Rafa.spimenta
No evento onExit do dbcbx, faça um locate na sua tabela para verificar se o q esta no dbcbx existe na sua tabela, caso nao exista vc pode exibir uma msg questionando se o usuario gostaria de inserir aquele dado q esta no seu dbcbx na sua tabela ou nao, se positivo, vc o insere.
Gostei + 0
07/09/2009
Tpaulon
Muito obrigado!!!
Populei no braço o DBComboBox, no oncreate do form:
procedure Tform1.FromCreate(Sender :TObject);
clientdataSet.first
DBComboBox1.Clear;
while not ClientdataSet1.eof do
begin
ComboBox.Item.append(clientdataSet.FieldByName(´ds_marca´).ASstring);
clientdataSet.next;
end;
Depois no botão salvar, como eu não vou fechar o meu form, no botão salvar eu forlo a chamada do evento onshow, onde ele ´re-popula o DBComboBox já com a nova inserção que acabei de gravar. fica assim:
procedure Tform1.btn_Salvar(Sender :TObject);
begin
formShow(Sender);
end;
no meu caso resolveu o problema!!!
vlw...!!!
abraço!!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)