AnsweredAssumed Answered

Processus de validation avec statut

Question asked by fallschi on Jul 23, 2013
Latest reply on Jul 25, 2013 by fallschi
Processus de validation avec statut




Bonjour,

Je travaille sur un projet visant à accélérer la validation de documents via Alfresco. Actuellement, les rapports sont envoyés vers un système qui va générer un document PDF automatiquement. Il sera, par la suite, imprimé et envoyé via courrier postal pour être signé. Cette méthode possède de nombreux inconvénient, comme par exemple, le délai postal qui peut être relativement long.
C’est pour cela, que l’on souhaite enregistrer les documents sur Alfresco afin qu’ils soient soumis à une validation via internet qui sera beaucoup plus rapide et efficace.

De plus, on évite d’imprimer les rapports ce qui permet d’économiser le papier et donc c’est bénéfique pour l’environnement et cela supprime des frais supplémentaires liés à l’impression de document.

J'ai commencé tout d'abord par creer un bouton "validation".
J’ai suivi ce tutoriel : http://ecmstuff.blogspot.com/2012/04/adding-document-library-actions-in.html?_sm_au_=iVVRs9MtqSr976H6

1 ère étape : modification du fichier : « share-document-library-config.xml » situé dans /home/alfresco/alfresco-4.0.2/tomcat/webapps/AppTest/WEB-INF/classes/alfresco

Code :
<action id="mycompany.doclib.action.validation"
              icon="validation"
              type="javascript"
              label="actions.mycompany.validation">
         <param name="function">onActionvalidation</param>
         <param name="successMessage">message.validation.success</param>
         <param name="failureMessage">message.validation.failure</param>
         <evaluator negate="true">mycompany.evaluator.doclib.action.estValidé
         </evaluator>
      </action>


actionGroup id="document-browse">
            <action index="100" id="document-download" />
            <action index="110" id="document-view-content" />
            <action index="120" id="document-locate" />
            <action index="130" id="document-edit-properties" />
            <action index="140" id="document-upload-new-version" />
            <action index="150" id="document-view-original" />
            <action index="160" id="document-view-working-copy" />
            <action index="170" id="document-approve" />
            <action index="180" id="document-reject" />
            <action index="190" id="document-inline-edit" />
            <action index="200" id="document-edit-online" />
            <action index="210" id="document-edit-offline" />
            <action index="220" id="document-view-googledoc" />
            <action index="230" id="document-checkout-to-googledocs" />
            <action index="240" id="document-checkin-from-googledocs" />
            <action index="250" id="document-copy-to" />
            <action index="260" id="document-move-to" />
            <action index="270" id="document-delete" />
            <action index="280" id="document-assign-workflow" />
            <action index="290" id="document-cancel-editing" />
            <action index="300" id="document-publish" />
            <action index="310" id="document-view-googlemaps" />
            <action index="320" id="document-view-in-source-repository" />
   
            <action index="400" id="mycompany.doclib.action.validation" />
         </actionGroup>

         <actionGroup id="document-details">
            <action index="100" id="document-download" />
            <action index="110" id="document-view-content" />
            <action index="120" id="document-edit-metadata" />
            <action index="130" id="document-upload-new-version" />
            <action index="140" id="document-view-original" />
            <action index="150" id="document-view-working-copy" />
            <action index="160" id="document-approve" />
            <action index="170" id="document-reject" />
            <action index="180" id="document-inline-edit" />
            <action index="190" id="document-edit-online" />
            <action index="200" id="document-edit-offline" />
            <action index="210" id="document-view-googledoc" />
            <action index="220" id="document-checkout-to-googledocs" />
            <action index="230" id="document-checkin-from-googledocs" />
            <action index="240" id="document-copy-to" />
            <action index="250" id="document-move-to" />
            <action index="260" id="document-delete" />
            <action index="270" id="document-assign-workflow" />
            <action index="280" id="document-cancel-editing" />
            <action index="290" id="document-manage-site-permissions" />
            <action index="300" id="document-manage-repo-permissions" />
            <action index="310" id="document-manage-aspects" />
            <action index="320" id="document-change-type" />
            <action index="330" id="document-view-in-source-repository" />
            <action index="340" id="document-publish" />
            <action index="350" id="document-view-googlemaps" />
   
            <action index="400" id="mycompany.doclib.action.validation" />
         </actionGroup>



2 ème étape : ajouter l’action label dans « slingshot-fr.properties » situé dans / AppTest /WEB-INF/classes/alfresco/messages


Code :   
   #Validation
actions.mycompany.validation=Validation
message.validation.success= fichier validé avec succès.
message.validation.failure=Impossible de valider le fichier.



3 ème étape : ajouter une icone personnalisée


Renommer l’image « validation-16.png » et la placer dans / AppTest /components/documentlibrary/actions


Une fois le server rebooté, on obtient bien l’icône voulue mais sans action lorsque l’on clique sur le bouton :

[img]http://web2img.com/images/3idUM.jpg[/img](http://web2img.com/?v=3idUM.jpg)
[img]http://web2img.com/images/s0fvn.jpg[/img](http://web2img.com/?v=s0fvn.jpg)


Je voudrais maintenant ajouter aux différents fichiers plusieurs statuts indiquant à l’utilisateur quels sont les fichiers validés etc.…

Les différents statuts sont :
-   Statut 0 : par défaut
-   Statut 1 : fichier validé
-   Statut 2 : fichier non validé
-   Statut 3 : fichier validé et traité



Dans le dossier « A », s’il y a une erreur dans un fichier déjà validé, on a la possibilité d’uploader un nouveau fichier qui viendra écraser l’ancien fichier et le dé valider. 
Dans le dossier « B », il y a une génération automatique de fichiers vides chaque début de mois avec un statut à 0 par défaut. Une fois qu’un fichier sera validé dans le dossier « A», il sera copié dans le dossier « B », avec un statut 1  et viendra écraser le fichier vide correspondant.


[img]http://web2img.com/images/5S4iB.jpg[/img](http://web2img.com/?v=5S4iB.jpg)

Voilà, J'aimerai avoir des suggestions concernant la suite de mon projet.

Merci d'avance,
Cordialement,

Fallschi

Outcomes