Executar várias ações em uma fórmula

Concluído

Combinar funções

Quando você começar a criar seu aplicativo, se possível, combine várias funções e elementos em uma única fórmula. Criar fórmulas dinâmicas é mais eficiente e eficaz, não apenas para o desenvolvedor do aplicativo, mas também para a experiência do usuário. Quanto mais fórmulas de função individuais, mais trabalho para manter, rastrear e atualizar cada fórmula. Com a criação de fórmulas multifuncionais, é mais simples atualizar e manter fórmulas. Além disso, dependendo do tamanho do aplicativo e do número de fórmulas de função individuais, você poderá ter problemas de desempenho. Se possível, é mais eficiente criar fórmulas multifunção. O exemplo a seguir combina várias funções em uma única fórmula.

Captura de tela da combinação de funções em fórmulas.

Nenhum dos dois controles Entrada de Texto tem fórmulas ou modificações. A propriedade Text do controle Rótulo selecionado é uma fórmula multifuncional avaliada como "Aprovado" ou "Reprovado":

If(Sum(Value(TextInput1.Text),Value(TextInput2.Text)) > 50, "Pass", "Fail")

A saída dessa fórmula é exibido no rótulo. A função também converte o texto armazenado nos controles de entrada de texto em valores usando a função Value. Em seguida, adiciona esses valores usando a função Sum. Neste exemplo, 25+30=55. A função If avalia a soma dos valores para ver se é maior que 50. Neste exemplo, ela avalia como verdadeiro (55 é maior que 50), então, o texto "Aprovado" é exibido no Rótulo. Se a soma for inferior a 50, veremos "Falha".

Da mesma forma, ao implementar controles, a mesma lógica de fórmula combinada deve se aplicar. Nada impede que você crie um botão para cada ação que você gostaria que o usuário tomasse. Mas é muito mais eficiente e eficaz combiná-los quando puder. Para combinar mais de uma ação em uma fórmula, use o ponto e vírgula (;).

Continuando com o exemplo anterior, poderíamos adicionar uma função Set para definir uma variável global para a fórmula OnSelect de um botão. Essa fórmula permite registrar o valor de Label1 ("Aprovado" ou "Reprovado") e navegar até Screen2 em nosso aplicativo. Duas funções em uma ação.

Set(varOutcome, Label1.Text); Navigate(Screen2,ScreenTransition.Cover)

Observação

As ações são executadas na ordem em que aparecem na fórmula. A próxima função não é iniciada até que a função anterior seja concluída. Se ocorrer um erro, as funções subsequentes não serão processadas.