[firebase-br] Fw: Transações x NF - ItensNF x Produto x Ficha Estoque

Valdemir (gmail) valdemirjs em gmail.com
Sex Set 4 08:12:16 -03 2009


Correção, este erro da ao vender em duas maquinas diferentes o mesmo produto
Ex..
maquina 1
inicio a transação
incluo a nf
incluo o produto 1  ... ainda não terminei de lanaçar a nota e a maquina 2 abre uma nova nota, e inclui o mesmo produto na maquina 2 da erro de conflito
..........................................
ao eu usar commitretaining ao gravar o item, o erro desaparece... mas se eu cancelar a operação na maquina 1 com o rollback a nota é cancelada, os itens tb, mas a atualização que a trigger de inclusão que o item fez na tabela de produtos não é descartada e ai o estoque fica errado

From: Valdemir (gmail) 
Sent: Thursday, September 03, 2009 10:34 PM
To: lista em firebase.com.br 
Subject: Transações x NF - ItensNF x Produto x Ficha Estoque


Pessoal tenho a seguinte estrutura no banco

Produtos
Codigo
Nome
QTde

NF (cabecalho da nota)
NF-Itens (itens da nota)

Ficha Estoque (toda movimentação de produtos vem aqui e atualiza a qtde) na tabela de produtos
...
ao incluir um item de NF... por trigger incluo um registro na ficha de estoque.... e na trigger da ficha de estoque altero o saldo do produto no cadastro do produto
....

ao lançar a NF inicio a transação desligado o auto comit, configurada como read comited

incluo qtos itens desejar


no final dou comit, ou rolback
...
funciona 100% desde que seja em apenas uma maquina ...

esta dando erro de conflito se eu na maquina 1, vender o produto 1, e na maquina 2 alterar o produto 2, ao mandar gravar o produto 2 da erro de conflito, isso pq a transação da nota ainda esta aberta
...
pensei se eu dar comit ao incluir um item a nf ainda não fechou e pode ser que ainda não grave por causa de alguma validação
...
outro detalhe é que eu posso dar um rollback no final e tudo volta como era antes, se eu der comit no meio de tudo, vai dar um trampo danado sair cancelando tudo ... isso pensando que se esta incluindo pq se estiver alterando... voltar a nota como estava antes vai ser pior ainda
.........
.
este tipo de situação acho que é comum acontecer pq já vi varios sistemas com esta mesma estrutura, li algumas coisas sobre o commitretaining, mas não sei se ele se encaixaria neste caso
...
eu tenho até a revista do cantu edição 42 mas mesmo assim não achei uma solução ou melhor "não enxerguei", pois acho que ela existe sim


Mais detalhes sobre a lista de discussão lista