Skyone
Skyone
Português
Português
  • Home
  • Dados
    • Introdução
      • Criação da conta
      • Recuperar senha
      • Guia rápido da plataforma
      • Como testar a plataforma gratuitamente
      • Espaço de trabalho
        • Criação de novo espaço
        • Encontrar um espaço
        • Enviar convite para um espaço
        • Editar um espaço
      • Organizações
        • Criando uma Organização
        • Visão Geral da Organização
        • Administração da Organização
        • Monitoramento da Organização
      • Configurações e Preferências
        • Perfil
        • Notificações
        • Uso e Pagamento
        • Usuários e permissões
    • Módulos
      • Gestão de módulos
        • Criação de Módulos
        • Importar Módulos
          • Arquivos IAC - Integration as Code
        • Edição de Módulos
        • Opções de Módulos
      • Configurações & Operações
        • Configurações de Módulos
          • Conectividade: Banco de Dados
          • Conectividade: Email
          • Conectividade: REST
          • Conectividade: SOAP
          • Conectividade: Arquivo
          • Conectividade: RFC
          • Gestão das contas conectadas
        • Operações de Módulos
          • Importar operações em módulos REST
          • Gestão das operações
        • Fluxos usando este Módulo
    • Monitoramento
    • Marketplace
    • API Gateway
    • Terminais & Agente
      • Agente
        • Versões suportadas pelo Agente
        • Como atualizar a versão do Agente
        • Como fazer backup dos arquivos do Agente
      • Terminais
    • Dados
      • Data Studio
        • Process Control
        • Data Stack Upload
        • File Actions
        • File Jobs
        • Data Job Parameters
        • Data Store
        • Data Share Features
        • ODBC
        • Como utilizar o Proxy para Data Engine
    • Integrações
      • Gestão das integrações
        • Criar integração
        • Importar integração
        • Editar integração
        • Opções da integração
        • Fluxos dessa integração
      • Fluxos
        • Gestão dos fluxos
          • Criar fluxo
          • Opções do fluxo
          • Flow Canva: configuração e edição do fluxo
            • Flow Canva: visão geral
            • Exception Handler
              • Configuração do Exception Handler
              • Cases do Exception Handler
            • Fluxos Multicontexto
              • Exemplo: Multicontexto com API Gateway
              • Exemplo: Multicontexto com Gatilho Temporal
            • Configuração do fluxo
        • Gatilhos
          • Gatilhos API Gateway: Adição e Configuração
          • Gatilhos AS2: Adição e Configuração
          • Gatilho de Fila: Adição e Configuração
          • Gatilhos de Fluxo: Adição e Configuração
          • Gatilhos Temporais: Adição e Configuração
          • Gatilhos Webhook: Adição e Configuração
        • Módulos Ferramentais
          • Módulo AS2
          • Módulo CSV
          • Módulo Chamada de Fluxo
          • Módulo Data Balancer
          • Módulo EDI
          • Módulo IF
          • Módulo JavaScript
          • Módulo Log
          • Módulo Loop Do While
          • Módulo Loop For
          • Módulo Retorno
          • Módulo Transformação de Dados
          • Módulo XML
          • Outros Módulos Ferramentais da plataforma
      • Cabeçalho dos módulos
      • Conectando componentes de um fluxo
      • Edição de gatilhos e módulos no fluxo
      • Operações de Dados
        • Manipulação de Objetos
          • Exemplo prático: Manipulação de variáveis
        • SMOP (Pequenas Operações)
        • Regras de Parametrização
    • How to
      • Inserir JSON em bancos de dados
      • Flattening: Transformação de dados utilizando JSONata
      • Como utilizar o Form Data
      • Entendendo a recursividade no JSONata
      • Consolidação de output de módulo REST
      • Como configurar um timeout de um componente?
      • Isolar na execução: conceito e aplicação em variáveis
      • Parâmetros de URL no API Gateway
      • Caso de uso: parâmetros de gatilho API Gateway
      • Caso de uso: Exception Handler em transações financeiras
      • Caso de uso: utilizando Grupos para gerenciar acessos aos fluxos
      • Como criar endpoint para download e integrar com o Power BI
      • É possível usar dois gatilhos em um único fluxo?
      • Como configurar o WhatsApp no Skyone Studio
    • FAQ
    • GIGS: O guia completo
    • Glossário
  • SUPORTE
    • Como solicitar suporte?
    • Níveis de gravidade de caso
    • SLAs
    • Ajuda e recursos
Powered by GitBook
On this page
  • Conceito
  • Exemplos de Operações
  • Criação de SMOPs
  • Edição de uma SMOP
  • Exclusão de uma SMOP
  1. Dados
  2. Integrações
  3. Operações de Dados

SMOP (Pequenas Operações)

PreviousExemplo prático: Manipulação de variáveisNextRegras de Parametrização

Last updated 6 months ago

Conceito

Muitas vezes, precisamos modificar um parâmetro antes que ele seja referenciado em um fluxo. Isso acontece, por exemplo, quando estamos buscando uma substring dentro de uma string ou precisamos adicionar um valor a um parâmetro numérico. Para isso, há a funcionalidade SMOPs (Small Operations), que permite que você crie pequenas operações diretamente no campo em que os parâmetros são referenciados. Isso significa que cada operação é executada e o seu resultado é passado como um parâmetro para o módulo.

