Pular para o conteúdo principal

Conector de Base de Dados

Configuração atual da tarefa DB Connector no Workflow Designer
  • Tipo de Tarefa: db

A tarefa Conector de Base de Dados permite executar instruções SQL numa base de dados suportada, tanto para extração de dados — com a possibilidade de mapear os resultados para aliases específicos — como para execução de código procedural. A configuração requer a definição da ligação à base de dados e da consulta SQL a ser executada, destinada à recuperação de informações ou à execução de operações.

Ligação à Base de Dados

ParâmetroDescrição
Tipo de Base de DadosO tipo de base de dados (DBMS) à qual se conectar
Ligação SSLAtivada/Desativada
Hosthost o #>parametro_string<#
Portaport o #>parametro_num<#
Nome DBnome_database o #>parametro_string<#
Usernome_utente o #>parametro_string<#
PasswordPalavra-passe de acesso

Configuração da Statement

Tipo de Statement

  • Select: executa consultas SQL para extração de dados da base de dados.
  • Outro (Other): permite a execução de instruções DML (INSERT, UPDATE, DELETE), chamadas a procedimentos/stored procedures ou blocos anónimos SQL.

Exemplo de Pré-visualização da Consulta SQL (Statement Preview)

A pré-visualização salva a configuração atual antes de executar a consulta e limita o número de linhas mostradas. Está também disponível com SAP HANA. Em caso de erro, é exibido um código de diagnóstico útil para solicitar assistência.

SELECT
config->>'kid' AS kid,
config->>'iss' AS iss,
config->>'scope' AS scope,
config->>'grant_type' AS grant_type,
config->>'project_id' AS project_id,
replace(config->>'key', chr(10), '\n') AS key,
config->>'aud' AS aud
FROM connections
WHERE id=1;

Exemplo de Mapeamento de Campos Extraídos

TipoPrecisãoAliasExpressão
EXPRESSÃO1000kidconfig->>'kid'
EXPRESSÃO1000issconfig->>'iss'
EXPRESSÃO1000scopeconfig->>'scope'
EXPRESSÃO1000grant_typeconfig->>'grant_type'
EXPRESSÃO1000project_idconfig->>'project_id'
EXPRESSÃO2000keyreplace(config->>'key', chr(10), '\n')
EXPRESSÃO1000audconfig->>'aud'

Exemplo de Cláusula From

FROM connections
WHERE id=1;

Uso de parâmetro dinâmico com "dbobj:"

FROM `#>dbobj:nome_tabella<#`

Gestão da Estrutura da Tabela - Campos da lista select

No canto inferior direito da tabela de mapeamento em “Tipo de Statement Select - Campos da lista select” existem três botões:

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

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

Nota Técnica

  • Visibilidade: As estruturas salvas no sistema são visíveis apenas para o 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.

Parâmetros de Saída

Ao final da execução de uma consulta, a Tarefa "DB Connector" expõe um conjunto de parâmetros de saída. Estes parâmetros fornecem não só um relatório da operação, mas também os dados recuperados em múltiplos formatos, prontos para serem utilizados pelas tarefas subsequentes.

Parâmetros Relativos ao Spool da Consulta

  • queryspool.file: Retorna o caminho completo do ficheiro spool gerado (um ficheiro CSV).
  • queryspool.filename: Retorna apenas o nome do ficheiro spool.
  • queryspool.content: Contém o conteúdo textual completo do ficheiro spool.

Parâmetros de Resumo da Execução

  • count: Indica o número total de linhas (registos) retornadas pela consulta.
  • result: Fornece o estado geral da execução da Tarefa (ex: "Declaração Executada com Sucesso" ou uma mensagem de erro do base de dados).
  • resultJson: representa o resultado da execução da tarefa em formato JSON, incluindo informações gerais, configurações e detalhes da execução.

Parâmetros de Exportação de Dados

Estes parâmetros contêm o conjunto de dados completo recuperado, já formatado em diferentes padrões.

  • DataExportCsv: Retorna o conjunto de dados completo, formatado como texto em formato CSV, incluindo a linha de cabeçalho com os nomes das colunas.
  • DataExportNoHeaderCsv: Retorna o conjunto de dados em formato CSV, mas excluindo a linha de cabeçalho. É útil quando se necessita apenas dos dados brutos.
  • DataExportJson: Retorna o conjunto de dados completo, formatado como uma string JSON (um array de objetos, onde cada objeto representa uma linha).

Parâmetros de Objeto para Processamento Avançado

Estes parâmetros representam os dados como objetos estruturados, ideais para a interação com outras Tarefas.

  • Dataset: Este parâmetro representa o nome da coluna da tabela (Ex: name). É o parâmetro mais importante para ligar esta Tarefa a um Iterador. Para aceder aos valores de uma coluna específica durante uma iteração, utiliza-se a sintaxe Dataset.NomeColuna.
  • DataColumn: Este parâmetro permite aceder ao conteúdo completo de uma coluna como uma única entidade).
  • DataColumn.NomeColuna: Retorna todos os valores da coluna “NomeColuna”. Ex: “Luca, Maria, Giovanni, Elena”

Notas importantes

  • Para usar os parâmetros dinâmicos na secção Cláusula FROM e Declaração, deve ser usada a seguinte sintaxe: "#>dbobj:parametro_dinamico<#" (com exceção do Tipo de Base de Dados SAP HANA, caso em que deve ser usada a sintaxe habitual "#>nome_tabella<#")

Exemplo do parâmetro resultJson

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