JMP est un outil incroyablement puissant pour l'analyse et le traitement des données. Plus précisément, la plateforme Tabulate et les nombreuses autres plateformes produisant des tableaux intégrés permettent aux utilisateurs de générer rapidement et facilement des synthèses et des analyses. Il est fréquent que les utilisateurs souhaitent intégrer ces tableaux dans Microsoft Word, Apache OpenOffice ou LibreOffice. Tous ces outils de création sont compatibles avec la norme Office Open XML, en particulier les fichiers DOCX.
Le module complémentaire que j'ai créé pour cet article est conçu pour faciliter l'intégration des résultats tabulaires de votre session JMP dans un fichier DOCX et exploiter toutes les fonctionnalités de mise en forme et de stylisation. Il utilise le package python-docx ( https://pypi.org/project/python-docx/ ) et l'intégration JMP/Python pour accomplir cette tâche. De plus, il est possible de spécifier un fichier DOCX préalablement créé avec un tableau stylisé existant, ce qui permet de créer des modèles de mise en forme pour le tableau JMP. Enfin, si le modèle DOCX contient des balises (texte du document commençant par ${JMP_ et se terminant par un }, par exemple ${JMP_TABLE1}), le module intégrera le tableau à l'emplacement de la balise.
Le module complémentaire est écrit avec une fonction autonome qui peut être appelée depuis l'extérieur de l'interface utilisateur, offrant aux utilisateurs la possibilité d'intégrer la création des tables DOCX dans des processus de flux de travail nouveaux ou existants.
Interface utilisateur de la table Tabulate to DOCX
L'installation du module complémentaire dans votre session JMP installera le package python-docx dans votre environnement JMP Python et créera un élément de menu dans le menu Modules complémentaires :
Cliquer sur cet élément de menu lancera l'interface utilisateur et rassemblera une liste de tous les tableaux et tableaux de votre session JMP.
Si vous ouvrez de nouveaux tableaux ou créez de nouveaux tableaux après avoir lancé l'interface utilisateur, vous pouvez cliquer sur le bouton d'actualisation pour mettre à jour la liste. Sélectionner un tableau ou un tableau dans la liste affichera une miniature de la sélection. Si aucun fichier DOCX modèle n'est sélectionné, le tableau DOCX sera généré sans aucun style appliqué.
Le bouton Parcourir vous permet de sélectionner un fichier DOCX à utiliser comme modèle. Le module complémentaire fournit quatre exemples de fichiers DOCX et les copie dans votre dossier DOCUMENTS. Le bouton Afficher ouvre le modèle DOCX sélectionné dans l'application par défaut pour la visualisation et la modification des fichiers DOCX. Le fichier TabulateToDocxTableTemplate1.docx contient le tableau stylisé suivant :
En utilisant ce modèle, la sortie générée ressemble maintenant à :
TabulateToDocxTableTemplate2 et 3 sont simplement des styles de tableau différents.
Le quatrième modèle illustre la fonctionnalité de balisage. Lorsqu'il est sélectionné, une nouvelle option s'affiche dans l'interface utilisateur, vous permettant de sélectionner la balise dans laquelle insérer le tableau.
Désormais, au lieu de créer un document vide avec uniquement le tableau stylisé, il est inséré dans le document à l'emplacement de la balise en utilisant le style de tableau dans le paragraphe juste après la balise :
Comme indiqué précédemment, lorsque le module complémentaire est bloqué, cette fonctionnalité existe également en tant que fonction autonome, pouvant être appelée depuis d'autres processus JSL. Les arguments sont décrits ci-dessous :
// TabulateToDocxTable:createDocxTable is a function that uses Python to generate a three-line DOCX version of a JMP Tabulate.
//
// tb - required - a reference to a JMP Table, TabulateBox (DisplayBox), or a Tabulate platform
// templatePath - optional - a string for the path of a DOCX file from which to glean the table styling (default Empty() - use the default styling)
// tag - optional - a string for the ${...} enclosed text in the DOCX template that the rendered table will replace. Specifying this option will first copy the DOCX
// into the outputFilePath and modify that copy of the DOCX
// outputFilePath - optional - a string for the path where to write the DOCX file (default "$DOCUMENTS/JMPDocxTable.docx" - JMPDocxTable.docx in the user's Documents folder)
//
TabulateToDocxTable:createDocxTable = function({tb, templatePath=Empty(), tag=Empty(), outputFilePath=Empty()})
Le module complémentaire fonctionnera sur les versions JMP 18 et 19 et sur les plates-formes Windows et Mac.
:megaphone: Nous voulons vos commentaires !
Nous testons une fonctionnalité légèrement différente et aimerions connaître votre avis sur cette fonctionnalité. Après avoir découvert le module complémentaire, veuillez prendre quelques instants pour répondre au sondage suivant.