OS 80962 - CORREÇÃO - SIS/WEB - RECEBIMENTO - RECEBIMENTO DUPLICADO NO KARDEX
Objetivo:
- Esta solicitação tem por objetivo ajustar a rotina Nota Fiscal – Efetivação aplica trava de concorrência e de status para impedir que dois usuários finalizem a mesma NF ao mesmo tempo ou quando a NF já estiver Efetivada, Cancelada ou Integrada, evitando lançamentos duplicados no Kardex.
-
Escopo e riscos cobertos:
-
Concorrência entre usuários sobre a mesma NF.
-
Mensagens de bloqueio por Efetivada/Cancelada/Integrada.
-
Ausência de duplicidade no Kardex e consistência de status.
-
Regressão básica: grid, filtros, botão de efetivação e atualização do status.
-
-
Situação reportada:
-
O usuário reporta que "O pessoal do compras identificou que um recebimento duplicou o lançamento no Kardex com usuário diferente, porém no recebimento foi lançada apenas uma vez.".
Premissas:
- Necessário o ambiente estar atualizado com a versão do módulo Recebimento de número XXXX Genexus 17 ou superior;
Teste realizado após a atualização
Cenário 1 — Concorrência entre dois usuários: B efetiva; A tenta depois (bloqueio por “já Efetivada”)
Preparação
-
Usuário A e Usuário B acessam simultaneamente Nota Fiscal – Efetivação.
-
Ambos filtram e localizam a mesma NF (status pendente no grid).
Passos
-
Usuário B clica em Efetivar e finaliza o recebimento.
-
Em seguida (sem atualizar o A), Usuário A tenta Efetivar a mesma NF.
Resultado esperado
-
Usuário B: efetivação concluída com sucesso.
-
Usuário A: mensagem “Nota Fiscal já foi Efetivada” e a NF não aparece mais pendente após Atualizar o grid.
-
Kardex: 1 único lançamento referente à NF.
-
Log: uma efetivação (usuário B), tentativa do usuário A bloqueada por status.
Evidências
-
Print da mensagem ao Usuário A ([Imagem 2]).
-
Print do Kardex mostrando um lançamento.
-
Print do Log da NF (sucesso B, bloqueio A).
Cenário 2 — Concorrência “quase simultânea” (cliques ao mesmo tempo)
Passos
-
Usuários A e B tentam Efetivar a mesma NF praticamente no mesmo instante.
Resultado esperado
-
Somente um usuário conclui a efetivação.
-
O outro recebe mensagem de bloqueio por “já Efetivada”.
-
Nenhuma duplicidade no Kardex (apenas 1 movimento).
-
Log sem “dupla efetivação”: registra 1 sucesso e 1 tentativa bloqueada.
Evidências
-
Print da mensagem de bloqueio ([Imagem 2]).
-
Print do Kardex (1 lançamento).
-
Print do Log (1 sucesso, 1 bloqueio).
Cenário 3 — Bloqueio por Cancelada
Preparação
-
Colocar a NF em status Cancelada (ou utilizar uma NF de homologação com esse status).
Passos
-
Usuário tenta Efetivar a NF cancelada.
Resultado esperado
-
Sistema exibe “Não foi possível efetuar a Efetivação da Nota Fiscal, pois a Nota Fiscal foi Cancelada.”
-
Sem movimentação gerada no Kardex.
-
Log registra tentativa bloqueada por status.
Evidências
-
Print da mensagem ([Imagem 3]).
-
Print do Kardex (sem novo lançamento).
-
Print do Log (tentativa bloqueada).
Cenário 4 — Bloqueio por Integrada no Contábil
Preparação
-
NF já Efetivada e Integrada.
Passos
-
Usuário tenta Efetivar novamente.
Resultado esperado
-
Sistema exibe “Nota Fiscal já Efetivada e Integrada no Contábil.”
-
Sem nova movimentação no Kardex.
-
Log registra tentativa bloqueada por status.
Evidências
-
Print da mensagem ([Imagem 4]).
-
Print do Kardex (sem novo lançamento).
-
Print do Log (tentativa bloqueada).
Cenário 5 — Atualização do grid após efetivação por outro usuário
Passos
-
Usuário B efetiva a NF.
-
Usuário A clica em Atualizar (ou recarrega o filtro).
Resultado esperado
-
A NF não aparece mais como pendente; botão de efetivação indisponível.
-
Sem duplicidade no Kardex.
Evidências
-
Print do grid atualizado (NF ausente).
-
Print do Kardex (1 lançamento).
Cenário 6 — Repetição de ação pelo mesmo usuário
Passos
-
Mesmo usuário que efetivou tenta efetivar novamente via grid/filtro.
Resultado esperado
-
Exibir mensagem de “já Efetivada”.
-
Sem novo lançamento no Kardex.
Evidências
-
Print da mensagem ([Imagem 2]).
-
Print do Kardex (sem novo lançamento).
Cenário 7 — Integridade do Kardex (pós-processo)
Passos
-
Acessar Kardex / movimentação do(s) item(ns) da NF.
-
Conferir quantidade/valor e chave de referência (NF/seq.).
Resultado esperado
-
Exatamente 1 movimento correspondente à NF.
-
Quantidade/valor conforme a NF; sem duplicidades.
Evidências
-
Print do Kardex com destaque do único movimento.
Cenário 8 — Log/Auditoria da NF
Passos
-
Abrir Log da NF.
-
Conferir a ordem dos eventos (chamadas da tela, tentativas de efetivação, efetivação concluída, bloqueios).
Resultado esperado
-
Uma efetivação concluída (usuário vencedor da concorrência).
-
Demais tentativas bloqueadas com mensagem e status coerentes.
-
Marcas de data/hora demonstram que a trava evitou duplicidade.
Evidências
-
Print do Log demonstrando o sucesso + bloqueios.
Observações finais
-
Se houver timeout/liberação automática da trava, validar que a trava é liberada ao finalizar ou ao sair da tela, e que não permanecem locks “fantasmas”.
-
Em caso de falha de rede durante a efetivação, validar que há rollback (sem lançamento parcial) e que a NF permanece pendente.

ATENÇÃO: As informações neste documento são meramente ilustrativas e utilizadas apenas para fins de teste.