Applyupdates não funciona .... HELP !!!

Firebird

17/12/2003

estou com um problema que aparentemente simples, tem me tirado sério

estou fazendo a baixa de um titulo no sistema de contas a pagar, acontece que quando mando gravar o registro, dá a seguinte mensagem :

´FALHA NO UPDATE´

minha linha de comando está assim :

dm_pagar.Fatura.FieldValues[´STATUSPAGO´]:=´S´;
dm_pagar.fatura.FieldValues[´DATALANC´]:=(date());
dm_pagar.fatura.FieldValues[´VALORPAGO´]:=total;
dm_pagar.fatura.FieldValues[´DATAPAGAMENTO´]:=strtodatetime(edit1.text);
dm_pagar.fatura.FieldValues[´JUROS´]:=juros;
dm_pagar.fatura.FieldValues[´JAM´]:=jam;

dm_pagar.Fatura.post;
dm_pagar.fatura.applyupdates;

desta forma ele não está atualizando.

Alguém se habilita ???


Carlos Jatai

Carlos Jatai

Curtidas 0

Respostas

Afarias

Afarias

17/12/2003

que componentes está usando?? IBX??

o comando ApplyUpdates não tem funcão nenhuma a não ser quando usando CachedUpdates = TRUE. Sendo assim, nas versões atuais do IBX, vc recebe um erro caso tente usar ApplyUpdates ´despropositadamente´

Tire esta linha (ApplyUpdates) do seu código e tudo rodará normalmente.



T+


GOSTEI 0
Carlos Jatai

Carlos Jatai

17/12/2003

Caro amigo AFarias, a propriedade cachedupdates está true no dataset, que está no datamodule ´dm_pagar´, estas linhas de comando não estão funcionando somente quando tento alterar um registro, e deixando só o comando POST, também não funcionou. Vc tem alguma outra solução ??


Agradeço

Carlos Jatai


GOSTEI 0
Afarias

Afarias

17/12/2003

Ok, então vc está usando CachedUpdates... tudo bem então::

1- ve precisa realmente usar cached updates??

2- qual a versão do seu IBX?? está atualizado?? (se é q vc usa IBX)

3- qual a mensagem de erro completa e em q situação ocorre?


T+


GOSTEI 0
Carlos Jatai

Carlos Jatai

17/12/2003

a mensagem de erro é a seguinte : ´Falha no UPDATE´

estou usando o query da palheta Interbase do delphi 6

só está acontecendo quando vou alterar um registro, na inclusão ou inserção do registro está normal.

quanto ao cached updates, uso porque estou usando o applyupdates.


esta é a situação ....

Agora, mudando um pouco de assunto, Cara voce sabe muito, ainda não vi problema que voce tenha deixado sem solução, parabéns ...


Carlos Jatai


GOSTEI 0
Kiaratto

Kiaratto

17/12/2003

Eu nunca fiz uma coisa dessas com uma query mas tenho outra solucao. Já q vc está usando uma query usa o comando Insert

dm_pagar.sql.text:=´insert into nometabela (STATUSPAGO,DATALANC,VALORPAGO,DATAPAGAMENTO,JUROS,JAM) values(´´S´´,´´´+formatdatetime(´mm/dd/yyyy´,date)+´´´,´+stringreplace(floattostr(total),´,´,´.´,[rfReplaceAll])+´,´´´+formatdatetime(´mm/dd/yyyy´,strtodatetime(edit1.text))+´´´, ´+strtoint(juros)+´,´+jam+´)´
dm_pagar.execsql;

só não sei o tipo de dados q é esse jam.

Espero ter ajudado :idea:


GOSTEI 0
Afarias

Afarias

17/12/2003

|a mensagem de erro é a seguinte : ´Falha no UPDATE´

Ok, este erro pode ocorrer por diversos motivos.


|só está acontecendo quando vou alterar um registro

Verifique se sua propriedade ModifySQL (IBUpdateSQL) está correta. Ele deve conter um WHERE na chave primária pois 1 e apenas 1 registro deve ser ´atingido´ em cada Update


|estou usando o query da palheta Interbase do delphi 6

IBX. Certifíque-se de atualizá-lo. O que vem com o Delphi é bugado!


|quanto ao cached updates, uso porque estou usando o applyupdates.

Vc não precisa usar CachedUpdates ou ApplyUpdates. Mas, se realmente deseja.



Mudando de assunto, não é bem assim né?? Mas valeu cara ;)


T+


GOSTEI 0
Gilson_our

Gilson_our

17/12/2003

Certifíque-se de atualizá-lo. O que vem com o Delphi é bugado!


Onde vc obteve essa informação que o query da palheta Interbase do delphi 6 é bugado?
Eu estava dando uma olhada na página da Borland na parte do Delphi 6 Update Pack fixes - Database section e lá tem referências a patches para a parte de database\ado, database\core vcl, database\dbexpress e database\dbexpress\tsqldataset, mas não achei referências ao bug da palheta Interbase.


GOSTEI 0
Afarias

Afarias

17/12/2003

Todas as atualizações do IBX (paleta Interbase/Interbase Admin) ::

http://codecentral.borland.com/codecentral/ccweb.exe/author?authorid=102


T+


GOSTEI 0
POSTAR