Grafico del flusso

Descrizione

Il flusso publicEngagement-flow è un flusso di validazione per il censimento di iniziative di public engagement.
Questo flusso prevede uno step di validazione da parte di una authority (centrale o dipartimentale)
Sono previsti i seguenti attori nelle diverse visioni.
Trattandosi di un flusso a prodotto è possibile effettuare delle personalizzazioni, per esempio è possibile abilitare/disabilitare la creazione dell'oggetto da parte dell'owner, di default la creazione viene consentita, mentre se la variabile ap.publicEngagement-flow.owner.create viene settata a false la creazione viene impedita.
Altro esempio, è possibile "salatare degli stati" per farlo è necessario introdurre le configurazioni che personalizzano i "nextStates" dei vari attori.
Per maggiori dettagli fare riferimento alla logica di Customizzazione flussi Customizzazione flussi

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.pen.draft Bozza button.forward.to.pen.draft button.backward.to.pen.draft Salva e invia in "Bozza" Salva e invia in "Bozza"
approved wfState.pen.approved Approvato button.forward.to.pen.approved button.backward.to.pen.approved Salva e invia in "Approvato" Salva e invia in "Approvato"
submitted wfState.pen.submitted In Validazione button.forward.to.pen.submitted button.backward.to.pen.submitted Salva e invia in "In Validazione" Salva e invia in "In Validazione"
reopened wfState.pen.reopened Riaperto button.forward.to.pen.reopened button.backward.to.pen.reopened Salva e invia in "Riaperto" Salva e invia in "Riaperto"
rejected wfState.pen.rejected Non Ammesso button.forward.to.pen.rejected button.backward.to.pen.rejected Salva e invia in "Non Ammesso" Salva e invia in "Non Ammesso"

Modello Dati

Il dettaglio del modello dati associato a questo flusso è disponibile alla seguente pagina Produzione - Modello dati (publicEngagement - PEN)

Configurazioni

Le configurazioni associate a questo flusso sono disponibili alla seguente pagina: Produzione - IRIS AP-RM Configurazioni: Terza Missione (public engagement - PEN)

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:

Viene, inoltre, fornito dettaglio dei TAB disponibili (quelli in sola lettura presentano il suffisso readonly)

Stato Attori Permessi Transizioni Tab
Bozza
(draft)
Helpdesk (helpdesk) c r w d f approved,__PREVIOUS_STATE__
Responsabile/Proprietario (owner) c r w d f submitted
Organi dipartimentali (department) c r w d f approved
Delegato (internalRepresentative) r w f submitted
Partecipante (contributor) r none
Approvato
(approved)
Helpdesk (helpdesk) r f submitted,reopened
Responsabile/Proprietario (owner) r f reopened
Organi dipartimentali (department) r f submitted,reopened
Delegato (internalRepresentative) r f reopened
Partecipante (contributor) r none
In Validazione
(submitted)
Helpdesk (helpdesk) r w f draft,approved,rejected,reopened
Responsabile/Proprietario (owner) r none
Organi dipartimentali (department) r w f draft,approved,rejected
Delegato (internalRepresentative) r none
Partecipante (contributor) r none
Riaperto
(reopened)
Helpdesk (helpdesk) r w d f approved,__PREVIOUS_STATE__
Organi dipartimentali (department) r w d f approved
Responsabile/Proprietario (owner) r w f approved,submitted
Partecipante (contributor) r none
Delegato (internalRepresentative) r w f approved
Non Ammesso
(rejected)
Helpdesk (helpdesk) r d f submitted
Responsabile/Proprietario (owner) r none
Organi dipartimentali (department) r d f submitted
Delegato (internalRepresentative) r none
Partecipante (contributor) 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.

Le validazioni sono ulteriormente distinte nei seguenti tipi. Nel caso di validazioni di tipo element, oltre all'identificativo della validazione, viene riportato anche l'identificativo dell'elemento a cui è applicata e l'azione che l'ha scatenata:
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.

