Modalità esperto

Nota

  • Questa funzione è disponibile solo nelle istanze self-hosted e per gli utenti cloud con un pacchetto Plus.

  • Sono supportati fino a tre livelli di condizioni.

Abilitare la modalità esperto all’interno delle condizioni del tuo ticket ti permette di utilizzare gli operatori AND / OR / NOT per qualsiasi metodo supportato. Puoi decidere individualmente quale flusso di lavoro richiede questa configurazione avanzata. Questa sezione presuppone che tu abbia già dato un’occhiata alle basi.

Passaggio alla modalità esperto

Puoi abilitare o disabilitare la modalità esperto in qualsiasi schermata di condizione supportata. Per farlo, usa semplicemente l’interruttore modalità esperto in basso a destra sotto l’area condizioni per gli oggetti interessati.

Screencast che mostra l'abilitazione della modalità esperto nella finestra di dialogo del trigger

Condizioni dei blocchi logici

Nella modalità esperto di Zammad, puoi stabilire relazioni tra le condizioni utilizzando operatori logici. Questi operatori ti permettono di avere uno o più set di condizioni che devono corrispondere al tuo requisito.

Corrispondi a tutti (AND)

Tutte le condizioni in questo blocco verranno confrontate con «AND». Ciò richiede che tutte le condizioni siano soddisfatte per essere considerate positive.

Corrispondi a uno qualsiasi (OR)

Le condizioni in questo blocco verranno confrontate con «OR». Ciò richiede che una o più condizioni - ma non tutte - siano soddisfatte per essere considerate positive.

Non corrispondere a nessuno (NOT)

Tutte le condizioni in questo blocco verranno confrontate con «NOT». Per essere considerate positive, nessuna condizione deve corrispondere.

Vedi ordine di valutazione per capire come Zammad valuta i trigger in modalità esperto.

Aggiunta di condizioni e blocchi logici

Utilizzando l’icona Icona per aggiungere un nuovo blocco subclause puoi aggiungere nuovi blocchi logici. Nuovi blocchi verranno aggiunti sotto l’oggetto su cui stai utilizzando l’icona Icona per aggiungere un nuovo blocco subclause.

Il livello verrà automaticamente impostato a un livello inferiore rispetto all’oggetto su cui lo stai utilizzando.

Screencast che mostra l'aggiunta di nuovi blocchi logici

Lo stesso comportamento si applica anche alle condizioni all’interno dei blocchi logici!

Screencast che mostra l'aggiunta di nuove condizioni ai blocchi logici

Avvertimento

Nota che la rimozione dei blocchi di condizioni rimuove tutti i blocchi e le condizioni con essi!

Riordinare condizioni e blocchi logici

Usa la maniglia ≡ per trascinare condizioni o blocchi logici e rilasciarli nella posizione desiderata. Lo spostamento di blocchi logici sposterà anche qualsiasi condizione e, se applicabile, blocchi logici che si trovano sotto di esso.

Mentre puoi regolare l’ordine delle condizioni senza ulteriori blocchi logici, questo non avrà alcuna conseguenza.

Screencast che mostra il trascinamento e rilascio delle condizioni

Ordine di valutazione

Ecco un diagramma piuttosto complesso su come Zammad valuta le condizioni e i loro blocchi.

graph LR %% Hack for proper spacing, %% see https://github.com/mermaid-js/mermaid/issues/3779 classDef addSpacing margin:0,padding:0,display:none; subgraph ConditionCollection["Condition collection"] TL["Top level (match AND)"] TLA(Condition 1-1) TLB(Condition 1-2) subgraph SecondLevelA["2nd level A (match OR)"] x[" "]:::addSpacing SLA1(Condition 2-1) SLA2(Condition 2-2) subgraph ThirdLevelA["3rd level A (NO match)"] TLA1(Condition 3-1) TLA2(Condition 3-2) end subgraph ThirdLevelB["3rd level B (match AND)"] TLB1(Condition 3-3) TLB2(Condition 3-4) end end subgraph SecondLevelB["2nd level B (match AND)"] SLB1(Condition 2-3) SLB2(Condition 2-4) end end subgraph MTLA["Evaluate 3rd level A"] direction LR MTLA1[3-1] MTLA2[3-2] MTLA1 -- AND --- MTLA2 end subgraph MTLB["Evaluate 3rd level B"] direction LR MTLB1[3-3] MTLB2[3-4] MTLB1 -- AND --- MTLB2 end subgraph MSLC["Evaluate 2nd level A"] direction TB MTLC1[2-1] MTLC2[2-2] MTLC3[Negated <br> Result 3rd level A] MTLC4[Result 3rd level B] MTLC1 -- OR --- MTLC2 MTLC2 -- OR --- MTLC3 MTLC3 -- OR --- MTLC4 end subgraph MSLD["Evaluate 2nd level B"] direction LR MTLD1[2-3] MTLD2[2-4] MTLD1 -- AND --- MTLD2 end subgraph MFLA["Evaluate Top level"] direction TB MFLA1[1-1] MFLA2[1-2] MFLA3[Result 2nd level A] MFLA4[Result 2nd level B] MFLA1 -- AND --- MFLA2 MFLA2 -- AND --- MFLA3 MFLA3 -- AND --- MFLA4 end Finish["Condition result <br> (match / no match)"] TLA1 --> MTLA TLA2 --> MTLA TLB1 --> MTLB TLB2 --> MTLB MTLA ==> MSLC MTLB ==> MSLC SLA1 --> MSLC SLA2 --> MSLC SLB1 --> MSLD SLB2 --> MSLD TLA --> MFLA TLB --> MFLA MSLC ==> MFLA MSLD ==> MFLA MFLA ==> Finish