Utilização de funções de fórmula 

Objectives

After completing this lesson, you will be able to:
  • Descreva as bases formulares e o editor de fórmulas.
  • Calcular com operadores de fórmula.
  • Use variáveis e funções de fórmula.

Editor de fórmulas

O SAP Build Apps tem um Editor de fórmulas que é um dos editores de algoritmos mais poderosos que você encontrará. Mas não se preocupe – mesmo que a palavra algoritmo faça parecer complicado, isso foi simplificado para você usar. O SAP Build Apps combinou fórmulas de "tipo de planilha" com suporte integrado para um contexto de aplicativo completo que pode ajudar você a criar um algoritmo complexo de uma forma simples.

Você pode combinar centenas de funções de transformação de dados com dados relevantes, como localização GPS, valores de sensor, propriedades de dados, etc.

Assista ao vídeo para saber como usar o Editor de fórmulas.

Operadores de fórmula

Embora o SAP Build Apps não exija nenhum código, o conhecimento dos operadores também é indispensável aqui e ajuda muito no design de aplicativos dinâmicos.

Visualização dos operadores disponíveis: operadores aritméticos, comparações, condicionais, operadores lógicos e restantes.
Operadores aritméticos
Operadores aritméticos são símbolos que indicam uma operação matemática a ser executada em um ou mais operandos (valores). Os operadores aritméticos mais comuns são adição (+), subtração (-), multiplicação (*) e divisão (/). Outros operadores aritméticos incluem módulo (%) e exponenciação (^).

Em um exemplo simples, uma variável para um contador de café ou água que começa todos os dias com o valor 0 ou outro valor armazenado do passado pode sempre ser incrementada em +1 quando uma função com esse operador de adição (+1) é acionada.

Deve-se notar que o operador de adição é usado adicionalmente, por exemplo, para vincular outras strings ou variáveis para criar conteúdo dinâmico.

Operadores lógicos

Operadores lógicos ||, && e ! são usados para comparar dois valores ou expressões. O operador lógico OR (||) retorna verdadeiro se um dos operandos for verdadeiro. O operador lógico E (&&) só retorna verdadeiro se os dois operandos forem verdadeiros. A lógica NOT (!) O operador inverte o resultado de uma expressão, retornando falso se a expressão for originalmente avaliada como verdadeira e vice-versa.

Um exemplo comum do operador AND é quando um usuário precisa fornecer o e-mail e a senha corretos em um formulário de login para obter acesso. O operador OR (||) pode ser usado como no app de exercício ao planejar uma refeição. Então, se um participante for vegano ou tiver alergias, ele poderá receber um plano de refeição alternativo como resultado.

Comparações

Operadores de comparação como ==, ===, != e !== são usados para comparar dois valores. O operador de igualdade dupla (==) verifica se os valores são iguais, enquanto o operador de igualdade tripla (===) compara adicionalmente o tipo. Os operadores de desigualdade (!= e !==) verificar se os valores são diferentes ou não idênticos. Os operadores <, <=, >, e >= comparam se um valor é menor que, menor que ou igual a, maior que ou maior que ou igual a outro valor.

Exemplos de utilização podem ser verificar se uma pessoa atingiu uma determinada idade para um evento (por exemplo: 18; var_user>= 18) ou cujo nome corresponde ao nome da verificação (var_name == John). Aqui também é útil que ele possa ser usado para um contador com um determinado valor fixado, em que as funções se repetem em um loop até que um valor fixado seja atingido. Dependendo do valor inicial resultante (verdadeiro, falso), pode ocorrer outra ação.

Conditionals

<condição>? <valor verdadeiro>: <valor falso>

Isso mostra como podemos usar esses valores retornados dos operadores para retornar subsequentemente um valor diferente, dependendo da saída. Instruções condicionais são um tipo de instrução em programação que permite ao programador especificar dois caminhos diferentes para o programa tomar, dependendo se uma condição é verdadeira ou falsa. A sintaxe para condicionais é "?" Se a condição for verdadeira, a expressão retornará o valor verdadeiro; se for falsa, retornará o valor falso.

Por exemplo: (x > 5) ? "x é maior que 5": "x não é maior que 5". Neste exemplo, se x for maior que 5, "x é maior que 5" é retornado; caso contrário, "x não é maior que 5" é retornado.

Restos
Restos são os números que permanecem após uma operação de divisão (%). Por exemplo, se você dividir 7 por 3, o restante será 1. Os lembretes podem ser usados para determinar se um número é divisível por outro número sem ter que fazer cálculos. Por exemplo, se você quiser saber se um número é divisível por 5, você pode verificar o restante de dividi-lo por 5 - se for 0, então ele é divisível; caso contrário, não é.

