Baixa Estoque

De wiki-externa
Ir para: navegação, pesquisa

Visão Geral

Explicação do que é esperado do sistema com relação ao comportamento de baixar o estoque.

Formas de Baixa o estoque

Existem 2 formas de trabalho para baixa do estoque no sistema uma é o commit no fim da transferência/do gravar e a outra é um recurso novo que faz o commit item a item.
Com o commit item a item a chance de ocorrer o deadlock é muito menor já que não importa se a venda tem 1 item ou 500, a cada item ocorre o commit liberando a tabela estoque para ser alterada por outra transação.

Commit ao Fim da Transferência

Esse é o modo padrão do sistema(data estelar 14/10/2020 versão 3.3.1.014) e realiza o commit das informações todas de uma vez ao finalizar toda transferência do movimento.

Comportamento SisFatura

Em uma venda com 3 itens onde ocorre o deadlock no item de sequencia 2 os itens 1 e 3 terão seus estoques movimentados e o item 2 não, no banco de dados o campo FG_FEZ_ATUALIZACAO_ESTOQUE do item 2 ficará 0 e dos demais ficará 1.
Ao se fazer um DAV o sistema realiza a reserva do estoque e ao faturar ele retira essa reserva, se ocorrer algum problema para se remover a reserva o DOC_FATURA irá ficar com o campo FG_VOLTOU_RESERVA_DAV como 0 (implementado na versão 3.3.1.014).

Comportamento IBSFiscal

Caso se inicie uma transferencia de um cupom com 4 itens e o item 2 ter um Deadlock o sistema irá abortar a transferência de todo o cupom executando um rollback, não colocando informação alguma no servidor da existência desse movimento.

Commit Item a Item

Essa opção trabalha com 2 parametros o FG_FORCAR_COMMIT_POR_ITEM utilizado para ativar no SisFatura a rotina e o FG_FORCAR_COMMIT_POR_ITEM_CAIXA utilizado para ativar no IBSFiscal.

Comportamento SisFatura

Em uma venda com 3 itens onde ocorre o deadlock no item de sequencia 2 os itens 1 e 3 terão seus estoques movimentados e o item 2 não, no banco de dados o campo FG_FEZ_ATUALIZACAO_ESTOQUE do item 2 ficará 0 e dos demais ficará 2.
Ao se fazer um DAV o sistema realiza a reserva do estoque e ao faturar ele retira essa reserva, se ocorrer algum problema para se remover a reserva o DOC_FATURA irá ficar com o campo FG_VOLTOU_RESERVA_DAV como 0 (implementado na versão 3.3.1.014).

Comportamento IBSFiscal

Caso transferir um cupom com 4 itens e ocorrer o Deadlock no item 2, no servidor irá constar os 2 itens o 1 e o 2 sendo que o item 1 terá o campo FG_FEZ_ATUALIZACAO_ESTOQUEcomo 4 e o item 2 terá com o valor de 0. Ao se executar a transferência dos dados do caixa pro servidor o IBSFiscal irá tentar transferir novamente do item 2 para frente. Então caso o sistema tenha algum item de cupom fiscal com o valor do campo FG_FEZ_ATUALIZACAO_ESTOQUE com 0, verifique no caixa que gerou a venda que existe uma venda pendente a transferência.