Come scrivere la data del mese corrente per la compilazione dei datiCiao a tutti,
Ho il seguente codice che non funziona:
// Current date
aujourd'hui = Text(Today(),"00000000");
// Obtain the month number format "MM"
numero_mois = Text(Month(aujourd'hui), "00");
// Obtain the year number - 1 format YYYY
numero_annee = Text(Year(aujourd'hui) - 1, "0000");
// Concatenate the result
date_debut_mois_actuel_Y = ("01" || numero_mois || numero_annee);
// Show the result
Show(date_debut_mois_actuel_Y);
dt << Select Where(:Date < date_debut_mois_actuel_Y);
dt << Delete rows;L'obiettivo è selezionare tutte le righe da dt (tabella dati) per le quali la data è < 01/mese corrente/anno corrente -1 ed eliminarle.
Capisco l'errore, che non posso concatenare altri elementi oltre al carattere, ma come posso ottenere la data nel formato 01/10/2022 (previsione di oggi per esempio), senza tornare al codice e modificare manualmente la data.
Il messaggio di errore è: l'argomento dovrebbe essere un carattere nella riga xxx nell'accesso o nella valutazione di 'Concat', Argomento errato (numero_mois), "01" || /*###*/numero_mois || /*###*/numero_annee/*###*/
Ad oggi il codice è (da modificare manualmente ogni mese):
dt << select where(:name("date") < informat("01102022","DDMMYYYY"));
dt << Delete rows;Grazie mille !
Distinti saluti
Automazione e scriptingRi: Come scrivere la data del mese corrente per la compilazione dei datiÈ possibile ottenere la data corrente utilizzando Oggi() e sta utilizzando un'opzione per ottenere il primo giorno del mese Incremento data()
Names Default To Here(1);
Date Increment(Today(), "Month", 0, "start");
e quindi, a seconda dei tuoi dati, puoi utilizzarlo direttamente senza eseguire alcuna trasformazione Char (in JMP usi Car() non Text() quale ChatGPT? cerca di usare).
Ri: Come scrivere la data del mese corrente per la compilazione dei datiStai rendendo la questione più complessa del necessario.Ecco come lo farei:
dt << select where( :Date < Date MDY( 1, Month( today ), Year( Today() ) - 1 ) );
try( dt << delete rows );
Ri: Come scrivere la data del mese corrente per la compilazione dei datiCiao txnelson e jthi, grazie per il tuo aiuto, il seguente codice funziona
dt << select where( :Date < Date DMY( 1, Month( today ), Year( Today() ) - 1 ) );
Ho appena cambiato la data MDY in data DMY.
Impariamo ogni giorno con JMP
.
Distinti saluti !
Ri: Come scrivere la data del mese corrente per la compilazione dei datiCarissimi,
Oggi mi sono reso conto che il codice non sembra funzionare quando due mesi si sovrappongono, esempio oggi: 06/11/2023 - 7 giorni = 30/10/2023.
Non ho trovato la soluzione, devo evidenziare le condizioni? (usando "se").
Grazie !
Distinti saluti
Ri: Come scrivere la data del mese corrente per la compilazione dei datiNon sono esattamente sicuro di cosa intendi con "due mesi sovrapposti"? Non intendevo eliminare tutte le righe precedenti al primo giorno del mese corrente dell'anno scorso? Da dove vengono i -7 giorni?
Names Default To Here(1);
dt = New Table("Dates",
Add Rows(1000),
New Column("Date", Numeric, Continuous, Format("yyyy-mm-dd", 10), Set Each Value(
Today() - In Days(Row())
))
);
dt << Sort(By(:Date), Replace Table, Order(Ascending));
dt << Select Where(
:Date < Date Increment(Today() - In Years(1), "Month", 0, "start");
);
// dt << select where(:Date < Date DMY(1, Month(Today()), Year(Today()) - 1));
/*
dt << Previous Selected;
*/Ri: Come scrivere la data del mese corrente per la compilazione dei datiCiao Jthi,
Vorrei eliminare tutte le righe prima di oggi - 7 giorni (indipendentemente dal mese e dall'anno correnti)
.
Grazie !
Distinti saluti
Ri: Come scrivere la data del mese corrente per la compilazione dei datiEcco alcune opzioni su come selezionare tali righe. La tabella di esempio è presente, quindi è più facile vedere quali righe vengono selezionate
Names Default To Here(1);
dt = New Table("Dates",
Add Rows(1000),
New Column("Date", Numeric, Continuous, Format("yyyy-mm-dd", 10), Set Each Value(
Today() - In Days(Row())
))
);
dt << Sort(By(:Date), Replace Table, Order(Ascending));
dt << Select Where(
:Date < Date Increment(Today() - In Days(7), "Day", 0, "start");
);
// or using Date Difference
// dt << Select Where(Date Difference(:Date, Today(), "Day") > 7);
// comparison between date and today (depending in your data, removing time of day might be needed)
// dt << Select Where(:Date - Time Of Day(:Date) < Today() - In Days(7) - Time Of Day(Today()));
/*
dt << Previous Selected;
*/Ri: Come scrivere la data del mese corrente per la compilazione dei datiCiao Jthi,
Grazie mille, questo codice
dt << Select Where(Date Difference(:Date, Today(), "Day") > 7);
funziona perfettamente!
Distinti saluti
Ri: Come scrivere la data del mese corrente per la compilazione dei datiPotete spiegare il processo di creazione dello script della data del mese corrente per garantire una compilazione accurata dei dati?
Ri: Come scrivere la data del mese corrente per la compilazione dei datiSe vuoi solo il primo giorno del mese, usa Today() per ottenere la data odierna e poi Month e Year con Date DMY per creare la tua data
now = Today();
first_of_month = Date DMY(1, Month(now), Year(now));
Show(As Date(first_of_month));