Solution Patches: otimize as fases dos projetos
Publicado por Time Smart em 16/06/2016 | Atualizado em 30/03/2022
Um dos novos recursos introduzidos no Dynamics CRM 2016 é o "Solution Patches", continuando como uma funcionalidade no Dynamics 365 e PowerApps.
Com os Solution Patches, podemos segmentar as soluções criando patches, otimizando todas as fases de um projeto.
Para que serve um Solution Patch?
Os patches podem ser utilizados para fazer alterações e adicionar componentes de uma solução principal e após isso serem mesclados na solução principal, minimizando o impacto e direcionando as customizações.
Também conseguimos lidar com equipes de desenvolvimento trabalhando ao mesmo tempo em uma solução.
Podemos criar patches para cada desenvolvedor trabalhar separadamente em suas customizações e ao fim do desenvolvimento, utilizarmos o recurso de "Clonar Solução" fazendo uma mesclagem dos patches na solução principal.
Exemplo – Solution Patches
Exemplo desenvolvimento em equipe:
Clonar Solução
O recurso de "Clonar solução" pode ser utilizado para fazer uma mesclagem dos patches com a solução principal, gerando uma nova versão para exportação.
Exemplo de clonagem da solução:
No exemplo foram utilizadas duas organizações: A e B.
Ambos os ambientes com a Solução A – Versão 1.0.0.0.
Organização B com soluções gerenciadas.
Foi criado um patch da Solução A – Versão 1.0.0.0 e adicionado um novo campo ("RG").
Após a criação do patch, foi utilizado o recurso de "Clonar solução" mesclando o patch com a solução principal e gerando uma nova versão 1.1.0.0, entidade contato passa a ter um novo campo "RG".
Quando é feita uma exportação gerenciada e importação desta nova versão na organização B, a solução acaba sendo um "Upgrade" da versão já existente, criando duas soluções. Desta forma é possível utilizar o recurso "Aplicar Atualização da Solução", fazendo uma atualização da solução já existente.
É permitido manter a solução de "Upgrade" e fazer testes, homologações etc. E após isto é só aplicar atualização.
Caso seja necessário remover as alterações, só é preciso remover a solução de "Upgrade". E as customizações da solução já existente permanecem no CRM, como no exemplo: a entidade de contato continua tendo só o campo "CPF".
A solução deve ser exportada como gerenciada para ser possível a remoção das alterações.
É possível clonar solução sem ter nenhum patch criado e usufruir das mesmas opções que o CRM oferece.
Para criar uma solução de "Upgrade" em outro ambiente, é preciso ter uma versão anterior já importada no ambiente e marcar uma opção de "Estágio para atualização" na importação da solução.
"Patches" são "fragmentos" de uma solução onde é possível alterar e adicionar componentes.
Também é possível importar patches diretamente em outro ambiente (Não recomendado poís quando é criado um patch,
a solução fica como somente leitura e em ambientes com soluções gerencias, não é possível a mesclagem dos patches).
Exemplo de patch:
Foi criado um patch da Solução A no ambiente Organização A e adicionado um novo campo ("RG").
O patch é exportado como solução gerenciada da organização A e importada na organização B. Quando é importado o patch, a entidade Contato passa a ter mais um campo ("RG").
Caso seja preciso excluir as alterações feitas com o patch, só é preciso remover o patch da organização e o Contato volta a ter apenas as customizações da Solução A – Versão 1.0.0.0.