Passa al contenuto principale
Versione: 2.0

XML to Table v.2

Configurazione corrente del task XML to Table v.2 nel Workflow Designer
  • Task type: xml-to-table_v2

Descrizione​

Il task "XML to Table v.2" consente di importare dati in formato XML direttamente in una tabella di un database supportato. Il sistema converte internamente la struttura XML per mappare i valori sui campi della tabella di destinazione.

1. Connessione database​

In questa sezione si definiscono la sorgente dei dati e le coordinate del database.

Tabella target (Origine Connessione)​

Seleziona come configurare l'accesso al database:

  • Manuale: inserimento manuale di host, porta e credenziali.
  • Environment: utilizzo di un ambiente di connessione preconfigurato.

Connessione Environment​

Seleziona dal dropdown l'ambiente desiderato (es. Example_Connection). I parametri di autenticazione verranno popolati automaticamente.

Input Dataset​

Inserire il contenuto XML da processare.

  • È possibile utilizzare parametri dinamici (es. #>Run Script Python xml.result<#) per collegare l'output di un task precedente che genera o recupera l'XML.

Tipologia Database​

Seleziona il DBMS: PostgreSQL, SQLserver, MySQL, Oracle, SAP HANA.

Connessione SSL​

Indica se la connessione richiede SSL (SI / NO).

Autenticazione​

Compila i campi Host, Porta, Nome DB, User e Password (pulsante Imposta password) se operi in modalità manuale.

2. Gestione tabella​

Tabella target (Azione)​

Definisci l'operazione da eseguire sul database:

  • Crea tabella: crea una nuova tabella.
  • Tabella Esistente: inserisce dati in una tabella già presente. È possibile scegliere tra:
  • Append: aggiunge i record.
  • Truncate Insert: svuota la tabella prima di inserire i nuovi dati.
  • Crea tabella se non esiste: crea la tabella solo se non rilevata, evitando errori in esecuzioni ripetute.

Nome tabella target​

Specifica il nome della tabella nel database (es. example_table).

3. Struttura tabellare​

In questa scheda si definisce la mappatura tra i nodi dell'XML e le colonne della tabella. Anche se l'input è XML, per la mappatura dei campi si utilizza la sintassi JSONPath sulla rappresentazione interna del documento.

CampoDescrizione
TipoTipo di dato (STRINGA, NUMERICO, DATA, DATA E ORA).
PrecisioneLunghezza massima (stringhe) o precisione numerica.
AliasNome della colonna nel database.
Espressione JSONPathPercorso per estrarre il valore dal nodo XML (es. $.task_name).

Gestione Table Structure​

In basso a destra della Struttura tabellare sono presenti tre pulsanti:

PulsanteAzione
SalvaSalva la struttura definita
ImportaImporta una struttura esistente
EsportaEsporta la struttura definita

Questa funzionalità permette di salvare, esportare o riutilizzare le mappature, evitando la compilazione manuale dei campi e riducendo il rischio di errori.

Nota Tecnica​

Visibilità: Le strutture salvate nel sistema sono visibili esclusivamente all'utente che le ha create. Approfondimento: Per una descrizione dettagliata di tutte le opzioni e della logica di funzionamento, fare riferimento alla pagina Table Structure.

4. Esempio di configurazione​

Dato il seguente XML in ingresso:

<tasks>
<task>
<task_name>Generate Summary</task_name>
<status>pending</status>
</task>
</tasks>

Struttura tabellare​

La Struttura tabellare sarà configurata come segue:

TipoPrecisioneAliasEspressione JSONPath
STRINGA1000task_name$.task_name
STRINGA1000status$.status

Parametri di Output​

  • exitStatus: Codice di stato (0 = Successo)
  • rowCount: Numero di record inseriti (es. 3)
  • targetTable: Nome della tabella di destinazione
  • DataExportCsv / DataExportJson: I dati importati formattati nei rispettivi standard
  • Dataset.NomeCampo: Valore del campo per l'utilizzo in un Iterator
  • DataColumn.NomeCampo: Stringa con tutti i valori della colonna separati da virgola (es. pending, done, running)
  • resultJson: Report tecnico completo dell'operazione

Esempio resultJson​

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