Mon stage d’été chez Pierre Guerin (projet n°2)

Création d'un script pour générer l'arborescence des documents d'un projet

Après avoir créé la page de reporting (voir le projet n°1), une nouvelle mission en rapport avec les documents à fournir aux clients m’a été confiée. L’organisation du dossier contenant les différents documents (tous sont sous format PDF, un document correspond à une pièce) à une structure particulière. Il faut créer un dossier dans un autre dossier avec les titres qui correspondent etc … Avant la création du script que je vais détaillé plus bas, une personne devait créer à la main les dossiers pour y insérer les documents avec les bons noms, cela devait vraiment être long … Le bout de code que j’ai écrit va donc permettre d’automatiser tout ça !

Une application codée en Visual Basic (avec le framework .NET) existait déjà sur le serveur de l’entreprise. J’y ai donc rajouté un onglet “LOD” contenant plusieurs composants à savoir : un formulaire pour récupérer le nom de la pièce qui nous intéresse, une première checkbox qui va rajouter une couche de dossier spécifique demandée par le client, une deuxième pour savoir si une page de garde est nécessaire, ainsi qu’un bouton pour lancer le script.

Comme je le disais, au clic sur le bouton la fonction va se lancer. Celle-ci va dans un premier temps créer un dossier avec le nom de la pièce à l’emplacement suivant “C:\Sources\temp\”. Ce dossier contiendra d’autres dossiers qui contiendront les documents de chaque pièce. Par la suite,  les informations qui ont été saisies par l’utilisateur, à savoir : le projet, la pièce (ou * qui dans ce cas récupérera toutes les pièces du projet) et la valeur de la checkbox (true ou false) vont être récupérées. On va ensuite se connecter à la liste “LOD” (similaire à une base de données) du projet sur SharePoint pour  télécharger les fichiers PDF des pièces qui nous intéressent. Si une page de garde est demandée un fichier PDF sera créé puis fusionné aux fichiers PDF qui ont été téléchargés.

Après quelques modifications de mon script, le résultat final était satisfaisant (je l’étais aussi car je sais que le faire à la main ne devait pas être amusant et que grâce à ce bout de code je fais gagner du temps à l’entreprise). Une réunion était prévue quelques jours après avec un employé d’ENGIE, celle-ci fera l’objet de mon troisième projet 🙂