Fórum Simular Transações com Paradox #185474
01/10/2003
0
Caros colegas estou com um probleminha.
É o seguinte tenho um processo que faz o faturamento de uma nota fiscal.
Sendo que neste processo ocorre o seguinte:
atualização de estoque,
atualizacao de cardex (fixa do produtos),
atualização do custo do produto (caso seja entrada),
contas a receber,
contas a pagar (caso seja entrada),
geração de comissoes.
O problema é o seuinte. Estes processos ocorrem na orderm apresentada, porem caso no ultimo ocorra um erro, os outros ja foram feitos.
Pensei o sequinte. Usar um flag para saber se algum deu erro. No entanto tenho que desfazer os anteriores ao qual deu erro.
Seria alto tipo ´RollBack´, mas utilizo base paradox e querys.
Se alguem tiver uma sujestão, sera bem aceita.
É o seguinte tenho um processo que faz o faturamento de uma nota fiscal.
Sendo que neste processo ocorre o seguinte:
atualização de estoque,
atualizacao de cardex (fixa do produtos),
atualização do custo do produto (caso seja entrada),
contas a receber,
contas a pagar (caso seja entrada),
geração de comissoes.
O problema é o seuinte. Estes processos ocorrem na orderm apresentada, porem caso no ultimo ocorra um erro, os outros ja foram feitos.
Pensei o sequinte. Usar um flag para saber se algum deu erro. No entanto tenho que desfazer os anteriores ao qual deu erro.
Seria alto tipo ´RollBack´, mas utilizo base paradox e querys.
Se alguem tiver uma sujestão, sera bem aceita.
Paganato
Curtir tópico
+ 0
Responder
Posts
01/10/2003
Fabio.hc
Oi.
try
Database1.StartTransaction;
... (seu processo de faturamento)
Database1.Commit;
Except
Database1.Rollback;
End;
try
Database1.StartTransaction;
... (seu processo de faturamento)
Database1.Commit;
Except
Database1.Rollback;
End;
Responder
Gostei + 0
01/10/2003
Paganato
Fabio, eu não tenho nenhum componente TDataBase em minha aplicação.
Como faço para utiliza-lo? pois nunca o-utilizei.
Caso vc tiver algum exemplo, agradeço.
Como faço para utiliza-lo? pois nunca o-utilizei.
Caso vc tiver algum exemplo, agradeço.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)