Pular para o conteúdo principal

JSON para Tabela v.2

Configuração atual da tarefa JSON to Table v.2 no Workflow Designer
  • Tipo de tarefa: json-to-table_v2

Descrição

A tarefa "JSON para Tabela v.2" permite importar um objeto JSON com estrutura tabular diretamente para uma tabela de um banco de dados suportado. A tarefa gere a criação da tabela ou a inserção de dados em tabelas já existentes.

1. Conexão com o Banco de Dados

Tabela de destino

Selecione a origem da configuração:

  • Manuale: para inserir os dados de conexão campo por campo.
  • Environment: para utilizar um ambiente de conexão pré-configurado no sistema.

Ambiente de Conexão

Menu dropdown para selecionar o ambiente desejado (ex. SqlServer_TEST). Os parâmetros de autenticação são preenchidos automaticamente.

Conjunto de Dados de Entrada

Campo para definir a fonte de dados:

  • Deve conter o JSON a ser processado.
  • É possível utilizar parâmetros dinâmicos para ligar a saída de tarefas anteriores (ex. #>JSON print.result<#).

Tipo de Banco de Dados

Selecione o DBMS de destino entre PostgreSQL, SQLserver, MySQL, Oracle e SAP HANA.

Conexão SSL

Indica se habilitar a conexão segura (SI / NO).

Autenticação

Se em modo Manuale, preencha os campos: Host, Porta, Nome do DB, Usuário e Palavra-passe.

2. Gestão de Tabela

Ação da Tabela de Destino

  • Criar tabela: gera uma nova tabela no banco de dados.
  • Tabela Existente: insere os dados numa tabela existente. Opções:
  • Append: adiciona os registos em sequência.
  • Truncate Insert: esvazia a tabela antes da inserção.
  • Criar tabela se não existir: cria a tabela apenas se não for detetada, evitando erros em execuções múltiplas.

Nome da Tabela de Destino

Especifique o nome físico da tabela no banco de dados (ex. example_table).

3. Estrutura Tabular

Nesta aba, define-se o mapeamento entre as chaves do JSON e as colunas da tabela.

CampoDescrição
TipoDefine o tipo de dado (STRINGA, NUMERICO, DATA, DATA E HORA).
PrecisãoComprimento máximo para strings ou dígitos para numéricos.
AliasNome da coluna no banco de dados. Use aspas duplas (ex. "Nome de Utilizador") para manter espaços ou caracteres especiais.
Expressão JSONPathO caminho JSON para extrair o valor (ex. $.task_name).

Gestão da Estrutura da Tabela

No canto inferior direito da Estrutura Tabular encontram-se três botões:

BotãoAção
GuardarGuarda a estrutura definida
ImportarImporta uma estrutura existente
ExportarExporta a estrutura definida

Esta funcionalidade permite guardar, exportar ou reutilizar os mapeamentos, evitando a compilação manual dos campos e reduzindo o risco de erros.

Nota Técnica

Visibilidade: As estruturas guardadas no sistema são visíveis exclusivamente ao utilizador que as criou. Aprofundamento: Para uma descrição detalhada de todas as opções e da lógica de funcionamento, consulte a página Estrutura da Tabela.

4. Exemplo de Configuração

Para importar um conjunto de dados JSON como o seguinte: [{"task_name": "Backup", "status": "OK"}, {"task_name": "Restore", "status": "FAIL"}]

Configuração da Estrutura Tabular:

TipoPrecisãoAliasExpressão JSONPath
STRINGA1000name$.task_name
STRINGA1000status$.status

Parâmetros de Saída

  • exitStatus: Código de estado da operação (0 = Sucesso).
  • rowCount: Número de linhas efetivamente inseridas no banco de dados.
  • targetTable: Nome da tabela de destino utilizada.
  • DataExportCsv: Dados processados exportados em formato CSV.
  • DataExportJson: Dados processados exportados em formato JSON.
  • DataColumn.NomeColonna: Lista de todos os valores da coluna separados por vírgula (ex. Backup, Restauração).
  • resultJson: Relatório JSON completo da execução da tarefa.

Exemplo resultJson

{
"run_info": {
"status": "Completed",
"run_result": "Success"
},
"output_parameters": {
"exitStatus": "0"
}
}