Show Menu
ARGOMENTI×

Sviluppo ed estensione dei flussi di lavoro

AEM offre diversi strumenti e risorse per la creazione di modelli di workflow, lo sviluppo di passaggi di workflow e l’interazione programmatica con i flussi di lavoro.
I flussi di lavoro consentono di automatizzare i processi per la gestione delle risorse e la pubblicazione dei contenuti nell’ambiente AEM. I flussi di lavoro sono composti da una serie di passaggi, ciascuno dei quali esegue un'attività discreta. È possibile utilizzare i dati di logica e runtime per decidere quando continuare un processo e selezionare il passaggio successivo da uno dei diversi passaggi possibili.
Ad esempio, i processi aziendali per la creazione e la pubblicazione di pagine Web includono le attività di approvazione e di disconnessione di vari partecipanti. Questi processi possono essere modellati utilizzando i flussi di lavoro AEM e applicati a contenuti specifici.
Gli aspetti chiave sono trattati di seguito, mentre le pagine seguenti descrivono ulteriori dettagli:
Per informazioni su:

Modello

Un elemento WorkflowModel rappresenta una definizione (modello) di un flusso di lavoro. È fatta di WorkflowNodes e WorkflowTransitions . Le transizioni collegano i nodi e definiscono il flusso . Il modello ha sempre un nodo iniziale e un nodo finale.

Modello runtime

I modelli di workflow sono dotati di versioni. Quando si esegue un'istanza di workflow, verrà utilizzato (e mantenuto) il modello runtime del flusso di lavoro (come disponibile al momento dell'avvio del flusso di lavoro).
Un modello runtime viene generato quando si attiva la del modello di workflow.
Le modifiche al modello di flusso di lavoro che si verificano e/o ai modelli di runtime generati, dopo l'avvio dell'istanza specifica non verranno applicate all'istanza.
Le fasi eseguite sono quelle definite dal modello Sincronizzazione del flusso di lavoro - Generazione di un modello runtime runtime; questo viene generato al momento dell'attivazione dell'azione Sinc nell'editor del modello di workflow.
Se il modello del flusso di lavoro viene modificato dopo questo momento (senza attivare la sincronizzazione ), l'istanza runtime non riflette tali modifiche. Solo i modelli di runtime generati dopo l'aggiornamento rifletteranno le modifiche. Le eccezioni sono gli script ECMA sottostanti, che vengono conservati solo una volta apportate le modifiche.

Incremento

Ciascun passaggio esegue un task discreto. Esistono diversi tipi di passaggi per il flusso di lavoro:
  • Partecipante (utente/gruppo): Questi passaggi generano un elemento di lavoro e lo assegnano a un utente o a un gruppo. Un utente deve completare l’elemento di lavoro per far avanzare il flusso di lavoro.
  • Processo (script, chiamata del metodo Java): Questi passaggi vengono eseguiti automaticamente dal sistema. Uno script ECMA o una classe Java implementa il passaggio. I servizi possono essere sviluppati per ascoltare eventi di flusso di lavoro speciali ed eseguire attività in base alla logica aziendale.
  • Contenitore (flusso di lavoro secondario): Questo tipo di passaggio avvia un altro modello di workflow.
  • O Dividi/Unisci: Utilizzare la logica per decidere quale passaggio eseguire successivamente nel flusso di lavoro.
  • Dividi/Iscriviti: Consente l'esecuzione simultanea di più passaggi.
Tutti i passaggi condividono le seguenti proprietà comuni: Autoadvance e Timeout avvisi (script).

Transizione

Un WorkflowTransition rappresenta una transizione tra due WorkflowNodes di WorkflowModel .
  • Definisce il collegamento tra due passaggi consecutivi.
  • È possibile applicare delle regole.

Elemento di lavoro

Un WorkItem è l'unità che viene passata attraverso un' Workflow istanza di un WorkflowModel . Contiene il WorkflowData fatto che l’istanza agisce e un riferimento al passaggio del flusso di lavoro sottostante WorkflowNode che descrive il passaggio del flusso di lavoro sottostante.
  • Viene utilizzato per identificare l’attività e viene inserito nella rispettiva inbox.
  • Un’istanza di workflow può avere uno o più WorkItems contemporaneamente (a seconda del modello di workflow).
  • Fa riferimento WorkItem all’istanza del flusso di lavoro.
  • Nella directory archivio il file WorkItem viene memorizzato sotto l’istanza del flusso di lavoro.

Payload

Fa riferimento alla risorsa da aggiornare tramite un flusso di lavoro.
L'implementazione del payload fa riferimento a una risorsa nell'archivio (per percorso, UUID o URL) o da un oggetto Java serializzato. Il riferimento a una risorsa nell'archivio è molto flessibile e in combinazione con l'imbragatura molto produttiva; ad esempio, è possibile eseguire il rendering del nodo di riferimento come modulo.

Ciclo

Viene creato quando si avvia un nuovo flusso di lavoro (scegliendo il modello di flusso di lavoro corrispondente e definendo il payload) e termina quando viene elaborato il nodo finale.
In un’istanza del flusso di lavoro è possibile effettuare le seguenti operazioni:
  • Termina
  • Sospendi
  • Riprendi
  • Riavvia
Le istanze completate e terminate vengono archiviate.

Casella in entrata

Ogni account utente dispone di una propria casella in entrata del flusso di lavoro in cui WorkItems sono accessibili le relative risorse.
Le proprietà WorkItems vengono assegnate direttamente all'account utente o al gruppo al quale appartengono.

