Table of Contents |
---|
Grafico del flusso
Descrizione
Il flusso researchCentre-flow è un flusso centralizzato per il censimento di un Centro di ricerca che viene gestito dalle strutture d'Ateneo.Questo flusso prevede i seguenti attori nelle diverse visioni.
- Visione completa
- Helpdesk - HD
Team con profilo "Helpdesk Centri di Ricerca"
- Helpdesk - HD
- Visione dipartimentale
- Organi dipartimentali - OD
Team con la seguente naming convention "Profilo di dipartimento per XXX", dove XXX è il nome del dipartimento
- Organi dipartimentali - OD
- Visione personale
- Responsabili scientifici - RS
Persona appartenente al team "Utenti", che compare tra i responsabili del Centro di ricerca.
Cfr modello dati TAB Strutture e persone partecipanti
- Responsabili scientifici - RS
E' previsto un automatismo che aggiunge automaticamente il dipartimento a partire dall'afferenza del responsabile scientifico.
Per maggiori dettagli fare riferimento alla logica di start wfStartLogicMultipleOwners
Etichette Stati
I nomi degli stati possono essere personalizzati con la funzione di Gestione etichette.
Nella tabella sottostante vengono riportati tutti gli stati previsti dal flusso con relativa etichetta e valore di default.
Vengono anche fornite le etichette per i vari bottoni che consentono lo spostamento di stato.
Di default venegono utilizzate le etichette dei bottoni per lo stato successivo, è possibile configurare il flusso in maniera tale da utlizzare anche le etichette dei bottoni per lo stato precedente.
Esempio di utilizzo: l'oggetto si trova nello stato in attesa di essere validato, i possibili stati di cambio sono bozza e operativo. Il bottone per lo stato operativo utilizzerà l'etichetta per lo stato successivo, mentre il bottone per lo stato bozza utilizzerà l'etichetta per lo stato precedente.
Identificativo stato | Chiave etichetta stato | Valore default stato | Etichetta del bottone stato successivo | Etichetta del bottone stato precedente | Valore etichetta del bottone stato successivo | Valore etichetta del bottone stato precedente |
---|---|---|---|---|---|---|
draft | wfState.rsc.draft | Bozza | button.forward.to.rsc.draft | button.backward.to.rsc.draft | Salva e invia in "Bozza" | Salva e invia in "Bozza" |
approved | wfState.rsc.approved | Approvato | button.forward.to.rsc.approved | button.backward.to.rsc.approved | Salva e invia in "Approvato" | Salva e invia in "Approvato" |
reopened | wfState.rsc.reopened | Riaperto | button.forward.to.rsc.reopened | button.backward.to.rsc.reopened | Salva e invia in "Riaperto" | Salva e invia in "Riaperto" |
Anchor | ||||
---|---|---|---|---|
|
Modello Dati
Il dettaglio del modello dati associato a questo flusso è disponibile alla seguente pagina Produzione - Modello dati (researchCentre - RSC)
Anchor | ||||
---|---|---|---|---|
|
Configurazioni
Le configurazioni associate a questo flusso sono disponibili alla seguente pagina: Produzione - IRIS AP-RM Configurazioni: Centri di ricerca (researcCentre - RSC)
Anchor | ||||
---|---|---|---|---|
|
Permessi
Nella seguente sezione viene riportato il dettaglio dei permessi e delle transizioni di stato possibili per tutti gli attori del flusso.
Per quanto riguarda le transizioni di stato vengono riportati gli identificativi degli stati verso i quali è possibile effettuare la transizione.
Quando viene riportato il marcatore "__PREVIOUS_STATE__" significa che la transizione di stato è consentita verso lo stato precedente.
Di seguito la legenda dei permessi:
- c: create (disponibile solo per il primo stato del flusso)
- r: read
- w: write
- d: delete
- f: forward
Stato | Attori | Permessi | Transizioni | Tab |
---|---|---|---|---|
Bozza (draft) | Helpdesk (helpdesk) | c r w d f | approved | |
Approvato (approved) | Helpdesk (helpdesk) | r f | reopened | |
Organi dipartimentali (department) | r | none | ||
Responsabile/Proprietario (owner) | r | none | ||
Riaperto (reopened) | Helpdesk (helpdesk) | r w d f | approved | |
Organi dipartimentali (department) | r | none | ||
Responsabile/Proprietario (owner) | r | none |
Validazioni
Nella seguente sezione viene riportato il dettaglio delle validazioni per tutte le coppie (attore, stato) del flusso.
Le validazioni sono distinte nei seguenti macrotipi e sono riferite, se non specificato altrimenti, all'oggetto radice.
- enter: validazione applicata in ingresso nello stato
La transizione in ingresso viene NEGATA se anche solo una validazione NON viene superata con successo. - save: validazione applicata ad ogni salvataggio e quindi anche per ogni spostamento di TAB
Il salvataggio viene NEGATO se anche solo una validazione NON viene superata con successo. - delete: validazione applicata in fase di eliminazione di un oggetto radice
- element: validazione applicata agli elementi figli di un oggetto radice
- permissions: logiche di generazione dinamica dei permessi (rwfd) sull'oggetto radice che sovrascrive i permessi di flusso (rwfd)
- required: validazione di obbligatorietà di un attributo sull'oggetto radice.
- complex: validazione complessa applicabile sia all'oggetto radice che agli elementi.
Per avere maggiori dettagli sulla validazione cliccare sull'identificativo della validazione
- salvataggio (save)
- eliminazione (delete)
Ad esempio la seguente stringa
internalOrganizationUnit:delete departmentDeleteValidator indica che la validazione "departmentDeleteValidator" è applicata in eliminazione di un elemento di tipo internalOrganizationUnit dell'oggetto radice.
Per avere maggiori dettagli sui possibili elementi fare riferimento alla definizione del modello, disponibile nella sezione Modello Dati.
Infine è possibile applicare le validazioni, condizionalmente al soddisfacimento di determinate condizioni (opzionali).
Queste condizioni sono specificate nella colonna "Applicabilità": se è specificato always, la validazione è sempre attiva.
Per avere maggiori dettagli sulle possibili condizioni di applicabilità e dei relativi parametri, fare riferimento alla lista completa nella sezione Definizione Apply Logic condivise.
Stato | Attori | MacroTipo | Tipo | Attributo/Identificativo | Applicabilita' |
---|---|---|---|---|---|
Bozza (draft) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
complex | checkCreationPermissionsValidator | always | |||
ownerPositionStartValidator | always | ||||
save | complex | sameDefinitionForGenericItemValidator | always | ||
element | complex | internalOrganizationUnit:save roleElementValidator | always | ||
partner:save roleElementValidator | always | ||||
owner:save checkElementDateBetweenItemDateValidator | always | ||||
owner:save roleElementValidator | always | ||||
Approvato (approved) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
booleanMap[visibleOnPortal] | always | ||||
element:owner | always | ||||
complex | attachmentValidator | always | |||
requiredAndUniquenessElementValidator | always | ||||
researchCentrePartnerValidator | always | ||||
dateCoverageAndOverlapValidator | always | ||||
roleElementValidator | always | ||||
approvalValidator | always | ||||
approvalOrganizationUnitValidator | always | ||||
researchCentreRenewalValidator | always | ||||
save | complex | roleElementValidator | always | ||
element | complex | owner:save roleElementValidator | always | ||
Riaperto (reopened) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
element:owner | always | ||||
complex | attachmentValidator | always | |||
requiredAndUniquenessElementValidator | always | ||||
researchCentrePartnerValidator | always | ||||
dateCoverageAndOverlapValidator | always | ||||
save | complex | sameDefinitionForGenericItemValidator | always | ||
element | complex | internalOrganizationUnit:save roleElementValidator | always | ||
partner:save roleElementValidator | always | ||||
owner:save checkElementDateBetweenItemDateValidator | always | ||||
owner:save roleElementValidator | always |
Logiche (action/start)
Nella seguente sezione vengono riportate le
- START LOGICS
Le start logics sono le "azioni" che vengono eseguite in fase di creazione di un nuovo oggetto radice - ACTION LOGICS
Le action logics sono delle "azioni" che vengono eseguite al verificarsi di determinati eventi.
Gli eventi contemplati sono:- enter: ingresso in uno stato
- save: salvataggio dell'oggetto radice
START LOGICS
- wfStartLogicIdentifier
- wfStartLogicYearFromStartDate
- wfStartLogicMultipleOwners
- wfStartLogicResearchCentre
- wfStartLogicVisibileOnPortal
- Bozza (draft)
- Approvato (approved)
- Riaperto (reopened)