Creare filtri complessi in modalità testo utilizzando istruzioni EXISTS
Per informazioni sull'utilizzo della modalità testo, vedere Cenni preliminari sulla modalità testo.
Panoramica delle relazioni tra oggetti in Workfront
Tutti gli oggetti sono collegati ad altri oggetti nel database di Workfront.
Comprendere la gerarchia e l’interdipendenza degli oggetti consente di individuare gli oggetti a cui è possibile fare riferimento nei rapporti.
Per informazioni sugli oggetti presenti in Workfront e sulla relativa gerarchia e interdipendenza, vedere Panoramica sugli oggetti di Adobe Workfront.
Durante la creazione di filtri, è possibile fare riferimento ad altri oggetti connessi all’oggetto del filtro entro un massimo di 2 livelli di relazione utilizzando l’interfaccia standard di reporting.
Ad esempio, puoi fare riferimento all’ID Portfolio in un filtro di problemi per visualizzare solo i problemi relativi ai progetti associati a un determinato portfolio utilizzando l’interfaccia standard. In questo caso, il portfolio è 2 livelli lontano dalle emissioni.
Tuttavia, non è possibile fare riferimento al proprietario di Portfolio in un filtro di problemi utilizzando l’interfaccia standard per visualizzare solo i problemi dei progetti associati a portfolio in cui il proprietario è un utente specifico. È necessario utilizzare la modalità testo per accedere al campo Nome proprietario Portfolio, che si trova a tre livelli di distanza dai problemi.
Per un elenco completo degli oggetti in Workfront, vedere API Explorer.
Per informazioni su come esplorare API Explorer e trovare oggetti, vedere Utilizzo di API Explorer.
Quando si creano i filtri, è necessario creare istruzioni complesse nell’interfaccia in modalità testo per fare riferimento a questi tipi di oggetti.
Per informazioni sulla creazione di filtri complessi, vedere la sezione Panoramica sui filtri in modalità testo complessi che utilizzano istruzioni EXISTS di questo articolo.
Panoramica dei filtri in modalità testo complessa che utilizzano istruzioni EXISTS overview-of-complex-text-mode-filters-that-use-exists-statements
Quando si creano filtri che si estendono su più livelli nella gerarchia degli oggetti o si filtrano gli oggetti mancanti, tenere presente quanto segue:
-
È necessario creare filtri complessi quando si desidera fare riferimento a oggetti non direttamente connessi all’oggetto filtro.
-
È necessario utilizzare un’istruzione EXISTS per eseguire le operazioni seguenti:
- Creare filtri che si estendono su più livelli.
- Creare filtri che cercano oggetti mancanti.
Ad esempio, quando crei un rapporto utente, puoi filtrare gli utenti che non hanno registrato il tempo per un determinato periodo di tempo.
Quando si utilizzano istruzioni EXISTS in un filtro, considera le seguenti regole:
-
È possibile fare riferimento a tre oggetti in un filtro EXISTS:
- Oggetto del filtro (oggetto originale).
- Oggetto di cui si desidera fare riferimento al campo (oggetto Target).
- Oggetto che connette gli oggetti Original e Target, nel caso in cui non siano connessi direttamente tra loro (oggetto di collegamento).
-
I filtri che utilizzano EXISTS contengono due istruzioni separate collegate da un segno di uguale:
- L’istruzione che precede il segno di uguale fa riferimento all’oggetto a cui si fa riferimento, ovvero l’oggetto Linking o l’oggetto Target.
- L’istruzione dopo il segno di uguale fa riferimento all’oggetto da cui si fa riferimento (l’oggetto originale).
-
Per connettere le istruzioni, è necessario utilizzare il codice oggetto dell’oggetto di collegamento.
Puoi trovare il codice oggetto di tutti gli oggetti in API Explorer.
Per informazioni su API Explorer, vedere API Explorer. -
Quando manca un oggetto di collegamento perché gli oggetti originale e di destinazione sono collegati direttamente tra loro, è possibile utilizzare il codice oggetto dell’oggetto di destinazione anziché l’oggetto di collegamento.
-
È possibile fare riferimento a più campi (campi di destinazione) sullo stesso oggetto (oggetto di destinazione), nel qual caso è necessario connettere le righe che fanno riferimento ai campi mediante AND.
Per un esempio di filtro per più campi che appartengono all’oggetto di destinazione, vedere la sezione Esempio 4: Filtrare per più campi: attività per nome proprietario Portfolio e ID scorecard allineamento Portfolio in questo articolo. -
L’unico modificatore supportato per un’istruzione EXISTS è NOTEXISTS.
Requisiti di accesso
| table 0-row-2 1-row-2 2-row-2 3-row-2 layout-auto html-authored no-header | |
|---|---|
| Pacchetto Adobe Workfront | Qualsiasi |
| Licenza di Adobe Workfront |
Standard Piano |
| Configurazioni del livello di accesso |
Modifica accesso a Filtri, Viste, Raggruppamenti Modificare l’accesso a Rapporti, Dashboard, Calendari per modificare i filtri in un rapporto |
| Autorizzazioni sugli oggetti |
Gestire le autorizzazioni per un report per modificare i filtri in un report Gestire le autorizzazioni per un filtro per modificarlo |
Per ulteriori dettagli sulle informazioni contenute in questa tabella, consulta Requisiti di accesso nella documentazione Workfront.
Creare filtri in modalità testo complessi che si estendono su più livelli nella gerarchia degli oggetti
È possibile creare un filtro che faccia riferimento a oggetti su più livelli della gerarchia degli oggetti in cui è presente l’oggetto filtro. Ad esempio, puoi creare un filtro di problemi per i problemi relativi a progetti non associati a un determinato proprietario Portfolio.
Per creare questo filtro è sempre necessario utilizzare un’istruzione EXISTS e l’interfaccia della modalità testo.
Per esempi di filtri, consulta la sezione Esempio 1: filtrare i problemi in base al nome del proprietario di Portfolio in questo articolo.
Per creare un filtro che si estenda su più livelli nella gerarchia degli oggetti:
-
Identifica l’oggetto del filtro. Questo oggetto viene definito oggetto originale.
Ad esempio, Problema. -
Identifica il campo in base al quale desideri filtrare. Questo oggetto viene definito campo di destinazione e appartiene a un oggetto di destinazione.
Ad esempio, il campo ownerID (Campo di destinazione), che appartiene a Portfolio (Oggetto di destinazione). -
(Condizionale) Se l’oggetto originale (problema) e il campo di destinazione (ownerID) non sono collegati direttamente tra loro, è necessario trovare un terzo oggetto, un oggetto di collegamento (progetto), che li colleghi. L’oggetto di collegamento deve disporre di almeno un campo a cui si fa riferimento dalle schede Campi o Riferimenti dell’oggetto originale (Campo di collegamento visualizzato nell’oggetto originale) e di un campo di collegamento all’oggetto di destinazione visualizzato nelle schede Campi o Riferimenti dell’oggetto di collegamento. Il campo di collegamento all’oggetto di destinazione visualizzato nell’oggetto di collegamento (o il campo di collegamento visualizzato nell’oggetto di collegamento) deve corrispondere al campo di destinazione.
Ad esempio, l’ID (Progetto) (Campo di collegamento visualizzato nell’oggetto originale) è referenziato da Problemi (oggetto originale). (Portfolio) ownerID (Linking Field to the Target Object) viene visualizzato nella scheda Fields del progetto (Linking Object). OwnerID di Portfolio è anche un campo sull’oggetto di destinazione (Portfolio). Il campo di collegamento nell’oggetto di collegamento corrisponde al campo di destinazione.
-
Utilizzando API Explorer, identificare il codice oggetto dell’oggetto di collegamento (progetto).
Ad esempio, il codice oggetto per Project è PROJ.
-
Creare un filtro per l’oggetto originale.
Ad esempio, crea un filtro Problema.
Per informazioni sulla creazione di filtri, vedere Panoramica sui filtri. -
Fare clic su Passa alla modalità testo, quindi su Modifica modalità testo.
-
Incolla il seguente esempio di formula nell’interfaccia della modalità testo del nuovo filtro e sostituisci il testo di esempio con gli oggetti e i campi corretti:
code language-none EXISTS:A:$$OBJCODE=<Object code of the Linking Object> EXISTS:A:<Linking Field on the Linking Object>=FIELD:<Linking Field displayed on the Original Object> EXISTS:A:<Target Object>:<Target Field>=<Your value for the Target Field>Per un esempio che utilizza i campi identificati in precedenza, consulta la sezione Esempio 1: filtrare i problemi in base al nome del proprietario di Portfolio in questo articolo.
-
Fai clic su Salva filtro.
Creare filtri in modalità testo complesso per gli oggetti mancanti
Puoi creare un filtro che faccia riferimento a oggetti mancanti. Ad esempio, puoi creare un filtro utenti che mostra quali utenti non hanno effettuato l’accesso a Workfront.
Per creare questo filtro è sempre necessario utilizzare un’istruzione EXISTS e l’interfaccia della modalità testo.
Per esempi di filtri per gli oggetti mancanti, vedi le sezioni seguenti in questo articolo:
Per creare un filtro che faccia riferimento a oggetti mancanti:
-
Identifica l’oggetto del filtro. Questo oggetto viene definito oggetto originale.
Ad esempio, Parametro o Campo personalizzato. -
Identifica il campo in base al quale desideri filtrare. Questo oggetto viene definito campo di destinazione e appartiene a un oggetto di destinazione.
Ad esempio, il campo categoryID (campo di destinazione), che appartiene a Categoria (oggetto di destinazione). -
Poiché l’oggetto originale (Parameter) e il campo di destinazione (categoryID) non sono collegati direttamente tra loro, è necessario trovare un terzo oggetto, un oggetto di collegamento (Parametro categoria), che li connette. L’oggetto di collegamento deve disporre di almeno un campo a cui si fa riferimento dalle schede Campi o Riferimenti dell’oggetto originale (Campo di collegamento visualizzato nell’oggetto originale) e di un campo di collegamento all’oggetto di destinazione visualizzato nelle schede Campi o Riferimenti dell’oggetto di collegamento. Il campo di collegamento all’oggetto di destinazione visualizzato nell’oggetto di collegamento (o il campo di collegamento visualizzato nell’oggetto di collegamento) deve corrispondere al campo di destinazione.
Ad esempio, l’ID del parametro Categoria (campo di collegamento visualizzato nell’oggetto originale) è referenziato da Parametro (oggetto originale). parameterID (Collegamento di un campo all’oggetto Target) viene visualizzato nella scheda Fields del parametro Category (Collegamento di un oggetto). Il campo di collegamento all’oggetto di destinazione visualizzato nell’oggetto di collegamento corrisponde al campo di destinazione.
-
Utilizzando l’API Explorer, identificare il codice oggetto dell’oggetto di collegamento (parametro categoria).
Ad esempio, il codice oggetto per il parametro di categoria è CTGYPA.
-
Creare un filtro per l’oggetto originale.
Ad esempio, crea un filtro Parametro.
Per informazioni sulla creazione di filtri, vedere Panoramica sui filtri. -
Fare clic su Passa alla modalità testo, quindi su Modifica modalità testo.
-
(Facoltativo) Se si applica un filtro per gli oggetti mancanti, incollare il seguente esempio di formula nell’interfaccia della modalità testo del nuovo filtro e sostituire il testo di esempio con gli oggetti e i campi corretti:
code language-none EXISTS:A:$$OBJCODE=<Object code of the Linking Object> EXISTS:A:<Linking Field displayed on the Linking Object>=FIELD:<Linking Field displayed on the Original Object> EXISTS:A:$$EXISTSMOD=NOTEXISTSPer un esempio di creazione di rapporti sui campi personalizzati non associati a Custom Forms, vedere la sezione Esempio 2: Filtro per gli oggetti mancanti: campi personalizzati non visualizzati in alcun modulo personalizzato in questo articolo.
-
Fai clic su Salva filtro.
Esempi di filtri in modalità testo che si estendono su più livelli nella gerarchia degli oggetti
Utilizzare questi esempi per creare filtri in modalità testo con istruzioni EXISTS.
Esempio 1: filtrare i problemi in base al nome del proprietario di Portfolio example-1-filter-for-issues-by-portfolio-owner-name
Utilizzando l’interfaccia in modalità testo, puoi creare un filtro per un elenco di problemi in modo da visualizzare solo i problemi che si trovano su progetti associati a un portfolio il cui proprietario è un utente specifico.
Per filtrare i problemi in base al nome del proprietario di Portfolio:
-
Creare un filtro Problema.
Per informazioni sulla creazione di filtri, vedere Panoramica sui filtri. -
Fare clic su Passa alla modalità testo, quindi su Modifica modalità testo.
-
Fai riferimento al seguente codice generico:
code language-none EXISTS:A:$$OBJCODE=<Object code of the Linking Object> EXISTS:A:<Linking Field on the Linking Object>=FIELD:<Linking Field displayed on the Original Object> EXISTS:A:<Target Object>:<Target Field>=<Your value for the Target Field> -
Incolla il seguente codice nell’area Imposta regole filtro per il report per sostituire il codice generico precedente:
code language-none EXISTS:A:$$OBJCODE=PROJ EXISTS:A:ID=FIELD:projectID EXISTS:A:portfolio:ownerID=4d94d7da001699b19edf50de15682221note NOTE - L’oggetto originale è l’oggetto del rapporto: Issue
- L'oggetto di destinazione è Portfolio.
- L'oggetto di collegamento è Progetto.
- Il campo di destinazione e il campo di collegamento all'oggetto di destinazione a cui si fa riferimento dall'oggetto di collegamento sono ownerID.
- Il codice oggetto dell'oggetto di collegamento è PROJ.
- Il campo di collegamento visualizzato nell'oggetto originale è projectID e il campo di collegamento è ID.
-
Sostituisci il valore del campo di destinazione (ownerID) nell’ultima istruzione con un ID utente del tuo ambiente.
-
Fai clic su Salva filtro.
Esempio 2: filtro per gli oggetti mancanti: campi personalizzati che non vengono visualizzati in alcun modulo personalizzato example-2-filter-for-missing-objects-custom-fields-that-do-not-appear-in-any-custom-forms
Tramite l’interfaccia in modalità testo, puoi creare un filtro per visualizzare i campi personalizzati (parametri) non associati a Forms personalizzato (categorie). Questo filtro collega i parametri alle categorie, che sono connesse tramite un altro oggetto, Parametro categoria. Poiché i due campi non sono collegati direttamente tra loro e si filtrano le informazioni mancanti, è necessario utilizzare un’istruzione EXISTS.
Per filtrare i campi personalizzati non associati a un modulo personalizzato:
-
Crea un filtro Parametro o Campo personalizzato.
Per informazioni sulla creazione di filtri, vedere Panoramica sui filtri. -
Fare clic su Passa alla modalità testo, quindi su Modifica modalità testo.
-
Fai riferimento al seguente codice generico:
code language-none EXISTS:A:$$OBJCODE=<Object code of the Linking Object> EXISTS:A:<Linking Field displayed on the Linking Object>=FIELD:<Linking Field displayed on the Original Object> EXISTS:A:$$EXISTSMOD=NOTEXISTS -
Incolla il seguente codice nell’area Imposta regole filtro per il report per sostituire il codice generico precedente:
code language-none EXISTS:A:$$OBJCODE=CTGYPA EXISTS:A:parameterID=FIELD:ID EXISTS:A:$$EXISTSMOD=NOTEXISTSnote NOTE - L'oggetto originale è l'oggetto del report: Parameter.
- L'oggetto di destinazione è Categoria.
- L'oggetto di collegamento è il parametro di categoria.
- Il codice Object dell'oggetto di collegamento è CTGYPA.
- Il campo di collegamento all'oggetto di destinazione è parameterID, perché parameterID esiste sia nella tabella oggetto di collegamento che nella tabella oggetto di destinazione.
- Il campo di collegamento visualizzato nell'oggetto originale è ID (del parametro Categoria).
-
Fai clic su Salva filtro.
Esempio 3: filtro per gli oggetti mancanti: utenti che non registrano il tempo per un determinato periodo di tempo example-3-filter-for-missing-objects-users-who-did-not-log-time-for-a-certain-period-of-time
Utilizzando l’interfaccia in modalità testo, puoi creare un filtro per visualizzare gli utenti che non hanno registrato il tempo per un determinato periodo di tempo. Questo filtro collega gli utenti alle ore, che sono collegate direttamente tra loro. Tuttavia, è necessario utilizzare un’istruzione EXISTS e l’interfaccia della modalità testo per poter filtrare le informazioni mancanti.
Per filtrare gli utenti che non hanno registrato l’ora durante la settimana scorsa:
-
Creare un filtro Utente.
Per informazioni sulla creazione di filtri, vedere Panoramica sui filtri. -
Fare clic su Passa alla modalità testo, quindi su Modifica modalità testo.
-
Fai riferimento al seguente codice generico:
code language-none EXISTS:A:$$OBJCODE=<Object code of the Linking Object> EXISTS:A:<Linking Field displayed on the Linking Object>=FIELD:<Linking Field displayed on the Original Object> EXISTS:A:$$EXISTSMOD=NOTEXISTS -
Incolla il seguente codice nell’area Imposta regole filtro per il report per sostituire il codice generico precedente:
code language-none EXISTS:A:$$OBJCODE=HOUR EXISTS:A:ownerID=FIELD:ID EXISTS:A:entryDate=$$TODAYb-1w EXISTS:A:entryDate_Range=$$TODAYe-1w EXISTS:A:entryDate_Mod=between EXISTS:A:$$EXISTSMOD=NOTEXISTSnote NOTE - L’oggetto originale è l’oggetto del rapporto: Utente.
- L'oggetto di destinazione è Ora.
- In questo esempio non è necessario un oggetto di collegamento perché Utenti e Ore sono connessi direttamente nel database di Workfront.
- Poiché non è presente alcun oggetto di collegamento, è necessario utilizzare il codice oggetto dell'oggetto di destinazione: HOUR.
- Il campo di collegamento all'oggetto di destinazione è ownerID (visualizzato sull'oggetto originale, mentre l'oggetto di collegamento risulta mancante).
- Il campo di collegamento visualizzato sull'oggetto originale è ID (dell'ora), ovvero viene visualizzato sull'oggetto di destinazione, mentre l'oggetto di collegamento risulta mancante.
- L'istruzione EXISTSentryDate fa riferimento ai campi che definiscono l'oggetto di destinazione (Hour) e utilizza la stessa sintassi utilizzata in un'istruzione di filtro regolare. In questo modo, verranno visualizzati solo gli utenti che non hanno registrato il tempo per un periodo di tempo specifico, in questo caso la settimana precedente.
- Il modificatore NOTEXISTS indica che si stanno cercando elementi (ore) che non esistono per l’oggetto del rapporto (Utenti).
-
Fai clic su Salva filtro.
Esempio 4: filtrare per più campi: attività per nome proprietario Portfolio e ID scorecard allineamento Portfolio example-4-filter-by-multiple-fields-tasks-by-portfolio-owner-name-and-portfolio-alignment-scorecard-id
Utilizzando l’interfaccia in modalità testo, puoi creare un filtro che fa riferimento a più di un campo sull’oggetto di destinazione. In questo caso, le istruzioni di filtro che fanno riferimento ai campi di destinazione devono essere collegate da AND.
È ad esempio possibile filtrare un elenco di attività in modo da visualizzare solo le attività che soddisfano i criteri seguenti:
- Si trovano in un progetto associato a un portfolio il cui proprietario è un utente specifico.
- Si trovano in un progetto associato a un portfolio i cui progetti non sono associati a una scorecard di allineamento specifica.
Per filtrare le attività in base al nome del proprietario di Portfolio e all’ID della scorecard di allineamento Portfolio:
-
Crea un filtro Attività.
Per informazioni sulla creazione di filtri, vedere Panoramica sui filtri. -
Fare clic su Passa alla modalità testo, quindi su Modifica modalità testo.
-
Incolla il seguente codice nell’area Imposta regole filtro per il report:
code language-none EXISTS:A:$$OBJCODE=PROJ EXISTS:A:ID=FIELD:projectID EXISTS:A:portfolio:ownerID=4d80ce5200000528787d57807732a33f AND:A:EXISTS:A:$$EXISTSMOD=NOTEXISTS AND:A:EXISTS:A:$$OBJCODE=PROJ AND:A:EXISTS:A:ID=FIELD:projectID AND:A:EXISTS:A:portfolio:alignmentScoreCardID=4da387b00001cbc732bb259355c33dadnote NOTE - L'oggetto originale è l'oggetto del filtro: Task.
- L'oggetto di destinazione è Portfolio.
- Il primo campo di destinazione è ownerID.
- Il secondo campo di destinazione è l’ID della scorecard di allineamento.
- L'oggetto di collegamento è Progetto.
- Il codice oggetto dell'oggetto di collegamento è PROJ.
- Il campo di collegamento all’oggetto di destinazione è l’ID (di Portfolio).
- Il campo di collegamento visualizzato nell'oggetto originale è projectID.
- Sostituisci ownerID con un ID utente del tuo ambiente.
-
Fai clic su Salva filtro.