Gerenciamento do ciclo de vida do aplicativo (ALM) da biblioteca de componentes
Uma biblioteca de componentes é um tipo especial de aplicativo de tela que pode conter um ou mais componentes de tela. Esses componentes da biblioteca podem ser usados por todos os outros aplicativos de tela no ambiente. Este recurso permite criar componentes compartilhados reutilizáveis em todos os aplicativos de um ambiente, diferentemente dos componentes no nível do aplicativo que estão restritos a um aplicativo.
Para usar um componente de uma biblioteca de componentes, primeiro você precisa importá-lo para o aplicativo de tela. Após a importação, você pode adicioná-lo a qualquer tela do aplicativo. Quaisquer atualizações na definição de componente da biblioteca de componentes solicitarão que você revise e incorpore a alteração sob demanda ou quando o aplicativo for aberto para edição. As bibliotecas de componentes e os aplicativos dependentes também podem ser movidos para outro ambiente usando soluções padrão do Microsoft Dataverse.
Observação
Neste artigo, o termo "importação" refere-se à importação do componente de uma biblioteca de componentes para um aplicativo e não deve ser confundido com a importação de uma solução para o Dataverse.
Quando um componente de uma biblioteca de componentes é importado para um aplicativo de tela, a definição desse componente é copiada para a definição do aplicativo de tela. Depois que uma definição de componente é importada, o aplicativo é "autocontido" no que diz respeito a essa definição de componente. O criador do aplicativo pode optar por editar o componente e criar instâncias locais dele dentro do aplicativo. Neste momento, não há um vínculo direto com a biblioteca de componentes onde o componente se originou. Essa característica de autocontenção também será aplicada se o aplicativo de tela for migrado para um ambiente diferente onde a biblioteca de componentes não esteja presente. Você pode continuar a criar instâncias da definição de componente importada nos aplicativos no ambiente de destino, e os aplicativos ainda podem ser publicados e reproduzidos. Nenhuma nova atualização será solicitada ou recebida no aplicativo de consumo neste caso.
Para manter o relacionamento do aplicativo com a biblioteca de componentes, use a biblioteca de componentes para fazer alterações no componente, em vez de editar o componente no aplicativo de consumo.
Suporte a soluções de aplicativos de tela e bibliotecas de componentes
Consistente com as outras dependências de objetos da solução, se um aplicativo de tela importar um componente de tela de uma biblioteca de componentes, ele terá uma dependência dessa biblioteca de componentes. Para mover um aplicativo para o novo ambiente, você precisará empacotar a biblioteca de componentes na mesma solução ou instalá-la como um pré-requisito. A dependência do aplicativo em relação à biblioteca de componentes é mantida no ambiente de destino. Posteriormente, quando uma biblioteca de componentes com o componente atualizado for importada usando uma solução para o ambiente de destino, os aplicativos existentes obterão as novas definições de componentes usando o fluxo de atualização de componentes regular.
Criar e exportar biblioteca de componentes em uma solução
Você pode criar uma biblioteca de componentes diretamente na solução ou adicioná-la a uma solução existente.
Quando uma biblioteca de componentes é salva em um ambiente que tenha o Dataverse disponível, ela é adicionada automaticamente à solução padrão. Um nome lógico exclusivo é gerado para a biblioteca de componentes com o prefixo Fornecedor Padrão do CDS. Esse comportamento é para garantir que o sistema da solução esteja ciente de sua presença e possa vincular as dependências dos aplicativos que usam o nome lógico da biblioteca de componentes.
Observação
As bibliotecas de componentes criadas antes da distribuição do recurso de ALM para bibliotecas de componentes precisam ser editadas, publicadas e o editor deve ser fechado explicitamente antes de elas serem habilitadas para os recursos de ALM. Você pode verificar a preparação do ALM para bibliotecas de componentes pela sua presença na solução padrão.
As bibliotecas de componentes dentro de uma solução também oferecem suporte a propriedades gerenciadas Permitir personalizações que controlam o comportamento da biblioteca de componentes no ambiente de destino.
Se você desativar essa configuração e exportar a solução para um ambiente de destino, não poderá editar a biblioteca de componentes.
Dependências da biblioteca de componentes
Os aplicativos que usam componentes da biblioteca de componentes serão marcados como dependentes na infraestrutura das soluções. Esse comportamento se aplica a todos os aplicativos adicionados a qualquer solução do Dataverse em um determinado ambiente. Você ainda pode criar aplicativos fora das soluções, mas esses aplicativos não terão nenhuma dependência das soluções. Posteriormente, você pode adicionar esses aplicativos às soluções para torná-los parte do ALM das soluções.
Se você importar uma solução que tem apenas um aplicativo que usa um componente de uma biblioteca de componentes, mas exclui essa biblioteca de componentes, verá a seguinte mensagem:
"A importação falhou devido a dependências ausentes para <app name>".
Nesse caso, você pode optar por instalar a solução da biblioteca de componentes primeiro ou empacotar a biblioteca de componentes com a solução que contém o aplicativo de tela. Qualquer uma das etapas garantirá que o aplicativo tenha a dependência criada no ambiente de destino.
Quando a biblioteca for atualizada e uma versão mais recente do componente for importada por meio das soluções, o aplicativo receberá uma notificação e as atualizações quando o aplicativo for aberto para edição.
Observação
Se a propriedade gerenciada Permitir personalizações da biblioteca de componentes estiver desativada, a biblioteca de componentes não poderá ser editada no ambiente de destino.
As dependências são calculadas com base no estado publicado mais recente de um aplicativo. Se você restaurar uma versão mais antiga do aplicativo que não usa um componente da biblioteca, a dependência será removida do aplicativo e da solução. Importar um componente para um aplicativo de uma biblioteca de componentes sem realmente usá-lo também cria uma dependência, pois o componente de biblioteca não utilizado permanece disponível no aplicativo para uso futuro.
Dica
Editar um componente de uma biblioteca de componentes dentro do aplicativo de consumo cria uma cópia local. Neste momento, o componente da biblioteca ainda está disponível para uso por meio do painel Inserir. Para remover completamente a dependência, exclua o componente em Inserir > Componentes da biblioteca > ... (reticências) > Remover do aplicativo.
Práticas recomendadas e solução de problemas
Limite o número de componentes em uma biblioteca a 20 para obter o desempenho ideal. Planeje e crie várias bibliotecas de componentes com antecedência, pois o número de componentes nelas provavelmente aumentará com o tempo. Essa abordagem também reduzirá o conteúdo da solução à medida que os aplicativos forem movidos pelo ambiente.
Há um atraso entre o momento em que a biblioteca de componentes é publicada e o momento em que ela é disponibilizada para o aplicativo. Isso pode levar até 5 minutos.
Se o aplicativo não conseguir receber a atualização do componente da biblioteca no ambiente de destino em que a solução está instalada, verifique usando as ações abaixo:
- As alterações feitas em uma biblioteca de componentes em um ambiente de destino residem na camada superior de um componente. Subsequentemente, essas personalizações definem o comportamento de tempo de execução do componente. Para remover essas personalizações não gerenciadas, consulte Remover uma camada não gerenciada.
- Determine o nome lógico da biblioteca de componentes na exibição da solução. Use a solução padrão se a biblioteca não for explicitamente adicionada à solução.
- Baixe o aplicativo usando o componente da biblioteca no computador local. Para isso, clique em Arquivo > Salvar como > Este computador. Renomeie o arquivo baixado para ter uma extensão .zip e descompacte o pacote. Abra o arquivo Properties.json e, em seguida, pesquise a palavra-chave "LibraryDependencies". Você deve ver um nome lógico de biblioteca correspondente.
- Se você estiver consumindo a solução, verifique se o aplicativo de tela identificou corretamente as bibliotecas de componentes como dependências da solução. Se a solução não identificar corretamente as bibliotecas de componentes como dependências da solução, isso significa que a dependência do aplicativo em relação ao vínculo da biblioteca de componentes não foi criada corretamente. Nesse caso, consulte o provedor de soluções para resolver o problema.
- Se você for o fornecedor de soluções, verifique se as bibliotecas de componentes estão salvas com o nome lógico da biblioteca na solução e se ele é o mesmo referenciado no pacote .msapp da biblioteca de componentes.
A exportação da solução sempre exporta a versão mais recente da biblioteca de componentes. Portanto, sempre atualize os aplicativos com a versão mais recente do componente antes de exportá-los por meio de soluções. Essa ação garante que os aplicativos tenham a mesma versão do componente disponível na versão mais recente da biblioteca de componentes. Os aplicativos e a biblioteca são considerados sincronizados entre si quando são movidos para um ambiente de destino pela primeira vez; e, portanto, não é solicitado que nenhuma atualização esteja disponível ao editar o aplicativo.
Consulte também
- Componentes de tela
- Biblioteca de componentes
- Mapear campos de entrada de um componente
- Adicionar multimídia a um componente
- Fórmulas de comportamento para componentes
- Power Apps component framework
- Adicionar componentes de tela a uma página personalizada em um aplicativo baseado em modelo
Observação
Você pode nos falar mais sobre suas preferências de idioma para documentação? Faça uma pesquisa rápida. (Observe que esta pesquisa está em inglês)
A pesquisa levará cerca de sete minutos. Nenhum dado pessoal é coletado (política de privacidade).