Modello

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

Modello runtime

I modelli di flusso di lavoro sono dotati di versione. Quando esegui un’istanza di flusso di lavoro, questa utilizza e mantiene il modello di runtime del flusso di lavoro, come disponibile al momento in cui il flusso di lavoro è stato avviato.

Un modello runtime è generato quando Sync viene attivato nell'editor modelli flusso di lavoro.

Le modifiche al modello di flusso di lavoro che si verificano o ai modelli di runtime generati, o a entrambi, dopo l'avvio dell'istanza specifica non vengono applicate a tale istanza.

ATTENZIONE
I passaggi eseguiti sono definiti dal modello di runtime, generato al momento dell'attivazione dell'azione Sync nell'editor modelli di flusso di lavoro.
Se il modello di flusso di lavoro viene modificato dopo questo momento (senza che Sync venga attivato), l'istanza di runtime non riflette tali modifiche. Solo i modelli di runtime generati dopo l’aggiornamento riflettono le modifiche. Le eccezioni sono gli script ECMA sottostanti, che vengono mantenuti una sola volta in modo che tali modifiche vengano apportate.

Passaggio

Ogni fase esegue un'attività discreta. Esistono diversi tipi di passaggi del flusso di lavoro:

  • Partecipante (utente/gruppo): questi passaggi generano un elemento di lavoro e lo assegnano a un utente o a un gruppo. Per far avanzare il flusso di lavoro, l’utente deve completare l’elemento di lavoro.
  • Processo (script, chiamata al 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 speciali del flusso di lavoro ed eseguire attività in base alla logica di business.
  • Contenitore (flusso di lavoro secondario): questo tipo di passaggio avvia un altro modello di flusso di lavoro.
  • OR Split/Join: utilizza la logica per decidere quale passaggio eseguire successivamente nel flusso di lavoro.
  • AND Split/Join: consente l'esecuzione simultanea di più passaggi.

Tutti i passaggi condividono le seguenti proprietà comuni: Autoadvance e Timeout avvisi (scriptable).

Transizione

Un WorkflowTransition rappresenta una transizione tra due WorkflowNodes di un WorkflowModel.

  • Definisce il collegamento tra due passaggi consecutivi.
  • È possibile applicare delle regole.

Elemento di lavoro

Un WorkItem è l'unità passata tramite un'istanza Workflow di un WorkflowModel. Contiene WorkflowData su cui agisce l'istanza e un riferimento a WorkflowNode che descrive il passaggio del flusso di lavoro sottostante.

  • Viene utilizzato per identificare l’attività e viene inserito nella rispettiva casella in entrata.
  • Un'istanza di flusso di lavoro può avere uno o più WorkItems contemporaneamente (a seconda del modello di flusso di lavoro).
  • WorkItem fa riferimento all'istanza del flusso di lavoro.
  • Nell'archivio, WorkItem è memorizzato sotto l'istanza del flusso di lavoro.

Payload

Fa riferimento alla risorsa che deve essere avanzata 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 è flessibile e produttivo, con sling produttivo. Ad esempio, è possibile eseguire il rendering del nodo a cui si fa riferimento come modulo.

Ciclo di vita

Viene creato all’avvio di un nuovo flusso di lavoro (scegliendo il rispettivo modello di flusso di lavoro e definendo il payload) e termina quando il nodo finale viene elaborato.

In un’istanza di flusso di lavoro sono possibili le seguenti azioni:

  • 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 sono accessibili i WorkItems assegnati.

I WorkItems sono assegnati direttamente all'account utente o al gruppo a cui appartengono.

Tipi di flusso di lavoro

Esistono vari tipi di flusso di lavoro, come indicato nella console Modelli di flusso di lavoro:

wf-upgrade-03

  • Predefinito

    Questi tipi sono i flussi di lavoro predefiniti inclusi in un’istanza AEM standard.

  • Flussi di lavoro personalizzati (nessun indicatore nella console)

    Questi flussi di lavoro sono stati creati come nuovi o da flussi di lavoro predefiniti che sono stati sovrapposti con le personalizzazioni.

  • Legacy

    Flussi di lavoro creati in una versione precedente dell’AEM. Questi flussi di lavoro possono essere mantenuti durante un aggiornamento, oppure esportati come pacchetto di flusso di lavoro dalla versione precedente, quindi importati nella nuova versione.

Flussi di lavoro transitori

I flussi di lavoro standard salvano le informazioni di runtime (cronologia) durante l’esecuzione. Puoi anche definire un modello di flusso di lavoro come Transitorio per evitare che la cronologia venga mantenuta. Questo flusso di lavoro viene utilizzato per l'ottimizzazione delle prestazioni, in quanto consente di risparmiare tempo e risorse utilizzati per la persistenza delle informazioni.

I flussi di lavoro transitori possono essere utilizzati per qualsiasi flusso di lavoro che:

  • vengono eseguiti spesso.
  • non è necessaria la cronologia del flusso di lavoro.

Sono stati introdotti flussi di lavoro transitori per il caricamento di molte risorse, in cui le informazioni sulle risorse sono importanti, ma non la cronologia di runtime del flusso di lavoro.

NOTA
Per ulteriori dettagli, vedere Creazione di un flusso di lavoro transitorio.
ATTENZIONE
Quando un modello di flusso di lavoro è contrassegnato come transitorio, esistono alcuni scenari in cui le informazioni di runtime devono essere ancora persistenti:
  • Il tipo di payload (ad esempio, video) richiede passaggi esterni per l’elaborazione; in questi casi, per la conferma dello stato è necessaria la cronologia di runtime.
  • Il flusso di lavoro immette una suddivisione AND. In questi casi, per la conferma dello stato è necessaria la cronologia di runtime.
  • Quando il flusso di lavoro transitorio entra in un passaggio partecipante, in fase di esecuzione passa alla modalità non transitorio. Poiché l’attività viene passata a una persona, la cronologia deve essere persistente.
ATTENZIONE
All'interno di un flusso di lavoro transitorio, non utilizzare un Passaggio precedente.
Il motivo è che il passaggio Vai crea un processo Sling per continuare il flusso di lavoro al punto goto. Tale operazione vanifica lo scopo di rendere transitorio il flusso di lavoro e genera un errore nel file di registro.
Utilizza OR Split per effettuare scelte all'interno di un flusso di lavoro transitorio.
NOTA
Consulta Best practice per Assets per ulteriori informazioni sull'impatto dei flussi di lavoro transitori sulle prestazioni delle risorse.