| Oratore |
Trascrizione |
| Brian Corcoran |
Benvenuti all'aggiornamento mattutino. Questo è il mio intervento per JMP Discovery Europe 2021. |
| |
Mi chiamo Brian Corcoran e sono un responsabile dello sviluppo JMP. |
| |
Quindi cosa speriamo di fare oggi? |
| |
Vorrei mostrarvi come creare un report in JMP basato su un fornitore di dati basato su Internet utilizzando un protocollo REST. |
| |
Una volta fatto questo, vi spiegherò come pubblicare questo report su JMP Live utilizzando il motore di scripting JMP aggiornato che abbiamo integrato in JMP 16. |
| |
Infine, ti mostrerò come puoi automatizzare questo test, in modo che ogni giorno, quando arrivi al lavoro, i report siano già stati aggiornati e tu possa visualizzarli mentre prendi il caffè o il tè del mattino. |
| |
Bene, parliamo innanzitutto dei fornitori di dati Internet. |
| |
La maggior parte di essi si basa sul cosiddetto protocollo REST. |
| |
Si tratta di una chiamata stateless, in sostanza si presenta come un URL con alcuni parametri aggiunti alla fine, e un numero crescente di organizzazioni la utilizza per esporre i propri dati pubblici agli utenti finali. Alcuni esempi sono la Banca Mondiale, il Censimento degli Stati Uniti e Google. |
| |
JMP offre una funzionalità per aiutarti in questo, chiamata HTTP Request. Ti permetterà di accedere a questi servizi. In genere, usano un verbo chiamato GET o POST per accedervi. Le HTTP Requests ti permetteranno di utilizzarli. |
| |
Per questo particolare rapporto userò il Johns Hopkins COVID |
| |
API REST con alcuni dati sulla pandemia. |
| |
Quindi la Johns Hopkins è l'università degli Stati Uniti che aggrega questi dati da tutto il mondo e poi fornisce questa API pubblica gratuita per l'accesso. |
| |
Ora esiste anche una versione premium, che offre un accesso migliore e una maggiore granularità dei dati, ma per ora proveremo a usare la versione gratuita e spero che possiate prendere alcuni degli script che vi fornisco e provarli voi stessi. |
| |
Quindi, come si presenta l'API REST? Bene, |
| |
diamo un'occhiata. |
| |
Ecco un esempio dalla Johns Hopkins. |
| |
Si inizia con questo URL di base, che in questo caso è un'API, COVID19API.com. E qui, si può guardare l'URL e dire: "Ehi, stiamo chiedendo il totale dei casi confermati per un Paese". |
| |
Dove vedi questo paese tra parentesi, devi effettivamente inserire il nome. Nel mio caso, userò la Germania (loro usano i nomi inglesi), |
| |
ma ci sono probabilmente 100 paesi in cui potresti provarci. |
| |
Presso Johns Hopkins è necessario fornire una data di inizio e di fine |
| |
dopo questo URL di base, dove vedi il punto interrogativo. Questi sono essenzialmente parametri per questa chiamata API che stai effettuando e che ci permetteranno di restituire |
| |
valori compresi nell'intervallo di date da noi specificato. |
| |
Ed è un formato piuttosto lungo. È |
| |
il mese...l'anno, il mese e il giorno, T per ora e poi l'ora nel formato 24 ore con una Z aggiunta. |
| |
Fortunatamente, JMP offre delle funzionalità che possono aiutarvi in questo. Potete usare una chiamata di formato, e oggi vi forniremo l'ora esatta di questo momento, insieme alla data, e specificheremo la stringa di formato che vogliamo usare, e poi possiamo semplicemente aggiungere una Z alla fine per ottenere |
| |
il formato di cui abbiamo bisogno per la Johns Hopkins. |
| |
Quindi, come ho detto, |
| |
Le chiamate REST in genere utilizzano un verbo post-get o post-post. La Johns Hopkins University usa un GET; uscirò da PowerPoint per un minuto per mostrarvelo. |
| |
Se vai a quel sito web che avevo lì, nel |
| |
diapositiva o anche nella carta, |
| |
vedrai che fornisce le API in base al tipo e ti mostra essenzialmente come passi le informazioni e cosa ti aspetti di ottenere qui. |
| |
Bene, puoi scorrere le varie sezioni, vedere cosa richiede ciascuna e vedere che ci sono categorie premium per le quali devi pagare una certa cifra al mese per accedervi. |
| |
Va bene. |
| |
COSÌ. |
| |
Cosa si ottiene in cambio? Beh, si ottiene JSON, che è semplicemente un insieme di stringhe in coppie nome-valore (ad esempio, caselle, due punti e poi una stringa numerica). |
| |
Questo rappresenterà il numero di casi per questa particolare osservazione, ok. E JMP ha ottime funzionalità per accedere a JSON e ve lo mostreremo tra un minuto. |
| |
Ecco la nostra vera chiamata di richiesta HTTP. Passeremo semplicemente il nostro URL, il metodo che vogliamo, ovvero GET, e poi questo zero sicuro. Perché lo facciamo? |
| |
Bene, Johns Hopkins è un'API pubblica e non vuole usare il Secure Socket Layer (SSL), quindi dobbiamo disattivarlo altrimenti la chiamata fallirà. |
| |
Quindi effettuiamo semplicemente la nostra chiamata con il comando send e il nostro JSON verrà restituito nei dati. |
| |
Quindi entriamo un po' più nel dettaglio dello script. Usciamo da PowerPoint e apriamo JMP. |
| |
Io uso JMP Pro 16, ma funziona anche con la versione standard di JMP. |
| |
Vorrei sottolineare che questo script è allegato ai materiali della conferenza, insieme al documento che esamineremo. |
| |
Va bene, quindi. |
| |
Cosa devo fare qui per impostarlo? Prima di tutto, dirò che userò la mia... cartella documenti come cartella in cui memorizzerò i miei dati, e li salverò in una tabella chiamata covid19_de.jmp. |
| |
Più avanti creerò un report e mi assicurerò che abbia sempre questo nome. È molto importante, in questo caso, che sia un nome standardizzato e vi mostrerò perché più avanti. |
| |
Infine, sto semplicemente convertendo il percorso del mio documento nel mio nome e nel mio file in un percorso completo da utilizzare. |
| |
Bene, non ci preoccuperemo qui di questa funzione di formattazione della data e vedremo nel dettaglio come acquisire i nostri dati. |
| |
Giusto, quindi useremo uno schema qui, e cioè, |
| |
daremo per scontato di non aver mai eseguito lo script prima. Ora, |
| |
Se non troviamo un file in cui abbiamo precedentemente accumulato dati, creeremo una tabella dati e la riempiremo di valori. Tuttavia, se troviamo già una tabella dati, la aggiorneremo semplicemente con i dati degli ultimi giorni, un solo valore, tutto qui. |
| |
In questo modo non dobbiamo preoccuparci di averlo già eseguito prima o meno. Possiamo semplicemente eseguire questo script alla cieca, e puoi darlo a qualcun altro. Funzionerà per loro. |
| |
Bene, ecco qui |
| |
diremo che se il nostro file, la nostra tabella dati nella cartella documenti, esiste, basta aprirla e, a proposito, impostare questo flag per indicare che abbiamo già dei dati. |
| |
Altrimenti creerò una tabella dati con una data, una colonna, i casi e la variazione giornaliera. |
| |
Giusto. |
| |
Ora la parte successiva è formattare le nostre stringhe per la chiamata alla Johns Hopkins. Ricordate che avevamo bisogno di un intervallo "from" e "to". Bene, ecco la stringa che abbiamo già esaminato. Questa è per il valore di oggi. |
| |
Bene, quindi nel caso in cui mi servisse solo il valore di... |
| |
il valore del giorno corrente, sto solo aggiornando i miei dati. |
| |
In pratica, passerò da ieri a oggi. Bene, creerò ieri dicendo oggi meno due giorni e andrò a oggi. |
| |
Io ne uso due perché, a seconda dell'orario e del momento in cui i dati vengono aggiornati alla Johns Hopkins, a volte si ottiene un valore, a volte due. |
| |
Quando...se ne ottengo due, prenderò semplicemente il valore più recente, ma voglio essere sicuro di ottenere qualcosa. |
| |
Bene, la prossima cosa è che, se non ho mai ricevuto dati, voglio avere una data di inizio. Ora inizierò arbitrariamente il 1° settembre 2020; puoi mettere quello che vuoi. Ora vedi che in realtà sto usando il 31 agosto, perché la Johns Hopkins non ci fornisce effettivamente |
| |
un valore per la variazione tra i giorni, quindi ti daranno solo il totale dei casi cumulativi per i dati sulla pandemia. Quindi, per calcolare la variazione, devo sottrarre |
| |
il valore odierno rispetto al valore di ieri. |
| |
Bene, se voglio iniziare il 1° settembre, allora ho bisogno dei dati del 31 agosto per calcolare la variazione del 1° settembre, ed è per questo che lo facciamo. |
| |
Se paghi per l'API premium presso Johns Hopkins, puoi |
| |
ottenere il valore del cambiamento. |
| |
Bene, ecco l'URL di cui abbiamo parlato prima. |
| |
Bene, questo è importante. Se abbiamo dati che indicano che il nostro URL partirà da ieri, ma non è così, e stiamo usando questa istruzione if, in caso contrario, partiremo dal 1° settembre, la nostra data di inizio. |
| |
E poi torneremo a parlare di oggi. |
| |
Mostro questo URL solo per scopi di debug, ma è qui che effettivamente eseguiamo la nostra richiesta e inviamo la chiamata. |
| |
Giusto. |
| |
Aspetto un po' per essere sicuro che abbia la possibilità di funzionare. |
| |
Ed è qui che otteniamo i nostri dati JSON, ed è qui che JMP fornisce una funzionalità davvero utile per questo scopo. |
| |
Parse JSON prenderà questo grande blocco di stringhe e lo scomporrà in un array di coppie nome-valore. Puoi quindi richiamare gli elementi di quell'array per scoprire quanti dati hai ottenuto. |
| |
ed è possibile fare riferimento a tali dati come a un array con indici di array. |
| |
Va bene. |
| |
Adesso scendiamo un po' più in profondità. |
| |
Qui compileremo la nostra tabella dati. Se abbiamo già dei dati, |
| |
quindi aggiungeremo solo una riga alla tabella alla fine, |
| |
e inseriremo il valore di quei dati, insieme alla nostra variazione, che calcoliamo confrontando il valore di oggi con quello di ieri, tutto bene. |
| |
Poi lo salviamo e basta. |
| |
Ora. |
| |
Se non l'abbiamo mai creato prima, allora aggiungeremo il numero di righe che abbiamo, meno uno perché c'è un'informazione di intestazione e poi lo faremo scorrere e calcoleremo tutte le nostre modifiche giornaliere, |
| |
valori di data e |
| |
Inserisci i dati del caso nella tabella. E penso che dimostrerò, sperando di farlo da zero, che siamo a circa 163 giorni. |
| |
Quindi salveremo la tabella nella cartella documenti. |
| |
Bene, ora che abbiamo i dati, possiamo pensare di pubblicarli su JMP Live. |
| |
Ma questa è probabilmente una buona occasione per descrivere...come si programma JSL in JMP Live e come l'abbiamo modificato in JMP Live 16 e JMP 16. |
| |
Vorrei portare alla luce il documento associato a questo intervento, così potrete condividerlo anche nella Community. |
| |
Bene, quindi in JMP 16 abbiamo riscritto lo scripting per renderlo, si spera, più potente ma più facile da usare, e lo scripting ruota attorno all'idea di avere una connessione o informazioni di connessione gestita memorizzate. |
| |
COSÌ. |
| |
Quello che succede è che...avviamo di nuovo JMP. |
| |
Ti mostro cosa significa. Vai su File, Pubblica, Gestisci connessioni. |
| |
Va bene. |
| |
E possiamo aggiungerne uno. |
| |
Qui, puoi specificare un nome di connessione a tua scelta e poi l'URL, dato che JMP Live è essenzialmente un servizio REST, dove si trova il tuo sito JMP Live. Se l'amministratore richiede una chiave API segreta per abilitare gli script, dovrai fornirla qui. |
| |
Quando esegui questa operazione e premi il pulsante Avanti, ti verrà chiesto di confermare le credenziali, molto probabilmente in base al tuo meccanismo di autenticazione. |
| |
Quando li inserisci, ti verrà sostanzialmente fornito un token di accesso, il che significa che il programma memorizzerà sul disco per te non le tue credenziali, ma solo questo token di accesso che ti consentirà di accedere a questo sito e di interagire con esso tramite script. |
| |
In questo modo, senza dover fornire alcuna di queste informazioni nello script, puoi semplicemente fare riferimento al nome di connessione che hai fornito. Te ne mostrerò uno, ad esempio, JMP Live Daily, che è quello che userò. Ecco il mio URL, la mia chiave API. |
| |
Mi basta fare riferimento a JMP Live Daily e saprà come connettersi al mio script. |
| |
Va bene. |
| |
Quindi, per creare la connessione, dico semplicemente "new JMP Live" e il nome della mia connessione. Ora, eccomi qui a dire: "Chiediamo un suggerimento se necessario". Cosa significa? Beh, se, per qualche motivo, |
| |
le tue credenziali, sai, scadono o il tuo token di accesso è vecchio, quindi ti verrà chiesto di inserire le tue credenziali |
| |
Una volta avviato lo script. Se non lo fornisci e le tue credenziali sono scadute, lo script non funzionerà. |
| |
Bene. Quindi, come si pubblica effettivamente un report su JMP Live? Bene, ecco un esempio di una semplice bivariata che potrebbe non essere disponibile nella Big Class, ok? |
| |
Quindi, per far sì che venga pubblicato un report, ti basterà creare un nuovo report web e assegnarlo a una variabile. |
| |
Quindi prenderò questo riferimento bivariato e dirò: aggiungi quel report al report web. |
| |
Facoltativamente, aggiungerò anche un titolo e una descrizione. |
| |
Quindi chiamerò semplicemente publish e publish restituirà un risultato. |
| |
Ok, potremmo pubblicarlo su JMP Live e avere un aspetto del genere. |
| |
Se vogliamo, il risultato ci dirà se siamo riusciti, e poiché in realtà siamo noi il pubblico... la pubblicazione è in realtà come una chiamata HTTP, possiamo controllare lo stato, se lo desideriamo, o un messaggio di errore. Bene. |
| |
Va bene. |
| |
L'altra cosa interessante è |
| |
se il risultato della nostra operazione è...ad esempio l'aggiunta di un report o di una cartella a JMP Live,...il risultato che otteniamo contiene informazioni che ci consentono di manipolare ulteriormente quell'elemento. |
| |
Possiamo chiamarlo "As Scriptable" per usare queste informazioni per creare un oggetto all'interno dello scripting, come un report, a cui possiamo poi accedere. Ad esempio, dopo averlo fatto, posso usare il report e impostarne il titolo. Il report verrà aperto in JMP Live e il titolo verrà modificato. |
| |
Va bene. |
| |
L'idea alla base di JMP Live ora ruota attorno alla possibilità di manipolare report e cartelle, cercare nelle cartelle, cercare report e cose del genere. |
| |
Il rapporto comprende |
| |
Che ha un identificatore. E questo identificatore, a ben vedere, è una lunga stringa alfanumerica che sarebbe davvero difficile da inserire in uno script o da ricordare. |
| |
Ma è anche... necessario per identificare in modo univoco quel report. E il motivo per cui potresti volerlo identificare in modo univoco è, supponiamo, che tu voglia eliminarlo. |
| |
Se comunichi a JMP Live che vuoi eliminare il report, puoi utilizzare l'opzione Ottieni ID su quell'oggetto report per fornire quell'ID univoco, in modo che JMP Live sappia quale rimuovere. |
| |
Ti mostro questi oggetti in particolare perché saranno importanti nel nostro |
| |
la sceneggiatura definitiva che speriamo di produrre. |
| |
L'altro ambito in cui può essere davvero importante sapere che l'ID è in fase di ricerca. |
| |
Ora, qui posso trovare i report. Ad esempio, supponiamo di voler trovare tutti i report bivariati che iniziano con Biv: posso semplicemente chiedere a JMP Live di trovare i report e restituire un elenco di risultati. Quindi posso... trasformare quell'elenco in un elenco di report. |
| |
C'è una funzione chiamata Ottieni numero di elementi in quell'elenco di report che mi consente di scorrere ciascuno di essi in base all'indice. |
| |
E poi, se lo desiderassi, potrei eliminarli tutti, ok? Quindi la funzionalità di ricerca è nuova e speriamo sia abbastanza potente da poter essere utilizzata per eseguire operazioni di grandi dimensioni su un sito JMP Live. |
| |
Bene, c'è un'operazione di cui dobbiamo occuparci prima di essere realmente pronti a mostrare il nostro script un po' più in dettaglio. |
| |
E questi sono i dati aggiornati. |
| |
Quindi in JMP Live 16, |
| |
abbiamo aggiunto la possibilità di aggiornare solo i dati di un report senza dover pubblicare l'intero report su JMP Live. |
| |
Supponiamo che tu riceva un report esattamente come lo desideri, magari un po' personalizzato, che ti piace come aspetto e che non vuoi modificare. |
| |
Ma vuoi aggiornare i dati e farli ricalcolare. Bene, ora puoi passare solo la tabella dati di quel report a JMP Live e, inoltre, ridurre, sai, i tempi di trasmissione. |
| |
e lo fai chiamando Update Data, fornendo l'ID del report e quindi solo la tabella dati con i dati aggiornati. |
| |
Il report verrà ricalcolato su JMP Live, anziché doverlo fare sul desktop, |
| |
e chiunque visualizzi il report vedrà anche l'aggiornamento. |
| |
Bene, ora abbiamo tutti gli strumenti che ci servono per scrivere la nostra sceneggiatura, quindi diamo un'occhiata. |
| |
Va bene. |
| |
COSÌ, |
| |
Ecco dove creo la mia connessione JMP Live. |
| |
E ora creerò un grafico di controllo. Ora, un grafico di controllo non è proprio l'ideale. |
| |
piattaforma di analisi per questi dati, quindi perché la uso? Beh, per due motivi. Primo, è bello vedere i cambiamenti quotidiani, |
| |
e due, mi consente di promuovere o pubblicizzare il fatto che abbiamo un'altra nuova funzionalità in JMP Live 16, ovvero la visualizzazione di avvisi sui grafici di controllo. |
| |
Se pubblichi grafici di controllo e ci sono osservazioni fuori dai limiti |
| |
che genererebbe un avviso sul desktop, beh, quando lo pubblichi su JMP Live o aggiorni i dati, |
| |
JMP Live può anche generare avvisi da inviare a chiunque sia iscritto a quel report e desideri ricevere un'e-mail o una notifica sul sito web che qualcosa è fuori dai limiti. Questo può essere molto utile per applicazioni come il controllo dei processi. |
| |
Quindi i miei colleghi |
| |
Stiamo tenendo una conferenza sugli avvertimenti relativi alle carte di controllo e ti invito a dare un'occhiata anche a quella, se ne hai la possibilità. |
| |
Come l'ho generato? Beh, sono appena andato su JMP e, sai, con alcuni dati più vecchi e, ad esempio, sai che c'è una funzionalità in JMP, se stai facendo un'analisi, dove puoi semplicemente dire "Salva script nella finestra degli script". |
| |
Ho semplicemente preso queste informazioni e le ho inserite in questo script, il che è molto utile. |
| |
Va bene. |
| |
Quindi entriamo nel vivo di come pubblicheremo un rapporto, e vi prometto che lo faremo |
| |
provalo tra un po'. |
| |
Va bene, quindi. |
| |
Anche in questo caso, seguirò uno schema. Cercherò il report per vedere se è già disponibile su JMP Live. |
| |
In caso contrario, lo pubblicherò, ma se è già presente, prenderò semplicemente la tabella dati aggiornata che abbiamo creato in precedenza |
| |
e lo farò in modo da aggiornare i dati sul lato server e fargli ricalcolare il report se lo riterrà opportuno. |
| |
Bene, come si fa? Prima di tutto, cercherò il nostro report (e ricordate che usiamo un nome di report standardizzato che avevo specificato in precedenza, quindi cerchiamo sempre lo stesso). |
| |
E dirò anche che è stato pubblicato solo da me, nel caso in cui qualcun altro avesse un report con lo stesso nome. Non vorrei che succedesse. |
| |
Va bene, lo trasformerò in un elenco che posso consultare. E se il numero di |
| |
reports è zero, significa che non ho trovato alcun report pubblicato in precedenza. |
| |
Quindi creerò un nuovo report web, aggiungerò l'output del mio generatore di carte di controllo e lo pubblicherò. Voglio assicurarmi che sia disponibile a tutti impostando "Pubblico"(1). |
| |
Se ne trovassi uno, prenderei quel report, facendo riferimento al primo elemento restituito, e aggiornerei i dati qui, utilizzando le nostre tabelle aggiornate che abbiamo generato in precedenza. |
| |
Il resto sono solo informazioni di debug che ho mostrato nel registro solo per vedere se tutto è andato bene, ma non sono realmente necessarie. |
| |
Infine, alla fine, ho una dichiarazione di cessazione. |
| |
Quando in seguito andremo effettivamente ad automatizzarlo, |
| |
Questo è importante perché vogliamo che JMP si arresti e chiuda tutte le finestre. Altrimenti, la prossima volta che lo eseguiamo, potrebbe dare un'occhiata e vedere che JMP è già in esecuzione e pensare che qualcosa sia bloccato da un'operazione precedente. |
| |
Tuttavia, per un funzionamento interattivo, lo commenterò subito. |
| |
Va bene. |
| |
Quindi io |
| |
Penso che siamo pronti a partire. Possiamo provarci e speriamo nel meglio. A volte la Johns Hopkins è molto impegnata e può addirittura rifiutare la richiesta di ottenere i dati, il che sarebbe un peccato, ma |
| |
proviamoci. |
| |
E solo per mostrarti, nella cartella documenti a questo punto, non ho una tabella JMP con il nome che sto specificando, e se vado a |
| |
il sito JMP Live su cui spero di pubblicare, non ne vediamo nessuno |
| |
output dal generatore di carte di controllo. |
| |
Bene, proviamoci. |
| |
Giusto, ecco il nostro grafico di controllo. |
| |
Voglio aggiornare JMP Live. |
| |
Ok, ecco l'output del nostro generatore di carte di controllo. Questo aveva degli avvisi. |
| |
Se osserviamo questo all'interno di JMP Live, |
| |
Possiamo passare il mouse sui punti e vedere i dati più recenti. Questo è del 10 febbraio; io sono all'11, quindi abbiamo dati aggiornati. Questi sono dati considerati fuori controllo, in base alla media mobile di gennaio e fine dicembre. |
| |
Bene, fin qui tutto bene. |
| |
Se io |
| |
apri la mia cartella documenti e aggiornala, |
| |
possiamo vedere che la nostra tabella JMP è stata creata. |
| |
Va bene. |
| |
Bene, vediamo che questo è stato pubblicato un minuto fa. |
| |
Bene, andiamo avanti e chiudiamo qui. |
| |
E noi stiamo per...in realtà, non volevo farlo...aspetta un attimo. |
| |
Ora bariamo un po'. |
| |
Andiamo avanti e cancelleremo l'ultimo valore che abbiamo ottenuto, giusto? Poi lo salveremo. |
| |
E chiudiamolo, ok. Quindi simuleremo il fatto che non l'abbiamo ancora eseguito oggi, ok, e poi lo eseguiremo di nuovo. |
| |
Ok, prendi solo l'ultimo valore. |
| |
E andiamo al nostro sito web. |
| |
E vediamo che si è rigenerato di nuovo pochi secondi fa. Quindi, in questo caso, abbiamo appena aggiornato i dati e abbiamo ottenuto l'ultimo valore. |
| |
Se dovessi |
| |
menzionare |
| |
la mia posta, mi è capitato di essere iscritto agli avvisi e spero, |
| |
Potremmo vedere un piccolo aggiornamento anche qui. Stiamo ricevendo notifiche che |
| |
c'è una pubblicazione in questo generatore di carte di controllo e c'erano degli avvertimenti e, se voglio, posso andare a vedere dove sono falliti e quali punti sono fuori dai limiti. |
| |
Va bene. |
| |
Bene, penso che siamo a posto per provare l'attività automatizzata. Quindi vado avanti e cancello questo post. |
| |
Giusto. |
| |
Chiudiamola qui. |
| |
Chiudi tutto. |
| |
Rimetterò lì il nostro quit, perché ora ne avremo bisogno, per un percorso eseguito in modo automatico. |
| |
E concludo qui. |
| |
Vai alla cartella documenti e andrò a cancellare |
| |
i nostri dati e fingiamo di gestire tutto da zero. |
| |
Giusto. |
| |
E assicuriamoci che JMP sia spento. |
| |
Va bene. |
| |
Ora. |
| |
Se avete visto alcuni dei miei precedenti interventi su Discovery, potreste avermi già visto usare il task scheduler. È un argomento che mi piace molto. |
| |
Su Windows basta digitare "Utilità di pianificazione"; spero che tu l'abbia visto. |
| |
Su Mac, dovresti usare Automator o un chron job. Io suggerirei Automator. |
| |
Va bene, ma il task scheduler ti consente di eseguire praticamente qualsiasi cosa regolarmente. |
| |
Quindi andiamo avanti e |
| |
Crea una nuova attività. Creeremo semplicemente un'attività qui e le daremo un nome |
| |
Dati COVID per la Germania. |
| |
Voglio correre con privilegi elevati. |
| |
Eseguirò l'operazione solo quando l'utente ha effettuato l'accesso perché non voglio inserire i dati delle credenziali, ma suggerirei |
| |
selezionando Esegui quando l'utente è connesso o meno, se si esegue questa operazione per scopi di produzione, |
| |
Perché se il computer viene riavviato a causa di un aggiornamento di Windows o per qualche altro motivo, vuoi che continui a funzionare e questo ti permetterà di farlo se specifichi tale opzione. Ti verrà richiesto di inserire le tue credenziali e, quando finalmente salverai, esegui questa operazione. |
| |
Bene. |
| |
Quindi, per quanto riguarda i trigger, cosa sono? È quando voglio che funzioni, quindi andiamo avanti e facciamolo. |
| |
E supponiamo di volerlo eseguire ogni giorno a partire da domani. |
| |
E forse voglio solo farlo alle sei del mattino prima di arrivare al mattino, |
| |
qualunque cosa significhi entrare ormai. |
| |
Prima di alzarmi dal letto e andare al lavoro. Va bene. |
| |
Quindi interromperò questa attività se dura più di 30 minuti perché probabilmente significa che si è bloccata. |
| |
Altrimenti penso che possiamo andare lì. |
| |
Quindi, quale azione vogliamo eseguire? Beh, vogliamo eseguire JMP, quindi bisogna andare alla cartella di installazione di jmp.exe, che si trova in Programmi, SAS e in JMP o JMP Pro 16. Procediamo e selezioniamolo. |
| |
E poi, il nostro argomento è il nostro script JSL che, sfortunatamente, devi inserire manualmente qui, |
| |
cosa che farò. |
| |
Ma assicuratevi di fare attenzione. |
| |
Va bene. |
| |
Ora, nelle impostazioni, mi assicurerò che sia sempre consentito. Deve essere eseguito su richiesta, perché così potremo provarlo subito e assicurarci che funzioni correttamente. |
| |
E se ce n'è già uno in esecuzione, assicurati di interromperlo. Probabilmente significa che si è bloccato e, se l'esecuzione dura più di un'ora, interrompi l'attività, nel caso in cui si blocchi nuovamente. |
| |
Bene, ecco il nostro compito da eseguire ogni giorno. Quindi, possiamo essenzialmente eseguirne il debug provandolo subito, dato che abbiamo consentito l'esecuzione in qualsiasi momento. Procediamo, clicchiamo con il pulsante destro del mouse e diciamo "Esegui". |
| |
Speriamo di vedere la barra delle applicazioni. JMP si aprirà brevemente, funzionerà e poi scomparirà. |
| |
Guardando quaggiù, si spera che le cose stiano accadendo. |
| |
Bene, poi se ne va. |
| |
Diamo un'occhiata al nostro sito web: ci rinfrescherà la memoria. |
| |
Ed ecco il nostro report generato pochi secondi fa. |
| |
Se guardiamo la nostra cartella, possiamo vedere che la nostra tabella JMP è stata generata e speriamo che domani mattina alle 6:00, |
| |
Il nostro task verrà eseguito e ci fornirà una nuova serie di dati e un report aggiornato. E quando torneremo con il nostro caffè o tè, potremo dargli un'occhiata e prendere le decisioni per la giornata. |
| |
Quindi il mio intervento si conclude qui. Spero che uno dei tre aspetti di cui abbiamo discusso oggi, |
| |
acquisizione dati basata su Internet, |
| |
La creazione di script live JMP, ovvero la generazione automatica di attività, ti è stata d'aiuto nel tuo lavoro. |
| |
Grazie per aver partecipato e spero che il resto della conferenza vi piaccia. Ciao. |