Grafico del flusso

Descrizione

Il flusso project-decentralized-owner-min-form-full-validation-flow è un flusso Decentralizzato che modella il ciclo di vita di un progetto di ricerca, dalla proposta, all'ottenimento del finanziamento e dei successivi risultati.
E' previsto
  • form SEMPLIFICATO di raccolta dati per il responsabile scientifico
  • flusso di validazione breve COMPLETO da schema riportato

L'avvio del processo viene effettuato dal responsabile del progetto che ha a disposizione un form semplificato di compilazione.
Ultimata la compilazione, il responsabile procede con la sottomissione della proposta agli uffici preposti (centralizzati o dipartimentali) che si occupano di portare avanti il processo amministrativo con l'ente finanziatore.

Questo flusso prevede i seguenti attori nelle diverse visioni.
  • Visione completa
    • Helpdesk - HD
      Team con profili:
      • Profilo Helpdesk
      • Profilo Helpdesk per i Progetti (project)
  • Visione dipartimentale
    • Organi dipartimentali - OD
      Team con la seguente naming convention "Profilo di dipartimento per XXX", dove XXX è il nome del dipartimento
      La completa operatività su un dato progetto è consentita solo per il dipartimento marcato come "Principale"
      I dipartimenti aggregati avranno accesso in sola lettura.
  • Visione personale
    • Responsabile scientifico - RS
      Persona appartenente al team "Utenti", che compare tra i responsabili del progetto. Cfr modello dati TAB Soggetti interni
    • Partecipante - PA
      Persona appartenente al team "Utenti", che compare tra i partecipanti del progetto. Cfr modello dati TAB Soggetti interni
    • Referente amministrativo - RA
      Persona appartenente al team "Utenti", che compare tra i referenti amministrativi del progetto. Cfr modello dati TAB Soggetti interni
    • Delegati - RD
      Persona appartenente al team "Utenti", che compare tra i delegati alla compilazione del progetto. Cfr modello dati TAB Soggetti interni
Trattandosi di un flusso decentralizzato, la creazione di un nuovo progetto è consentita anche ai RS.
Nel grafico, per chiarezza, vengono riportate però solo le transizioni di stato canoniche.
Inoltre, facciamo presente che gli stati in arancione sono gli stati di sincronizzazione con UGOV-PJ

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.prj.draft Bozza button.forward.to.prj.draft button.backward.to.prj.draft Salva e invia in "Bozza" Torna in "Bozza"
internalSubmitted wfState.prj.internalSubmitted In Lavorazione button.forward.to.prj.internalSubmitted button.backward.to.prj.internalSubmitted Invia la proposta Riporta "In lavorazione"
internalFinal wfState.prj.internalFinal Proposta definitiva button.forward.to.prj.internalFinal button.backward.to.prj.internalFinal Rendi definitiva Riporta in "Proposta definitiva"
internalApproved wfState.prj.internalApproved Proposta approvata da presentare button.forward.to.prj.internalApproved button.backward.to.prj.internalApproved Approva la proposta Riporta in "Proposta approvata da presentare"
internalRejected wfState.prj.internalRejected Proposta non presentata button.forward.to.prj.internalRejected button.backward.to.prj.internalRejected Invia in "Proposta non presentata" Riporta in "Proposta non presentata"
grantorSubmitted wfState.prj.grantorSubmitted Proposta presentata button.forward.to.prj.grantorSubmitted button.backward.to.prj.grantorSubmitted Presenta la proposta Riporta in "Proposta presentata"
grantorApproved wfState.prj.grantorApproved Proposta accettata da ente finanziatore button.forward.to.prj.grantorApproved button.backward.to.prj.grantorApproved Invia in "Proposta accettata da ente finanziatore" Riporta in "Proposta accettata da ente finanziatore"
grantorRejected wfState.prj.grantorRejected Proposta rifiutata da ente finanziatore button.forward.to.prj.grantorRejected button.backward.to.prj.grantorRejected Invia in "Proposta rifiutata da ente finanziatore" Riporta in "Proposta rifiutata da ente finanziatore"
financed wfState.prj.financed Finanziato button.forward.to.prj.financed button.backward.to.prj.financed Salva e invia in "Finanziato" Salva e invia in "Finanziato"
operative wfState.prj.operative Operativo button.forward.to.prj.operative button.backward.to.prj.operative Salva e invia in "Operativo" Salva e invia in "Operativo"
concluded wfState.prj.concluded Concluso button.forward.to.prj.concluded button.backward.to.prj.concluded Salva e invia in "Concluso" Salva e invia in "Concluso"

Modello Dati

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

Configurazioni

