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

Valdemir (gmail) valdemirjs em gmail.com
Sex Set 4 09:47:40 -03 2009


Então rodrigo.. os dados que vc mostra pro usuario no form da nota... grid 
dos itens da nota... vc usa CDS ? com campos DB ?
.. eu aqui não mencionei no inicio mas estou usando o IBO usando campo DB


--------------------------------------------------
From: "Rodrigo" <dominio em engeplus.com.br>
Sent: Friday, September 04, 2009 9:23 AM
To: "FireBase" <lista em firebase.com.br>
Subject: Re: [firebase-br]Fw: Transações x NF - ItensNF x Produto x Ficha 
Estoque

> Bom dia Valdenir.
>
> O ideal é vc manter a transação aberta o menos tempo possivel.
>
> No meu caso preferi fazer o seguinte. Carregar todos os dados da NF no 
> Form NF. Entao quando o cliente toma a decisão
> do que fazer com a nota, Imprimir ou Guardar como Nao impressa por 
> exemplo, no botao que ela escolher eu inicio a transação,
> atualiza os dados e da um commit ou rollback em caso de erro. Dessa forma 
> o tempo que a transação fica aberta é minimo. Para atualizar o estoque uso 
> uma trigger tb. Da mais trabalho mas acho que é a melhor forma.
>
> Rodrigo
>
>
> ----- Original Message ----- 
> From: "Valdemir (gmail)" <valdemirjs em gmail.com>
> To: <lista em firebase.com.br>
> Sent: Friday, September 04, 2009 8:12 AM
> Subject: [firebase-br] Fw: Transações x NF - ItensNF x Produto x Ficha 
> Estoque
>
>
> 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
>
> __________ NOD32 4394 (20090904) Information __________
>
> This message was checked by NOD32 antivirus system.
> http://www.eset.com
>
>
>
> ______________________________________________
> 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 





Mais detalhes sobre a lista de discussão lista