Stato Attori MacroTipo Tipo Attributo/Identificativo Applicabilita'
Bozza
(draft)
all enter required wfItemTypeId isCreateByCloning
dateMap[startDate] isCreateByCloning
description isCreateByCloning
personMap[owner] isCreateByCloning isNewItem isPersonRequiredPublicEngagement
organizationUnitMap[ouId] isCreateByCloning isNewItem isDepartmentRequiredPublicEngagement
complex checkCreationPermissionsValidator isCreateByCloning
ownerWithSameDepartmentAsHeadValidator isCreateByCloning
transitionCommentValidator isCreateByCloning
save required dateMap[startDate] always
complex sameDefinitionForGenericItemValidator always
itemTypeNotWithdrawnValidator always
delete complex childAndParentDetectorDeleteValidator always
element required contributor:save  addOrgUnitFromNewOwnerValidator always
complex owner:save  addOrgUnitFromNewOwnerValidator always
owner:save  ownerTimeReportingValidator always
impactIndicators:save  requiredAndUniquenessElementValidator always
publicInvolved:save  requiredAndUniquenessElementValidator always
publicInvolved:save  stringMap[specificOtherValue] isSpecificOtherValueRequiredPublicEngagement
Responsabile/Proprietario (owner) element complex owner:save  currentUserCannotEditHimself always
owner:delete  currentUserCannotDeleteHimself always
suardInitiative:delete  notAllowedValidator always
suardInitiative:save  notAllowedValidator always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator always
internalOrganizationUnit:save  departmentChangeRoleValidator always
Delegato (internalRepresentative) element complex internalRepresentative:delete  notAllowedValidator always
internalRepresentative:save  notAllowedValidator always
owner:delete  notAllowedValidator always
owner:save  notAllowedValidator always
suardInitiative:delete  notAllowedValidator always
suardInitiative:save  notAllowedValidator always
Approvato
(approved)
all enter required wfItemTypeId always
description always
stringMap[abstract] always
dateMap[startDate] always
year always
booleanMap[istitutionalInitiative] always
stringMap[targetDescription] always
booleanMap[evaluationEnable] always
booleanMap[visibleOnPortal] always
wfDictionaryMap[geographicalImpact] always
numberMap[totalBudget] always
stringMap[estimatedImpact] always
wfDictionaryMap[involvementType] always
element:secondaryCategory always
element:activityRecipient always
element:evaluationTool evaluationToolEnabled
element:internalOrganizationUnit always
element:scientificAreasInvolved always
element:rmCustomClassification always
element:sustainableDevelopmentGoal always
element:ercKeyword always
element:owner always
booleanMap[periodicEvent] always
wfDictionaryMap[periodicity] isPeriodicEvent
booleanMap[oneDayOnlyEvent] always
booleanMap[knownEndDate] always
integerMap[numTotalDay] isNotPeriodicEvent isKnownEndDate
dateMap[endDate] isKnownEndDate
complex checkDatePublicEngagement always
startDateAndEndDateValidator always
ownerTimeReportingValidator always
financingTotalBudgetValidator always
dateCoverageAndOverlapValidator always
secondaryCategoryDifferFromType always
publicInvolvedValidatorPublicEngagement always
roleElementValidator always
save complex sameDefinitionForGenericItemValidator always
itemTypeNotWithdrawnValidator always
element complex owner:save  ownerTimeReportingValidator always
In Validazione
(submitted)
all enter required description always
stringMap[abstract] always
dateMap[startDate] always
wfItemTypeId always
year always
booleanMap[istitutionalInitiative] always
stringMap[targetDescription] always
booleanMap[evaluationEnable] always
booleanMap[visibleOnPortal] always
wfDictionaryMap[geographicalImpact] always
numberMap[totalBudget] always
stringMap[estimatedImpact] always
wfDictionaryMap[involvementType] always
element:activityRecipient always
element:evaluationTool evaluationToolEnabled
element:internalOrganizationUnit always
element:scientificAreasInvolved always
element:secondaryCategory always
element:rmCustomClassification always
element:sustainableDevelopmentGoal always
element:ercKeyword always
element:owner always
booleanMap[periodicEvent] always
wfDictionaryMap[periodicity] isPeriodicEvent
booleanMap[oneDayOnlyEvent] always
booleanMap[knownEndDate] always
integerMap[numTotalDay] isNotPeriodicEvent isKnownEndDate
dateMap[endDate] isKnownEndDate
complex checkDatePublicEngagement always
transitionCommentValidator always
startDateAndEndDateValidator always
ownerTimeReportingValidator always
financingTotalBudgetValidator always
dateCoverageAndOverlapValidator always
secondaryCategoryDifferFromType always
publicInvolvedValidatorPublicEngagement always
roleElementValidator always
save complex sameDefinitionForGenericItemValidator always
itemTypeNotWithdrawnValidator always
element required contributor:save  addOrgUnitFromNewOwnerValidator always
complex owner:save  addOrgUnitFromNewOwnerValidator always
owner:save  ownerTimeReportingValidator always
impactIndicators:save  requiredAndUniquenessElementValidator always
publicInvolved:save  requiredAndUniquenessElementValidator always
publicInvolved:save  stringMap[specificOtherValue] isSpecificOtherValueRequiredPublicEngagement
Organi dipartimentali (department) element complex internalOrganizationUnit:save  departmentChangeRoleValidator always
internalOrganizationUnit:delete  departmentDeleteValidator always
Riaperto
(reopened)
all enter required wfItemTypeId always
description always
stringMap[abstract] always
dateMap[startDate] always
year always
stringMap[targetDescription] always
booleanMap[evaluationEnable] always
booleanMap[visibleOnPortal] always
wfDictionaryMap[geographicalImpact] always
numberMap[totalBudget] always
stringMap[estimatedImpact] always
element:evaluationTool evaluationToolEnabled
element:internalOrganizationUnit always
element:owner always
complex startDateAndEndDateValidator always
save required dateMap[startDate] always
complex sameDefinitionForGenericItemValidator always
itemTypeNotWithdrawnValidator always
delete complex childAndParentDetectorDeleteValidator always
element required contributor:save  addOrgUnitFromNewOwnerValidator always
complex owner:save  addOrgUnitFromNewOwnerValidator always
owner:save  ownerTimeReportingValidator always
impactIndicators:save  requiredAndUniquenessElementValidator always
publicInvolved:save  requiredAndUniquenessElementValidator always
publicInvolved:save  stringMap[specificOtherValue] isSpecificOtherValueRequiredPublicEngagement
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator always
internalOrganizationUnit:save  departmentChangeRoleValidator always
Responsabile/Proprietario (owner) element complex owner:save  currentUserCannotEditHimself always
owner:delete  currentUserCannotDeleteHimself always
suardInitiative:delete  notAllowedValidator always
suardInitiative:save  notAllowedValidator always
Delegato (internalRepresentative) element complex suardInitiative:delete  notAllowedValidator always
suardInitiative:save  notAllowedValidator always
Non Ammesso
(rejected)
all enter required wfItemTypeId always
description always
stringMap[abstract] always
dateMap[startDate] always
year always
stringMap[targetDescription] always
booleanMap[evaluationEnable] always
booleanMap[visibleOnPortal] always
wfDictionaryMap[geographicalImpact] always
numberMap[totalBudget] always
stringMap[estimatedImpact] always
stringMap[transitionComment] always
element:evaluationTool evaluationToolEnabled
element:internalOrganizationUnit always
element:scientificAreasInvolved always
element:owner always
complex startDateAndEndDateValidator always
secondaryCategoryDifferFromType always
save complex sameDefinitionForGenericItemValidator always
itemTypeNotWithdrawnValidator always
delete complex childAndParentDetectorDeleteValidator always
element complex owner:save  ownerTimeReportingValidator always

Logiche (action/start)

Nella seguente sezione vengono riportate le

Di seguito viene riportato il dettaglio delle logiche definite per questo flusso.

START LOGICS

ACTION LOGICS