Fórmulas e funcionalidade

Concluído

Ao usar fórmulas, você pode alterar a maneira como os controles respondem e funcionam. Por exemplo, em determinados cenários, você pode ocultar um controle na tela até que outra ação ocorra. Isso é feito escrevendo uma fórmula simples para atualizar a propriedade Visible do controle. Ou talvez, em vez de ocultar o controle, a propriedade DisplayMode pode ser definida como View, o que remove a capacidade de editar esse controle. Há muitos outros cenários em que você pode implementar esse tipo de fórmula em um aplicativo de tela. Usando fórmulas no aplicativo de tela para modificar as propriedades DisplayMode e/ou Visible de um controle, você pode desenvolver um aplicativo mais amigável.

Vejamos como é possível aplicar essa fórmula para mostrar e ocultar um botão em uma galeria com base nas informações de nossa fonte de dados. Neste exemplo, criamos uma coleção chamada "TestScoresCollection". Para acompanhar, você pode abrir um aplicativo de tela já existente e criar uma nova tela.

  1. Insira um controle Botão em sua tela.

  2. Defina a propriedade OnSelect do botão como:

    ClearCollect(TestScoresCollection,{Name:"Student 1", TestScore:"B"},{Name:"Student 2", TestScore:"C"},{Name:"Student 3", TestScore:"A"},{Name:"Student 4", TestScore:"C"},{Name:"Student 5", TestScore:"A"})
    
  3. Para gerar TestScoresCollection, mantenha pressionada a tecla Alt no teclado (ou coloque o aplicativo no modo de versão preliminar) e selecione o botão.

  4. Insira um controle de Galeria vertical à tela e altere o Layout para Título e Subtítulo.

  5. Selecione TestScoresCollection como fonte de dados. Sua galeria agora assemelha-se à captura de tela a seguir.

    Captura de tela da galeria de informações de pontuação de teste.

  6. Selecione a primeira linha da galeria e insira um novo botão na própria galeria.

  7. Altere a propriedade text do botão para "Retake Test".

  8. Com o botão ainda selecionado, vá até a propriedade Visible e insira o código a seguir, para que este botão fique visível apenas para Notas de estudantes diferentes de "A" ou "B".

    If(ThisItem.TestScore = "A" Or ThisItem.TestScore = "B", false,true)
    

    Quando você insere esse código, seu botão desaparece dos estudantes com nota "A" ou "B". Se você procurar a propriedade Visible no campo de entrada da fórmula, notará o botão Copilot. Podemos usar o Copilot para nos dizer mais sobre esta (ou qualquer) fórmula em nosso aplicativo.

  9. Selecione o botão Copilot na barra de fórmulas e, em seguida, selecione Explicar esta fórmula. Você deve ver algo relacionado a esta captura de tela.

    Captura de tela do botão Retake Test a ser mostrado apenas com Notas diferentes de A ou B.

    Você pode aproveitar o recurso Explicar esta fórmula do Copilot para ajudá-lo a entender as fórmulas em todo o seu aplicativo. Além disso, você pode usar o botão Copiar para capturar a explicação do Copilot e adicioná-la como um comentário em seu código. Para adicionar comentários em seu código, adicione uma barra dupla "//" na frente de qualquer linha em seu código. A barra dupla faz o Power Apps ignorar qualquer código que venha em seguida, por isso é útil para documentação.

    //This expression checks if the TestScore of the current item is equal to "A" or "B". If it is, the expression returns false. Otherwise, it returns true.
    

Embora tenhamos usado essa fórmula para a propriedade View de um botão, você pode aplicar lógica a isso para afetar o modo de exibição do botão. Nesse caso, não adicionamos nenhum código à propriedade OnSelect do nosso botão "Retake Test", mas você pode ter a ideia de que estamos controlando o comportamento do aplicativo ajustando a forma como os controles respondem. Nossa fórmula é avaliada como verdadeira ou falsa, que é tudo o que o Power Apps procura na propriedade visible. Podemos até encurtar esse código, pois é uma resposta verdadeiro/falso, mas abordaremos isso na próxima unidade.