quot;Dataset not in edit or insert modequot; Alguma opiniã
21/03/2003
0
Boa noite caros colegas Delphianos!
Estou tendo um um problema com a inclusão de novos registros numa tabela.
Quando pressiono o botão para inserir o registro, o seguinte erro aparece ´Dataset not in edit or insert mode´.
Se alguém tiver alguma idéia sobre isto, me escrevam. Ficarei agradecido
André Fischer
Haverá um dia que o mundo não saberá o que quer dizer a palavra PAZ,
porque desconhecerem o significado da palavra GUERRA.
Estou tendo um um problema com a inclusão de novos registros numa tabela.
Quando pressiono o botão para inserir o registro, o seguinte erro aparece ´Dataset not in edit or insert mode´.
Se alguém tiver alguma idéia sobre isto, me escrevam. Ficarei agradecido
André Fischer
Haverá um dia que o mundo não saberá o que quer dizer a palavra PAZ,
porque desconhecerem o significado da palavra GUERRA.
Afischer
Curtir tópico
+ 0
Responder
Posts
21/03/2003
Jmccsf
penso que o problema seja que o dataset, não está em modo de edição, para isso e no caso de vc ter um datamodule, terá que ter esta linha de código
datamodule1.dataset.edit;
para por informação
por exemplo:
datamodule1.dataset.fieldvalues[´nome´]:=´o seu nome´;
para escrever na tabela
datamodule1.dataset.post;
espero que seja util
datamodule1.dataset.edit;
para por informação
por exemplo:
datamodule1.dataset.fieldvalues[´nome´]:=´o seu nome´;
para escrever na tabela
datamodule1.dataset.post;
espero que seja util
Responder
23/03/2003
Anonymous
jmccsf
Verifique se entre a instrução ´dataset.edit´ (um insert, ou append) e a instrução ´dataset.post´ , não foi executada nenhuma outra instrução que altera o estado da tabela ea deixa em estado diferente de Edit ou Insert.
Um outro comando post, cancel, delete, find, locate, close, etc alteram o estado da tabela, tirando-a do estado de Edit ou Insert.
Para quebrar o galho, enquanto você não descobre o problema, imediatamente antes do comando ´dataset.post´ , na linha anterior, escreva
´ if not (dataset.state in [dsEdit, dsInsert]) then dataset.edit; ´ (sem as aspas). Atente que este comando está usando um par de parênteses e um par de colchetes. E entre dsEdit e dsInsert existe uma vírgula.
Também há outras maneiras de se escrever o mesmo bloco if.
Mas procure descobrir porque aparece a mensagem e conserte o programa.
Normalmente se re-escreve a parte do código problemática. Usar quebra-
galhos, como eu sugeri, não é uma boa prática de programação. CarlosRM.
Verifique se entre a instrução ´dataset.edit´ (um insert, ou append) e a instrução ´dataset.post´ , não foi executada nenhuma outra instrução que altera o estado da tabela ea deixa em estado diferente de Edit ou Insert.
Um outro comando post, cancel, delete, find, locate, close, etc alteram o estado da tabela, tirando-a do estado de Edit ou Insert.
Para quebrar o galho, enquanto você não descobre o problema, imediatamente antes do comando ´dataset.post´ , na linha anterior, escreva
´ if not (dataset.state in [dsEdit, dsInsert]) then dataset.edit; ´ (sem as aspas). Atente que este comando está usando um par de parênteses e um par de colchetes. E entre dsEdit e dsInsert existe uma vírgula.
Também há outras maneiras de se escrever o mesmo bloco if.
Mas procure descobrir porque aparece a mensagem e conserte o programa.
Normalmente se re-escreve a parte do código problemática. Usar quebra-
galhos, como eu sugeri, não é uma boa prática de programação. CarlosRM.
Responder
Clique aqui para fazer login e interagir na Comunidade :)