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.
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 até 18x de 5.17 | ![]() Celular 3 Chips C3 Smartphone Java Teclado Qwerty Fm Tv Wap Mais info» R$ 69.00 até 18x de 5.18 | ![]() Celular Nokia X1 01 Dois Chips Simultanios Fm Mp3 Novo Mais info» R$ 99.99 até 18x de 7.50 |
| Vitrine Tecnoblog |
No related posts.
Related posts brought to you by Yet Another Related Posts Plugin.




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.
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 tarde Ricardo, você poderia me enviar esse aplicativo pra mim.
Obrigado e fico no aguardo
Muito ótimo o seu blog heim, vou indicar para meus amigos tambem.
Valeu
@wallace
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.
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.
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á 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.
Boa tarde Ricardo, você poderia me enviar esse aplicativo (eliminar campos Null) pra mim.
Ja fiz uma virada a um mes…e tudo correu bem…porem agora eu fui virar em Definitivo e me apresentou um erro ( alias not found sxa on avsx3)…..
Obrigado e fico no aguardo
Boa tarde, tive o mesmo problema relatado pelo Antonio Manuel, ideias?
oie gostaria de uma mini apostila sobre o protheus10.. em portugues c possivel
muito obrigado
olá Rodrigo, obrigado por consultar o blogue.
Não conheço esse tipo de documento, mas você pode checar nos sites http://www.supeerp.com.br ou http://www.helpfacil.com.br.
Boa sorte.
No meu relatorio do financeiro nao sai o ano inteiro. Digo: 2010 só sai 20.
Como faço ?
olá Gilson, obrigado por consultar o blogue.
Nas configurações do usuário, você pode ajustar a quantidade de dígitos do ano, dos campos data. Dessa forma, você digita ou 2010 ou apenas 10.
Boa sorte.
Boa Tarde Ricardo,
voce poderia disponibilizar para mim este seu programa, pois estou fazendo a migracao da versao 811 para a versao 10, so que tenho 74 empresas.
Muito Obrigado
Marcos Kimura
Olá, Ricardo.
Muito bom este blog.
Estou para mudar de sistema, ja fui duas vezes na TOTV’S, sou uma industria, com notas triangulares, beneficiamento externo, produção, financeiro com CNAB bancário, faturamento com NFE, controloes de estoque, custos, compras, um arranjo de rotinas de uma industria que se compara com uma montadora.
Ricardo você poderia indicar uma empresa para visitar onde o Protheus roda, pois o investimento e alto, é nao quero fazer besteira, sobre programar, não tem jeito terei que estudar sobre o sistema e aprender com a implantação do Protheus.
Marcelo Vinicius
olá Marcelo, obrigado por consultar o blogue.
Eu posso lhe afirmar que o Protheus é uma ferramenta fantástica e, pela sua descrição, será quase 100% aderente às suas necessidades.
Digo quase 100% pois sempre há algum ajuste a ser feito, seja no SAP, seja no Dynamics, seja no Protheus que, na verdade é o mais aderente em termos de legislação e operação no Brasil.
Tenho experiência tanto como consultor, tanto como funcionário de empresa cliente da TOTVS. Para mim, o ponto mais crítico é que você precisa ter, na sua empresa, um funcionário que “vista a camisa” da sua empresa e do Protheus ao mesmo tempo. Alguém com discernimento para gerenciar os problemas que ocorrerão, ora por erro na empresa, ora por erro da TOTVS. Esse funcionário precisa ter conhecimento em banco de dados (no banco que for escolhido para o sistema), em estrutura de servidores e serviços. Esses atributos podem estar em uma pessoa ou em uma equipe.
O ponto onde quero chegar é que, na parte de inteligência desses processos, você precisa de gente capacitada, como disse, vestindo a camisa.
Sobre visitar empresas, eu não poderia lhe indicar, exceto a empresa onde trabalho, mas cuja área de atuação é de educação, e não contempla a parte mais importante que você precisa.
Tenho certeza que a TOTVS pode lhe apresentar esses cases.
É claro que a TOTVS vai lhe apresentar os melhores casos, irão lhe vender o céu, mas, como você já deve ter ouvido por aí, o caminho que leva ao céu é apertado, estreito, cheio de espinhos, complicado e doloroso…(ou algo nessa linha).
Boa sorte.
Boa tarde Ricardo, Gostaria de saber se você já viu oo seguinte problema durante a virada “Alias does not exist SXA on AVSX3(AVGERAL.PRW). Caso tenha alguma dica que me ajude. Muito obrigado.
Hidaik Rocha
Analista de Sistemas
MSN e E-Mail: hidaik@hotmail.com
Olá Hidaik, obrigado por consultar o blogue.
Abra o seu SX3, e procure algum campo cujo X3_ARQUIVO seja SXA, ou XA.
Se existir, delete-o. Até onde sei, ela não deveria estar no SX3.
É bom lembrar que isso deve ser feito em ambiente de teste.
Boa sorte.
Olá, estou começando a trabalhar com o microsiga 10 (compras). Será que alguém pode me enviar uma apostila para eu dar uma olhada? Agradeço toda a ajuda.
Ricardo,
Mudamos recentemente de P8.11 para P10.1 (com auxilio da TOTVS). Enquanto testavamos a P10 em uma máquina, continuamos com a P8 em outra máquina, inclusive com o Server/licença na máquina(com P8).
Agora que está tudo certo e testado, quero desligar definitivamente a máquina com P8, mas para isso tenho que instalar a licença na maquina que está com o P10. Voce poderia me orientar em como instalar os arquivos de licença na máquina com P10???
Os arquivos que recebi da TOTVS são: SIGAMAT.EMP e Applylic.key.
Obrigado,
Norberto
Bom dia, será que vc poderia me passar seu email ?
Olá!
Trabalho em uma escola de idiomas no Rio de Janeiro, tenho tido dificuldades com o P10, estou a ponto de desistir do emprego, pois sinto muita dificuldade. Gostaria de uma ajuda e receber uma mini apostila do P10, para que eu possa me aperfeiçoar. Um abraço e dede já agradeço.
Ola, estou precisando comparar os SX3, SX2, SX6, SXG, etc… vc teria algum programa para me ajudar a fazer isso? Apreciaria muito a ajuda!
Ola estou com o problema de versão também sera que poderia me enviar o seu programa para mim dar uma olhada.
obrigado!