Variáveis de fórmula

Síntese de variáveis de fórmula

Usando fórmulas, você pode acessar todas as variáveis existentes no aplicativo que podem ser modificadas.

No entanto, deve-se notar que elas só podem ser lidas, mas nenhuma variável nova pode ser definida ou criada usando apenas o editor de formulários. Assim, fica claro que, em particular, o uso comum de funções de fluxo é significativo.

Além de muitas variáveis já tratadas, aqui ainda se tornam importantes as variáveis do sensor, com as quais o valor dos sensores do dispositivo é transmitido como, por exemplo, variáveis do acelerômetro ou variáveis do sistema, como o navegador atualmente usado pelos Fluxos Lógicos.

Funções de fórmula

Além de lidar com operadores, o extenso catálogo de funções de formulário oferece a vantagem de funções prontas que podem ser usadas de várias maneiras e rapidamente. Como mencionado anteriormente, vale a pena passar por eles no Editor de Fórmula e ler as descrições.

Vejamos algumas categorias usadas com frequência.

Seção de texto

A seção de texto das Funções de fórmula permite uma ampla gama de funções para processar, substituir, formatar e também analisar ou procurar textos no app. Assim, uma manipulação de texto simples a mais complexa é possível.

O exemplo simples com a função UpperCase() converte um determinado texto de tal forma que todas as letras são escritas em letras maiúsculas para enfatizá-lo.

Visualização do exemplo fornecido acima no sistema.
Data

As funções do grupo Data são úteis para usar e trabalhar com informações de data e hora. Isso permite a exibição de diferentes segundos valores e é adicionado para se adequar à situação, a um processo ou ao usuário (por exemplo: fuso horário local). Além disso, vários valores de tempo podem ser relacionados para determinar a duração exata entre eles ou simplesmente para determinar se um período é anterior ou posterior a um valor de tempo definido ou idêntico a ele.

No exemplo mostrado, a função NOW retorna um valor correspondente à hora atual em que foi acionada e, alternativamente, pode ser modificada para mostrar apenas o dia.

Visualização do exemplo fornecido acima no sistema.
Lista

Com a variedade de componentes e utilizações da Lista, as funções Lista também são importantes para exibir conteúdo em um app dinâmico. Usando as funções desse grupo, as listas podem ser facilmente ordenadas e filtradas. Além disso, eles também podem ser processados, por exemplo, dividindo-os ou excluindo elementos individuais. Especialmente para este último, as funções de pesquisa e análise são úteis para determinar a posição ou o número de itens na lista.

No exemplo da função Contagem, os itens de uma determinada lista são contados e retornados como um valor numérico. Isso pode ser transferido no exemplo de uma lista de participantes para cálculos adicionais para determinar o orçamento ou o número de assentos livres restantes.

Visualização do exemplo fornecido acima no sistema.
Funções matemáticas

As funções matemáticas complementam os operadores normais com uma variedade de outras possibilidades predefinidas para executar cálculos matemáticos dentro da aplicação. Assim, os valores podem ser comparados, o menor ou maior valor pode ser retornado ou os números em uma matriz podem ser somados. Um dos muitos exemplos, mas frequentemente utilizados, é o arredondamento para cima (round()) e o arredondamento para baixo (floor()) de valores para um número inteiro ou o cálculo do restante após uma divisão (modulo()).

No exemplo mostrado, um número inteiro é retornado aleatoriamente, o que é gerado entre dois números inteiros selecionados - incluindo este. Portanto, para isso no exemplo da lista de participantes, o número atual dos participantes (42 neste exemplo para pageVars.participants_number) pode ser usado como parâmetro Max, para que com o número gerado aleatoriamente um participante seja sorteado entre 0 e 4., Observação: como uma matriz também seleciona o primeiro item no SAP Build Apps com o 0, o número máximo (42) foi subtraído por 1 no exemplo.

Visualização do exemplo fornecido acima no sistema.
Utilitário

Basicamente, as funções de utilidade são utilizadas especialmente para verificar condições e entradas de valor para a condição geral ou em muitos casos aqui a condição relativa ao formato correto. O foco está na função IF, que avalia o parâmetro de entrada como uma condição como verdadeira ou falsa e retorna um valor específico com base nisso, permitindo assim processos dinâmicos.

No exemplo, a função IS_EMAIL é utilizada para verificar se a entrada indicada corresponde ao formato de um endereço de e-mail válido. Se for esse o caso, é retornado verdadeiro. Por outro lado falso. Essas saídas podem ser utilizadas como acionadores para outras ações, como um popup com a solicitação de que a entrada do e-mail está incorreta e deve ser verificada novamente.

Visualização do exemplo fornecido acima no sistema.