[firebase-br] rollback (delphi7+MDO+FB2.5.2 26540)

Mário Reis mariodosreyx em gmail.com
Sáb Nov 16 00:23:02 -03 2013


Olá boa gente,

Tenho a minha transação assim configurada:read_committed, rec_version, 
nowait e estou a processar um ficheiro batch de pagamentos. Estou a chamar 
uma "Store Procedure" via MDOStoredProc1(Autocomit=True)(Mercury Data 
Objects).

 No meu log vou controlando(if row_count=1 then ok else...not ok etc... e 
escrevendo para o log passo a passo) sobre a emissão de Faturas/Recibos e 
atualizações da respetiva conta (corrente), pagas. Nas não pagas não há 
emissão de recibos e a atualização da conta(corrente) resume-se ou é apenas 
de um "Status de Erro" indicando o motivo do não pagamento(que vai ficando 
no registo vivo enquanto a situação préviamente existente vai passando para 
histórico.

Até aqui tudo ótimo. 

O processamento corre e termina normalmente com todo o ficheiro processado; 
tiram-se as listas de conciliação confere-se. Tudo está bem. Começa-se a 
arquivar documentos etc... e, eis senão quando, de repente damos conta de 
que houve um rollback sem que sobre ele tenhamos controlo, todo o ficheiro 
é desaplicado!? 

Esta situação já me havia acontecido em 2 ou 3 situações isoladas em 
3/4anos e às quais não dera grande importância.

Agora com o processamento de um ficheiro batch a coisa muda de figura 
atenta responsabilidade e os montantes envolvidos.



Alguém tem uma ideia do que possa estar a acontecer-me? 

E, de como posso impedir ou controlar esta situação quase absurda!? 



Não tenho registo de falhas de energia e tenho "UPS" no "servidor" 
(Microsoft Windows Server2008)!!!

Obrigado por toda e qualquer ajuda.

Mário











Mais detalhes sobre a lista de discussão lista