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

Nazareno Neto nazareno.nobrega em gmail.com
Sex Set 4 08:35:08 -03 2009


Cara na empresa onde trabalho usamos tabelas temporarias, vo inserindo nela.
Quando eu finalizar a venda ou nf, saio gravando tudo com controle de
transações.
Nunca deu pau nao.

Espera ter ajudado!

2009/9/4 Valdemir (gmail) <valdemirjs em gmail.com>

> 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
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
Nazareno Neto
Programador Delphi e Firebird

nazarenoneto em hotmail.com
nazareno.nobrega em gmail.com



Mais detalhes sobre a lista de discussão lista