Introdução
Quando você editar um aplicativo de tela no Microsoft Power Apps Studio, será exibida uma representação visual do aplicativo.
Você pode arrastar e soltar um controle na tela, usar a barra de fórmulas para editar expressões e usar o painel Propriedades para editar valores de propriedade de controle. A maioria dos criadores usa essas ferramentas para criar e modificar aplicativos.
Você pode salvar uma cópia de um aplicativo de tela em seu computador como um único arquivo com uma extensão .msapp. Se o aplicativo de tela fizer parte de uma solução do Microsoft Dataverse, você poderá usar a Microsoft Power Platform CLI (interface de linha de comando) para baixar a solução e extrair o aplicativo. O arquivo de aplicativo é autônomo e representa todo o aplicativo, incluindo telas, controles, componentes, conexões, fórmulas etc. No entanto, internamente, o aplicativo contém vários arquivos separados, cada um deles descrevendo uma parte do aplicativo. Você pode usar o comando unpack da Power Platform CLI para extrair esses arquivos. Depois que os arquivos forem descompactados, você poderá editar a maioria deles usando qualquer editor de texto. A captura de tela a seguir mostra um exemplo do mesmo aplicativo aberto no Microsoft Visual Studio Code depois que ele é desempacotado.
A descompactação do aplicativo de tela em arquivos de texto individuais habilita os seguintes cenários, em que você pode:
Edite o código-fonte diretamente em um editor de texto, em vez de um designer visual. Por exemplo, a localização e a substituição globais são mais eficientes em um editor de texto.
Armazenar arquivos de texto individuais no controle de origem, permitindo o rastreamento granular de alterações em um aplicativo. Por exemplo, você pode reavaliar quando um rótulo no aplicativo foi alterado de X para Y e quem fez a alteração.
Usar ferramentas automatizadas de desenvolvimento que dependem do código-fonte, como análises de código estático, geradores de código, modelos e assim por diante.
O código-fonte do aplicativo é representado por um subconjunto de YAML, que é uma linguagem de serialização de dados amigável. A maneira de trabalhar com o YAML será abordada posteriormente neste módulo.
Power Platform CLI
A Power Platform CLI (ou CLI) é uma ferramenta de linha de comando que pode ser usada para várias tarefas administrativas e de desenvolvimento no Microsoft Power Platform, como a criação de componentes do Power Apps component framework, o gerenciamento de ambientes, o trabalho com soluções e portais e muito mais. Você pode usar a CLI em um prompt de comando simples, como parte de uma compilação automatizada ou no terminal no Visual Studio Code.
Este módulo se concentra na funcionalidade de solução e aplicativo de tela da Power Platform CLI. Você pode examinar as outras funcionalidades e como elas funcionam na documentação do produto. Você pode baixar e instalar a Power Platform CLI. Se já tiver a CLI instalada, verifique se tem a versão mais recente usando o seguinte comando:
pac install latest
Comando canvas unpack
Quando você baixa um aplicativo de tela da nuvem, é um arquivo único com uma extensão .msapp. O comando canvas unpack usa esse arquivo como entrada e o descompacta em vários arquivos que representam as diferentes partes do aplicativo. Por exemplo, cada tela no aplicativo terá seu próprio arquivo na saída do comando.
Para descompactar o arquivo .msapp de um aplicativo de tela, use o seguinte comando:
pac canvas unpack --msapp "Account Manager.msapp" --sources src
A pasta de saída de destino é identificada pela opção do código-fonte usando a estrutura de pastas a seguir.
Comando canvas pack
O comando canvas pack é o inverso do comando canvas unpack, pois ele compacta a pasta que contém arquivos individuais em um único arquivo .msapp. Para empacotar o aplicativo de modo que ele esteja pronto para ser carregado na nuvem ou para que seja incluído em uma solução, use este comando:
pac canvas pack --msapp "Account Manager.msapp" --sources src
Comandos de solução
Você pode obter o arquivo .msapp do aplicativo de tela no maker portal baixando o aplicativo individual. Se você usar soluções para manter aplicativos e fluxos, a solução exportada conterá o arquivo .msapp para cada aplicativo de tela na solução. Usando a CLI e o comando solution unpack, você pode extrair os arquivos .msapp individuais da solução. O exemplo a seguir mostra o comando solution unpack:
pac solution unpack --solution-zip C:\SampleSolution.zip --folder .\SampleSolutionUnpacked\.
A pasta SampleSolutionUnpacked conterá uma subpasta CanvasApps que inclui o arquivo .msapp de cada aplicativo incluído na solução.
De forma semelhante a canvas pack, o comando solution pack monta novamente os arquivos em uma solução que pode ser importada para um ambiente em nuvem. O exemplo a seguir mostra o comando solution pack:
pac solution pack --solution-zip C:\SampleSolution.zip --folder .\SampleSolutionUnpacked\.
Power Platform vs. extensão de código
A extensão do Microsoft Power Platform ajuda você a usar a Power Platform CLI no Visual Studio Code. Quando você instala a extensão, ela instala a Power Platform CLI mais recente para uso em uma janela de terminal do Visual Studio Code.
Usando a extensão, você pode compactar e descompactar os aplicativos de tela sem sair do Visual Studio Code. Use os mesmos comandos que foram discutidos anteriormente com a CLI autônoma.
Controle de fonte
A descompactação de um aplicativo de tela cria muitos arquivos e permite que você confirme os arquivos individuais para o controle de código-fonte para cada alteração. Essas etapas podem se tornar parte de sua estratégia geral para o ALM (gerenciamento do ciclo de vida de aplicativos) com o Microsoft Power Platform. Confirmando os arquivos individuais para o controle de código-fonte, você obterá o rastreamento mais detalhado das alterações feitas. Especificamente, se você confirmar apenas o arquivo .msapp, a única diferença entre as versões a serem observadas será que "algo" foi alterado. Descompactando e confirmando os arquivos individuais, você pode obter diferenciação linha a linha e pode realçar as alterações em cada confirmação. Combinada com o rastreamento do item de trabalho, você também obterá a capacidade de rastreamento de requisitos até a alteração que foi feita para dar suporte ao item de trabalho.
O restante do módulo explora como trabalhar com o controle de código-fonte de seu aplicativo de tela.