JMP ist ein unglaublich leistungsstarkes Tool zur Analyse und Bearbeitung von Daten. Insbesondere die Tabulate-Plattform und viele andere Plattformen, die eingebettete Tabellen erstellen, ermöglichen es Benutzern, schnell und einfach Zusammenfassungen und Erkenntnisse zu generieren. Häufig werden diese Tabellen in Microsoft Word oder Apache OpenOffice bzw. LibreOffice eingebettet. Alle diese Authoring-Tools können den Office Open XML-Standard lesen und schreiben – insbesondere DOCX-Dateien.
Das für diesen Beitrag erstellte Add-In soll die Konvertierung der tabellarischen Ausgabe Ihrer JMP-Sitzung in eine DOCX-Datei erleichtern und alle Formatierungs- und Stilisierungsmöglichkeiten nutzen. Das Add-In nutzt hierfür das Python-Docx-Paket ( https://pypi.org/project/python-docx/ ) und die JMP/Python-Integration. Zusätzlich kann eine zuvor erstellte DOCX-Datei mit einer vorhandenen stilisierten Tabelle angegeben werden, sodass der Benutzer Vorlagen für die Formatierung der JMP-Tabelle erstellen kann. Enthält die DOCX-Vorlage „Tags“ (Text im Dokument, der mit ${JMP_ beginnt und mit einem } endet, z. B. ${JMP_TABLE1}), bettet das Add-In die Tabelle dort ein, wo das Tag vorhanden ist.
Das Add-In ist mit einer eigenständigen Funktion geschrieben, die von außerhalb der Benutzeroberfläche aufgerufen werden kann und Benutzern die Möglichkeit gibt, die Erstellung der DOCX-Tabellen in neue oder bestehende Workflow-Prozesse zu integrieren.
Tabellieren in DOCX-Tabellen-UI
Durch die Installation des Add-Ins in Ihrer JMP-Sitzung wird das Paket python-docx in Ihrer JMP-Python-Umgebung installiert und ein Menüelement im Add-Ins-Menü erstellt:
Wenn Sie auf dieses Menüelement klicken, wird die Benutzeroberfläche gestartet und eine Liste aller Tabellen und Tabellierungen in Ihrer JMP-Sitzung angezeigt.
Wenn Sie nach dem Start der Benutzeroberfläche neue Tabellen öffnen oder neue Tabellen erstellen, können Sie die Liste durch Klicken auf die Schaltfläche „Aktualisieren“ aktualisieren. Wenn Sie eine der Tabellen/Tabellen in der Liste auswählen, wird eine Miniaturansicht der Auswahl angezeigt. Wenn keine DOCX-Vorlage ausgewählt ist, wird die DOCX-Tabelle ohne Formatierung generiert:
Über die Schaltfläche „Durchsuchen“ können Sie eine DOCX-Datei als Vorlage auswählen. Das Add-In liefert vier Beispiel-DOCX-Vorlagen und kopiert diese in Ihren Ordner „DOCUMENTS“. Über die Schaltfläche „Anzeigen“ öffnen Sie die ausgewählte DOCX-Vorlage in Ihrer Standardanwendung zum Anzeigen/Bearbeiten von DOCX-Dateien. Die Datei „TabulateToDocxTableTemplate1.docx“ enthält die folgende stilisierte Tabelle:
Mit dieser Vorlage sieht die generierte Ausgabe jetzt folgendermaßen aus:
TabulateToDocxTableTemplate2 und 3 sind einfach unterschiedliche Tabellenstile.
Die vierte Vorlage demonstriert die Tagging-Funktion. Wenn diese Vorlage ausgewählt ist, wird in der Benutzeroberfläche eine neue Option aktiviert, mit der Sie auswählen können, in welches Tag die Tabelle eingefügt werden soll.
Anstatt nun ein leeres Dokument mit nur der stilisierten Tabelle zu erstellen, wird diese an der Tag-Position in das Dokument eingefügt, wobei die Tabellenformatierung im Absatz direkt nach dem Tag verwendet wird:
Wie oben erwähnt, ist diese Funktionalität mit installiertem Add-In auch als eigenständige Funktion verfügbar, die von anderen JSL-Prozessen aufgerufen werden kann. Die Argumente werden unten beschrieben:
// 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()})
Das Add-In funktioniert mit den JMP-Versionen 18 und 19 sowie auf Windows- und Mac-Plattformen.
:megaphone: Wir möchten Ihr Feedback!
Wir probieren etwas Neues aus und würden gerne Ihre Meinung zu dieser Funktion hören. Nachdem Sie das Add-In kennengelernt haben, nehmen Sie sich bitte einen Moment Zeit, um die folgende Umfrage auszufüllen.