MICROSIGA PROTHEUS: VIRADA DE VERSÃO – AS PEDRAS DO CAMINHO
Como tenho postado, estou fazendo os testes para a virada de versão do Microsiga Protheus.
Até hoje, minha opção foi utilizar o Protheus sobre base de dados CODEBASE, nosso velho DBF, pois nosso volume de dados e quantidade de usuários não tornava imperativo o uso de SGBD´s como SQL Server. Além das outras desculpas como falta de tempo para me dedicar ao processo de migração de base de dados.
Agora resolvi me livrar de vez desse passado, virando a versão do sistema, do meu atual Microsiga Protheus 8.11 para o Microsiga Protheus 10.1 e, ao mesmo tempo, migrando a base de dados para o padrão SQL.
Até mesmo por falta de qualidade nas migrações anteriores, uma vez que o ERP da Microsiga está em uso aqui há mais de 12 anos, também achei interessante “passar um pente fino” no atual processo de virada de versão analisando, praticamente, registro por registro em cada tabela.
Por hora, os principais problemas com os quais me deparei foram as diferenças entre o dicionário de dados oficial da versão atual, 10.1, com o meu dicionário de dados.
Campos com tamanho diferente, campos inexistentes e campos obsoletos foram os maiores obstáculos que encontrei enquanto comparava o dicionário de dados correto (considero o dicionário de dados oficial – que pode ser baixado do site da microsiga – como correto) e o meu dicionário de dados e estruturas das minhas tabelas.
Também encontrei um campo do tipo DATA, no dicionário de dados da Microsiga, definido com o tamanho 11, quando o correto é 8.
Um passo básico nas viradas de versão da microsiga é a execução do aplicativo de UPDATE, no meu caso o MP710TO101, entretanto, essa rotina de atualização não corrige diversos erros que ela encontra pelo caminho, por considerá-los personalizados demais para correção automática, posição com a qual concordo plenamente. Por isso, precisei criar o meu próprio aplicativo de correção desses erros.
Em resumo, esse aplicativo que criei verifica os campos de minha base de dados que estão obsoletos, verifica se há conteúdo nesses campos e, caso negativo, remove-os. Ele cria os campos do dicionário que, por qualquer motivo, não existiam em minhas tabelas e ajusta o tamanho dos campos, na tabela ou no dicionário de dados, sempre mantendo o maior tamanho para evitar perda de dados.
Após executar esse utilitário (o que leva algumas horas), o programa de UPDATE da Microsiga pôde ser aplicado, fazendo os ajustes finais e liberando a nova versão para uso.
Na hora de migrar o banco de dados, de DBF para MS SQL, deparei-me com alguns (muitos) registros que geravam erro no momento da importação pelo APSDU.
Tratavam-se de campos cujo valor, nem era NULO, nem ESPAÇOS em branco, nem qualquer conteúdo visível.
Consegui identificar que esses campos estavam preenchidos com uma sequencia de caracteres NULOS e ESPAÇOS EM BRANCO, o que gerava conflito com a cláusula NOT NULL do SQL. Tive que fazer outro aplicativo para varrer minha base de dados e corrigir o problema.
Agora, estou finalizando a importação da base de dados para o MS SQL EXPRESS, para verificar como minhas funções customizadas se comportarão nesse novo ambiente.
Dúvidas, críticas, sugestões ? Deixe seu comentário.
![]() C3 Celular 3 Chips Teclado Qwerty Smartphone Java Tv Fm Mais info» R$ 68.90 | ![]() Celular 3 Chips C3 Smartphone Java Teclado Qwerty Fm Tv Wap Mais info» R$ 69.00 | ![]() Celular Nokia X1 01 Dois Chips Simultanios Fm Mp3 Novo Mais info» R$ 99.99 | Vitrine TecnoBlog |
|---|



Boa tarde , estou precisando uma apostila do Protheus 8.11 contas a pagar.
Obrigado , fico no aguardo
sou iniciante no Protheus e ja tenho a missao de fazer sua migracao da versao 7 para 10. me deparei com duvidas basicas e como nao ha tempo habil, para o treinamento, preciso de dicas de como criar um codigo automatico, mudar lay-out de tela , como inserir um novo relatorio na tela.
grata
TOCA
ola ricardo,
Poderia me indicar algum material spara o microsiga, protheus, 10. grata
toca
Olá Saulo, obrigado por consultar o blog.
Minha instalação do Protheus 10 tem alguns meses, já é a R3.
Eu procurei no systemload, no SX3.DBF, ou seja, a base de dados padrão do Protheus, e não localizei o campo X3_GRPRSG, em sua estrutura.
Pelo que estou vendo, você está rodando em ambiente de teste, na empresa TESTE ( ???990).
Verifique se você tem esse campo X3_GRPRSG no SX3 da versão 8, verifique se ele se encontra no SINDEX da versão 8.
Me informe o que você encontrou sobre esse campo.
Ricardo já tenho um tempo trabalhando com o protheus 8, agora com a atualização de versão sendo necessaria me deparei com um erro durante a atualização aonde o arquivo sx3990.dbf informa “index expression error” aonde ele informa “x3_grprsg+x3_arquivo+x3+ordem”, ou seja ocorre o erro e para tudo , agora não estou conseguindo ver no APSDU como deveria ser o certo você teria alguma dica para eu seguir o caminho das pedras.
Obrigado se você estiver uma dica
olá Marcel, obrigado por consultar o blog.
Seria muito importante você participar dos treinamentos da TOTVS, principalmente os técnicos, como arquitetura e instalação, configurador, TOTVS DEV STUDIO e ADVPL.
Você conseguirá material de apoio nos sites SUPEERP.COM e HELPFACIL.COM
Sobre migrar a base de dados, sem dúvida o MS SQL SERVER é muito melhor opção que o DBF, mas é necessário comprar o TOP CONNECT para isso.
Dependendo a quantidade de usuários que tiver, e até mesmo do tipo de trabalho com o sistema, o DBF pode “suportar” a demanda.
Boa sorte.
Bom dia Ricardo.
Sou iniciante em advpl – microsiga, e estou trabalhando em um empresa que esta com o protheus 10.1 e codebase, e não sei mexer nesse banco de dados, queria saber se você tem algumas dicas, opniões ou apostilas sobre esse banco, ou se compensa passa para um banco sql.
Agradeço pela atenção.
Muito ótimo o seu blog heim, vou indicar para meus amigos tambem.
Valeu
@wallace
Boa tarde Ricardo, você poderia me enviar esse aplicativo pra mim.
Obrigado e fico no aguardo
olá Alessandro, obrigado por consultar o blog.
Sim, deu certo. Só falhou um um arquivo, customizado, do qual ainda não consegui identificar o problema.
Boa noite.
Esta aplicação para percorrer a base de dados eliminando os caracteres Null deu certo?
Se sim, poderia disponibilizar para mim, pois estou com o mesmo problema.