erro DataSet not in edit or insert mode

Delphi

28/11/2011

Ola amigos

Gostaria de saber como faço para resolver este problema de DataSet not in edit or insert mode, pois toda vez que tenho que cadastrar um novo registo surge mensagem

Grato

Digoens
Diogenes Dourado

Diogenes Dourado

Curtidas 0

Mais Respostas

Wilson Junior

Wilson Junior

28/11/2011

Isto significa que o ClientDataSet não está em modo de inclusão ou alteração (Client.State <> dsInsert ou dsEdit).
Antes de incluir, coloque Client.Insert e ante de alterar coloque Client.Edit.

Espero ter colaborado.
GOSTEI 1
Diogenes Dourado

Diogenes Dourado

28/11/2011

Bom dia

Resolveu sim muito obrigado
GOSTEI 0
Wilson Junior

Wilson Junior

28/11/2011

Não esqueça de finalizar o tópico.
GOSTEI 0
Frederico Brigatte***

Frederico Brigatte***

28/11/2011

E quando não quero inserir ou editar? Quero preencher uma combobox e está dando esse erro. Não sei o que fazer. Somente preenche quando clico no botão para ir para o primeiro registro:

DM.cdsClientes.First;


Estou usando MySql com ClientDataSet. Dá o mesmo erro quando quero mudar de aba com o PageControl

procedure TfrmClientes.CarregarCombo;
var
  tempCliente: TCliente; // Aqui estou declarando um obj do tipo da classe
begin
 DM.cdsClientes.Close;
 DM.cdsClientes.Open;
 cmbClientes.Items.Clear;
 DM.cdsClientes.Open;
 DM.cdsClientes.First;
 while not DM.cdsClientes.Eof do
 begin
   // neste momento vou instanciar um obj para cada item do combo
   tempCliente := TCliente.Create;
   tempCliente.Codigo := DM.cdsClientes.fieldbyname('CLI_CODIGO').AsString;
   tempCliente.Nome := DM.cdsClientes.fieldbyname('CLI_NOME').AsString;
   //desta forma em cada item do cmb você terá um objeto associada na lista
   cmbClientes.Items.AddObject(tempCliente.Nome, tempCliente);
   DM.cdsClientes.Next;
 end;

end;
GOSTEI 0
Frederico Brigatte***

Frederico Brigatte***

28/11/2011

Alguém poderia ajudar?
GOSTEI 0
Alisson Santos

Alisson Santos

28/11/2011

já tentou colocar essa sua tabela DM.cdsClientes como DM.cdsClientes.edit quando muda, ou melhor ainda, tem como debugar e verificar qual a linha que dá o erro.
GOSTEI 0
POSTAR