Le configurazioni associate a questo flusso sono disponibili alla seguente pagina: Produzione - IRIS AP-RM Configurazioni: Progetti (Project - PRJ)

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
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 internalFinal
Referente amministrativo (administrativeOwner) c r w d f internalFinal
Organi dipartimentali (department) c r w d f internalFinal
Responsabile/Proprietario (owner) c r w d f internalSubmitted
Delegato (internalRepresentative) c r w d f internalSubmitted
Partecipante (contributor) r none
In Lavorazione
(internalSubmitted)
Helpdesk (helpdesk) r w d f draft,internalFinal
Referente amministrativo (administrativeOwner) r w d f draft,internalFinal
Organi dipartimentali (department) r w d f draft,internalFinal
Responsabile/Proprietario (owner) r f draft
Delegato (internalRepresentative) r f draft
Partecipante (contributor) r none
Proposta definitiva
(internalFinal)
Helpdesk (helpdesk) r w d f internalSubmitted,internalApproved,internalRejected
Referente amministrativo (administrativeOwner) r w d f internalSubmitted,internalApproved,internalRejected
Organi dipartimentali (department) r w d f internalSubmitted,internalApproved,internalRejected
Responsabile/Proprietario (owner) r none
Delegato (internalRepresentative) r none
Partecipante (contributor) r none
Proposta approvata da presentare
(internalApproved)
Helpdesk (helpdesk) r w d f internalSubmitted,grantorSubmitted,internalRejected
Referente amministrativo (administrativeOwner) r w f internalSubmitted,grantorSubmitted,internalRejected
Organi dipartimentali (department) r w f internalSubmitted,grantorSubmitted,internalRejected
Responsabile/Proprietario (owner) r w f grantorSubmitted,internalRejected
Delegato (internalRepresentative) r w f grantorSubmitted,internalRejected
Partecipante (contributor) r none
Proposta non presentata
(internalRejected)
Helpdesk (helpdesk) r w d f internalFinal
Referente amministrativo (administrativeOwner) r w f internalFinal
Organi dipartimentali (department) r w f internalFinal
Responsabile/Proprietario (owner) r none
Delegato (internalRepresentative) r none
Partecipante (contributor) r none
Proposta presentata
(grantorSubmitted)
Helpdesk (helpdesk) r w d f internalApproved,grantorApproved,grantorRejected
Referente amministrativo (administrativeOwner) r w f internalApproved,grantorApproved,grantorRejected
Organi dipartimentali (department) r w f internalApproved,grantorApproved,grantorRejected
Responsabile/Proprietario (owner) r none
Delegato (internalRepresentative) r none
Partecipante (contributor) r none
Proposta accettata da ente finanziatore
(grantorApproved)
Helpdesk (helpdesk) r w d f grantorSubmitted,financed
Referente amministrativo (administrativeOwner) r w f financed
Organi dipartimentali (department) r w f financed
Responsabile/Proprietario (owner) r w none
Delegato (internalRepresentative) r w none
Partecipante (contributor) r none
Proposta rifiutata da ente finanziatore
(grantorRejected)
Helpdesk (helpdesk) r w d f grantorSubmitted
Referente amministrativo (administrativeOwner) r w f grantorSubmitted
Organi dipartimentali (department) r w f grantorSubmitted
Responsabile/Proprietario (owner) r none
Delegato (internalRepresentative) r none
Partecipante (contributor) r none
Finanziato
(financed)
Helpdesk (helpdesk) r w d f grantorApproved,operative
Referente amministrativo (administrativeOwner) r w f operative
Organi dipartimentali (department) r w f operative
Responsabile/Proprietario (owner) r w none
Delegato (internalRepresentative) r w none
Partecipante (contributor) r none
Operativo
(operative)
Helpdesk (helpdesk) r w d f financed,concluded
Referente amministrativo (administrativeOwner) r w f concluded
Organi dipartimentali (department) r w f concluded
Responsabile/Proprietario (owner) r w none
Delegato (internalRepresentative) r w none
Partecipante (contributor) r none
Concluso
(concluded)
Helpdesk (helpdesk) r w d f operative
Referente amministrativo (administrativeOwner) r w none
Organi dipartimentali (department) r w none
Responsabile/Proprietario (owner) r w none
Delegato (internalRepresentative) r w 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.

  • 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)
Le validazioni sono ulteriormente distinte nei seguenti tipi.
  • 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
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:
  • 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.

