Compartilhar via


Camadas da solução

A camada de solução é implementada no nível do componente. As soluções gerenciadas e não gerenciadas existem em diferentes camadas dentro de um ambiente do Microsoft Dataverse. No Dataverse, há duas camadas distintas:

  • camada não gerenciada Todas as soluções não gerenciadas importadas e personalizações ad-hoc existem neste camada. Todas as soluções não gerenciadas compartilham uma única camada não gerenciada.

  • Camadas gerenciadas Todas as soluções importadas e gerenciadas e a solução do sistema existem neste nível. Quando houver várias soluções gerenciadas instaladas, o último instalado está acima da solução gerenciada instalada anteriormente. Isso significa que a segunda solução instalada poderá personalizar aquela instalada antes dela. Quando duas soluções gerenciadas têm definições conflitantes, o comportamento do tempo de execução é "O último vence" ou uma lógica de mesclagem é implementada. Se você desinstalar uma solução gerenciada, a solução gerenciada abaixo entra em vigor. Se você desinstalar todas as soluções gerenciadas, o comportamento padrão definido na solução do sistema será aplicado. A camada do sistema está na base do nível de camadas gerenciado. A camada do sistema contém as entidades e componentes necessários para o funcionamento da plataforma.

Exemplo de camadas de solução para um componente, como um formulário ou exibição.

Camadas em uma solução gerenciada

Para cada componente gerenciado, há camadas em uma solução, que, dependendo se um ou mais patches ou uma atualização pendente para a solução foram importados, podem incluir as seguintes camadas:

  • Base Localizada na parte inferior da solução camada "pilha" está a base camada. Essa camada inclui o editor da solução, que identifica o proprietário do componente e as propriedades gerenciadas associadas a ele.

  • Top O camada superior é considerado o camada atual e define o comportamento de tempo de execução do componente. A camada superior pode ser uma atualização ou um patch, ou se nenhum patch ou atualização tiver sido aplicado à solução, a solução base determinará o comportamento do tempo de execução do componente.

  • Camadas adicionadas de atualizações:

    • Patches Se o componente tiver um ou mais patches de solução importados, eles serão empilhados sobre o camada base, com o patch mais recente residindo acima do patch anterior.

    • Atualização pendente Se uma atualização em etapas (chamada _Upgrade) for importada, ela residirá sobre as camadas base e de patch (se houver).

Exemplo de camadas dentro de uma solução

Importante

O uso de patches não é recomendado. Mais informações: Criar patches de solução

A seguinte imagem mostra um exemplo de camadas de solução de uma coluna personalizada que exibe a solução base, um patch e uma atualização pendente.

Camadas da solução.

Para obter informações sobre como exibir camadas para um componente em uma solução, consulte Camadas da solução.

Comportamento de mesclagem

Os criadores de soluções devem entender o comportamento de mesclagem quando uma solução é atualizada ou quando várias soluções são instaladas que afetam o mesmo componente. Observe que apenas os tipos de componente de aplicativo baseado em modelo, formulário e mapa do site serão mesclados. Todos os outros componentes usam o comportamento "nível superior vence".

Comportamento "nível superior vence"

Com exceção do aplicativo baseado em modelo, formulário e componentes do mapa do site, outros componentes da solução usam um comportamento "nível superior vence", em que a camada superior determina como o componente funciona no runtime do aplicativo. Uma camada superior pode ser introduzida por uma atualização em etapas (pendente).

Camada superior introduzida por uma atualização pendente

Veja um exemplo do comportamento de nível superior vence de um componente introduzido por um estágio da atualização de uma solução. Mais informações: Aplique a atualização no ambiente de destino

  1. A camada superior atual (base) tem a propriedade Comprimento máximo da coluna de texto Comentários da tabela de conta usando a configuração padrão de 100.

    Componente da tabela na solução de base.

  2. Um upgrade de solução é importado usando o estágio para opção de upgrade, criando uma nova camada superior. O upgrade pendente inclui a coluna de texto Comentários da tabela de conta com o valor da propriedade Comprimento máximo alterado para 150.

    Camada ativa introduzida no topo da camada de base.

Nesse caso, a coluna Comentários de registros da conta permitirá até 150 caracteres durante o tempo de execução do aplicativo.

Comportamento de mesclagem de atualização e atualização da solução

Conforme descrito na seção anterior, os patches e uma atualização em etapas são empilhados sobre a solução base. Eles podem ser mesclados selecionando Aplicar atualização na área Soluções no Power Apps, que nivela as camadas e cria uma solução base.

Comportamento de mesclagem de várias soluções

Ao preparar a solução gerenciada para a distribuição, lembre-se de que um ambiente pode ter várias soluções instaladas ou que outras soluções podem ser instaladas no futuro. Crie uma solução que siga as práticas recomendadas, para que a solução não interfira com outras soluções. Mais Informações: Use soluções segmentadas

Os processos que o Dataverse usa para mesclar as personalizações enfatizam a manutenção da funcionalidade da solução. Embora todos os esforços sejam feitos para preservar a apresentação, algumas incompatibilidades entre as personalizações podem exigir que a resolução computada altere alguns detalhes da apresentação para manter a funcionalidade de personalização.

Confira também

Entenda como as soluções gerenciadas são mescladas