Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente |
documentazione_3di_riservata:docway4:creazione_dmodel [2017/09/12 12:32] – [Forzare la protocollazione automatica] ncandelora | documentazione_3di_riservata:docway4:creazione_dmodel [Data sconosciuta] (versione attuale) – eliminata - modifica esterna (Data sconosciuta) 127.0.0.1 |
---|
======Creazione nuovo d-model====== | |
| |
===== D-model: definizione ===== | |
Il **d-model** (document model) è lo strumento utilizzato dal **MailStorageAgent (MSA)** che contiene le regole e le modalità con cui i messaggi di posta vengono recepiti nell'archivio documentale. | |
| |
===== D-model standard ===== | |
Normalmente nell'installazione di base di Docway vengono forniti 2 d-model standard, uno configurato per la creazione di un documento di tipo non protocollato e uno configurato per la creazione di un documento di tipo bozza in arrivo. I d-model standard sono i seguenti: | |
| |
**D-model per la creazione di doc di topo varie** | |
<code xml> | |
<documentModel db="xdocwaydoc" name="varie" nrecord="."> | |
<notify cc="true" httpHost="http://localhost:8080" rpa="true" uri="/DocWay4/docway/loadtitles.pf"/> | |
<item value="varie" xpath="doc/@tipo"/> | |
<item value="getXPathValue(/casellaPostaElettronica/@cod_amm)" xpath="doc/@cod_amm_aoo"/> | |
<item value="getXPathValue(/casellaPostaElettronica/@cod_aoo)" xpath="doc/@cod_amm_aoo"/> | |
<item value="." xpath="doc/@nrecord"/> | |
<item value="getYear()" xpath="doc/@anno"/> | |
<item value="getDate()" xpath="doc/@data_prot"/> | |
<item value="no" xpath="doc/@annullato"/> | |
<item value="99" xpath="doc/@scarto"/> | |
<item value="getFromName()" xpath="doc/autore"/> | |
<item value="preserve" xpath="doc/autore/@xml:space"/> | |
<item value="getSubject()" xpath="doc/oggetto"/> | |
<item value="preserve" xpath="doc/oggetto/@xml:space"/> | |
<item value="00/00 - non classificato" xpath="doc/classif"/> | |
<item value="00/00" xpath="doc/classif/@cod"/> | |
<item value="E-mail" xpath="doc/tipologia/@cod"/> | |
<item value="addStoriaCreazione()" xpath=""/> | |
<item value="addRPA()" xpath=""/> | |
<item value="addCC()" xpath=""/> | |
<attach_item value="addAndUploadEmailBodyAttach(/doc/files,TEXT,testo email,.txt)" xpath=""/> | |
<attach_item value="addAndUploadEmailBodyAttach(/doc/files,HTML,testo email html,.html)" xpath=""/> | |
<attach_item value="addAndUploadEmailAttachFiles(/doc/files)" xpath=""/> | |
<attach_item value="addAndUploadEmailAttachImages(/doc/immagini)" xpath=""/> | |
<attach_item value="computeAndAddFootprint(/doc/impronta)" xpath=""/> | |
<attach_item value="assignChkin()" xpath=""/> | |
</documentModel> | |
</code> | |
| |
**D-model per la creazione di bozza in arrivo** | |
<code xml> | |
<documentModel db="xdocwaydoc" name="bozze_arrivo" nrecord="."> | |
<notify cc="true" httpHost="http://localhost:8080" rpa="true" uri="/DocWay4/docway/loadtitles.pf"/> | |
<item value="arrivo" xpath="doc/@tipo"/> | |
<item value="si" xpath="doc/@bozza"/> | |
<item value="getXPathValue(/casellaPostaElettronica/@cod_amm)" xpath="doc/@cod_amm_aoo"/> | |
<item value="getXPathValue(/casellaPostaElettronica/@cod_aoo)" xpath="doc/@cod_amm_aoo"/> | |
<item value="." xpath="doc/@nrecord"/> | |
<item value="" xpath="doc/@anno"/> | |
<item value="" xpath="doc/@data_prot"/> | |
<item value="" xpath="doc/@num_prot"/> | |
<item value="no" xpath="doc/@annullato"/> | |
<item value="getSubject()" xpath="doc/oggetto"/> | |
<item value="preserve" xpath="doc/oggetto/@xml:space"/> | |
<item value="E-mail" xpath="doc/tipologia/@cod"/> | |
<item value="addSenderFromACLLookup(/doc/rif_esterni/rif)" xpath=""/> | |
<item value="addAllegatoForEmailAttachs()" xpath=""/> | |
<item value="addStoriaCreazione()" xpath=""/> | |
<item value="addRPA()" xpath=""/> | |
<item value="addCC()" xpath=""/> | |
<attach_item value="addAndUploadEmailBodyAttach(/doc/files,TEXT,testo email,.txt)" xpath=""/> | |
<attach_item value="addAndUploadEmailBodyAttach(/doc/files,HTML,testo email html,.html)" xpath=""/> | |
<attach_item value="addAndUploadEmailAttachFiles(/doc/files)" xpath=""/> | |
<attach_item value="addAndUploadEmailAttachImages(/doc/immagini)" xpath=""/> | |
<attach_item value="computeAndAddFootprint(/doc/impronta)" xpath=""/> | |
<attach_item value="assignChkin()" xpath=""/> | |
</documentModel> | |
</code> | |
| |
Come si può vedere il d-model è composto da un elemento **<documentModel>** che racchiude un elemento **<notify>**, più elementi <item> e più elementi **<attach_item>**: | |
| |
* **<notify>** contiene i seguenti attributi | |
* **httpHost** : nome dns del server Docway | |
* **uri** : componente del link per l'accesso diretto al documento (quasi sempre il suo valore è /DocWay4/docway/loadtitles.pf) | |
* **rpa** : se true viene inviata la notifica all'RPA del documento creato | |
* **cc** : se true viene inviata la notifica alle eventuali CC del documento creato | |
| |
| |
* **<item>** contiene i seguenti attributi | |
* xpath : xpath completo del campo del documento che deve essere creato | |
* value : valore da assegnare all'xpath; può essere un valore fisso oppure può essere assegnato tramite specifice funzioni java implementate nel MSA | |
| |
| |
* **<attach_item>** contiene i seguenti attributi | |
* **xpath** : xpath completo del campo dedicato all'allegato | |
* **value** : valore da assegnare all'xpath; contiente specifiche funzioni java per l'upload di allegati al documento creato. | |
| |
<WRAP centeralign round important 100%> | |
**Non ho mai avuto la necessità di modificare gli elementi <attach_item> pertanto è consigliabile non intervenire per modificarli!** | |
</WRAP> | |
| |
===== D-model personalizzati ===== | |
La personalizzazione dei d-model consiste nell'aggiunte di ulteriori regole ai modelli di base. | |
| |
==== Aggiunta di classificazione fissa ==== | |
<code xml> | |
<item value="06/06 - Rateazioni sotto soglia" xpath="doc/classif"/> | |
<item value="preserve" xpath="doc/classif/@xml:space"/> | |
<item value="06/06" xpath="doc/classif/@cod"/> | |
</code> | |
| |
==== Aggiunta voce di indice fissa con classificazione ==== | |
<code xml> | |
<item value="RATEAZIONI STC - ALESSANDRIA-ASTI" xpath="doc/voce_indice"/> | |
<item value="preserve" xpath="doc/voce_indice/@xml:space"/> | |
<item value="06/06 - Rateazioni sotto soglia" xpath="doc/classif"/> | |
<item value="preserve" xpath="doc/classif/@xml:space"/> | |
<item value="06/06" xpath="doc/classif/@cod"/> | |
</code> | |
| |
==== Forzare la protocollazione automatica ==== | |
Tramite alcune regole è possibile fare in modo che il messaggio di posta recuperato da MSA venga automaticamente protocollato senza passare nello stato di bozza; ovviamente il d-model di partenza per questo tipo di configurazione non può che essere quello per la creazione di una bozza in arrivo. Le regole da aggiungere sono le seguenti: | |
<code xml> | |
<item value="getYear()" xpath="doc/@anno"/> | |
<item value="getDate()" xpath="doc/@data_prot"/> | |
<item value="$ANNO$" xpath="doc/@num_prot"/> | |
<item value="-" xpath="doc/@num_prot"/> | |
<item value="getXPathValue(/casellaPostaElettronica/@cod_amm)" xpath="doc/@num_prot"/> | |
<item value="getXPathValue(/casellaPostaElettronica/@cod_aoo)" xpath="doc/@num_prot"/> | |
<item value="-" xpath="doc/@num_prot"/> | |
<item value="." xpath="doc/@num_prot"/> | |
</code> | |
| |
==== Aggiunta header e corpo della mail nel campo Note ==== | |
<code> | |
<item value="From: " xpath="doc/note"/> | |
<item value="getFromName()" xpath="doc/note"/> | |
<item value="newLine()" xpath="doc/note"/> | |
<item value="To: " xpath="doc/note"/> | |
<item value="getTo()" xpath="doc/note"/> | |
<item value="newLine()" xpath="doc/note"/> | |
<item value="Cc: " xpath="doc/note"/> | |
<item value="getCc()" xpath="doc/note"/> | |
<item value="newLine()" xpath="doc/note"/> | |
<item value="Sent: " xpath="doc/note"/> | |
<item value="getHeader(Date)" xpath="doc/note"/> | |
<item value="newLine()" xpath="doc/note"/> | |
<item value="Subject: " xpath="doc/note"/> | |
<item value="getSubject()" xpath="doc/note"/> | |
<item value="newLine()" xpath="doc/note"/> | |
<item value="newLine()" xpath="doc/note"/> | |
<item value="getMailBody(TEXT)" xpath="doc/note"/> | |
<item value="preserve" xpath="doc/note/@xml:space"/> | |
</code> | |
| |
==== Aggiunta repertorio ==== | |
Per la creazione di doc di tipo Varie: | |
<code xml> | |
<item value="NomeRepertorio" xpath="doc/repertorio"/> | |
<item value="CodiceRepertorio" xpath="doc/repertorio/@cod"/> | |
<item value="CodiceRepertorio^cod_amm_aoo-$ANNO$." xpath="doc/repertorio/@numero"/> | |
| |
<!-- Esempio --> | |
<item value="Curricula" xpath="doc/repertorio"/> | |
<item value="CV" xpath="doc/repertorio/@cod"/> | |
<item value="CV^AVEPACL-$ANNO$." xpath="doc/repertorio/@numero"/> | |
</code> | |
| |
Per la creazione di doc di tipo Bozza Arrivo | |
<code xml> | |
<item value="NomeRepertorio" xpath="doc/repertorio"/> | |
<item value="CodiceRepertorio" xpath="doc/repertorio/@cod"/> | |
<item value="" xpath="doc/repertorio/@numero"/> | |
| |
<!-- Esempio --> | |
<item value="Documenti sanitari" xpath="doc/repertorio"/> | |
<item value="DSAN" xpath="doc/repertorio/@cod"/> | |
<item value="" xpath="doc/repertorio/@numero"/> | |
</code> | |