Funções de condição
Aprenda sobre as funções de condição da Digibee Integration Platform e como utilizá-las.
As funções condicionais retornam um valor de acordo com o critério que você estabeleceu e estão disponíveis para componentes que suportam expressões com Double Braces. Para saber como passar informações para os componentes utilizando esse recurso, leia a documentação Funções Double Braces.
EQUALTO
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função compara dois objetos (que podem ser números, strings, arrays, etc.) e verifica se são iguais.
Sintaxe
EQUALTO(obj1, obj2 )
Vamos supor que você precise validar se este objeto
{
"body1":{
"cep": “01200-030”
}
}
é igual a este:
{
"body2":{
"CEP": “01200-030”
}
}
No exemplo abaixo o valor false
será atribuído, pois os objetos são diferentes:
{
"valid": {{ EQUALTO( message.body1, message.body2 ) }}
}
GREATERTHAN
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função compara se o primeiro número é maior que o segundo.
Sintaxe
GREATERTHAN(num1, num2)
Payload
{
"num1": 1,
"num2": 2
}
No exemplo abaixo o valor "false" será atribuído:
{
"valid": {{ GREATERTHAN( message.num1, message.num2 ) }}
}
O valor null é considerado como o menor valor possível para comparação.
GREATERTHAN( null, null ) retornará "false".
GREATERTHANEQUAL
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função compara se o primeiro número é maior ou igual ao segundo.
Sintaxe
GREATERTHANEQUAL(num1, num2 )
Payload
{
"num1": 1,
"num2": 2
}
No exemplo abaixo o valor false
será atribuído:
{
"valid": {{ GREATERTHANEQUAL( message.num1, message.num2 ) }}
}
O valor null
é considerado como o menor valor possível para comparação.
GREATERTHANEQUAL(null, null)
retornará true
.
IF
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você faça comparações lógicas entre um valor e aquilo que você espera.
Portanto, uma instrução IF pode ter 2 resultados. O primeiro resultado acontece quando a comparação é verdadeira e o segundo quando a comparação é falsa.
Sintaxe
IF(comparação, valor-se-verdadeiro, valor-se-falso)
Vamos supor que você precise tomar decisões dependendo se o valor recebido é true
ou false
:
{
"boolean": false
}
No exemplo abaixo o valor da condição (valor-se-falso) será atribuído ao JSON:
{
"cep": {{ IF( message.boolean, "cep-ok", "cep-nao-ok" ) }}
}
LESSTHAN
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função compara se o primeiro número é menor que o segundo.
Sintaxe
LESSTHAN(num1, num2 )
Payload
{
"num1": 1,
"num2": 2
}
No exemplo abaixo o valor "true" será atribuído:
{
"valid": {{ LESSTHAN( message.num1, message.num2 ) }}
}
O valor null
é considerado como o menor valor possível para comparação.
LESSTHAN(null, null)
retornará false
.
LESSTHANEQUAL
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função compara se o primeiro número é menor ou igual ao segundo.
Sintaxe
LESSTHANEQUAL(num1, num2)
Payload
{
"num1": 1,
"num2": 2
}
No exemplo abaixo o valor true
será atribuído:
{
"valid": {{ LESSTHANEQUAL( message.num1, message.num2 ) }}
}
O valor null
é considerado como o menor valor possível para comparação.
LESSTHANEQUAL(null, null)
retornará true
.
ISOBJECT
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você verifique se o argumento passado é um objeto.
Sintaxe
ISOBJECT(objeto)
Vamos supor que você precise verificar se o argumento recebido é um objeto:
{
"argument": false
}
Validando o argumento:
{
"isObject": {{ ISOBJECT( message.argument) }}
}
O retorno será false
, pois o valor não é um objeto.
Agora passando um objeto para a função:
{
"argument": {
"test": "xpto"
}
}
Validando o argumento:
{
"isObject": {{ ISOBJECT( message.argument) }}
}
O retorno será true
.
ISARRAY
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você verifique se o argumento passado é um array.
Sintaxe
ISARRAY(objeto)
Vamos supor que você precise verificar se o argumento recebido é um array:
{
"argument": false
}
Validando o argumento:
{
"isObject": {{ ISARRAY( message.argument) }}
}
O retorno será false
, pois o valor não é um array.
Agora passando um objeto para a função:
{
"argument": [{
"test": "xpto"
}]
}
Validando o argumento:
{
"isArray": {{ ISARRAY( message.argument) }}
}
O retorno será true
.
ISBOOLEAN
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você verifique se o argumento passado é um valor booleano.
Sintaxe
ISBOOLEAN(objeto)
Vamos supor que você precise verificar se o argumento recebido é um valor booleano:
{
"argument": false
}
Validando o argumento:
{
"isObject": {{ ISBOOLEAN( message.argument) }}
}
O retorno será true
, pois o valor é booleano.
Agora passando um objeto para a função:
{
"argument": {
"test": "xpto"
}
}
{"isBoolean": {{ ISBOOLEAN( message.argument) }}}
Validando o argumento:
{
"isBoolean": {{ ISBOOLEAN( message.argument) }}
}
O retorno será false
.
ISSTRING
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você verifique se o argumento passado é uma string.
Sintaxe
ISSTRING(objeto)
Vamos supor que você precise verificar se o argumento recebido é uma string:
{
"argument": "test"
}
Validando o argumento:
{
"isString": {{ ISSTRING( message.argument) }}
}
O retorno será true
, pois o valor é uma string.
ISNUMBER
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você verifique se o argumento passado é um número.
Sintaxe
ISNUMBER(objeto)
Vamos supor que você precise verificar se o argumento recebido é um número:
{
"argument": 123
}
Validando o argumento:
{
"isNumber": {{ ISNUMBER( message.argument) }}
}
O retorno será true
, pois o valor é um número.
ISNULL
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você verifique se o argumento passado é null
.
Sintaxe
ISNULL(objeto)
Vamos supor que você precise verificar se o argumento recebido é um valor null:
{
"argument": null
}
Validando o argumento:
{
"isNull": {{ ISNULL( message.argument) }}
}
O retorno será true
, pois o valor é um valor null.
SWITCHCASE
Utilizando Double Braces, você pode combinar a função com o acesso ao elemento do JSON de entrada de um componente.
A função permite que você passe várias comparações e os devidos parâmetros que devem ser retornados caso alguma dessas validações retorne true
. Se nenhuma validação retornar true
, valor padrão configurado será utilizado.
Sintaxe
SWITCHCASE(defaultValue, condition1, result1, condition2, result2, …., conditionN, resultN)
Vamos supor que você precise validar algumas condições para tomada de decisão:
{
"argument": null
}
Validando o argumento:
{
"result": {{ SWITCHCASE("failed", ISNULL(message.argument), "ok", ISNUMBER(message.argument), "nok" ) }}
}
Portanto, a configuração da função ficará:
Valor default: "failed"
Condition 1: ISNULL(message.argument)
Result If Condition 1 Matches: "ok"
Condition 2: ISNUMBER(message.argument)
Result If Condition 2 Matches: "nok"
O retorno será "ok", pois a primeira condição foi atendida.
Atualizado
Isto foi útil?