Configurações para habilitar a Atualização de Estoque tardia
| Produto: | Microsiga Protheus® |
| Ambiente: | Faturamento (SIGAFAT) |
| Ocorrência: | Qual configuração para habilitar a Análise e Bloqueio de Crédito dos Clientes? |
| Passo a passo: | A funcionalidade de atualização de estoque tardia serve para empresas que possuem muita concorrência de dados da tabela de Saldos de Produtos (SB2), ela permite que o saldo do produto seja atualizado posteriormente à emissão das notas fiscais. Exemplo: Existe um produto "000001", este produto é utilizado nos processos de "Venda" e de "Compra", então posso ter um usuário realizando um Pedido de Vendas (MATA410), outro usuário realizando um "Pedido de Compras" (MATA121), outro realizando um "Documento de Saída" (MATA460A) e ainda outro realizando um "Documento de Entrada" (MATA103). Todos eles estão usando o produto "000001" ao mesmo tempo, para que o sistema permita essa ação, ele irá criar uma "fila", então um usuário só poderá gravar seu processo, quando for " |
a dele" de usar o registro".
Parâmetro MV_NFS_JOB Se o parâmetro MV_NFS_JOB estiver habilitado (.T.), um JOB é executado para a atualização do estoque após a geração dos documentos. Nestes casos, o documento de saída, |
por exemplo, é gerado sem atualização de estoque e os campos "Bloq.Estoque" (C9_BLEST) e "Bloq.Credito" (C9_BLCRED) são gravados com conteúdo ZZ. O Job "FATXJOB" tem a função de regravar os campos "Bloq.Estoque" (C9_BLEST) e "Bloq.Credito" (C9_BLCRED) com conteúdo "10" e chamar a função de atualização de estoque.
| Aviso |
|---|
| Enquanto o "FATXJOB" não atualizar o saldo de estoque do produto, ou seja, enquanto os campos "Bloq.Estoque" (C9_BLEST) e "Bloq.Credito" (C9_BLCRED) estiverem com o conteúdo "ZZ", não será possível a exclusão do documento de saída. |
Sendo assim, se o parâmetro "MV_NFS_JOB" estiver habilitado (.T.), oJob"FATXJOB" também deve estar. Caso o "FATXJOB" não esteja configurado, o parâmetro "MV_NFS_JOB" deve ser desabilitado (.F.) Há duas maneiras indepedentes (uma não depende da outra) de executar a atualização de estoque quando acionada a atualização tardia do estoque: | Deck of Cards |
|---|
| startHidden | false |
|---|
| effectDuration | 0.5 |
|---|
| id | Liberação Tardia |
|---|
| effectType | horizontal |
|---|
| loopCards | true |
|---|
| | Card |
|---|
| default | true |
|---|
| id | Custo Médio |
|---|
| label | 1. Via Job |
|---|
| Nesta opção é necessário configurar o Job no AppServer.ini do ambiente. 1. Exemplo de Job: |
|
|
environment=<NOME DO AMBIENTE> |
|
|
|
Parm1=<CÓDIGO DA EMPRESA> |
|
|
|
2. Crie um arquivo com o nome "FATXJOB.CFG" e salve-o na pasta do AppServer (Pasta de Instalação do Protheus), iremos indicar o horário de execução do Job, ou seja, de quanto em quanto tempo o sistema irá atualizar o Saldo dos Produtos na tabela SB2. No exemplo abaixo, o JOB irá rodar das 18:00:00 às 22:30:00, a cada 5 minutos: | Bloco de código |
|---|
[FTJOBNFSB2_9901] |
|
|
|
| Card |
|---|
| default | true |
|---|
| id | 06072020265 |
|---|
| label | 2. Via Schedule |
|---|
| É possível realizar a execução do Job via Schedule, configurando sua recorrência de execução. O acesso do cadastro de Schedules fica no Configurador (SIGACFG), segundo o menu: "Ambiente" > "Schedule" > "Schedule" Como pré-requisito, é necessário possuir o Cadastro de Agente. Após isso, realize os seguintes passos: Conforme as execuções do Schedule forem ocorrendo, os saldos de produtos serão atualizados na tabela SB2 |
|
| Aviso |
|---|
| O nome do JOB deverá ser sempre "FTJOBNFSB2_XXYY", onde "XX" é o código da empresa e "YY" é o código da filial. Caso o arquivo "FATXJOB.CFG" não seja criado, a rotina utilizará o intervalo padrão: das 00:00:01 às 23:59:59, com intervalo de execução de 5 minutos |
|
.| Card |
|---|
| default | true |
|---|
| id | 06072020265 |
|---|
| label | 2. Via Schedule |
|---|
|
Cadastro do Schedule no Configurador (Protheus 11):
a) Cadastre um Agente2. VIA SCHEDULE
Cadastro do Schedule no Configurador (Protheus 11):
a) Cadastre um Agente.
Image Removedb) Em seguida, cadastre um agendamento com o Job FtJobNfsB2. Para poder testar várias vezes, cadastre como remanescente.
Image Removedc) Inicie os serviços.
Image Removed
d) Execute manualmente o job FtJobNfsB2 e verifique se os saldos foram atualizados.
Image Removed |
|