Produto: RM Conversor Verso: 4.0.0 Processo: Conversor de base de dados do RM Classis para o TOTVS Educacional (RM Classis Net)
Antes de voc ler este documento interessante que veja o Como Fazer sobre o processo de converso do RM Classis para o TOTVS Educacional. Aqui voc poder conferir informaes tcnicas. uma forma de aprofundar sobre os processos internos que acontecem quando o Conversor do RM Classis para o TOTVS Educacional executado. Portanto, interessante que voc j tenha uma noo sobre este procedimento. 1. Conversor A ferramenta de converso composta por um grupo de conversores. Cada conversor realiza a converso de um determinado grupo de dados. Exemplo: O conversor de matrcula (ConvMatricula) converte os dados da matrcula. O conversor de contratos (ConvContrato) converte os dados referentes contrato e parcelas.
Os conversores possuem dependncias, pois para converter determinada informao pode ser necessria a informao gerada em uma converso anterior. Exemplo: necessrio converter o curso para obter o cdigo novo do curso que ser necessrio na converso da grade.
2. Controle do conversor.
O conversor utiliza uma tabela de controle chamada CONTROLECONVERSOR para registrar quais conversores esto pendentes ou foram executados ou esto em converso. Nesta tabela armazenado o cdigo da coligada, cdigo do sistema (bsico ou superior) o nome tcnico do conversor, o cdigo do status da converso (1 = convertido, 2 = convertendo e 3 = pendente) e o usurio que realizou a converso.
Caso seja necessrio interromper a converso o usurio dever alterar o status do registro referente ao conversor que estava convertendo para o status de conversor pendente na tabela CONTROLECONVERSOR para que ele continue a converso corretamente.
Caso seja necessrio executar novamente um conversor, necessrio alterar o status do registro referente ao conversor desejado para pendente na tabela CONTROLECONVERSOR.
3. Converso em paralelo.
O conversor tambm pode ser executado em paralelo. Basta clicar no boto mais (caso as configuraes no estejam sendo exibidas) e marcar a opo Execuo simultnea em outras
RM Conversor v.4.0.0. RM Classis TOTVS Educacional Data de produo: 07/03/2012 por Lucas Torres
2 mquinas. No necessrio marcar os conversores para a execuo, pois o prprio conversor decidir a ordem da converso de acordo com as dependncias. Ao executar o conversor em mais de uma mquina os conversores iro buscar o conversor que estiver livre de dependncias para ser executado.
Conversores que convertem um grande nmero de dados (matrculas e financeiro, por exemplo) so executados em lotes. O conversor cria um campo (LOTECONVERSAO) em uma tabela de origem dos dados onde ele faz o controle dos registros que esto em processo de converso.
Por exemplo: Caso duas mquinas estejam convertendo os contratos de uma base de dados em paralelo, a primeira cria a coluna LOTECONVERSAO na tabela EALUSERV e marca os primeiros 25000 registros com o nome da mquina e usurio logado concatenado com o caractere 1 (RM0004084- lucas.torres-1), indicando que est convertendo aqueles registros. A segunda mquina v que a coluna j est criada e marca os primeiros 25000 registros disponveis (que estejam com valor nulo) indicando que est convertendo. E continuam neste processo at completar a converso desta tabela.
Caso seja necessrio executar novamente um conversor que utilize lotes de converso, alm de alterar a tabela de controle do conversor, o usurio precisar limpar a coluna LOTECONVERSAO da tabela que aquele conversor utiliza. O usurio tambm poder remover esta coluna, pois o conversor criar novamente durante o processo.
4. Tabelas temporrias
Alguns conversores criam tabelas temporrias para auxiliar no processo. Geralmente quando novos cdigos so criados e so relacionados a registros que sero convertidos posteriormente ento o conversor cria uma tabela temporria para que seja possvel associar facilmente o registro do ensino bsico ou do ensino superior com o registro do TOTVS Educacional.
Por exemplo, ao converter os horrios, a tabela TEMPHORARIO criada. Esta tabela armazena o cdigo antigo do horrio (CODHOR) e o novo cdigo de horrio criado (CODHORNOVO). Desta forma possvel trabalhar a informao de horrio nas prximas tabelas a serem convertidas. As tabelas temporrias no so excludas aps o processo de converso e importante que sejam mantidas sem alteraes. Caso ocorra alguma falha, estas tabelas so muito importantes para a anlise.
5. Log de migrao na base de dados
A partir da verso 4.0.0.19 o conversor cria a tabela SLOGMIGRACAO. Nesta tabela so armazenadas informaes para auxiliar na anlise da converso. Voc pode verificar qual tabela recebe os registros processados por um determinado conversor, ou quantos registros foram selecionados na origem e qual a consulta foi utilizada para realizar a seleo dos dados a serem processados.
O log guarda o registro da tabela principal de cada conversor e, na maioria dos casos, tambm as tabelas temporrias. Caso alguma tabela no tenha sido registrada ser necessrio solicitar que o conversor seja alterado para disponibilizar esta informao.
6. Log de migrao em arquivo texto RM Conversor v.4.0.0. RM Classis TOTVS Educacional Data de produo: 07/03/2012 por Lucas Torres
3
Durante o processo de converso, a ferramenta registra em um arquivo texto (log) as mensagens ocorridas. Geralmente, as mensagens ocorrem por algum tipo de inconsistncia na base, impossibilitando a insero do registro novo. importante que o usurio que est realizando a converso observe os detalhes do log, pois pode esclarecer o motivo da no insero de alguns registros. O log pode exibir mensagens tratadas que exibem informaes sobre casos mais comuns.
No caso da mensagem acima, indica que no faz sentido ter uma disciplina filha com o mesmo cdigo da disciplina pai e por este motivo o registro no foi inserido.
O log tambm pode exibir mensagens que no so tratadas que exibem informaes retornadas pelo banco de dados ou informaes retornadas por alguma falha de tratamento pela aplicao.
A mensagem acima retornada pela aplicao, que recebeu um valor diferente do esperado e no conseguiu realizar o tratamento. Neste caso foi um valor string que tentou ser inserido em um campo numrico. Mensagens deste tipo podem ocorrer por alguma falha na integridade da tabela de origem dos dados ou porque h a necessidade de ajustar o conversor, pois recebeu uma informao diferente dos casos previstos.
A mensagem acima retornada pelo banco de dados, que no conseguiu inserir o registro por regras de integridade do banco de dados. A tabela SBOLSAALUNO possui uma coluna chamada CODUSUARIO que iria receber um valor que no exista na tabela GUSUARIO. O banco de dados bloqueou a insero porque existe uma chave estrangeira que no permite este tipo de situao. Provavelmente o usurio que realizou a operao foi excludo da GUSUARIO. Caso o registro realmente deva ser inserido, necessrio que a base de dados seja corrigida.
RM Conversor v.4.0.0. RM Classis TOTVS Educacional Data de produo: 07/03/2012 por Lucas Torres
4
A mensagem acima retornada pela aplicao, indicando que houve uma falha na conexo com o banco de dados. Neste caso, o servio do banco de dados caiu durante a converso.
7. Tuning
O tempo de converso depende do volume de dados que a base de dados do cliente possui. Muitas tabelas temporrias so criadas e utilizadas em relacionamentos durante os processos de converso. Em alguns casos este relacionamento pode no ser indexado. Tambm pode haver consultas que relacionam tabelas do TOTVS Educacional com tabelas do Ensino bsico e superior. Portanto, caso seja necessrio, criar ndices ou atualizar estatsticas do banco de dados pode dar mais agilidade ao processo de converso.
Caso um processo de converso esteja muito demorado, um usurio avanado em banco de dados poder verificar na tabela SLOGMIGRACAO a consulta que est sendo executada e analisar se h a necessidade de criar algum ndice para agilizar o processo.
Quando uma converso est sendo processada, mas a barra que exibe o percentual concludo daquele conversor est crescendo lentamente, certamente devido ao grande volume de dados e um processo de tuning seria desnecessrio. Este procedimento til para os casos em que o conversor aparenta estar travado, mas est processando alguma consulta pesada.