A rotina de bloqueio/desbloqueio no Protheus visa garantir a integridade dos saldos durante inventário, bloqueando movimentações por data informada manualmente ou data calculada automaticamente com base no início do inventário ou período registrado. A função BLQINVENT verifica o bloqueio, retornando verdadeiro ou falso, e o parâmetro MV_BLQINVA automatiza o processo para produtos com bloqueio ativo. Procedimentos práticos são realizados via rotina MATA271.
Tempo aproximado para leitura: 00:02:00 min
Dúvida
Como funciona o bloqueio/desbloqueio de produtos para inventário por Data Calculada no Protheus?
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) - Estoque/Custos - Todas as versões.
Solução
Esta rotina tem como finalidade primordial bloquear e desbloquear as movimentações de estoque de produtos em uma data específica (informada ou calculada).
O bloqueio de movimentações visa assegurar a integridade dos saldos físicos e financeiros dos itens durante o processo de inventário, impedindo qualquer alteração de saldo nos produtos que estão sendo inventariados.
Mecanismos de Bloqueio
O bloqueio de inventário pode ser configurado de duas maneiras, conforme parametrização:
| Modalidade | Descrição | Base de Cálculo |
|---|---|---|
| Por Data Informada | A data do bloqueio é definida e inserida manualmente pelo usuário no momento da execução da rotina. | Data informada no parâmetro de execução. |
| Por Data Calculada | A data do bloqueio é determinada automaticamente pelo sistema. |
Baseada na Data do último Inventário (B2_DINVENT) ou na Data Base mais o Período de Inventário (B1_PERINV) registrado no Cadastro de Produtos.
|
O registro da data de bloqueio é armazenado no campo "Data Inicial Bloq. de Inventário" (B2_DTINV), disponível na tabela SB2 - Saldos Físico e Financeiro.
Validação de Bloqueio (Função BLQINVENT)
O framework do sistema utiliza a função BLQINVENT (ExpC1, ExpC2, ExpD1) para verificar se uma movimentação está bloqueada:
| Parâmetro | Tipo | Descrição |
|---|---|---|
ExpC1 |
Caractere | Código do Produto a ser verificado. |
ExpC2 |
Caractere | Código do Local/Armazém a ser verificado. |
ExpD1 |
Data (Opcional) | Data da movimentação a ser verificada. Se omitida, a database será considerada. |
Retorno: A função retorna .T. (Verdadeiro - Bloqueado) ou .F. (Falso - Desbloqueado).
Utilização: Esta função está disponível para uso em User Functions, validações e demais customizações.
❗ Observação de Parâmetro Global:
Quando o parâmetro MV_BLQINVA estiver habilitado, o sistema Protheus processa o bloqueio automaticamente para todos os produtos que possuem o campo Blq. Invent(B5_BLQINVA) ativo, e a data base do ambiente estiver maior que a data do parâmetro MV_DATAINV.
Procedimentos de Teste (MATA271)
Abaixo estão os passos para a execução prática da rotina de bloqueio e desbloqueio:
Bloqueio de Produto por Data Calculada
Acesso: Acesse a rotina MATA271.
Parâmetro Inicial: Preencha o campo "Quanto ao Produto" com a opção
Bloqueio.Seleção: Selecione o(s) Armazém(ns) e o(s) Produto(s) que serão alvo do inventário.
Período: Preencha as perguntas de "Data de/até" com o período que deve ser considerado para o bloqueio.
Data do Inventário: Selecione a opção
Data Calculada.Data Informada: Deixe o campo
Data Informadaem branco.Confirmação: Ao confirmar, selecione os Armazéns na tela apresentada e clique em
OK.
Desbloqueio de Produto por Data Informada
Acesso: Acesse a rotina MATA271.
Parâmetro Inicial: Preencha o campo "Quanto ao Produto" com a opção
Desbloqueio.Seleção: Selecione o(s) Armazém(ns) e o(s) Produto(s) que serão desbloqueados.
Período: Preencha as perguntas de "Data de/até" com o período que contemple a data do último inventário (
B2_DINVENT).Data do Inventário: Selecione a opção
Data Informada.Data Informada: Deixe o campo
Data Informadaem branco.Confirmação: Ao confirmar, selecione os Armazéns na tela apresentada e clique em
OK.
Saiba mais:
0 Comentários