Applyupdates não funciona .... HELP !!!
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 ???
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
Curtidas 0
Respostas
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+
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
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
Agradeço
Carlos Jatai
GOSTEI 0
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+
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
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
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
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:
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
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+
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
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
17/12/2003
Todas as atualizações do IBX (paleta Interbase/Interbase Admin) ::
http://codecentral.borland.com/codecentral/ccweb.exe/author?authorid=102
T+
http://codecentral.borland.com/codecentral/ccweb.exe/author?authorid=102
T+
GOSTEI 0