01. DADOS GERAIS
Produto: | TOTVS Logística WMS
|
---|---|
Linha de Produto: | Linha Protheus |
Segmento: | Logística |
Módulo: |
TOTVS WMS - Linha Protheus - WMS Protheus (SIGAWMS)
|
Função: | WMSA225 - Transferência WMS |
País: | Todos Países |
Ticket: | - |
Requisito/Story/Issue (informe o requisito relacionado) : | DLOGWMSMSP-13608 |
02. SITUAÇÃO/REQUISITO
Está ocorrendo lentidão e travamento de processos do Protheus, na execução de serviço de transferência de unitizadores efetuadas ao mesmo tempo.
03. SOLUÇÃO
Efetuada a inclusão de ordenação por Filial, Armazém e Produto, no processo de separação unitizada.
Como o unitizador necessita ser transferido por inteiro, a transferência de todos os itens é tratada numa única transação.
Sem a ordenação, um unitizador pode aguardar a liberação de um produto que está em outro unitizador, que por sua vez está aguardando a liberação de um produto do primeiro unitizador, ocasionando a trava (deadlock).
Com a ordenação, os produtos terão o processamento sempre na mesma ordem.
Unitizador | Produto |
---|---|
U1 | P1 |
U1 | P2 |
U1 | P3 |
U2 | P1 |
U2 | P2 |
U2 | P3 |
Processo Antes da Alteração
- Processo 1: para Unitizador U1, o sistema separou produtos P1 e P2, faltando P3.
- Processo 2: em paralelo, para Unitizador U2, o sistema separou produto P3.
- A próxima etapa é separar o produto P1 no Processo 2, que está preso no processo 1 do Unitizador U1. Então, essa execução permanece travada até o primeiro processo terminar. Ocorre que o processo 1 está aguardando a liberação do produto P3 do Processo 2, e isso caracteriza o deadlock.
Processo Depois da Alteração
- Processo 1: para Unitizador U1, o sistema separou produtos P1 e P2, faltando P3.
- Processo 2: em paralelo, para Unitizador U2, o sistema tenta separar produto P1, que está sendo utilizado no processo 1.
- O processo 2 aguarda o término do processo 1 para que seja possível separar. Ainda que seja mais demorado que um processo concorrente, a trava é evitada.
Exemplo de Utilização
PARÂMETRO
- MV_WMSNEW = .T.
MATA103
- Inclua uma Nota Fiscal com vários produtos.
WMVS001
- Monte unitizadores com os produtos.
WMSA150
- Execute o serviço de endereçamento.
WMSA332
- Movimente os itens.
WMSA225
- Abra duas telas.
- Transfira o unitizador de um armazém para o outro, ao mesmo tempo.
- O processo deve ser finalizado sem travar, existindo a ordenação das separações por Filial, Armazém e Produto.
04. DEMAIS INFORMAÇÕES
Tabelas Utilizadas
- D14- Saldos por Endereço WMS
05. ASSUNTOS RELACIONADOS
Documento de Referência
06. ANEXO - PDF