Tipi di flussi di lavoro

Esistono vari tipi di flussi di lavoro, come indicato nella console Modelli flusso di lavoro:
  • Impostazione predefinita
    Questi sono i flussi di lavoro forniti con il prodotto, inclusi in un’istanza standard di AEM.
  • Flussi di lavoro personalizzati (nessun indicatore nella console)
    Si tratta di flussi di lavoro creati come nuovi o da flussi di lavoro forniti con le personalizzazioni.
  • Legacy
    Flussi di lavoro creati con una versione precedente di AEM. Questi possono essere mantenuti durante un aggiornamento o esportati come pacchetto di workflow dalla versione precedente, quindi importati nella nuova versione.

Flussi di lavoro transitori

I flussi di lavoro standard salvano le informazioni di runtime (cronologia) durante la loro esecuzione. Potete anche definire un modello di workflow come Temporaneo per evitare che tale cronologia venga mantenuta. Questa funzione è utilizzata per ottimizzare le prestazioni in modo da risparmiare/evitare il tempo/le risorse utilizzati per mantenere le informazioni.
I flussi di lavoro transitori possono essere utilizzati per qualsiasi flusso di lavoro che:
  • vengono eseguite spesso.
  • non è necessaria la cronologia del flusso di lavoro.
Sono stati introdotti flussi di lavoro transitori per il caricamento di un gran numero di risorse, dove le informazioni sulle risorse sono importanti, ma non la cronologia del runtime del flusso di lavoro.
Per ulteriori informazioni, consultate Creazione di un flusso di lavoro transitorio.
Quando un modello di workflow è stato contrassegnato come Temporaneo, esistono alcuni scenari in cui le informazioni di runtime rimarranno persistenti:
  • Il tipo di payload (ad esempio, video) richiede passaggi esterni per l'elaborazione; in tali casi, la cronologia del runtime è necessaria per la conferma dello stato.
  • Il flusso di lavoro entra in un AND Split ; in tali casi, la cronologia del runtime è necessaria per la conferma dello stato.
  • Quando il flusso di lavoro transitorio entra in un passaggio partecipante, cambia la modalità (in fase di esecuzione) in non transitoria; mentre l'attività viene passata a una persona, la storia deve essere persistente
All'interno di un flusso di lavoro transitorio non è necessario utilizzare un passaggio Goto.
Questo accade perché Goto Step crea un processo Sling per continuare il flusso di lavoro al goto punto. In questo modo viene ignorato lo scopo di rendere il flusso di lavoro transitorio e viene generato un errore nel file di registro.
Per prendere decisioni in un flusso di lavoro transitorio è possibile utilizzare la divisione ​OR.
Per ulteriori informazioni sull’impatto dei flussi di lavoro transitori sulle prestazioni delle risorse, consultate Best practice per le risorse .

Supporto risorse multiple

Attivando il supporto per risorse multiple per il modello di flusso di lavoro, verrà avviata una singola istanza del flusso di lavoro anche quando si selezionano più risorse; verranno allegati come pacchetto.
Se il supporto per risorse multiple non è attivato per il modello di flusso di lavoro e sono selezionate più risorse, verrà avviata una singola istanza del flusso di lavoro per ciascuna risorsa.
Per ulteriori informazioni, consulta Configurazione di un flusso di lavoro per Supporto risorse multiple.

Fasi del flusso di lavoro

Le fasi del flusso di lavoro consentono di visualizzare l’avanzamento di un flusso di lavoro durante la gestione delle attività. Possono essere utilizzati per fornire una panoramica della portata del flusso di lavoro attraverso l'elaborazione, ad esempio quando il flusso di lavoro viene eseguito, l'utente può visualizzare i progressi descritti da Stage (anziché da un singolo passaggio).
Poiché i singoli nomi dei passaggi possono essere specifici e tecnici, i nomi degli stage possono essere definiti per fornire una visione concettuale dell’avanzamento del flusso di lavoro.
Ad esempio, per un flusso di lavoro con sei fasi e quattro fasi:
    • È possibile creare più nomi di fase.
    • A ogni passaggio viene quindi assegnato un singolo nome di fase (un nome di fase può essere assegnato a uno o più passaggi).
    Nome passo
    Stage (assegnato al passaggio)
    Passaggio 1
    Crea
    Passaggio 2
    Crea
    Passaggio 3
    Recensione
    Passaggio 4
    Approva
    Passaggio 5
    Completa
    Passaggio 6
    Completa
  1. Quando il flusso di lavoro viene eseguito, l'utente può visualizzare l'avanzamento in base ai nomi dello stage (invece dei nomi dei passaggi). L'avanzamento del flusso di lavoro verrà visualizzato nella scheda WORKFLOW INFO della finestra dei dettagli dell'attività dell'elemento di lavoro elencato nella Casella in entrata .

Flussi di lavoro e moduli

In genere, i flussi di lavoro vengono utilizzati per elaborare gli invii di moduli in AEM. Può trattarsi dei componenti core dei componenti modulo disponibili in un’istanza standard di AEM o con la soluzione Flusso di lavoro incentrato sui moduli in OSGi AEM Forms.
Durante la creazione di un nuovo modulo, l'invio del modulo può essere facilmente associato a un modello di workflow; ad esempio per memorizzare il contenuto in una determinata posizione dell'archivio o per notificare all'utente l'invio del modulo e il relativo contenuto.

Flussi di lavoro e traduzione

I flussi di lavoro sono anche parte integrante del processo di traduzione .