SMOP é uma funcionalidade de transformação de dados que, utilizando-se de , permite que você realize operações de menor complexidade com parâmetros de um fluxo na plataforma.

Algumas operações sobre parâmetros de um fluxo que podemos realizar utilizando-se da funcionalidade SMOP:

  • Somar dois números, tais como um offset e um rowCount, na leitura de um banco de dados;

  • Concatenar duas strings ou extrair um padrão de uma delas;

  • Modificar o tipo de dado de um parâmetro como, por exemplo, de string para number.

Com a SMOP, sempre que um parâmetro é referenciado, é possível realizar pequenas operações, utilizando-se dos dados obtidos no fluxo.

As operações ideais para esta funcionalidade são de baixa complexidade, para que você possa transformar os dados usando apenas uma linha de código. A sintaxe é JSONata, a mesma utilizada no módulo "Transformação de Dados".

A funcionalidade SMOP está disponível para módulos com autenticação REST, Banco de Dados e E-mail, e está presente em quase todos os .

A SMOP é ideal para manipulações de dados de menor complexidade, sem a necessidade de uma resposta externa. Para manipulações mais complexas de dados, igualmente sem resposta externa, recomendamos o módulo . Por fim, o módulo é ideal para manipulações mais complexas de dados, e que necessitem de uma resposta para uma requisição HTTP.

Exemplos de Operações

Os exemplos abaixo descrevem pequenas operações (expressões) que podem ser realizadas, cujo código JSONata é limitado a uma linha e retorna apenas um elemento de saída, mesmo que esse elemento seja um array:

Ex.
Parâmetros originais
Expressão SMOP (JSONata)
Novo parâmetro
Tipo de Dados

1

$length(param1)

12

number

2

param1 + param2

15

number

3

param1 + param2

15

number

4

param1 > param2

VERDADEIRO

Boolean

5

$split(param1, " ")

Array

6

$number(param1)

123.45

Number

7

param1[param2]

1

number

Criação de SMOPs

O acesso à configuração das SMOPs é feito durante a configuração da operação de um módulo compatível, na etapa da edição de um fluxo.

Para criar uma SMOP, siga os passos abaixo:

  1. Clique em "Editar" do módulo desejado e compatível. Em seguida, clique no sinal de "+" localizado no bloco de configurações de parâmetros.

  2. A janela de criação da SMOP será exibida, sendo que:

  • param1 (opcional): O parâmetro original que você deseja manipular deverá ser arrastado para este campo, sendo possível utilizar um parâmetro do fluxo ou um parâmetro de passos anteriores do fluxo. É possível, também, criar SMOPs utilizando-se de operações JSONata que não requerem parâmetros.

  • valor (opcional): Caso o param informado seja um parâmetro de fluxo, o campo valor será preenchido automaticamente, sendo também possível informar o valor manualmente ou mesmo não o informar, conforme a necessidade. O tipo de dado utilizado deve ser compatível com o param informado.

  • adicionar parâmetro: adicione mais parâmetros

  • Resultado (somente leitura): aqui será exibido automaticamente o resultado da Expressão criada.

  • Tipo (somente leitura): aqui você verá automaticamente o tipo de dados do Resultado apresentado (string, number, Boolean, array ou object). Observe que o tipo informado deve estar de acordo com o tipo esperado pelo parâmetro do módulo.

  1. Para adicionar um parâmetro à SMOP, selecionando-o entre os parâmetros disponíveis. Para fazer isso, arraste-o e solte-o no campo param1 da SMOP. Clique em "Adicionar parâmetro" se quiser adicionar outro parâmetro.

Você pode utilizar até 3 parâmetros originais dentro de uma SMOP.

  1. Os campos Resultado e Tipo exibirão as informações correspondentes.

  2. Clique em "Salvar" para concluir. O campo da operação passará a exibir a expressão “SMOP”, denotando que uma operação SMOP foi configurada.

Edição de uma SMOP

Para editar uma SMOP:

  1. Clique no sinal de seta para baixo, ao lado do campo com a SMOP que deseja editar:

  2. Faça as alterações necessárias e clique em "Salvar".

Exclusão de uma SMOP

Para excluir uma SMOP há dois caminhos:

  1. Clicar no sinal "x" que fica do lado direito do SMOP.

  2. Abrir o modal de edição e clicar em "Excluir".

Não é possível reverter a exclusão. Caso precise novamente da mesma SMOP, será necessário refazê-la.

Expressão (obrigatório): Aqui você deverá informar a operação desejada. Todas as expressões JSONata são válidas. Além de usar um parâmetro, como nos que informamos acima, é possível usar funções como $now(), que não requer parâmetros.

Crie uma Expressão em JSONata para realizar a operação desejada, utilizando nossa de modelo. Por exemplo: param1 + param2.

{
  "param1" : "minha string"
}
{
  "param1" : 10,
  "param2" : 5
}
{
  "param1" : 10,
  "param2" : 5
}
{
  "param1" : "Integra",
  "param2" : ".",
  "param3" : "Sky"
}
{
  "param1" : "arg1 arg2 arg3"
}
[
  "arg1",
  "arg2",
  "arg3"
]
{
  "param1" : "123.45"
}
{
  "param1" : [1, 2, 3],
  "param2" : 0
}
JSONata
módulos ferramentais
Data Transformation
Return
exemplos
tabela
Exemplo com 2 parâmetros