Sto automatizzando alcuni rapporti mensili e ho difficoltà a selezionare i dati di cui ho bisogno. Supponiamo che ci sia una colonna di date. Vorrei uno script JSL che selezioni i dati dei 12 mesi precedenti, in base al mese corrente.
Esempio: siamo ad agosto 2021. Vorrei che la sceneggiatura selezionasse tutte le date da agosto 2020 ad oggi. Il mese prossimo, quando sarà settembre, vorrei che selezionasse settembre 2020 da presentare senza alcun input da parte mia.
Come posso fare questo? Alcune altre applicazioni come Access e PowerBI hanno una funzione "Seleziona anno precedente" nella loro interfaccia, ma non riesco a trovare nulla di simile in JMP.
Consiglio vivamente di utilizzare la funzione Incremento data con attività come questa. Di seguito è riportato un esempio con due date diverse:
Names Default To Here(1);
date1 = Date DMY(15,8,2021);
date2 = Date DMY(1,9,2021);
Show(Date Increment(date1, "month", -12, "start")); //Date Increment(date1, "month", -12, "start") = 01Aug2020;
Show(Date Increment(date2, "month", -12, "start")); //Date Increment(date2, "month", -12, "start") = 01Sep2020;
Show(Date Increment(Today(), "month", -12, "start"));
Ecco una versione da utilizzare con la tabella dati con :data colonna:
Names Default To Here(1);
dt = Current Data Table();
dt << Select Where(:date >= Date Increment(Today(), "month", -12, "start"));
Un modo per farlo è
dt = current data table();
dt << select where(:date >= DateMDY(month(today()),1,year(today())-1);<BR />dtSub = dt << subset(selected rows(1), selected columns(0));
Funziona meglio del suggerimento di LearnBot. Sarebbe bello se il componente aggiuntivo potesse usare le risposte/risposte dai post della community