Erro ao editar registro...
Tenho uma aplicação feita em Delphi7, MySQL, utilizando os componentes ZEOS para acesso ao banco de dados... Tenho um botão alterar nos formulários que quando clicado é dado um Edit no registro mas quando é dado o comando Post acontece o seguinte erro:
´Error while Posting Updates´
Se alguém souber o motivo desse erro eu agradeço a ajuda...
T+
´Error while Posting Updates´
Se alguém souber o motivo desse erro eu agradeço a ajuda...
T+
Alberto_jr
Curtidas 0
Respostas
Alberto_jr
26/06/2004
???
GOSTEI 0
Reginaldo174
26/06/2004
discreva o codigo que voce usa pra gravar . é query ou direto no banco ????
GOSTEI 0
Alberto_jr
26/06/2004
Eu uso o TZMySQLTable apara acessar o banco e no código ponho:
tabela.edit;
...
//atribuo o valor dos campos do formulários aos campos da tabela
...
tabela.post;
tabela.edit;
...
//atribuo o valor dos campos do formulários aos campos da tabela
...
tabela.post;
GOSTEI 0
Alberto_jr
26/06/2004
Descobri uma coisa que me deixou mais ´encucado´ ainda...
O erro só ocorre quando eu entro no registro e não mudo o valor de nenhum de seus campos...
Quando eu edito o registro e mudo algum dos seus campos ele grava normalmente sem ocorrer nenhum erro...
O erro só ocorre quando eu entro no registro e não mudo o valor de nenhum de seus campos...
Quando eu edito o registro e mudo algum dos seus campos ele grava normalmente sem ocorrer nenhum erro...
GOSTEI 0
Sandra
26/06/2004
alberto_jr,
Abrir o registro para edição com o método Edit, porém se não fez nenhuma alteração, você não poderá utilizar o Post para ele. Nesse caso, deve-se [b:fc3abd56b0]cancelar o Edit[/b:fc3abd56b0], utilizando o método Cancel.
Ex. no onClick de um botão Cancelar:
Verifique se o erro persiste.
Abrir o registro para edição com o método Edit, porém se não fez nenhuma alteração, você não poderá utilizar o Post para ele. Nesse caso, deve-se [b:fc3abd56b0]cancelar o Edit[/b:fc3abd56b0], utilizando o método Cancel.
Ex. no onClick de um botão Cancelar:
SuaTabela.Cancel;
Verifique se o erro persiste.
GOSTEI 0
Alberto_jr
26/06/2004
Jóia Sandra, brigadão pela força, mas não querendo ser chato tenho mais algumas perguntas:
1-Em outras tabelas eu uso a mesma estrutura de código e nunca deu esse erro anteriormente, mesmo quando o registro não era modificado...
2-Se for usar o Cancel, qual a melhor maneira de saber se o registro foi modificado ou não para que seja executado o comando Post ou Cancel...
Valeu Sandra, brigadão...
1-Em outras tabelas eu uso a mesma estrutura de código e nunca deu esse erro anteriormente, mesmo quando o registro não era modificado...
2-Se for usar o Cancel, qual a melhor maneira de saber se o registro foi modificado ou não para que seja executado o comando Post ou Cancel...
Valeu Sandra, brigadão...
GOSTEI 0
Alberto_jr
26/06/2004
Olha gente sem querer ser chato...
O meu projeto já tá pronto, só falta identificar a causa desse erro, não consigo conserta-lo de jeito nenhum... Ninguém tem a mínima ídéia do que seja??? O prazo pra entrega do projeto foi ontem e só falta consertar esse erro..
Se alguém puder me ajudar agradeço....
O meu projeto já tá pronto, só falta identificar a causa desse erro, não consigo conserta-lo de jeito nenhum... Ninguém tem a mínima ídéia do que seja??? O prazo pra entrega do projeto foi ontem e só falta consertar esse erro..
Se alguém puder me ajudar agradeço....
GOSTEI 0
Sandra
26/06/2004
alberto,
Vamos tentar resolver:
Fica difícil explicar porquê apresenta erro em uma tabela e em outra não. Teria que ser analisado cada caso e tentar descobrir as razões individualmente... pode ser alguma particularidade em algum campo, registro ou até mesmo na própria tabela.
Não sei se você faz algum tratamento dos botões para incluir, editar, excluir ou sair da tela, ou ainda, se utiliza o DBNavigator para tais ações.
De repente, se utiliza botões específicos, poderia tentar habilitá-los (enable) à medida que for necessário. Por exemplo:
1-entrando na tela de cadastro: deixar habilitado somente os botões ´novo´, ´localizar´ (para pesquisar) e ´sair´. Preenchendo os campos, habilita-se o ´gravar´ e ´cancelar´.
2-editando um registro: clicar em ´localizar´ e, em seguida, desabilitando-o e habilitando o ´editar´. Não testei aqui, mas no evento onUpdateRecord, após o registro ser alterado, habilita-se o ´gravar´ .
3-ao ´gravar´, deixar todos os botões como se estivesse novamente no item 1.
Mais ou menos isso. Verifique se isso ajuda.
PS: :oops: desculpe-me, esse tópico estava passando batido.
Vamos tentar resolver:
1-Em outras tabelas eu uso a mesma estrutura de código e nunca deu esse erro anteriormente, mesmo quando o registro não era modificado...
Fica difícil explicar porquê apresenta erro em uma tabela e em outra não. Teria que ser analisado cada caso e tentar descobrir as razões individualmente... pode ser alguma particularidade em algum campo, registro ou até mesmo na própria tabela.
2-Se for usar o Cancel, qual a melhor maneira de saber se o registro foi modificado ou não para que seja executado o comando Post ou Cancel...
Não sei se você faz algum tratamento dos botões para incluir, editar, excluir ou sair da tela, ou ainda, se utiliza o DBNavigator para tais ações.
De repente, se utiliza botões específicos, poderia tentar habilitá-los (enable) à medida que for necessário. Por exemplo:
1-entrando na tela de cadastro: deixar habilitado somente os botões ´novo´, ´localizar´ (para pesquisar) e ´sair´. Preenchendo os campos, habilita-se o ´gravar´ e ´cancelar´.
2-editando um registro: clicar em ´localizar´ e, em seguida, desabilitando-o e habilitando o ´editar´. Não testei aqui, mas no evento onUpdateRecord, após o registro ser alterado, habilita-se o ´gravar´ .
3-ao ´gravar´, deixar todos os botões como se estivesse novamente no item 1.
Mais ou menos isso. Verifique se isso ajuda.
PS: :oops: desculpe-me, esse tópico estava passando batido.
GOSTEI 0
Alberto_jr
26/06/2004
Sandra, valeu a força, vou tentar aqui o que vc me disse e ver no que vai dar...
Valeu, e obrigado... :D :wink: :lol: :) :P
Valeu, e obrigado... :D :wink: :lol: :) :P
GOSTEI 0