Um dicionário de dados diferencial é um dicionário parcial que é utilizado para atualizar o dicionário de dados (metadado) do Protheus em uso.
O dicionário de dados diferencial pode ser utilizado para diversos fins, a saber:
- Atualizar o dicionário de dados do Protheus para uma versão atualizada dentro de um mesmo release.
- Inserir o dicionário de um novo produto, módulo ou funcionalidade.
- Efetuar atualizações pontuais devido a um novo requisito legal.
Preparando o ambiente
Para aplicar o dicionário de dados diferencial, utilizamos uma ferramenta especial chamada UPDDISTR. O UPDDISTR atualiza o dicionário de dados do Protheus usando as mesmas regras e funcionalidades do atualizador de versão do Protheus.
De fato, o "core" (núcleo) do UPDDISTR e o do atualizador de versão são exatamente iguais, garantindo que não haja disparidade de regras entre as duas ferramentas. A maior diferença reside no fato do UPDDISTR poder utilizar um dicionário parcial, enquanto o atualizador de versão sempre exigir um dicionário completo.
Além do dicionário de dados, as alterações na base de dados decorrentes do novo dicionário (como por exemplo tamanho de campos) também são efetuadas, da mesma maneira que no atualizador de versão padrão.
Observação importante: a ferramenta UPDDISTR apenas atualiza o dicionário de dados (metadado), os helps de campo e a base de dados. As alterações no repositório do sistema (sejam elas substituição do repositório, aplicação de "patchs", "updates" e pacotes) e atualizações de menus devem continuar sendo efetuadas conforme instruído em cada processo específico.
Procedimento para Implementação
O sistema é atualizado logo após a aplicação do pacote de atualizações (Patch) de Lib, contendo os fontes abaixo cuja data seja igual ou superior às datas informadas.
- UPDDISTR.PRW – 01/07/2013
- APUPD030.PRW – 16/10/2013
- APUPDATE.PRW – 18/09/2013
Procedimentos para Utilização
Recomendamos fortemente que:
- Qualquer processo que envolva atualização do dicionário e base de dados do sistema seja efetuado inicialmente em ambiente de homologação e que os processos mais importantes para a operação da empresa sejam validados.
- Seja efetuada uma CÓPIA FRIA (todos os serviços parados) e CONSISTENTE (das pastas adequadas e banco de dados) da base de produção antes da aplicação dessa atualização.
- Seja efetuada uma CÓPIA FRIA (todos os serviços parados) e CONSISTENTE das pastas de dicionário de dados ("startpath" - pasta "system" e similares) antes da aplicação da atualização.
Estas recomendações tornam-se obrigatórias no caso de sistemas de missão crítica, quando a operação da empresa depende totalmente ou quase que totalmente do sistema Protheus.
Para utilizar este procedimento é preciso dispor de um dicionário diferencial.
O dicionário diferencial é um arquivo texto que possui o seguinte formato:
- SDFppp.txt, onde ppp é o código do país (localização).
Dessa forma, um dicionário diferencial para o Brasil deve possuir o nome SDFBRA.TXT. Um dicionário diferencial para a Argentina deve possuir o nome SDFARG.TXT.
Cada processo de atualização (atualização do Protheus, novo módulo, nova legislação) vai disponibilizar um arquivo com conteúdo diferente.
Ao mesmo tempo, poderá ser disponibilizado um arquivo diferencial de helps de campo e alertas, com o seguinte formato:
- HLPDFiii.TXT, onde iii é o código do idioma.
Dessa forma, um help de campo para o idioma português deve possuir o nome HLPDFPOR.TXT. Diferentemente do arquivo de dicionário, no Help a diferenciação por país encontra-se no próprio arquivo (interna).
O(s) arquivo(s) de atualização deve(m) ser posicionado(s) na pasta de carga "\systemload" (pasta criada a partir da pasta "root" (raiz) do Protheus).
Este arquivo apenas é necessário caso o processo tenha sido interrompido antes de sua conclusão, e guarda quais tarefas foram concluídas e quais ainda estão pendentes.
Para atualizar, efetuar a chamada do programa de atualização UPDDISTR, na tela inicial do Protheus, ou seja, digitar UPDDISTR como se fosse o nome de um módulo do Protheus (os demais dados da janela, como conexão e ambiente, são apenas exemplos).
A partir do pacote de LIB disponibilizado em 07/04/2016 será possível escolher quais grupos de empresas serão considerados na atualização. Será exibida uma janela onde é possível marcar os grupos de empresas desejados. Por padrão, todos os grupos já vem selecionados. Se desejar utilizar todos os grupos, basta clicar no botão OK.
Após a chamada, será exibido um assistente de atualização. A primeira janela faz uma breve explicação da funcionalidade.
Deve-se avançar para a segunda janela.
Na segunda janela deve-se informar:
Deve-se avançar para a terceira janela.
Na terceira janela deve-se informar:
O diretório de dados (X2_PATH) para cada grupo de empresas para as novas tabelas a serem inseridas pela atualização. No caso de bases de dados SQL (Top Connect) não é necessário informar o diretório.
Deve-se avançar para a quarta janela.
Na quarta janela são definidas informações quanto ao LOG de processamento.
- Em Configuração de execução do Update, indicamos manter apenas as opções Log de Critical Error e Corrigir erros automaticamente habilitadas, lembrando que a opção de corrigir os erros automaticamente executará as alterações de base pelo próprio sistema
- NÃO marque a opção Manter o arquivo de log existente
Ao confirmar, será exibida uma janela confirmando quais grupos de empresas serão processados e quais operações serão executadas.
Em seguida será efetuada uma análise da base de dados existente. A análise verificará diversos fatores, como por exemplo a consistência da base de dados em relação ao dicionário existente. Se forem encontrados problemas, os mesmos deverão ser corrigidos antes que a atualização possa prosseguir.
Deve-se notar que nesta fase é analisado apenas o conteúdo da base de dados e do dicionário já existente. Nesse momento não é efetuada nenhuma consulta ao dicionário de dados diferencial que se pretende aplicar.
Caso não existam erros ou os mesmos já tenham sido corrigidos a atualização iniciará logo após o processo de verificação.
Deve-se aguardar o final da atualização e encerrar.
Sistemas Operacionais | Windows/Linux |