Produto:

Datasul

Ocorrência:

O que pode ocorrer se usarmos o CD0205 - Alteração Códigos Unidades Itens - em modo multiusuário?

Passo a passo:

O programa CD0205 é um programa extremamente crítico que deve ser utilizado em ambiente monousuário e com um backup prévio.  

Abaixo segue exemplos de problemas que podem ocorrer realizando-se a alteração de código de item ou de unidade de medida em multiusuário, durante o processo normal da empresa:  

Alterar o código do item "A" para "X"

Suponhamos que o item "A" seja um item acabado, cuja estrutura é a seguinte:

A

|

B

O programa CD0205 realiza as alterações das tabelas da manufatura em ordem alfabética, portanto a tabela movto-mat (movimentos de material) seria alterada antes da tabela ord-prod (ordens de produção).

Após o CD0205 alterar a tabela movto-mat, modificando todas as ocorrências do item "A" para "X", um outro usuário, realizaria um reporte de produção para uma ordem do item "A". Essa ordem ainda não teria sido alterada e nem estaria "travada" pelo CD0205, portanto o reporte poderia ser feito sem nenhum problema.

Quando os movimentos relativos a esse reporte forem gerados, será criado um registro na tabela movto-mat (movimentos de material), utilizando o item da ordem ("A"). Quando o CD0205 passar a realizar a alteração dos itens das ordens de produção, o registro criado para a tabela movto-mat não será mais alterado, gerando portanto uma inconsistência grave no banco de dados, pois haverá um registro de movimento de material com um item inválido e diferente do item da ordem.  

 

Alteração da unidade de medida de um item, de "Kg" para "g" (fator de conversão igual a 1000)

Suponhamos que o item "B" terá a sua unidade de medida alterada de "Kg" para "g". Se o item "B" fizer parte da estrutura abaixo:

                      A                  

                             | Quantidade.: 2 Kg

B

Se a tabela estrutura já tiver sido processada pelo CD0205, alterando então a quantidade de 2 Kg para 2.000 g e outro usuário criar uma ordem de produção de 1 peça do item "A", será gerada uma ordem conforme abaixo:

A Quantidade.: 1 Peça

|

B Quantidade.: 2.000 g

Após a criação dessa ordem, o programa CD0205 passa a alterar a tabela reservas, multiplicando a quantidade da reserva do item "B" por 1.000. Dessa forma, a ordem ficará assim:

A Quantidade.: 1 Peça

|

B Quantidade.: 2.000.000 g

 

Esses são apenas exemplos extremamente simples dos problemas que podem ocorrer executando-se o CD0205 durante o "expediente" normal. Podem acontecer muitos outros problemas, os quais seriam muito difíceis de localizar e corrigir.

Observações:

 

 

 

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))