Stato Attori MacroTipo Tipo Attributo/Identificativo Applicabilita'
Bozza
(draft)
all enter required wfItemTypeId always
description isNotLegacy
organizationUnitMap[internalOrganizationUnit] isNewItem isInternalOrganizationUnitRequired
dateMap[proposalStartDate] isNotLegacy
personMap[owner] isNewItem isNotLegacy
element:owner isNotNewItem isNotLegacy
complex checkCreationPermissionsValidator always
ownerWithSameDepartmentAsHeadValidator always
callStartValidator always
ownerPositionStartValidator isNotLegacy
transitionCommentValidator isNotLegacy
inheritInternalOrganizationUnitFromTeamOfLoggedUserValidator always
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element complex owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Responsabile/Proprietario (owner) element complex owner:delete  currentUserCannotDeleteHimself isNotLegacy
owner:save  currentUserCannotEditHimself isNotLegacy
Delegato (internalRepresentative) element complex internalRepresentative:delete  currentUserCannotDeleteHimself isNotLegacy
In Lavorazione
(internalSubmitted)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:owner isNotLegacy
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element complex owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Proposta definitiva
(internalFinal)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:owner isNotLegacy
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element complex owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Proposta approvata da presentare
(internalApproved)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:owner isNotLegacy
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element required owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
complex internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
grantor:enter  dateMap[approvalDate] always
grantor:save  dateMap[approvalDate] always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Responsabile/Proprietario (owner) element complex owner:delete  currentUserCannotDeleteHimself isNotLegacy
owner:save  currentUserCannotDeleteHimself isNotLegacy
Delegato (internalRepresentative) element complex internalRepresentative:delete  currentUserCannotDeleteHimself isNotLegacy
Proposta non presentata
(internalRejected)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:owner isNotLegacy
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element complex owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Proposta presentata
(grantorSubmitted)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
element:internalOrganizationUnit isNotLegacy
element:owner isNotLegacy
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element required owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
complex internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
grantor:enter  dateMap[approvalDate] always
grantor:save  dateMap[approvalDate] always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Proposta accettata da ente finanziatore
(grantorApproved)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
element:internalOrganizationUnit isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element required owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
complex internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
grantor:enter  dateMap[approvalDate] always
grantor:save  dateMap[approvalDate] always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Proposta rifiutata da ente finanziatore
(grantorRejected)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
element:internalOrganizationUnit isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
save required identifier always
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element required owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
complex internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
grantor:enter  dateMap[approvalDate] always
grantor:save  dateMap[approvalDate] always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator isNotLegacy
internalOrganizationUnit:save  departmentChangeRoleValidator isNotLegacy
Finanziato
(financed)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
numberMap[requestedInternalCofinancing] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
stringMap[grantNumber] isNotLegacy
wfDictionaryMap[currency] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalContribution] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalCost] isNotLegacy
numberMap[internalCofinancing] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:administrativeOwner isNotLegacy
element:sustainableDevelopmentGoal isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
partnerAndGlobalCostValidatorProject isNotLegacy
internalOrganizationUnitCostRequiredValidatorProject isNotLegacy
checkInconsistentFundingValidatorProject isNotLegacy
financingSumProjectValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
currencyAndInternalContributionValidatorProject isNotLegacy isYearGreaterOrEqualThanConfiguration
grantorFinancingQuotaRequiredValidatorProject isNotLegacy
ownerAndOrganizationUnitMatchValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
save required identifier always
wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
numberMap[requestedInternalCofinancing] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
stringMap[grantNumber] isNotLegacy
wfDictionaryMap[currency] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalContribution] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalCost] isNotLegacy
numberMap[internalCofinancing] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:administrativeOwner isNotLegacy
element:sustainableDevelopmentGoal isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
childCallValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
partnerAndGlobalCostValidatorProject isNotLegacy
internalOrganizationUnitCostRequiredValidatorProject isNotLegacy
checkInconsistentFundingValidatorProject isNotLegacy
financingSumProjectValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
currencyAndInternalContributionValidatorProject isNotLegacy isYearGreaterOrEqualThanConfiguration
grantorFinancingQuotaRequiredValidatorProject isNotLegacy
ownerAndOrganizationUnitMatchValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
delete complex childAndParentDetectorDeleteValidator always
element required owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
grantor:enter  dateMap[approvalDate] always
grantor:enter  numberMap[financingQuota] always
grantor:enter  stringMap[grantNumber] always
complex grantor:save  dateMap[approvalDate] always
grantor:save  numberMap[financingQuota] always
grantor:save  stringMap[grantNumber] always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator always
internalOrganizationUnit:save  departmentChangeRoleValidator always
Operativo
(operative)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
booleanMap[pnrr] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
numberMap[requestedInternalCofinancing] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
stringMap[grantNumber] isNotLegacy
dateMap[startDate] isNotLegacy
dateMap[endDate] isNotLegacy
dateMap[expenditureStartDate] isNotLegacy
dateMap[expenditureEndDate] isNotLegacy
wfDictionaryMap[currency] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalContribution] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalCost] isNotLegacy
numberMap[internalCofinancing] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:administrativeOwner isNotLegacy
element:sustainableDevelopmentGoal isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
dateMap[expenditureStartDate] isNotLegacy isYearGreaterOrEqualThanConfiguration
dateMap[endDate] isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
dateCoverageAndOverlapValidator isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
pnrrCallAndProjectInconsistencyValidator isNotLegacy
childCallValidatorProject isNotLegacy
partnerAndGlobalCostValidatorProject isNotLegacy
internalOrganizationUnitCostRequiredValidatorProject isNotLegacy
checkInconsistentFundingValidatorProject isNotLegacy
financingSumProjectValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
startDateAndEndDateValidator always
contributorAndOwnerValidatorWithStartEndDate isNotLegacy isYearGreaterOrEqualThanConfiguration
currencyAndInternalContributionValidatorProject isNotLegacy isYearGreaterOrEqualThanConfiguration
checkDateExtensionValidator isNotLegacy
grantorFinancingQuotaRequiredValidatorProject isNotLegacy
ownerAndOrganizationUnitMatchValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
wfUgovPjSenderValidatorProject always
save required identifier always
wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
numberMap[requestedInternalCofinancing] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
stringMap[grantNumber] isNotLegacy
dateMap[startDate] isNotLegacy
dateMap[endDate] isNotLegacy
dateMap[expenditureStartDate] isNotLegacy
dateMap[expenditureEndDate] isNotLegacy
wfDictionaryMap[currency] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalContribution] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalCost] isNotLegacy
numberMap[internalCofinancing] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:administrativeOwner isNotLegacy
element:sustainableDevelopmentGoal isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
dateMap[expenditureStartDate] isNotLegacy isYearGreaterOrEqualThanConfiguration
dateMap[endDate] isNotLegacy
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
dateCoverageAndOverlapValidator isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
pnrrCallAndProjectInconsistencyValidator isNotLegacy
childCallValidatorProject isNotLegacy
partnerAndGlobalCostValidatorProject isNotLegacy
internalOrganizationUnitCostRequiredValidatorProject isNotLegacy
checkInconsistentFundingValidatorProject isNotLegacy
financingSumProjectValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
startDateAndEndDateValidator always
contributorAndOwnerValidatorWithStartEndDate isNotLegacy isYearGreaterOrEqualThanConfiguration
currencyAndInternalContributionValidatorProject isNotLegacy isYearGreaterOrEqualThanConfiguration
checkDateExtensionValidator isNotLegacy
grantorFinancingQuotaRequiredValidatorProject isNotLegacy
ownerAndOrganizationUnitMatchValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
wfUgovPjSenderValidatorProject always
delete complex childAndParentDetectorDeleteValidator always
element required owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
grantor:enter  dateMap[approvalDate] always
grantor:enter  numberMap[financingQuota] always
grantor:enter  stringMap[grantNumber] always
grantor:save  dateMap[approvalDate] always
grantor:save  numberMap[financingQuota] always
grantor:save  stringMap[grantNumber] always
owner:enter  dateMap[startDate] always
complex contributor:enter  dateMap[startDate] always
owner:save  dateMap[startDate] always
contributor:save  dateMap[startDate] always
Organi dipartimentali (department) element complex internalOrganizationUnit:delete  departmentDeleteValidator always
internalOrganizationUnit:save  departmentChangeRoleValidator always
Concluso
(concluded)
all enter required wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
booleanMap[pnrr] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
numberMap[requestedInternalCofinancing] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
stringMap[grantNumber] isNotLegacy
dateMap[startDate] isNotLegacy
dateMap[endDate] isNotLegacy
dateMap[expenditureStartDate] isNotLegacy
dateMap[expenditureEndDate] isNotLegacy
wfDictionaryMap[currency] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalContribution] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalCost] isNotLegacy
numberMap[internalCofinancing] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:administrativeOwner isNotLegacy
element:sustainableDevelopmentGoal isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
dateMap[expenditureStartDate] isNotLegacy isYearGreaterOrEqualThanConfiguration
dateMap[endDate] isNotLegacy
complex roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
dateCoverageAndOverlapValidator isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
pnrrCallAndProjectInconsistencyValidator isNotLegacy
childCallValidatorProject isNotLegacy
partnerAndGlobalCostValidatorProject isNotLegacy
internalOrganizationUnitCostRequiredValidatorProject isNotLegacy
checkInconsistentFundingValidatorProject isNotLegacy
financingSumProjectValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
startDateAndEndDateValidator always
contributorAndOwnerValidatorWithStartEndDate isNotLegacy isYearGreaterOrEqualThanConfiguration
currencyAndInternalContributionValidatorProject isNotLegacy isYearGreaterOrEqualThanConfiguration
checkDateExtensionValidator isNotLegacy
grantorFinancingQuotaRequiredValidatorProject isNotLegacy
ownerAndOrganizationUnitMatchValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
wfUgovPjSenderValidatorProject always
save required identifier always
wfItemTypeId always
description isNotLegacy
dateMap[proposalStartDate] isNotLegacy
integerMap[durationInMonth] isNotLegacy
wfDictionaryMap[requestedCurrency] isNotLegacy
numberMap[requestedInternalContribution] isNotLegacy
numberMap[requestedInternalCost] isNotLegacy
numberMap[requestedInternalCofinancing] isNotLegacy
booleanMap[expectedEvaluation] isNotLegacy
dateMap[expectedEvaluationDate] isNotLegacy isExpectedEvaluationProject
stringMap[grantNumber] isNotLegacy
dateMap[startDate] isNotLegacy
dateMap[endDate] isNotLegacy
dateMap[expenditureStartDate] isNotLegacy
dateMap[expenditureEndDate] isNotLegacy
wfDictionaryMap[currency] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalContribution] isNotLegacy isYearGreaterOrEqualThanConfiguration
numberMap[internalCost] isNotLegacy
numberMap[internalCofinancing] isNotLegacy
element:internalOrganizationUnit isNotLegacy
element:administrativeOwner isNotLegacy
element:sustainableDevelopmentGoal isNotLegacy
element:owner isNotLegacy
element:evaluation isNotLegacy isExpectedEvaluationProject
link:callProjectLink isNotLegacy
dateMap[expenditureStartDate] isNotLegacy isYearGreaterOrEqualThanConfiguration
dateMap[endDate] isNotLegacy
complex sameDefinitionForGenericItemValidator always
changeItemTypeForNotSynchronizedItemValidator always
uniquePeopleValidator isNotLegacy
ethicCommiteeDeleteInconsistentDataProject always
roleElementValidator isNotLegacy
requiredAndUniquenessElementValidator isNotLegacy
checkPartnerValidatorProject isNotLegacy
partnerAndRequestedGlobalCostValidatorProject isNotLegacy
dateCoverageAndOverlapValidator isNotLegacy
grantorValidatorProject isNotLegacy
callValidatorProject isNotLegacy
linkEntitiesAllowedStateValidator isNotLegacy
pnrrCallAndProjectInconsistencyValidator isNotLegacy
childCallValidatorProject isNotLegacy
partnerAndGlobalCostValidatorProject isNotLegacy
internalOrganizationUnitCostRequiredValidatorProject isNotLegacy
checkInconsistentFundingValidatorProject isNotLegacy
financingSumProjectValidator isNotLegacy
approvalValidator isNotLegacy
approvalOrganizationUnitValidator isNotLegacy
startDateAndEndDateValidator always
contributorAndOwnerValidatorWithStartEndDate isNotLegacy isYearGreaterOrEqualThanConfiguration
currencyAndInternalContributionValidatorProject isNotLegacy isYearGreaterOrEqualThanConfiguration
checkDateExtensionValidator isNotLegacy
grantorFinancingQuotaRequiredValidatorProject isNotLegacy
ownerAndOrganizationUnitMatchValidator isNotLegacy
uniqueIdentifierValidator isNotLegacy
wfUgovPjSenderValidatorProject always
delete complex childAndParentDetectorDeleteValidator always
element required owner:save  addOrgUnitFromNewOwnerValidator always
owner:delete  deleteOrgUnitAssociatedToOldOwnerValidator always
internalOrganizationUnit:save  addElementInferredFromOrgUnitElementValidator always
grantor:enter  dateMap[approvalDate] always
grantor:enter  numberMap[financingQuota] always
grantor:enter  stringMap[grantNumber] always
grantor:save  dateMap[approvalDate] always
grantor:save  numberMap[financingQuota] always
grantor:save  stringMap[grantNumber] always
owner:enter  dateMap[startDate] always
complex contributor:enter  dateMap[startDate] always
owner:save  dateMap[startDate] always
contributor:save  dateMap[startDate] 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
Di seguito viene riportato il dettaglio delle logiche definite per questo flusso.

START LOGICS ACTION LOGICS
  • No labels