[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