Fórum LookUpComboBox como puxar os dados do banco de dados #469250

07/02/2014

0

Olá Pessoal,

O que eu quero fazer é editar os dados de por exemplo os dados de um Cliente. Porém eu quero que quando eu clicar no botão todos os dados já estejam preenchidos em seus respectivos campos para o usuário somente alterar o que lhe for conveniente.

Eu já consegui desta maneira
procedure TF_FormFuncionario.btnAlterarCargoClick(Sender: TObject);
begin
  with TClientDataSet(dtsCadastrarCargo.DataSet) do
  begin
    Close;
    Params[0].AsInteger := TClientDataSet(dtsCargoLkp.DataSet).Fields[0].AsInteger;
    Open;
    Edit;
  end;
  F_FormCargoAlterar.showmodal;
end;


Porém ali eu pego um dado que foi selecionado direto de um TDBGrid, o problema é que agora eu estou tentando pegar de um TDBLookupComboBox onde só aparecem os nomes (ou seja aparece o nome dos cargos) existe alguma maneira?

Desde já Agradecido!
Edson Vilhalba

Edson Vilhalba

Responder

Posts

07/02/2014

Edson Vilhalba

Só pra mostra pessoal eu estava tentando desta maneira pelo keyfield dele porém ele pega o nome que está no keyfield e não o código em si.

procedure TF_FormFuncionario.btnAlterarCargoClick(Sender: TObject);
begin
  with TClientDataSet(dtsCadastrarCargo.DataSet) do
  begin
    Close;
    Params[0].AsInteger := StrToInt(lkpCargo.KeyField);
    Open;
    Edit;
  end;
  F_FormCargoAlterar.showmodal;
end;
Responder

Gostei + 0

08/02/2014

Edson Vilhalba

Resolvi galera eu estava fazendo um erro bobo eu dentro do TClientDataSet estava com o dts errado. E o codigo que eu utilizei para fazer isso caso alguem precise foi este.
procedure TF_FormFuncionario.btnAlterarCargoClick(Sender: TObject);
var
  t:Integer;
begin
  with TClientDataSet(dtsCadastrarCargo.DataSet) do
  begin
    Close;
      Params[0].AsInteger :=  lkpCargo.ListSource.DataSet.FieldByName(lkpCargo.KeyField).Value;
    Open;
    Edit;
  end;
  F_FormCargoAlterar.showmodal;
end;
Responder

Gostei + 0

09/02/2014

Douglas

Problema resolvido. Podem encerrar o tópico.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar