Versione | Collegamento articolo |
---|---|
AEM as a Cloud Service | Fai clic qui |
AEM 6.5 | Questo articolo |
Una variabile in un modello di flusso di lavoro è un modo per memorizzare un valore in base al relativo tipo di dati. Puoi quindi utilizzare il nome della variabile in qualsiasi passaggio del flusso di lavoro per recuperare il valore memorizzato nella variabile. È inoltre possibile utilizzare i nomi delle variabili per definire le espressioni per l'adozione delle decisioni di instradamento.
Nei modelli di flusso di lavoro dell’AEM puoi effettuare le seguenti operazioni:
Il video seguente illustra come creare, impostare e utilizzare le variabili nei modelli di flusso di lavoro AEM:
Le variabili sono un'estensione del MetaDataMap di rete. È possibile utilizzare MetaDataMap in ECMAScript per accedere ai metadati salvati utilizzando variabili.
Puoi creare le variabili utilizzando la sezione Variabili disponibile nella barra laterale del modello di flusso di lavoro. Le variabili del flusso di lavoro AEM supportano i seguenti tipi di dati:
I flussi di lavoro supportano solo il formato ISO8601 per le variabili di tipo Data.
Hai bisogno di Pacchetto del componente aggiuntivo AEM Forms per i tipi di dati Documento e Modello dati modulo. Utilizzare il tipo di dati ArrayList per creare raccolte di variabili. È possibile creare una variabile ArrayList per tutti i tipi di dati primitivi e complessi. Ad esempio, crea una variabile ArrayList e seleziona Stringa come sottotipo per memorizzare più valori stringa utilizzando la variabile.
Per creare una variabile, effettua le seguenti operazioni:
In un’istanza AEM, passa a Strumenti > Workflow > Modelli.
Seleziona Crea e specifica il titolo e un nome facoltativo per il modello di flusso di lavoro. Seleziona il modello e seleziona Modifica.
Seleziona l’icona delle variabili disponibile nella barra laterale del modello di flusso di lavoro e seleziona Aggiungi variabile.
Nella finestra di dialogo Aggiungi variabile, specifica il nome e seleziona il tipo di variabile.
Seleziona il tipo di dati dalla Tipo e specificare i seguenti valori:
Specifica una descrizione facoltativa per la variabile e seleziona per salvare le modifiche. La variabile viene visualizzata nell’elenco disponibile nel riquadro a sinistra.
Quando crei delle variabili, prendi in considerazione le seguenti procedure:
È possibile utilizzare il passo Imposta variabile per impostare il valore di una variabile e definire l'ordine in cui i valori vengono impostati. La variabile viene impostata nell’ordine in cui le mappature delle variabili sono elencate nel passaggio Imposta variabile.
Le modifiche ai valori delle variabili influiscono solo sull'istanza del processo in cui si verifica la modifica. Ad esempio, quando viene avviato un flusso di lavoro e i dati delle variabili cambiano, le modifiche influiscono solo su tale istanza del flusso di lavoro. Le modifiche non influiscono su altre istanze del flusso di lavoro avviate in precedenza o in un secondo momento.
A seconda del tipo di dati della variabile, puoi utilizzare le seguenti opzioni per impostare il valore di una variabile:
Valore letterale: Utilizza l’opzione quando conosci il valore esatto da specificare.
Espressione: Utilizza l’opzione quando il valore da utilizzare viene calcolato in base a un’espressione. L’espressione viene creata nell’editor di espressioni fornito.
Notazione in punti JSON: Utilizza l’opzione per recuperare un valore da una variabile di tipo JSON o FDM.
XPATH: Utilizzare l'opzione per recuperare un valore da una variabile di tipo XML.
Relativo al payload: Utilizza l’opzione quando il valore da salvare nella variabile è disponibile in un percorso relativo al payload.
Percorso assoluto: Utilizza l’opzione quando il valore da salvare nella variabile è disponibile in un percorso assoluto.
È inoltre possibile aggiornare elementi specifici di una variabile di tipo JSON o XML utilizzando la notazione JSON DOT o XPATH.
Per aggiungere la mappatura tra le variabili, effettua le seguenti operazioni:
Selezionare una variabile di tipo XML per memorizzare un file XML. Eseguire una query sulla variabile XML per impostare il valore di una variabile stringa per la proprietà disponibile nel file XML. Utilizzare Specifica XPATH per la variabile XML per definire la proprietà da memorizzare nella variabile stringa.
In questo esempio, seleziona un formdata Variabile XML in cui memorizzare cc-app.xml file. Eseguire una query su formdata variabile per impostare il valore per indirizzo e-mail variabile stringa per memorizzare il valore per emailAddress proprietà disponibile in cc-app.xml file.
Utilizza un’espressione per calcolare la somma delle variabili e memorizzare il risultato in una variabile.
In questo esempio, utilizza l’editor espressioni per definire un’espressione per calcolare la somma di assetscost e balanceamount e archiviare il risultato in totalvalue variabile.
Puoi anche utilizzare le espressioni per calcolare il valore di una variabile in fase di esecuzione. Le variabili forniscono un editor di espressioni per definire le espressioni.
Utilizza l’editor di espressioni per:
Si basa sull’editor di regole per moduli adattivi con le seguenti modifiche. Editor regole nelle variabili:
Per ulteriori informazioni, consulta editor di regole per moduli adattivi.
È possibile utilizzare le variabili per recuperare input e output o salvare il risultato di un passaggio. L’editor del flusso di lavoro fornisce due tipi di passaggi del flusso di lavoro:
Il passaggio Vai a, il passaggio di suddivisione OR e tutti i passaggi del flusso di lavoro di AEM Forms supportano le variabili.
La suddivisione OR crea una suddivisione nel flusso di lavoro, dopo la quale è attivo un solo ramo. Questo passaggio ti consente di introdurre nel flusso di lavoro i percorsi di elaborazione condizionale. Puoi aggiungere i passaggi del flusso di lavoro a ogni ramo in base alle esigenze.
È possibile definire un'espressione di indirizzamento per un ramo utilizzando una definizione di regola, uno script ECMA o uno script esterno.
È possibile utilizzare le variabili per definire l’espressione di indirizzamento utilizzando l’editor di espressioni. Per ulteriori informazioni sull'utilizzo delle espressioni di instradamento per la fase di suddivisione OR, vedere O Dividi passaggio.
In questo esempio, prima di definire l'espressione di instradamento, utilizzate esempio 2 per impostare il valore per totalvalue variabile. Il ramo 1 è attivo se il valore della proprietà totalvalue è maggiore di 50000. Allo stesso modo, puoi definire una regola per rendere attivo il Ramo 2 se il valore di totalvalue è minore di 50000.
Analogamente, selezionate un percorso di script esterno o specificate lo script ECMA per instradare le espressioni per valutare il ramo attivo. Seleziona Rinomina ramo per specificare un nome alternativo per la filiale.
Per ulteriori esempi, consulta Creare un modello di flusso di lavoro.
Il Vai al passaggio consente di specificare il passaggio successivo nel modello di flusso di lavoro da eseguire, a seconda del risultato di un'espressione di instradamento.
Analogamente alla fase di suddivisione OR, potete definire l'espressione di indirizzamento per la fase Vai a (Goto) utilizzando una definizione di regola, uno script ECMA o uno script esterno.
È possibile utilizzare le variabili per definire l’espressione di indirizzamento utilizzando l’editor di espressioni. Per ulteriori informazioni sull'utilizzo delle espressioni di instradamento per la fase Vai a, vedere Vai al passaggio.
In questo esempio, il passo Vai a specifica il passo successivo Verifica richiesta carta di credito se il valore per azione intrapresa la variabile è uguale a Ulteriori informazioni necessarie.
Per ulteriori esempi sull'utilizzo della definizione delle regole nel passaggio Vai a, vedi Simulazione di un ciclo For.
Tutti i passaggi di AEM Forms Workflow supportano le variabili. Per ulteriori informazioni, consulta Flusso di lavoro incentrato su Forms su OSGi.
È possibile utilizzare MetaDataMap per accedere alle variabili nei passaggi del flusso di lavoro che non supportano le variabili.
Utilizza le seguenti API nello script ECMA per recuperare i valori per le variabili esistenti in base al tipo di dati:
Tipo di dati variabile | API |
---|---|
Primitiva (Long, Double, Boolean, Date e String) | workItem.getWorkflowData().getMetaDataMap().get(variableName, type) |
Documento | Packages.com.adobe.aemfd.docmanager.Document doc = workItem.getWorkflowData().getMetaDataMap().get("docVar", Packages.com.adobe.aemfd.docmanager.Document.class); |
XML | Packages.org.w3c.dom.Document xmlObject = workItem.getWorkflowData().getMetaDataMap().get(variableName, Packages.org.w3c.dom.Document.class); |
Modello dati modulo | Packages.com.adobe.aem.dermis.api.FormDataModelInstance fdmObject = workItem.getWorkflowData().getMetaDataMap().get(variableName, Packages.com.adobe.aem.dermis.api.FormDataModelInstance.class); |
JSON | Packages.com.google.gson.JsonObject jsonObject = workItem.getWorkflowData().getMetaDataMap().get(variableName, Packages.com.google.gson.JsonObject.class); |
Hai bisogno di Pacchetto del componente aggiuntivo AEM Forms per i tipi di dati delle variabili Document e Form Data Model.
Esempio
Recupera il valore del tipo di dati stringa utilizzando la seguente API:
workItem.getWorkflowData().getMetaDataMap().get(accname, Packages.java.lang.String)
Utilizza la seguente API nello script ECMA per aggiornare il valore di una variabile:
workItem.getWorkflowData().getMetaDataMap().put(variableName, value)
Esempio
workItem.getWorkflowData().getMetaDataMap().put(salary, 50000)
aggiorna il valore per stipendio variabile da 50000.
Puoi utilizzare un’API per impostare le variabili e trasmetterle alle istanze del flusso di lavoro.
workflowSession.startWorkflow utilizza model, wfData e metaData come argomenti. Utilizza MetaDataMap per impostare il valore della variabile.
In questa API, il variableName variabile impostata su valore utilizzando metaData.put(variableName, value);
import com.adobe.granite.workflow.model.WorkflowModel;
import com.adobe.granite.workflow.metadata.MetaDataMap;
import com.adobe.aemfd.docmanager.Document;
/*Assume that you already have a workflowSession and modelId along with the payloadType and payload*/
WorkflowData wfData = workflowSession.newWorkflowData(payloadType, payload);
MetaDataMap metaData = wfData.getMetaDataMap();
metaData.put(variableName, value); //Create a variable "variableName" in your workflow model
WorkflowModel model = workflowSession.getModel(modelId);
workflowSession.startWorkflow(model, wfData, metaData);
Esempio
Inizializzare doc oggetto documento su un percorso ("a/b/c") e impostare il valore del docVar al percorso memorizzato nell'oggetto documento.
import com.adobe.granite.workflow.WorkflowSession;
import com.adobe.granite.workflow.exec.WorkflowData;
import com.adobe.granite.workflow.model.WorkflowModel;
import com.adobe.granite.workflow.metadata.MetaDataMap;
import com.adobe.aemfd.docmanager.Document;
/*This example assumes that you already have a workflowSession and modelId along with the payloadType and payload */
WorkflowData wfData = workflowSession.newWorkflowData(payloadType, payload);
MetaDataMap metaData = wfData.getMetaDataMap();
Document doc = new Document("/a/b/c");// initialize a document object
metaData.put("docVar",doc); //Assuming that you have created a variable "docVar" of type Document in your workflow model
WorkflowModel model = workflowSession.getModel(modelId);
workflowSession.startWorkflow(model, wfData, metaData);
I dati trattati con il Forms Workflow possono contenere dati utente sensibili, come informazioni personali identificabili e informazioni personali riservate. Le aziende possono scegliere di archiviare i dati, elaborati da vari passaggi del flusso di lavoro (e trasmessi utilizzando le variabili del flusso di lavoro), dall’archiviazione JCR a un archivio dati esterno di loro proprietà e gestito. Per ulteriori informazioni sulla persistenza dei dati del flusso di lavoro in un archivio esterno, consulta Utilizzo delle variabili del flusso di lavoro per i datastore di proprietà del cliente.
Adobe Experience Manager fornisce API per flussi di lavoro UserMetaDataPersistenceProvider per memorizzare le variabili del flusso di lavoro negli archivi BLOB di Azure esterni. Per informazioni dettagliate sull’utilizzo dell’API, consulta Utilizza le variabili del flusso di lavoro per parametrizzare i dati sensibili e archiviarli in archivi di dati esterni.
Prima di eliminare la variabile, rimuovi tutti i riferimenti della variabile dal flusso di lavoro. Assicurati che la variabile non venga utilizzata nel flusso di lavoro.
Per eliminare una variabile, effettua le seguenti operazioni:
Per ulteriori esempi sull’utilizzo delle variabili nei passaggi del flusso di lavoro di AEM Forms, consulta Variabili nei flussi di lavoro AEM.