JSON para Tabela v.2
- 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.
| Campo | Descrição |
|---|---|
| Tipo | Define o tipo de dado (STRINGA, NUMERICO, DATA, DATA E HORA). |
| Precisão | Comprimento máximo para strings ou dígitos para numéricos. |
| Alias | Nome da coluna no banco de dados. Use aspas duplas (ex. "Nome de Utilizador") para manter espaços ou caracteres especiais. |
| Expressão JSONPath | O 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ão | Ação |
|---|---|
| Guardar | Guarda a estrutura definida |
| Importar | Importa uma estrutura existente |
| Exportar | Exporta 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:
| Tipo | Precisão | Alias | Expressão JSONPath |
|---|---|---|---|
STRINGA | 1000 | name | $.task_name |
STRINGA | 1000 | status | $.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"
}
}