Lautsprecher | Transkript |
| Brian Corcoran | Willkommen zum Morgen-Update. Dies ist mein Vortrag für JMP Discovery Europe 2021. |
| Mein Name ist Brian Corcoran und ich bin JMP-Entwicklungsmanager. |
| Was hoffen wir also heute zu tun? |
| Ich möchte Ihnen zeigen, wie Sie einen Bericht in JMP basierend auf einem internetbasierten Datenanbieter mithilfe eines REST-Protokolls erstellen. |
| Sobald wir das getan haben, werde ich Ihnen vorstellen, wie wir diesen Bericht mithilfe der aktualisierten JMP-Skript-Engine, die wir in JMP 16 integriert haben, in JMP Live veröffentlichen können. |
| Abschließend zeige ich Ihnen, wie Sie diesen Test automatisieren können, sodass jeden Tag, wenn Sie zur Arbeit kommen, die Berichte bereits für Sie aktualisiert wurden und Sie sie einfach bei Ihrem Morgenkaffee oder Tee ansehen können. |
| Okay, also lassen Sie uns zunächst über Internet-Datenanbieter sprechen. |
| Die meisten von ihnen basieren auf einem sogenannten REST-Protokoll. |
| Es handelt sich um einen zustandslosen Aufruf, der im Wesentlichen wie eine URL aussieht, an deren Ende einige Parameter angehängt sind, und immer mehr Organisationen verwenden ihn, um ihre öffentlichen Daten Endbenutzern zugänglich zu machen. Einige Beispiele sind die Weltbank, die US-Volkszählung und Google. |
| Deshalb verfügt JMP über eine Funktion, die Ihnen bei dieser sogenannten HTTP-Anfrage helfen kann. Es ermöglicht Ihnen den Zugriff auf diese Dienste. Normalerweise verwenden sie ein sogenanntes GET- oder POST-Verb, um zu diesen zu gelangen. Mit HTTP-Anfragen können Sie diese verwenden. |
| Für diesen speziellen Bericht werde ich das Johns Hopkins COVID verwenden |
| REST-API mit einigen Daten aus der Pandemie. |
| Johns Hopkins ist also die Universität der Vereinigten Staaten, die diese Daten aus aller Welt aggregiert und dann diese kostenlose öffentliche API für den Zugriff bereitstellt. |
| Jetzt gibt es auch eine Premium-Version davon, die Ihnen einen besseren Zugriff und eine größere Granularität der Daten ermöglicht, aber wir werden zunächst versuchen, mit der kostenlosen Version auszukommen, und hoffentlich können Sie einige der Skripte übernehmen die ich Dir schenke und probiere sie selbst aus. |
| Wie sieht also die REST-API aus? Also, |
| Lass uns einen Blick darauf werfen. |
| Hier ist ein Beispiel von Johns Hopkins. |
| Es beginnt mit dieser Basis-URL, in diesem Fall der API, der COVID19API.com. Und hier können Sie sich die URL ansehen und sagen: „Hey, wir fragen nach der Gesamtzahl der bestätigten Fälle für ein Land.“ |
| Wenn Sie dieses Land in Klammern sehen, müssen Sie den Namen tatsächlich eingeben. In meinem Fall verwende ich Deutschland (sie verwenden die englischen Namen), |
| Aber es gibt wahrscheinlich 100 Länder, in denen Sie das ausprobieren könnten. |
| Bei Johns Hopkins müssen Sie ein Start- und Enddatum angeben |
| nach dieser Basis-URL, wo Sie das Fragezeichen sehen. Und das sind im Wesentlichen Parameter für diesen API-Aufruf, den Sie durchführen, und der es uns ermöglicht, zurückzukehren |
| Werte innerhalb des von uns angegebenen Datumsbereichs. |
| Und es ist so ein langes Format. Es ist |
| der Monat...das Jahr, der Monat und der Tag, T für die Zeit und dann die 24-Stunden-Zeit mit einem angehängten Z. |
| Glücklicherweise verfügt JMP über Einrichtungen, die Ihnen dabei helfen können. Sie können einen Formataufruf verwenden, und heute geben wir Ihnen die genaue aktuelle Uhrzeit zusammen mit dem Datum an, und wir geben die Formatzeichenfolge an, die wir verwenden möchten, und dann können wir am Ende einfach ein Z anhängen erhalten |
| das Format, das wir für Johns Hopkins brauchen. |
| Also, wie ich bereits erwähnt habe, |
| REST-Aufrufe verwenden normalerweise entweder ein GET- oder ein POST-Postverb. Johns Hopkins verwendet ein GET; Ich werde für eine Minute aus PowerPoint herausspringen, um das zu zeigen. |
| Wenn Sie auf die Website gehen, die ich dort hatte, in der |
| Folie oder auch im Papier, |
| Sie werden sehen, dass es die APIs nach Typ bereitstellt und Ihnen im Wesentlichen zeigt, wie Sie die Informationen weitergeben und was Sie hier zurückerhalten. |
| Okay, also können Sie hier mal durchgehen und sehen, was jeder benötigt, und Sie werden sehen, dass es Premium-Kategorien gibt, bei denen Sie so viel pro Monat bezahlen müssen, um darauf zuzugreifen. |
| Okay. |
| So. |
| Was bekommst du zurück? Nun, Sie erhalten JSON zurück, das nur aus einer Reihe von Zeichenfolgen in Name-Wert-Paaren besteht (z. B. Groß-/Kleinschreibung, Doppelpunkt und dann eine numerische Zeichenfolge). |
| Das wird die Anzahl der Fälle für diese spezielle Beobachtung darstellen, in Ordnung. Und JMP verfügt über gute Möglichkeiten, auf JSON zuzugreifen, und das zeigen wir Ihnen gleich. |
| Hier ist unser eigentlicher HTTP-Request-Aufruf. Wir übergeben einfach unsere URL, die gewünschte Methode, nämlich GET, und dann diese sichere Null. Warum machen wir das? |
| Nun, Johns Hopkins ist eine öffentliche API und möchte kein Secure Socket Layer oder SSL verwenden, also müssen wir das deaktivieren, sonst schlägt der Aufruf fehl. |
| Und dann führen wir einfach unseren Aufruf mit dem Sendebefehl durch und unser JSON wird in den Daten zurückgegeben. |
| Lassen Sie uns also einen kleinen Einblick in ein Skript geben. Ich werde PowerPoint verlassen und JMP aufrufen. |
| Ich verwende JMP Pro 16, aber das funktioniert auch mit normalem JMP. |
| Und ich möchte erwähnen, dass dieses Skript zusammen mit dem Papier, das wir uns ansehen werden, in den Konferenzmaterialien enthalten ist. |
| Okay, also. |
| Was mache ich hier zum Einrichten? Zunächst möchte ich sagen, dass ich meinen...Dokumentenordner verwende, um meine Daten zu speichern, und ich werde sie in einer Tabelle namens covid19_de.jmp speichern. |
| Später werde ich einen Bericht erstellen und sicherstellen, dass er immer diesen Namen hat. In diesem Fall ist es sehr wichtig, dass es sich um einen standardisierten Namen handelt, und ich werde Ihnen später zeigen, warum. |
| Zum Schluss konvertiere ich einfach den Pfad meines Dokuments in meinem Namen und meiner Datei in einen vollständigen Pfad zur Verwendung. |
| Okay, wir werden uns hier nicht um diese Datumsformatierungsfunktion kümmern, sondern uns mit der Art und Weise befassen, wie wir unsere Daten erfassen. |
| Richtig, wir werden hier also ein Muster verwenden, und das heißt: |
| Wir gehen davon aus, dass wir das Skript noch nie zuvor ausgeführt haben. Jetzt, |
| Wenn wir keine Datei finden, in der wir zuvor Daten gesammelt haben, erstellen wir eine Datentabelle und füllen sie mit Werten. Wenn wir jedoch bereits eine Datentabelle finden, aktualisieren wir die Tabelle einfach mit den Daten des letzten Tages, also nur mit einem Wert, in Ordnung. |
| Und so müssen wir uns keine Gedanken darüber machen, ob wir das schon einmal gemacht haben oder nicht. Wir können dieses Skript einfach blind ausführen, Sie können es jemand anderem geben. Es wird für sie funktionieren. |
| Okay, also hier |
| Wir sagen: Wenn unsere Datei existiert, unsere Datentabelle im Dokumentenordner, öffnen Sie sie einfach und setzen Sie übrigens dieses Flag, um anzuzeigen, dass wir bereits Daten haben. |
| Ansonsten erstelle ich eine Datentabelle mit Datum, Spalte, Fällen und täglicher Änderung. |
| Rechts. |
| Im nächsten Teil formatieren wir nun unsere Zeichenfolgen für den Anruf bei Johns Hopkins. Denken Sie daran, dass wir einen Von- und Bis-Bereich benötigen. Okay, hier ist die Zeichenfolge, die wir uns bereits angesehen haben. Dies gilt für den heutigen Wert. |
| Okay, also für den Fall, dass ich nur den Wert von ... benötige. |
| der Wert des aktuellen Tages, ich aktualisiere nur meine Daten. |
| Ich werde im Wesentlichen von gestern auf heute übergehen. Okay, also erstelle ich „Gestern“, indem ich „Heute minus zwei Tage“ sage, und gehe zu „Heute“. |
| Ich mache zwei Tage, denn abhängig von der Zeit und dem Zeitpunkt, zu dem die Daten bei Johns Hopkins aktualisiert werden, erhält man manchmal einen Wert, manchmal zwei. |
| Wenn ich ... wenn ich zwei bekomme, nehme ich einfach den aktuellsten Wert, aber ich möchte sicherstellen, dass ich etwas bekomme. |
| Okay, als nächstes möchte ich ein Startdatum haben, wenn ich noch nie Daten erhalten habe. Jetzt werde ich willkürlich am 1. September 2020 beginnen; man konnte alles hineinlegen, was man wollte. Hier sehen Sie, dass ich tatsächlich den 31. August verwende, weil Johns Hopkins uns das eigentlich nicht gibt |
| einen Wert für die Veränderung zwischen Tagen, sodass Sie nur die Gesamtzahl der kumulierten Fälle für Pandemiedaten erhalten. Um die Änderung zu berechnen, muss ich also subtrahieren |
| heutiger Wert vom gestrigen Wert. |
| Nun, wenn ich am 1. September beginnen möchte, benötige ich die Daten vom 31. August, um die Änderung für den 1. September zu berechnen. Deshalb machen wir das. |
| Wenn Sie bei Johns Hopkins für die Premium-API bezahlen, ist das möglich |
| Holen Sie sich den Änderungswert. |
| Okay, hier ist unsere URL, die wir zuvor besprochen haben. |
| Okay, das ist hier wichtig. Wenn wir Daten haben, die besagen, dass unsere URL erst gestern beginnt, dies aber nicht der Fall ist, und wir diese if-Anweisung verwenden, wenn nicht, dann beginnen wir mit dem 1. September, unserem Startdatum . |
| Und dann gehen wir einfach zu heute. |
| Ich zeige diese URL nur zu Debugging-Zwecken, aber hier stellen wir dann tatsächlich unsere Anfrage und senden den Aufruf. |
| Rechts. |
| Ich habe ein wenig gewartet, um sicherzustellen, dass es ausgeführt werden kann. |
| Und hier erhalten wir unsere JSON-Daten zurück, und hier verfügt JMP über eine wirklich praktische Funktion dafür. |
| Parse JSON nimmt diesen großen Stringblock und zerlegt ihn in ein Array von Name-Wert-Paaren. Sie können dann Elemente in diesem Array aufrufen, um herauszufinden, wie viele Daten Sie erhalten haben. |
| und Sie können diese Daten als Array mit Array-Indizes referenzieren. |
| Okay. |
| Lassen Sie uns nun ein wenig nach unten navigieren. |
| Hier füllen wir unsere Datentabelle aus. Wenn wir bereits Daten haben, |
| Dann fügen wir der Tabelle am Ende einfach eine Zeile hinzu. |
| Und wir werden diesen Datenwert zusammen mit unserem Wechselgeld eingeben, das wir aus dem heutigen Wert gegenüber dem gestrigen Wert berechnen, in Ordnung. |
| Dann speichern wir es einfach ab. |
| Jetzt. |
| Wenn wir es noch nie zuvor erstellt haben, addieren wir die Anzahl der Zeilen, die wir haben, minus eins, weil es Kopfzeileninformationen gibt, und dann gehen wir dies durch und berechnen alle unsere täglichen Änderungen. |
| Datumswerte und |
| Tragen Sie die Falldaten in die Tabelle ein. Und ich denke, ich werde hoffentlich zeigen, dass wir jetzt bei etwa 163 Tagen oder so ähnlich sind, indem ich das jetzt ganz von vorne durchführe. |
| Und dann speichern wir diese Tabelle im Dokumentenordner. |
| Okay, jetzt, da wir die Daten haben, können wir über die Veröffentlichung auf JMP Live nachdenken. |
| Aber dies ist wahrscheinlich eine gute Gelegenheit für mich, zu beschreiben, wie Sie JSL in JMP Live programmieren und wie wir es in JMP Live 16 und JMP 16 geändert haben. |
| Lassen Sie mich das mit diesem Vortrag verbundene Papier zur Sprache bringen, und Sie werden es auch in der Community haben. |
| Okay, in JMP 16 haben wir das Skripting umgeschrieben, um es hoffentlich leistungsfähiger, aber einfacher zu verwenden, und das Skripting dreht sich um die Idee, eine Verbindung oder verwaltete Verbindungsinformationen zu speichern. |
| So. |
| Was passiert, ist, dass wir JMP noch einmal aufrufen. |
| Ich zeige Ihnen, was das bedeutet. Sie gehen zum Ablegen, Veröffentlichen und Verwalten von Verbindungen. |
| In Ordnung. |
| Und wir können einen hinzufügen. |
| Hier geben Sie einen Verbindungsnamen Ihrer Wahl und dann die URL an, bei der JMP Live im Wesentlichen selbst ein REST-Dienst ist und unter der sich Ihre JMP Live-Site befindet. Wenn Ihr Administrator einen geheimen API-Schlüssel benötigt, um die Skripterstellung zu ermöglichen, müssen Sie ihn hier angeben. |
| Wenn Sie dies tun und auf die Schaltfläche „Weiter“ klicken, werden Sie dazu aufgefordert, was höchstwahrscheinlich von Ihrem Authentifizierungsmechanismus für Anmeldeinformationen abhängt. |
| Wenn Sie diese eingeben, erhalten Sie im Wesentlichen ein Zugriffstoken, das heißt, es speichert es für Sie auf der Festplatte, nicht Ihre Anmeldeinformationen, sondern nur dieses Zugriffstoken, das Ihnen den Zugriff auf diese Site und das Erstellen von Skripts für sie ermöglicht. |
| Auf diese Weise können Sie, ohne diese Informationen im Skript angeben zu müssen, einfach auf den von Ihnen angegebenen Verbindungsnamen verweisen. Und ich zeige Ihnen zum Beispiel eines, das ist JMP Live Daily, das ich verwenden werde. Hier ist meine URL, mein API-Schlüssel. |
| Ich kann einfach auf JMP Live Daily verweisen und es wird wissen, wie eine Verbindung innerhalb meines Skripts hergestellt werden soll. |
| Okay. |
| Um dann die Verbindung herzustellen, sage ich einfach „Neues JMP Live“ und den Namen meiner Verbindung. Jetzt sage ich: Lassen Sie uns bei Bedarf nachfragen. Was bedeutet das? Nun ja, aus irgendeinem Grund |
| Wenn Ihre Anmeldeinformationen, wie Sie wissen, ablaufen oder Ihr Zugriffstoken veraltet ist, werden Sie aufgefordert, Ihre Anmeldeinformationen einzugeben |
| sobald das Skript startet. Wenn Sie dies nicht angeben und Ihre Anmeldeinformationen abgelaufen sind, schlägt das Skript einfach fehl. |
| Okay. Wie veröffentlichen wir eigentlich einen Bericht auf JMP Live? Okay, hier ist ein Beispiel für eine einfache Bivariate, bei der Ihnen möglicherweise die große Klasse ausgeht. |
| Um daraus einen veröffentlichten Bericht zu machen, sagen Sie einfach: Erstellen Sie einen neuen Webbericht und weisen Sie ihn einer Variablen zu. |
| Und dann nehme ich diese bivariate Referenz und sage: Fügen Sie diesen Bericht dem Webbericht hinzu. |
| Und ich werde optional einen Titel und eine Beschreibung angeben. |
| Und dann rufe ich einfach „Publish“ auf und die Veröffentlichung gibt ein Ergebnis zurück. |
| Okay, und wir veröffentlichen möglicherweise bis zu JMP Live und sehen in etwa so aus. |
| Wenn wir wollen, wird uns das Ergebnis sagen, ob es uns gelungen ist, und da wir eigentlich die Öffentlichkeit sind... ist die Veröffentlichung eigentlich wie ein HTTP-Aufruf, wir können uns den Status ansehen, wenn wir das wünschen, oder eine Fehlermeldung . Okay. |
| In Ordnung. |
| Das andere Interessante ist |
| Wenn das Ergebnis unseres Vorgangs ... wie das Hinzufügen eines Berichts oder eines Ordners zu JMP Live ist, enthält das Ergebnis, das wir zurückerhalten, Informationen, die es uns ermöglichen, dieses Element weiter zu bearbeiten. |
| Wir können dies „As Scriptable“ nennen, um diese Informationen zu verwenden, um innerhalb der Skripterstellung ein Objekt wie einen Bericht zu erstellen, auf das wir dann zugreifen können. Nachdem ich dies getan habe, kann ich beispielsweise den Bericht verwenden und meinen Berichtstitel festlegen. Es wird zu JMP Live aufgerufen und der Berichtstitel geändert. |
| Okay. |
| Die ganze Idee von JMP Live dreht sich jetzt um die Manipulation von Berichten und Ordnern, das Durchsuchen von Ordnern, die Suche nach Berichten und dergleichen. |
| Der Bericht versteht |
| dass es eine Kennung hat. Und dieser Bezeichner ist, wenn man ihn genau betrachtet, eine lange alphanumerische Zeichenfolge, die wirklich umständlich in ein Skript einzugeben oder sich zu merken wäre. |
| Aber es ist auch erforderlich, dass Sie diesen Bericht eindeutig identifizieren. Und der Grund, warum Sie es möglicherweise eindeutig identifizieren möchten: Nehmen wir an, Sie möchten es löschen. |
| Sie teilen JMP Live mit, dass Sie den Bericht löschen möchten, und dann kann der Bericht ... Sie können die Get ID für dieses Berichtsobjekt verwenden, um diese eindeutige ID anzugeben, damit JMP Live weiß, welche entfernt werden muss. |
| Ich zeige Ihnen diese speziellen Artikel, weil sie in unserem wichtig sein werden |
| ultimatives Drehbuch, das wir produzieren wollen. |
| Der andere Bereich, in dem es wirklich wichtig sein kann, den Ausweis zu kennen, ist die Suche. |
| Jetzt kann ich hier Berichte finden. Nehmen wir zum Beispiel an, ich möchte alle bivariaten Berichte finden, die mit Biv beginnen. Dann kann ich einfach JMP Live bitten, Berichte zu finden und eine Ergebnisliste zurückzugeben. Dann kann ich diese Liste tatsächlich in eine Liste von Berichten umwandeln. |
| In dieser Berichtsliste gibt es eine Funktion namens „Anzahl der Elemente abrufen“, mit der ich jedes einzelne Element nach dem Index durchgehen kann. |
| Und dann, wenn ich möchte, könnte ich sie alle löschen, wenn ich möchte, in Ordnung. Die Suchfunktion ist also neu und wir hoffen, dass Sie sie für umfangreiche Vorgänge auf einer JMP Live-Site recht leistungsfähig nutzen können. |
| Nun, es gibt noch eine Operation, die wir noch angehen müssen, bevor wir wirklich bereit sind, unser Skript ein wenig näher vorzuführen. |
| Und das sind Aktualisierungsdaten. |
| Also in JMP Live 16, |
| Wir haben die Möglichkeit hinzugefügt, nur die Daten für einen Bericht zu aktualisieren, ohne den gesamten Bericht wieder in JMP Live veröffentlichen zu müssen. |
| Nehmen wir an, Sie erhalten einen Bericht genau so, wie Sie ihn möchten, und vielleicht ist er ein wenig angepasst, Ihnen gefällt das Erscheinungsbild und Sie möchten sich nicht damit herumschlagen. |
| Sie möchten die Daten aber aktualisieren und neu berechnen lassen. Nun können Sie einfach die Datentabelle für diesen Bericht an JMP Live übergeben und so auch die Übertragungszeit verkürzen. |
| Dazu rufen Sie „Daten aktualisieren“ auf, geben die Berichts-ID an und geben dann einfach die Datentabelle mit den aktualisierten Daten ein. |
| Der Bericht wird in JMP Live neu berechnet, sodass Sie dies nicht auf Ihrem Desktop tun müssen. |
| und jeder, der sich diesen Bericht gerade ansieht, wird auch die Aktualisierung sehen. |
| Okay, jetzt haben wir sozusagen alle Werkzeuge, die wir brauchen, um unser Skript tatsächlich zu erstellen, also werfen wir einen Blick darauf. |
| In Ordnung. |
| So, |
| Hier erstelle ich meine JMP Live-Verbindung. |
| Und jetzt werde ich ein Kontrolldiagramm erstellen. Nun ist eine Kontrollkarte wirklich nicht das Ideal |
| Analyseplattform für diese Daten, warum verwende ich sie also? Nun, zwei Gründe. Erstens ist es schön, die täglichen Veränderungen zu sehen. |
| und zweitens ermöglicht es mir, die Tatsache zu untermauern oder anzukündigen, dass wir in JMP Live 16 eine weitere neue Funktion haben, und zwar die Anzeige von Kontrollkartenwarnungen. |
| Wenn Sie Kontrollkarten veröffentlichen und es Beobachtungen gibt, die außerhalb der Grenzen liegen |
| das würde eine Warnung auf dem Desktop erzeugen, nun, wenn Sie es in JMP Live veröffentlichen oder die Daten aktualisieren, |
| JMP Live kann auch Warnungen generieren, die an jeden gesendet werden, der diesen Bericht abonniert hat und eine E-Mail oder eine Benachrichtigung innerhalb der Website erhalten möchte, dass etwas außerhalb der Grenzen liegt. Dies kann für Dinge wie die Prozesssteuerung sehr nützlich sein. |
| Also meine Kollegen |
| Ich halte gerade einen Vortrag über Warnungen in Kontrollkarten, und ich empfehle Ihnen, sich das auch anzusehen, wenn Sie Gelegenheit dazu haben. |
| Wie habe ich das generiert? Nun, ich bin gerade zu JMP gegangen, und zwar mit einigen älteren Daten, und Sie wissen zum Beispiel, dass es in JMP eine Funktion gibt, wenn Sie eine Analyse durchführen, bei der Sie einfach „Skript im Skriptfenster speichern“ sagen können. |
| Ich habe diese Informationen einfach genommen und in dieses Skript eingefügt, das ist also ziemlich praktisch. |
| Okay. |
| Kommen wir also zum Kern der Art und Weise, wie wir einen Bericht veröffentlichen werden, und ich verspreche Ihnen, dass wir das tun werden |
| Führen Sie dies in Kürze durch. |
| Okay, also. |
| Ich werde hier noch einmal ein Muster haben. Ich werde nach dem Bericht suchen, um zu sehen, ob er bereits auf JMP Live verfügbar ist. |
| Wenn dies nicht der Fall ist, werde ich es veröffentlichen, aber wenn es dort bereits vorhanden ist, nehme ich einfach die aktualisierte Datentabelle, die wir zuvor erstellt haben |
| und ich werde dies bereitstellen, um die Daten auf der Serverseite zu aktualisieren und den Bericht bei Bedarf neu berechnen zu lassen. |
| Also gut, wie mache ich das? Zuerst werde ich nach unserem Bericht suchen (und denken Sie daran, dass wir einen standardisierten Berichtsnamen verwenden, den ich zuvor angegeben habe, sodass wir immer nach demselben suchen). |
| Und ich sage auch: Nur von mir veröffentlicht, nur für den Fall, dass jemand anderes einen Bericht mit demselben Namen hat. Das würde ich nicht haben wollen. |
| Alles klar, ich mache daraus eine Liste, die ich mir ansehen kann. Und wenn die Anzahl der |
| Berichte ist Null, das heißt, ich habe keinen zuvor veröffentlichten Bericht gefunden. |
| Ich werde also einen neuen Webbericht erstellen, die Ausgabe meines Kontrolldiagramm-Generators hinzufügen und ihn veröffentlichen. Und ich möchte sicherstellen, dass es für alle verfügbar ist, indem ich Public(1) sage. |
| Wenn ich einen gefunden habe, nehme ich diesen Bericht, der auf den ersten zurückgegebenen Artikel verweist, und aktualisiere die Daten hier einfach unter Verwendung unserer aktualisierten Tabellen, die wir zuvor erstellt haben. |
| Der Rest davon sind lediglich Debugging-Informationen, die ich im Protokoll angezeigt habe, um zu sehen, ob alles in Ordnung gelaufen ist, aber das ist nicht wirklich notwendig. |
| Abschließend habe ich hier noch eine Quit-Anweisung. |
| Wenn wir das später tatsächlich automatisieren, |
| Dies ist wichtig, da JMP alle Fenster herunterfahren und schließen soll. Andernfalls könnte es bei der nächsten Ausführung einen Blick darauf werfen und feststellen, dass JMP bereits ausgeführt wird, und denken, dass Dinge von einem früheren Vorgang hängen geblieben sind. |
| Für den interaktiven Betrieb werde ich dies jedoch jetzt auskommentieren. |
| Okay. |
| Also ich |
| Ich denke, wir sind bereit, hierher zu gehen. Wir können es versuchen und hoffen auf das Beste. Manchmal ist Johns Hopkins sehr beschäftigt und lehnt die Anfrage zum Erhalt der Daten tatsächlich ab, was jedoch bedauerlich wäre |
| Lasst uns das ausprobieren. |
| Und nur um Ihnen zu zeigen, dass ich zu diesem Zeitpunkt im Dokumentenordner keine JMP-Tabelle mit dem Namen habe, den ich spezifiziere, und wenn ich zu gehe |
| Auf der JMP Live-Site, auf der ich veröffentlichen möchte, sehen wir keine |
| Ausgabe vom Control Chart Builder dort. |
| Okay, also probieren wir es mal aus. |
| Richtig, da ist unsere Kontrollkarte. |
| Ich werde JMP Live aktualisieren. |
| Okay, da ist die Ausgabe unseres Kontrolldiagramm-Generators. Dieser hatte Warnungen. |
| Wenn wir uns das in JMP Live ansehen, |
| Wir können mit der Maus über Punkte fahren und sehen, was die neuesten Daten sind. Dies ist für den 10. Februar; Ich bin am 11., also haben wir aktuelle Daten. Basierend auf dem gleitenden Durchschnitt von Januar und Ende Dezember gelten diese Daten als außer Kontrolle geraten. |
| Stimmt, so weit, so gut. |
| Wenn ich |
| Öffne meinen Dokumentenordner und aktualisiere ihn. |
| Wir können sehen, dass unsere JMP-Tabelle erstellt wurde. |
| In Ordnung. |
| So, und wir sehen jetzt, dass dies vor einer Minute veröffentlicht wurde. |
| Okay, also machen wir weiter und schließen das Ganze. |
| Und wir werden ... eigentlich wollte ich das nicht tun ... Moment mal. |
| Wir werden hier ein wenig schummeln. |
| Machen wir weiter und löschen den letzten Wert, den wir erhalten haben, richtig. Dann werden wir das speichern |
| und schließen Sie es, okay. Also werden wir die Tatsache simulieren, dass wir es heute noch nicht ausgeführt haben, und dann werden wir es noch einmal ausführen. |
| Okay, rufen Sie einfach den letzten Wert ab. |
| Und wir gehen auf unsere Website. |
| Und wir sehen, dass es sich erst vor ein paar Sekunden wieder regeneriert hat. In diesem Fall haben wir also einfach die Daten aktualisiert und gerade den letzten Wert erhalten. |
| Wenn ich es tun würde |
| zur Sprache bringen |
| meine E-Mail, ich habe zufällig Warnungen abonniert und hoffe, |
| Vielleicht gibt es hier auch ein kleines Update. Wir erhalten Benachrichtigungen darüber |
| Es gibt eine Veröffentlichung in diesem Regelkarten-Generator und es gab Warnungen, und wenn ich möchte, kann ich nachsehen, wo diese fehlgeschlagen sind und welche Punkte außerhalb der Grenzen liegen. |
| Okay. |
| Okay, ich denke, wir sind in einer guten Verfassung, die automatisierte Aufgabe auszuprobieren. Also werde ich fortfahren und diesen Beitrag löschen. |
| Rechts. |
| Lasst uns das abschalten. |
| Schalten Sie das aus. |
| Ich werde unser Quit dort wieder einfügen, weil wir das jetzt brauchen werden, für eine automatische Ausführung in eine Richtung. |
| Und ich werde das schließen. |
| Gehen Sie zum Ordner „Dokumente“ und ich werde ihn löschen |
| unsere Daten und tun so, als würden wir das alles von Grund auf durchführen. |
| Rechts. |
| Und stellen wir sicher, dass JMP heruntergefahren ist. |
| Okay. |
| Jetzt. |
| Wenn Sie einige meiner früheren Discovery-Vorträge gesehen haben, haben Sie vielleicht schon einmal gesehen, wie ich den Aufgabenplaner verwendet habe. Es ist ein beliebtes Thema bei mir. |
| Geben Sie hier unter Windows einfach den Aufgabenplaner ein. Ich hoffe, du hast das gesehen. |
| Auf dem Mac müssten Sie Automator oder einen Chron-Job verwenden. Ich würde Automator vorschlagen. |
| In Ordnung, aber mit dem Aufgabenplaner können Sie nahezu alles regelmäßig ausführen. |
| Also lasst uns weitermachen und |
| eine neue Aufgabe erstellen. Wir erstellen hier einfach eine Aufgabe und benennen sie |
| COVID-Daten für Deutschland. |
| Ich möchte mit hohen Privilegien laufen. |
| Ich werde es nur ausführen, wenn der Benutzer angemeldet ist, da ich keine Anmeldedaten eingeben möchte, aber ich würde es vorschlagen |
| Wählen Sie „Ausführen, wenn der Benutzer angemeldet ist“ oder „Nicht ausführen“, wenn Sie dies für Produktionszwecke tun. |
| Denn wenn Ihr Computer aufgrund eines Windows-Updates oder aus einem anderen Grund neu gestartet wird, möchten Sie, dass er weiterhin ausgeführt wird, und dies ermöglicht Ihnen dies, wenn Sie diese Option angeben. Sie müssen Ihre Anmeldeinformationen eingeben und diese Aufgabe abschließend abschließen. |
| In Ordnung. |
| Was ist das also für Auslöser? Dann möchte ich, dass es läuft, also lasst uns das tun. |
| Nehmen wir an, wir möchten es ab morgen täglich ausführen. |
| Und vielleicht möchte ich es einfach um sechs Uhr morgens laufen lassen, bevor ich morgens einsteige, |
| Was auch immer reinkommt, bedeutet mehr. |
| Bevor ich aus dem Bett rolle und zur Arbeit gehe. In Ordnung. |
| Deshalb werde ich diese Aufgabe stoppen, wenn sie länger als 30 Minuten läuft, weil das wahrscheinlich bedeutet, dass sie hängen bleibt. |
| Und ansonsten denke ich, dass es uns gut geht, dorthin zu gehen. |
| Welche Aktion wollen wir also durchführen? Nun, wir möchten JMP ausführen, also müssen Sie navigieren, wo jmp.exe installiert ist, nämlich in den Programmdateien, in SAS und entweder in JMP oder JMP Pro 16. Gehen Sie voran und wählen Sie das aus. |
| Und dann ist unser Argument unser JSL-Skript, das Sie hier leider manuell eingeben müssen, |
| was ich tun werde. |
| Aber stellen Sie sicher, dass Sie dabei vorsichtig sind. |
| Okay. |
| Jetzt stelle ich unter „Einstellungen“ sicher, dass wir „Immer zulassen“ haben. Es muss bei Bedarf ausgeführt werden, denn so können wir es sofort ausprobieren und sicherstellen, dass es richtig funktioniert. |
| Und wenn bereits einer läuft, stellen Sie sicher, dass Sie ihn stoppen. Das bedeutet wahrscheinlich, dass es hängen bleibt und die Aufgabe angehalten wird, wenn sie erneut länger als eine Stunde läuft, nur für den Fall, dass sie hängt. |
| Okay, es gibt also unsere Aufgabe, die wir jeden Tag ausführen müssen. Wir können es also im Wesentlichen debuggen, indem wir es sofort ausprobieren, da wir die Ausführung jederzeit zulassen. Machen wir weiter, klicken Sie mit der rechten Maustaste und sagen Sie „Ausführen“. |
| Hoffentlich sehen wir die Taskleiste. JMP wird kurz hochkommen, laufen und dann verschwinden. |
| Wenn ich hier unten schaue, passiert hoffentlich etwas. |
| Okay, und dann ist es weg. |
| Werfen wir einen Blick auf unsere Website; es wird das auffrischen. |
| Und da ist unser Bericht, der vor ein paar Sekunden erstellt wurde. |
| Wenn wir uns unseren Ordner ansehen, können wir sehen, dass unsere JMP-Tabelle generiert wurde und hoffentlich morgen früh um 6 Uhr morgen früh |
| Unsere Aufgabe wird ausgeführt und liefert uns einen neuen Datenstapel und einen aktualisierten Bericht. Und wenn wir mit unserem Kaffee oder Tee hereinkommen, können wir einen Blick darauf werfen und unsere Entscheidungen für den Tag treffen. |
| Damit ist mein Vortrag abgeschlossen. Ich hoffe, dass einer der drei Aspekte, die wir heute besprochen haben, |
| internetbasierte Datenerfassung, |
| JMP Live-Scripting oder automatisierte Aufgabengenerierung hat Ihnen bei Ihrer Arbeit geholfen. |
| Vielen Dank für Ihre Teilnahme und ich hoffe, dass Sie den Rest der Konferenz genießen. Tschüss. |