No TOTVS iPaaS é possível utilizar várias funções na configuração dos componentes, essas funções oferecem diferentes soluções para que os diagramas sejam adequados a necessidade de cada empresa e cada situação.
Atualmente as funções disponíveis no TOTVS iPaaS são:
- Aggregate
- Base64 Decoder
- Base64 Encoder
- Date time add
- Date time diff
- Division
- Format date time
- Get date time
- Is date time
- Jolt
- Length
- Lowercase
- Multiplication
- Replace
- Size
- Substring
- Subtraction
- Sum
- Uppercase
- Base 64
Utilizando as funções
Cada função representa uma operação que deve ser usada conforme a necessidade que o componente possua. Abaixo vamos detalhar e exemplificar cada uma delas para que facilite o entendimento.
Aggregate | Essa função permite consolidar dois ou mais objetos de entrada em um único objeto de saída, criando um array. |
Date time add | Essa função permite adicionar um intervalo de tempo específico a uma data e hora, facilitando a manipulação e cálculos temporais. |
Date time diff | Essa função permite calcular a diferença entre duas datas e horas, fornecendo o resultado em termos de intervalo de tempo, como dias, horas, minutos, etc. |
Division | Essa função irá dividir o valor do fator 1 pelo valor do fator 2. Caso tenha mais de dois fatores, o resultado da divisão anterior será dividido pelo próximo fator. |
Format date time | Essa função permite formatar uma data e hora de acordo com um padrão específico, transformando a representação padrão em um formato personalizado. |
Get date time | Essa função obtém a data e hora atuais baseado na localidade escolhida. |
Is date time | Essa função verifica se um determinado valor é do tipo DateTime. |
Jolt | Essa função é usada para transformar dados de entrada de acordo com o que o outro sistema espera receber. É possível passar comandos específicos para essa transformação através da tela de comando apresentada. |
Length | Essa função retorna quantos caracteres possui a string informada. |
Lowercase | Essa função transforma os dados informados para que todos os caracteres fiquem em minúsculo. |
Multiplication | Essa função irá multiplicar o valor do fator 1 pelo valor do fator 2. Caso tenha mais de dois fatores, o resultado da multiplicação anterior será multiplicado pelo próximo fator. |
Replace | Informa um texto, define o valor a ser substituído pelo novo valor informado no campo valor substituto. |
Size | Essa função permite que seja retornado a quantidade de registros que um array tem, ou seja, de uma listagem retorna a quantidade de registros que a mesma possui informando o valor numérico dos registros. |
Substring | Permite cortar parte de uma string informada no campo Texto, ou seja, permite utilizar partes da string informada. |
Subtraction | Essa função irá subtrair o valor do fator 1 pelo valor do fator 2. Caso tenha mais de dois fatores, o resultado da subtração anterior será subtraído pelo próximo fator. |
Sum | Essa função irá somar o valor do fator 1 pelo valor do fator 2. Caso tenha mais de dois fatores, o resultado da soma anterior será acrescentado ao próximo fator. |
Uppercase | Essa função transforma os dados informados para que todos os caracteres fiquem em maiúsculo. |
Base 64 | Essa função permite tanto transformar um texto em versão base 64 quanto uma base 64 em texto. |
Exemplos de uso das funções
Veja abaixo exemplos simples de utilização de cada função:
- A função Aggregate permite consolidar dois ou mais objetos de entrada em um único objeto de saída, criando um array.
Ao usar funções de data, mantenha consistência nos caracteres de formatação. Siga o padrão Unicode ICU para garantir precisão e evite erros. Consulte o guia. Use caracteres adequados para anos, meses e dias.
A função DateTime Add permite adicionar um intervalo de tempo específico a uma data e hora, facilitando a manipulação e cálculos temporais.
- Abaixo segue uma breve explicação sobre os campos
- Nome da função: Identificador do nome da função.
- Date: Esse campo representa a data base à qual você deseja adicionar ou subtrair um intervalo de tempo. O preenchimento desse campo, pode ser uma data fixa, variável ou um dado de entrada que contenha uma data.
- Format: O campo "Formato" refere-se à maneira como a data é representada. Ele indica como a data deve ser interpretada no campo "Date". Por exemplo, o formato pode ser "dd/MM/yyyy HH:mm:ss". Para saber mais, clique aqui.
- Unit: Este campo indica a unidade de tempo que você deseja adicionar ou remover à data. Pode incluir opções como anos, meses, dias, horas, minutos, segundos, e milissegundos. Você especifica a unidade de tempo que será adicionada ou removida à data.
- Amount: O campo "Quantidade" representa o valor numérico que será adicionado à data base. Por exemplo, se a unidade for "dias" e a quantidade for "5", a data resultante será a data base mais 5 dias.
- Exemplo: Suponhamos que você queira adicionar 3 meses à data "2023-01-01 12:00:00". Você preencheria os campos da seguinte forma:
Nome da Função: Adiciona 3 meses na data
Date: 2023/01/01 12:00:00
Format: yyyy/MM/dd HH:mm:ss
Unit: Meses
Amount: 3
Resultado: O resultado seria a nova data após adicionar 3 meses à data base fornecida.
Ao usar funções de data, mantenha consistência nos caracteres de formatação. Siga o padrão Unicode ICU para garantir precisão e evite erros. Consulte o guia. Use caracteres adequados para anos, meses e dias.
A função DateTime Diff calcula a diferença entre duas datas e horas, fornecendo o resultado em termos de intervalo de tempo, como dias, horas, minutos, etc.
- Abaixo segue uma breve explicação sobre os campos
- Nome da função: Identificador do nome da função.
- Date 1: Este campo refere-se à primeira data que você deseja comparar. Pode ser uma data fixa ou uma variável que contenha uma data.
- Format date 1: Indica o formato como a data no campo "Date 1" está representada. Especifica como a data deve ser interpretada para garantir uma comparação precisa. Para saber mais, clique aqui.
Date 2: Este campo representa a segunda data para a comparação. Pode ser uma data fixa ou uma variável que contenha uma data.
Format date 2: Indica o formato como a data no campo "Date 2" está representada. Da mesma forma que o campo "Format Date 1", este campo garante que ambas as datas sejam interpretadas corretamente durante a comparação. Para saber mais, clique aqui.
- Exemplo: Suponhamos que você queira calcular a diferença em dias entre duas datas: "01-01-2023 12:00:00" e "01-03-2023 15:30:00". Você preencheria os campos da seguinte forma:
Nome da Função: Diferença entre datas
Date 1: 2023-01-01 12:00:00
Format Date 1: dd-MM-yyyy HH:mm:ss
Date 2: 2023-03-01 15:30:00
Format Date 2: dd-MM-yyyy HH:mm:ss
Resultado: O resultado seria a diferença em dias entre as duas datas e horas fornecidas.
No caso das funções matemáticas sempre que utilizarmos números que não são inteiros, ou seja, que possuem virgula, é necessário que o separador utilizado seja sempre o mesmo em todos os fatores. Recomendamos sempre utilizar a vírgula como separador. Por exemplo: 10,5 ou 8,7 ou 3,4.
- A função Division permite dividir os valores informados nos campos Fator. Neste exemplo temos a subtração do Fator 100 pelo Fator 2, ou seja, 100/2 e o resultado deste exemplo é 50.
- É possível adicionar quantos Fatores desejar através do campo Adicionar.
- O resultado do fator anterior sempre será dividido pelo valor do próximo fator. Por exemplo: primeiro Fator 100, segundo Fator 2 e terceiro Fator 2 onde o resultado da divisão entre o primeiro e segundo fator será 50 e este resultado será dividido pelo o terceiro fator, dando o resultado de 25.
Ao usar funções de data, mantenha consistência nos caracteres de formatação. Siga o padrão Unicode ICU para garantir precisão e evite erros. Consulte o guia. Use caracteres adequados para anos, meses e dias.
A função Format DateTime permite formatar uma data e hora de acordo com um padrão específico, transformando a representação padrão em um formato personalizado.
- Abaixo segue uma breve explicação sobre os campos
- Nome da função: Identificador do nome da função.
- Date: Este campo representa a data e hora que você deseja formatar. Pode ser uma data fixa ou uma variável que contenha uma data.
- Input Format: Indica o formato como a data no campo "Date" está representada inicialmente. Especifica como a data deve ser interpretada para garantir que seja formatada corretamente. Para saber mais, clique aqui.
- Output Format: Este campo define o formato desejado para a representação final da data. Você especifica como deseja que a data seja exibida após a formatação. Para saber mais, clique aqui.
- Exemplo: Suponhamos que você tenha a data "2023-01-15 18:45:30" e deseje formatá-la para o formato "15 de Jan de 2023, 18:45". Você preencheria os campos da seguinte forma:
Nome da Função: Formata data e hora
Date: 2023-01-15 18:45:30
Input Format: yyyy-MM-dd HH:mm:ss
Output Format: dd 'de' MMM 'de' yyyy, HH:mm
Resultado: O resultado seria a data formatada conforme o formato desejado: "15 de Jan de 2023, 18:45".
Ao usar funções de data, mantenha consistência nos caracteres de formatação. Siga o padrão Unicode ICU para garantir precisão e evite erros. Consulte o guia. Use caracteres adequados para anos, meses e dias.
A função Get DateTime obtém a data e hora atuais baseado na localidade escolhida.
- Abaixo segue uma breve explicação sobre os campos
- Nome da função: Identificador do nome da função.
Format: O campo "Formato" representa o formato desejado para a representação da data e hora obtidas pela função. Você especifica como deseja que a data e hora atuais sejam formatadas. Para saber mais, clique aqui.
Timezone: Este campo indica o fuso horário desejado para ajustar a data e hora obtidas. Pode ser especificado usando a nomenclatura do fuso horário, como "America/Sao_Paulo"
- Exemplo: Suponhamos que você queira obter a data e hora atuais formatadas como "dd/MM/yyyy HH:mm:ss" no fuso horário "America/Sao_Paulo". Os campos seriam preenchidos da seguinte forma:
Nome da Função: Data e hora atual
Format: dd/MM/yyyy HH:mm:ss
Timezone: America/Sao_Paulo
Resultado: O resultado seria a data e hora atuais formatadas conforme especificado, ajustadas para o fuso horário desejado.
Ao usar funções de data, mantenha consistência nos caracteres de formatação. Siga o padrão Unicode ICU para garantir precisão e evite erros. Consulte o guia. Use caracteres adequados para anos, meses e dias.
A função IsDateTime verifica se um determinado valor é do tipo DateTime baseado em um formato de datetime.
- Abaixo segue uma breve explicação sobre os campos
- Nome da função: Identificador do nome da função.
Date: O campo "Data" refere-se à variável ou valor que você deseja verificar se é do tipo DateTime. Este campo contém o valor que será avaliado pela função. O preenchimento desse campo pode ser uma data fixa, variável ou um dado de entrada que contenha uma data.
Format: O campo "Formato" indica o formato esperado da data para realizar a verificação. Isso é útil quando você precisa garantir que o valor seja interpretado corretamente como uma data e hora específicas. Para saber mais, clique aqui.
- Exemplo: Suponhamos que você queira verificar se o retorno da função "Get date time" é do tipo DateTime e está no formato "dd/MM/yyyy HH:mm:ss". Os campos seriam preenchidos da seguinte forma:
Nome da Função: Valida get date time
Date: {{{function.id3.date}}}
Format: dd/MM/yyyy HH:mm:ss
Resultado: A função retornará verdadeiro se "Get date time" for uma data válida no formato especificado; caso contrário, retornará falso.
- A função Jolt permite aplicar várias transformações de dados através da Especificação determinando qual função será executada em qual atributo. Na imagem abaixo estamos utilizando um exemplo que irá transformar o objeto de entrada (spreadsheet_id) em caracteres maiúsculos.
- Existem alguns recursos no campo Especificação do jolt para facilitar seu uso, como Copiar o comando passado através do ícone , Formatar JSON através do ícone , Abrir arquivo através do ícone e Tela cheia através do ícone
Importante: Evite inserir comentários "//" no campo de especificação do Jolt, para garantia de processamento com sucesso. Comentários inseridos neste campo podem não ser corretamente processados impactando em erros na execução da integração.
- A função Length permite retornar a quantidade de caracteres da string informada no campo Texto. Neste exemplo estamos utilizando uma variável com o valor "TOTVS iPaaS" que contém 11 caracteres pois o espaço também é contado como um caractere.
Configuração da variável:
Configuração da função:
Configuração do componente Generator para exibir o texto e a quantidade de caracteres no monitor:
Resultado no monitor:
- A função Lower case permite transformar strings, ou seja, palavras que estão com um ou mais caracteres em maiúsculo serão alterados para minúsculo.
No caso das funções matemáticas sempre que utilizarmos números que não são inteiros, ou seja, que possuem virgula, é necessário que o separador utilizado seja sempre o mesmo em todos os fatores. Recomendamos sempre utilizar a vírgula como separador. Por exemplo: 10,5 ou 8,7 ou 3,4.
- A função Multiplication permite que os valores informados nos campos Fator sejam multiplicados. Neste exemplo temos a multiplicação do fator 35 pelo fator 3, ou seja, 35x3 e o resultado deste exemplo é 105.
- É possível adicionar quantos Fatores desejar através do campo Adicionar.
- O resultado do fator anterior sempre será multiplicado pelo valor do próximo fator. Por exemplo: primeiro Fator 5, segundo Fator 3 e terceiro Fator 2 onde o resultado da multiplicação entre o primeiro e segundo fator será 15 e este resultado será multiplicado pelo terceiro fator, dando o resultado de 30.
- A função Replace permite substituir o valor informado no campo Valor a ser substituído pelo valor informado no campo Valor substituto. No nosso exemplo utilizamos Joinville Santa Catarina onde Santa Catarina irá ser substituído pelo valor SC retornando o resultado final como Joinville SC.
- A função Size permite que você consulte quantos registros uma listagem possui. Neste exemplo estamos utilizando uma listagem que contém 50 registros.
- A função Substring permite cortar parte da string informada no campo Texto, ou seja, permite utilizar partes da string informada. Neste exemplo estamos utilizando a string "Joinville Santa Catarina" onde queremos usar somente o "Santa Catarina".
No caso das funções matemáticas sempre que utilizarmos números que não são inteiros, ou seja, que possuem virgula, é necessário que o separador utilizado seja sempre o mesmo em todos os fatores. Recomendamos sempre utilizar a vírgula como separador. Por exemplo: 10,5 ou 8,7 ou 3,4.
- A função Subtraction permite subtrair os valores informados nos campos Fator. Neste exemplo temos a subtração do Fator 80 pelo Fator 30, ou seja, 80-30 e o resultado deste exemplo é 50.
- É possível adicionar quantos Fatores desejar através do campo Adicionar.
- O resultado do fator anterior sempre será subtraído pelo valor do próximo fator. Por exemplo: primeiro Fator 50, segundo Fator 5 e terceiro Fator 20 onde o resultado da subtração entre o primeiro e segundo fator será 45 e este resultado será subtraído pelo o terceiro fator, dando o resultado de 25.
No caso das funções matemáticas sempre que utilizarmos números que não são inteiros, ou seja, que possuem virgula, é necessário que o separador utilizado seja sempre o mesmo em todos os fatores. Recomendamos sempre utilizar a vírgula como separador. Por exemplo: 10,5 ou 8,7 ou 3,4.
- A função Sum permite somar os valores informados nos campos Fator. Neste exemplo temos a soma do Fator 25 pelo Fator 30, ou seja, 25+30 e o resultado deste exemplo é 55.
- É possível adicionar quantos Fatores desejar através do campo Adicionar.
- O resultado do fator anterior sempre será somado pelo valor do próximo fator. Por exemplo: primeiro Fator 15, segundo Fator 4 e terceiro Fator 20 onde o resultado da soma entre o primeiro e segundo fator será 19 e este resultado será somado com o terceiro fator, dando o resultado de 39.
- A função Upper case permite transformar strings, ou seja, palavras que estão com um ou mais caracteres em minúsculo serão alterados para maiúsculo.
- A função base64 é dividida em duas funções distintas no builder:
-
- Base64 Encoder: Transforma um texto em sua versão base64.
- Base64 Decoder: Transforma uma base64 em sua versão textual que geralmente estará em utf-8.