Histórico da Página
Reprocessamento de Contador para Bens com Contador Próprio
Características do Requisito
Linha de Produto: | Microsiga Protheus | ||||||||||||
Segmento: | Manufatura / Distribuição e Logística | ||||||||||||
Módulo: | SIGAMNT - Manutenção de Ativos com Gestão de Frotas | ||||||||||||
Rotina: |
| ||||||||||||
Cadastros Iniciais: | Para validar a efetividade da presente melhoria, é necessário que o cliente possua em sua base de dados diversos registros de contador, presentes na tabela STP - Ordem de Serviço Acompanhamento.
| ||||||||||||
Chamados Relacionados |
| ||||||||||||
País(es): | Todos. | ||||||||||||
Banco(s) de Dados: | Todos. | ||||||||||||
Tabelas Utilizadas: | STP - Ordem de Serviço de Acompanhamento; STJ - Ordens de Serviço; ST9 - Bens; STZ - Movimentação de Bens; TPN - Utilização de Bens; TQ2 - Histórico de Transferência de Bem TQN - Entrada Manual de Abastecimento; TQB - Solicitações de Serviço | ||||||||||||
Sistema(s) Operacional(is): | Todos. |
Descrição
Implementado no Manutenção de Ativos (SIGAMNT) a rotina de Acerto/Reprocessamento de Contadores (MNTA876). Esta nova rotina tem por objetivo apoiar os usuários na realização de acerto de contadores, permitindo ter uma visão de todos os registros de contador dos bens pais de Bens com contador próprio, presentes na tabela STP - Ordem de Serviço Acompanhamento.
A rotina permite aos usuários exportar os registros de histórico, sendo todos os registros ou "a partir de data" , também permitindo posteriormente a importação dessas informações no mesmo formato para ajuste e reprocessamento de todo o histórico. O reprocessamento de contador utilizando nesta rotina é destinado a bens de qualquer categoria, desde que tenham contador 1 próprio (T9_TEMCONT = ‘S’).
Obs.: maiores detalhes referente ao processo pode ser verificado na seção Procedimento de Utilização.
Os detalhes referente aos processos de exportação do arquivo e importação seguem abaixo:
- Exportação:
A rotina de exportação de histórico de contador é o primeiro passo para o reprocessamento de contador. Ao selecionar essa opção, é apresentado ao usuário uma lista dos bens cadastrados que possuam contador próprio. Caso a importação seja parcial, os registros carregados pela rotina serão apenas aqueles criados a partir da data selecionada. A seguir, ao marcar um ou mais bens da lista e confirmar no botão OK, é criado um arquivo contendo todo o histórico de contador dos bens selecionados.
Esta rotina permite ao usuário selecionar a partir de uma lista, todos os bens que possuem contador próprio, apresentando em um markbrowse os seguintes campos: Filial (T9_FILIAL), Código (T9_CODBEM), Nome (T9_NOME), Tipo Modelo (T9_TIPMOD) e sua descrição, Família (T9_CODFAM) e sua descrição. São apresentados registros de todas as filiais, independente da filial logada, baseando-se nos registros de transferência da tabela TQ2 (no caso das tabelas ST9 e STP estarem compartilhadas, não é considerada a tabela TQ2, visto que todos os registros no histórico STP serão de um mesmo bem), conforme imagem abaixo:
Ao confirmar a tela de seleção, um arquivo .dbf ou .dtc é ser gerado com o histórico de contador dos bens selecionados com os seguintes campos: TP_FILIAL, TP_CODBEM, TP_DTLEITU, TP_HORA, TP_POSCONT, TP_ ACUMCON e TP_TIPOLAN, na ordem apresentada. Os registros são ordenados por TP_CODBEM + TP_DTLEITU + TP_HORA + TP_FILIAL, em ordem crescente e o arquivo é salvo em uma pasta específica no dicionário, no caminho ROOTPATH + STARTPATH + \NG, ex: C:\NGAP118\Protheus_Data\DicP118\NG. Ao final da rotina, é apresentada uma tela para o usuário escolher o nome do arquivo, com o nome padrão no formato NG876STPYYYYMMDDHHMMSS.dbf.
Importante ressaltar que o campo de variação dia não é exportado visto que seu valor é consequência do reporte de contador, assim não deve informado manualmente. Seu cálculo se baseia na fórmula Variação Dia = (Contador Acumulado Final – Contador Acumulado Inicial) / Diferença de Dias entre reportes. Da mesma forma o contador acumulado é preenchido automaticamente. Além disso, a informação de contador acumulado só é alterável para o primeiro registro de inclusão do bem, os demais registros serão calculados com base na informação de posição do contador.
- Importação:
Na sequência do processo, o usuário deve realizar a importação do arquivo que foi exportado para adequação do histórico de todos os bens via getdados. O usuário tem a possibilidade de alterar ou excluir os registros existentes no histórico e também de incluir novos registros:
Após selecionar o arquivo para importação, finalizar a edição deste arquivo e confirmar no botão OK, é realizada a leitura dos registros alterados em tela, gravando-os em uma tabela temporária, no mesmo formato do arquivo exportado, de forma ordenada por TP_CODBEM + TP_DTLEITU + TP_HORA + TP_FILIAL. Além disso, é efetuado um backup da STP, filtrando os bens contidos no arquivo importado. O backup é salvo no mesmo diretório ROOTPATH + STARTPATH + \NG + \backup, com o formato STPXX0_YYYYMMDDHHMMSS_backup.dbf, sendo YYYYMMDD e HHMMSS substituídos pela data e hora.
É possível determinar alguns parâmetros para validação, determinando o comportamento da rotina durante a validação de Variação Dia e do Contador do bem. Existem três comportamentos determinados para o caso de ser encontrado um registro com erro na Variação dia ou no seu contador:
- Bloquear o registro com erro, cancelando o processo e retornando para a tela de importação;
- Liberar o registro, ignorando o erro;
- Perguntar ao usuário através de uma mensagem durante o processamento se ele deseja inserir o registro com erro.
As etapas de validação são realizadas bem a bem, inicialmente validando o bem e depois reprocessando seu histórico. Um próximo bem só pode ser validado e reprocessado quando o processamento do bem anterior for concluído.
As validações então são feitas em duas etapas, apresentadas a seguir.
Validação inicial
A validação dos registros lidos consiste inicialmente na verificação da existência de um registro único e inicial do tipo “Inclusão” (TP_TIPOLAN = ‘I’), na base (tabela STP), para cada filial em que o bem esteve presente.
A rotina então varre as tabelas relacionadas ao histórico de contador, buscando registros com a mesma chave de BEM + DATA + HORA na tabela STP. Caso não encontre algum registro, apresenta um log ao usuário (com opção de imprimir), permitindo retornar à tela de ajuste para inclusão dos novos registros, sem abortar o reprocessamento. As tabelas relacionadas são: TQN, TPN, ST9, STJ, STS, STW, STY, STZ, TPW, TQ2, TQA, TQB, TR9, TTI, TUZ e HTJ. Na sequência, cada registro do histórico é excluído, sem passar por validações de exclusão padrão, visto que os relacionamentos citados anteriormente iriam impedir o processo de exclusão.
Validação secundária
Já estando ordenado por TP_CODBEM + TP_DTLEITU + TP_HORA, o reprocessamento consiste em executar as funções de validação padrão para cada registro individualmente. Após validar o registro, a rotina irá seguir com sua gravação.
Importante considerar que o primeiro registro do histórico, por ser do tipo de “inclusão” segue a regra existente na inclusão e na transferência do bem, já os demais registros do tipo “C” ou “A” (Q ou V) ou (P) seguem a regra de reporte pelo fluxo de funções:
- Valor contido no campo TP_POSCONT não deve estar vazio;
- Valor contido no campo TP_POSCONT deve ser positivo, maior que zero;
- Valor do TP_POSCONT deve estar dentro do limite validado pela função de consistência da posição do contador com o limite;
- Valor do campo TP_POSCONT deve ser adequado ao histórico, validado pela função que valida o lancamento no histórico;
- Valor do campo TP_POSCONT deve ter variação dia adequada, validado pela função que checa a variação dia – estando dentro do percentual, a rotina não solicita confirmação, apenas grava.
O fluxo de validação é padrão e foi baseado na classe NGMovBem, onde as validações reaproveitam funções e fluxos já existentes no padrão, evitando a criação de novas funções.
Registros do tipo Quebra e Virada, seguem as respectivas validações de quebra e virada realizadas pela rotina MNTA840 (quebra) e MNTA835 (Ações Relacionadas / Virada). Em nenhum momento é realizada quebra ou virada de forma automática durante esse processamento, somente quando o registro for do tipo V ou Q (ou ainda quando do tipo P). Um registro de abastecimento, por exemplo, não realiza virada automática.
Havendo alguma inconformidade o processo é abortado. As informações são apresentadas no final, em um log.
Em situação de exceção, no caso de uma inconformidade resultante das validações realizadas, não somente o histórico da tabela STP é restaurado como também os valores das tabelas relacionadas que foram alteradas.
Observações gerais
- A gravação de cada registro de histórico ocorre de forma individual e após a conclusão da etapa de validação, utilizando a função que gera registro de histórico, padrão do sistema.
- Na gravação do registro da STP os campos TP_DTORIGI, TP_DTREAL e TP_USULEI são alterados para a data em que a rotina está sendo executada e para o código do usuário que está logado.
- Para cada registro gravado, havendo algum relacionamento com outras tabelas, o registro da outra tabela também tem seu valor atualizado, obedecendo a regra da respectiva tabela em que se vai realizar a posição do contador, e desde que, certamente, o valor atual tenha sofrido alguma alteração em relação ao histórico. Por exemplo, ao identificar um registro na STP para data X + hora Y, havendo o mesmo registro na TQN (abastecimento), essa tabela será atualizada.
Importante
Antes de executar o compatibilizador UPDMNTC6 é imprescindível:
- Realizar o backup da base de dados do produto que será executado o compatibilizador (diretório \PROTHEUS11_DATA\DATA) e dos dicionários de dados SXs (diretório \PROTHEUS11_DATA\SYSTEM).
- Os diretórios acima mencionados correspondem à instalação padrão do Protheus, portanto, devem ser alterados conforme o produto instalado na empresa.
- Essa rotina deve ser executada em modo exclusivo, ou seja, nenhum usuário deve estar utilizando o sistema.
- Se os dicionários de dados possuírem índices personalizados (criados pelo usuário), antes de executar o compatibilizador, certifique-se de que estão identificados pelo nickname. Caso o compatibilizador necessite criar índices, irá adicioná-los a partir da ordem original instalada pelo Protheus, o que poderá sobrescrever índices personalizados, caso não estejam identificados pelo nickname.
- O compatibilizador deve ser executado com a Integridade Referencial desativada*.
Atenção O procedimento a seguir deve ser realizado por um profissional qualificado como Administrador de Banco de Dados (DBA) ou equivalente! A ativação indevida da Integridade Referencial pode alterar drasticamente o relacionamento entre tabelas no banco de dados. Portanto, antes de utilizá-la, observe atentamente os procedimentos a seguir:
Contate o Help Desk Framework EM CASO DE DÚVIDAS! |
---|
- Em Microsiga Protheus TOTVS Smart Client, digite U_UPDMNTC6 no campo Programa Inicial. Descreva se o compatibilizador deve ter uma data específica ou superior para que a atualização nos dicionários seja efetuada corretamente. Importante: Para a correta atualização do dicionário de dados, certifique-se que a data do compatibilizador seja igual ou superior a 03/08/2016.
- Clique em OK para continuar.
- Após a confirmação é exibida uma tela para a seleção da empresa em que o dicionário de dados será modificado.
- Ao confirmar é exibida uma mensagem de advertência sobre o backup e a necessidade de sua execução em modo exclusivo.
- Clique em Processar para iniciar o processamento. O primeiro passo da execução é a preparação dos arquivos.
É apresentada uma mensagem explicativa na tela. - Em seguida, é exibida a janela Atualização concluída com o histórico (log) de todas as atualizações processadas. Nesse log de atualização são apresentados somente os campos atualizados pelo programa. O compatibilizador cria os campos que ainda não existem no dicionário de dados.
- Clique em Gravar para salvar o histórico (log) apresentado.
- Clique em OK para encerrar o processamento.
- Clique em Processar para iniciar o processamento. O primeiro passo da execução é a preparação dos arquivos.
Procedimento para Implantação
Aplicar atualização dos programas: NGUTIL04.PRX, MNTA840.PRX, MNTA875.PRX, MNTA876.PRW, MNTA877.PRW e NGUTIL04.PRX.
Para viabilizar essa melhoria, é necessário aplicar o pacote de atualizações (Patch) deste chamado.
O sistema é atualizado logo após a aplicação do pacote de atualizações (Patch) deste chamado.
Atualizações do Compatibilizador
- Criação de Parâmetro no arquivo SX6 – Parâmetros:
Nome da Variável | MV_NGPERCV |
Tipo | Caracter |
Descrição | Habilita ou Desabilita o Histórico dos Indicadores 0=Desabilita ; 1=Histórico Resumido; 2=Histórico Completo (oneroso) |
Valor Padrão | 1 |
Procedimento para Utilização
- No módulo de Manutenção de Ativos acesse Atualizações/ Controle de Oficina/ Contador/ Acerto (MNTA875).
- O sistema apresenta uma nova janela com três opções de funcionalidade.
- Escolha a opção de “Ajuste/Reprocessamento de Contador Próprio” e clique em Confirmar.
- Logo após, uma nova janela com duas opções são apresentada.
- Selecione a opção “Exportar histórico de Contador”, se preferir também informe a partir de que data os registros devem ser considerados.
- O sistema irá apresentar uma nova janela, onde é possível visualizar todos os bens disponíveis na empresa com contador próprio.
- Selecione os bens que pretende realizar o ajuste de contador e clique em OK.
- Logo após o sistema apresenta uma nova janela, onde é possível agora visualizar o nome do arquivo e se desejar este pode ser alterado. Clique em OK para prosseguir.
- O sistema cria um arquivo no diretório do ambiente (dicionário Protheus) com extensão em .dtc ou .dbf, conforme ambiente do cliente.
- Novamente em Atualizações/ Controle de Oficina/ Contador/ Acerto (MNTA675), escolha a opção de Ajuste/Reprocessamento de Contador Próprio (MNTA676) e prossiga.
- Selecione a opção “Importar histórico de Contador” e clique em Próximo.
- O sistema irá apresentar janela com o diretório do ambiente. Selecione o arquivo anteriormente criado.
- Após a confirmação o sistema apresenta os registros de contador contidos no arquivo exportado, desta forma confira os registros presentes no arquivo, altere ou inclua registros e após a manutenção do arquivo clique em ‘OK’.
- O sistema irá validar todos os registro de acordo com a parametrização informada em Parâmetros, botão presente na tela de manutenção dos registros. A validação ocorre também em cima dos demais registros em tabelas relacionadas em todo o ambiente.
- No final, caso não encontre nenhuma inconsistência nos registros presentes no arquivo, o sistema irá apresenta a mensagem de importação realizada com sucesso. Caso algum erro seja encontrado será apresentado um log com as inconsistências encontradas, este será para apoiar o usuário no ajuste de contador.