Dashboard > SDK - Software Development Kit - v.1.0 > > Área do Desenvolvimento > Projetos > Tools > Tools Library > Metadados 11.5.0 > Geral > Ferramenta de Merge no Metadados Log In Home Específicos Flex Getting Started Java Processo Datasul Progress Tools Trilhas User Page Operations Browse Space SDK - Software Development Kit - v.1.0 Ferramenta de Merge no Metadados Added by Marcelo Paes Rech, last edited by Marcelo Paes Rech on Set 08, 2011 (view change) Labels incubado, componente Visão Geral Processo para efetuar merge de metadados. Tem por objetivo apresentar o processo de merge Características Merge. Metadados, Java e Flex. Quando utilizar o Componente? Quando necessário efetuar a importação de atualizações das aplicações desenvolvidas em metadados. Pré-Requisitos Conhecimentos de metadados. Conhecimentos de conceito de merge. Conhecimento de exportação pela ferramenta do Metadados. Como utilizá-lo? O processo para efetuar o merge pode ser dividido em três fazes: Importação, Comparação/Aplicação e Finalização. As informações de merge se baseiam nas seguintes fontes de dados: Base Oficial: contendo os dados atualmente rodando na aplicação; Base de Merge: onde serão persistidas as informações aplicadas pelo merge enquanto aguarda a finalização do processo; Tabelas de Merge: Onde os dados importados serão persistidos, e mantidos sob avalização de status de merge. Processo O processo de merge pode ser dividio em três fases. Importação, Comparação e Finalização. O processo de importação carrega as informações de um arquivo externo, anteriormente exportado de outro servidor, e importa na aplicação desejada. Nesta primeira fase, os itens que forem exportados como versão root e não possuirem alterações no cliente, serão persisitidos diretamente na base de merge, sem necessidade de comparação manual. Os demais itens que não se encaixam neste quesito, ficam pendentes na tabela de itens pendentes de merge na base oficial.
O processo de Comparação Manual é o processo onde o usuário deve acessar a ferramenta de merge e carregar os itens pendentes. Efetuando a comparação, o usuário efetua a aplicação das alterações na base de merge. Depois de todos os itens pendentes de merge terem sido aplicados na base de merge, o processo para finalização estará disponível. Assim, todos os dados aplicados na base de merge serão persistidos na base oficial, gerando versão dos itens anteriores a aplicação. 1 - Importação O processo de importação utiliza o upload de um arquivo expedido pela ferramenta de exportação do metadados. Ao importar os dados, verifica-se a versão do componente sendo importado e suas dependências. Aqui entra o conceito de auto-merge, que aplica as alterações diretamente na Base de Merge se a versão do componente importado e versão do componente oficial forem raiz (Root Version). Caso o componente seja novo, ou seja, não exista na base oficial, o merge também é aplicado diretamente. Quando a versão oficial não é root, ou a versão expedida não é root, ou ainda se alguma dependência do componente não tiver passado nas restrições propostas anteriormente, então o componente é adicionado a lista para comparação manual, através da ferramenta de merge.
2 - Comparação e Aplicação de merge. 1. Item para efetuar merge: este ícone representa um item que pode ser comparado. 2. Aba de estrutura de para o merge: demonstra a estrutura do componente selecionado para efetuar merge. 3. Mensagem de dependência: informa se existem dependências do componente selecionado para merge, para outros componentes. Se o componente possuir dependências, a mensagem é mostrada, se não houver nenhum impedimento para o merge, o componente é carregado na aba de estrutura (item 2). 4. Botão aplicar: Aplica as alterações feitas pelo usuário, através da ferramenta de merge, na base de merge. 5. Pré-visualização (Apenas para Formulários): efetua o deploy do formulário para efetuar uma pré-visualização de como ficará após o merge 6. Fechar: fecha a ferramenta de merge. Os dados aplicados até o momento (utilizando o botão aplicar (item 4)) estarão persistidos. 7. Local: Mostra o conteúdo alocado atualmente no servidor 8. Remoto: Mostra o conteúdo importado pela ferramenta. 9. Efetua o reload do itens. Os itens importados e que tenham passado pelo auto-merge não aparecem nesta etapa. Ao clicar em algum item da árvore de componentes disponíveis (item 1), se o item não possuir dependências e estiver com status como liberado, o item clicado é carregado na aba de estrutura permitindo o merge de suas propriedades. Caso o item selecionado possua dependências de outros itens, exibe mensagem no rodapé da janela informando. Se o usuário quiser saber quais as dependências impedem o merge o item selecionado, basta clicar novamente sobre o item que a janela apresentada a seguir irá aparecer:
A seguinte imagem exibe a tela de comparação das propriedades do componente. Nesta imagem o componente pode ser feito merge: 1. Representa as propriedades que existem atualmente no servidor 2. Representa as propriedades do item importado 3. Mostra um conflito: Mostra o valor correspondente atualmente no servidor 4. Mostra um conflito: Mostra o valor correspondente importado. O usuário poderá marcar o check box e clicar no item 10 para transferir o que veio da importação para o servidor 5. Mostra um item que foi existe no servidor, mas o item correspondete importado não existe. Ou seja, possívelmente foi deletado da versão importada. 6. Mostra um item que não existe no servidor, mas existe na versão importada. Ou seja, foi incluido novo na versão importada. 7. Mostra um item que possui conflito, ou seja, suas propriedades diferem do servidor com o que foi importado. 8. Link para exibir as legendas para merge. 9. Popup exibido quando clicado no link de legendas. 10. Transfere os itens marcados com checkbox da importação (Remoto) para o servidor (Local). 11. Aplica as alterações no componente, salvando-os na base de merge. 12. Este botão transfere as alterações importadas(remoto) para o servidor(local) quando os itens foram removidos ou adicionados (caso dos itens 5 e 6 da imagem). 3 - Finalização. O processo de finalização deve ser feito por apenas um usuário. Este processo, se for iniciado, não será possível parar. Para executar o processo de finalização, deve-se abrir a IDE do metadados, e no menu Avançado>Versionamento> Finalizar Merge como a figura abaxio demonstra:
Caso a finalização tente ser acessada sem que todos os itens sejam aplicados na base de merge, uma mensagem semelhante a abaixo será exibida e o processo será abortado: Caso outro usuário tente iniciar uma finalização que já foi iniciada por outro usuário, ou pelo mesmo usuário. Uma mensagem semelhante que segue abaixo e o processo será abortado: Resultados Esperados As alterações importadas repassadas para a base oficial, de forma que seja possível analisar os conflitos existentes entre dados importados e dados já existentes na base oficial. Add Comment Powered by Atlassian Confluence 2.8.0, the Enterprise Wiki. Bug/feature request Atlassian news Contact administrators