Campo da tabela corrompe
Pessoal, tenho dois sistemas que usam uma mesma tabela de estoque. Um lança as quantidades e o outro movimenta os itens. Nesse ultimo programa uso transaction e varios comandos update (SQL).
Não sei por qual motivo, depois de uma certa quantidade de vezes que essa operação acontece o registro parece corromper, pois no programa quando tento alterar o valor para qualquer um dos campos a mensagem retornada é: ´RECORD NOT FOUND OR CHANGED BY ANOTHER USER´.
Ainda no programa se eu abrir o registro para edição e não alterar nenhum dado ele dá o Post normalmente.
Alguem me ajuda?!? :cry:
Não sei por qual motivo, depois de uma certa quantidade de vezes que essa operação acontece o registro parece corromper, pois no programa quando tento alterar o valor para qualquer um dos campos a mensagem retornada é: ´RECORD NOT FOUND OR CHANGED BY ANOTHER USER´.
Ainda no programa se eu abrir o registro para edição e não alterar nenhum dado ele dá o Post normalmente.
Alguem me ajuda?!? :cry:
Rodsrabbit
Curtidas 0
Respostas
Afarias
25/06/2004
o problema está no WHERE dos updates que não está apenas nas chaves... ou se está, vc está alterando a chave e assim não permitindo q o registro seja encontrado na execução do UPDATE
T+
T+
GOSTEI 0
Rodsrabbit
25/06/2004
Sim, o problema eh q as flags do provider estavam configuradas erradas, alem disso elas estavam nos TFields do SQLDataSet, por isso o erro acontecia. O modo Updata do DSProvider deveria estar upWhereKeyOnly.
Valeu pela ajuda cara!
Valeu pela ajuda cara!
GOSTEI 0
Afarias
25/06/2004
alem disso elas estavam nos TFields do SQLDataSet,
Exatamente onde TEM que estar!
T+
GOSTEI 0
Rodsrabbit
25/06/2004
Eh farias hehe
Eu esqueci de colocar o ´nao´ no ´estavam no SQLDataSet.
O fato eh q eu tava mexendo no ClientDataSet e nao surtia efeitos, descobri entaum com a ajuda de um amigo que eu deveria mexer no TField do SQLDataSet pra funcionar.
Valeu!
Eu esqueci de colocar o ´nao´ no ´estavam no SQLDataSet.
O fato eh q eu tava mexendo no ClientDataSet e nao surtia efeitos, descobri entaum com a ajuda de um amigo que eu deveria mexer no TField do SQLDataSet pra funcionar.
Valeu!
GOSTEI 0
Afarias
25/06/2004
|Eu esqueci de colocar o ´nao´ no ´estavam no SQLDataSet.
:D
|O fato eh q eu tava mexendo no ClientDataSet e nao surtia efeitos,
Exato!
Beleza!
T+
:D
|O fato eh q eu tava mexendo no ClientDataSet e nao surtia efeitos,
Exato!
Beleza!
T+
GOSTEI 0