Esempi di query Workfront Data Connect
Per utilizzare al meglio i dati di Workfront Data Connect, questa pagina contiene query di esempio di base che è possibile utilizzare per acquisire familiarità con la sintassi e la struttura di tipi specifici di query.
Query dati personalizzata
In questo esempio viene illustrato come comporre una query per restituire dati personalizzati in Workfront, ad esempio moduli personalizzati e campi personalizzati.
Scenario
La tua organizzazione utilizza un modulo personalizzato denominato Integrazione finanziaria. Il modulo viene allegato a ogni progetto e contiene i campi seguenti:
- Business Unit - Campo personalizzato contenente una stringa.
- ProjectID - Campo personalizzato contenente una stringa numerica.
- Nome progetto espanso - Campo dati personalizzato calcolato che concatena i valori di Business Unit, ProjectID e il nome del progetto Workfront nativo in un'unica stringa.
È necessario includere queste informazioni nella risposta per una query su Data Connect. I valori dei dati personalizzati per un record nel data lake sono contenuti in una colonna con titolo parametervalues
. Questa colonna viene memorizzata come oggetto JSON.
Query:
SELECT
projectid,
parametervalues,
name,
parametervalues:"DE:Business Unit"::int as BusinessUnit,
parametervalues:"DE:Project ID"::int as ProjectID,
parametervalues:"DE:Expanded Project Name"::text as ExpandedProjectName
FROM PROJECTS_CURRENT
WHERE ExpandedProjectName is not null
Risposta:
La query precedente restituisce i dati seguenti:
projectid
- ID progetto Workfront nativoparametervalues
- colonna in cui è memorizzato un oggetto JSONname
- nome progetto Workfront nativoBusiness Unit
- Valore di dati personalizzato incluso nell'oggettoparametervalues
Project ID
- Valore di dati personalizzato incluso nell'oggettoparametervalues
Expanded Project Name
- Valore di dati personalizzato incluso nell'oggettoparametervalues
Spiegazione:
Quando si esegue una query sull'oggetto JSON parametervalues
, è possibile accedere a ogni campo dati personalizzato come colonna utilizzando quanto segue:
<field_name>:"<parameter_name>"::<data_type> as <column_name>
<field_name>
è il nome dell'oggetto JSON nella tabella di cui viene eseguita la query. Nel caso di dati personalizzati, questo sarà sempreparametervalues
.<parameter_name>
è la stringaparametername
trovata nello strumento di configurazione del modulo, anche se potrebbe non corrispondere sempre a questo valore.
-
<data_type>
converte il valore restituito dall'oggetto JSON in un tipo di dati appropriato per il campo. Se si sceglie un tipo di dati non compatibile per il valore restituito, si verificherà un errore di mancata corrispondenza del tipo di dati. I tipi di dati possibili includono:text
varchar
int
float
number(len,precision)
(ad esempio,Number(32,4)
restituirebbe 1234.0987)date
timestamp
-
<column_name>
è l'etichetta creata per ogni colonna di dati personalizzata.