Converti data / ora (fino ai millsecondi) in una variabileCiao,
Sto cercando di convertire una data / ora in millisecondi per inserirla in un'istruzione SQL che sto utilizzando nel mio script JSL. Il metodo tipico che utilizzo per farlo di solito crea la variabile (data) racchiusa tra virgolette singole. Tuttavia, quando si tenta lo stesso metodo per la mia data / ora che include millisecondi, aggiunge due virgolette singole a ciascuna estremità della variabile. Qualcuno potrebbe aiutarmi a risolvere potenzialmente il mio problema e / o aiutarmi a indirizzarmi in una direzione diversa per il risultato che sto cercando?
dt1 = Current Data Table ();
dt1 << New Column ("Year", Formula(Year(Today())));
dt1 << New Column ("Month", Formula(Month(Today())));
dt1 << New Column ("Day", Formula (Day(Today())));
dt1 << New Column ("UpdateDate", Formula (Char( :Year ) || "-" || Char( :Month ) || "-" || Char( :Day ) || "-" ||
"12.20.00.000000"));
dt2 = dt1 << Summary (
Group (:UpdateDate),
Link to Original Data Table (0)
);
dt2 = current data table ();
dt2 << Delete Columns ("N Rows");
date_id = dt3:UpdateDate << Get Values;
date_ids = "'"||date_id||"'"; Il risultato che vorrei sarebbe questo -> Formato: Formato HTML Versione: 1.0 StartHTML: 165 EndHTML: 420 StartFragment: 314 EndFragment: 388 StartSelection: 314 EndSelection: 314
'2021-3-4-09.20.00.000000'
Qualsiasi aiuto è apprezzato!
ScriptingRi: Converti data / ora (fino ai millsecondi) in una variabileCiao @Sully ,
Non sono esattamente sicuro quale parte del tuo script non si stesse comportando correttamente in quanto non è stato eseguito fuori dalla scatola.Ho apportato alcune modifiche, puoi vedere se questo fa quello che ti serve?
Names default to here(1);
dt1 = New Table( "Date test",
Add Rows( 1 ),
New Column( "Column 1", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [] ) )
);
dt1 << New Column ("Year", Formula(Year(Today())));
dt1 << New Column ("Month", Formula(Month(Today())));
dt1 << New Column ("Day", Formula (Day(Today())));
//Original UpdateDate column
dt1 << New Column ("UpdateDate", Character, "Nominal", Formula (Char( :Year ) || "-" || Char( :Month ) || "-" || Char( :Day ) || "-" ||
"12.20.00.000000"));
//Option 1 - adjusting your script
dt2 = dt1 << Summary (
Group (:UpdateDate),
Link to Original Data Table (0)
);
dt2 << Delete Columns ("N Rows");
//Get the UpdateDate and add single quotes to each line
date_id = dt2:UpdateDate << Get Values;
date_ids = list();
write("List of date_ids:");
for(i=1, i<= n items(date_id), i++,
date_ids[i] = "'" || date_id[i] || "'";
write( "\!n" || date_ids[i] );
);
//Option 2 - include quotes in original column formula and then use associative array to find unique values
dt1 << New Column ("UpdateDateQuoted", Character, "Nominal", Formula ("'" || Char( :Year ) || "-" || Char( :Month ) || "-" || Char( :Day ) || "-" ||
"12.20.00.000000'"));
date_ids_2 = associative array(dt1:UpdateDateQuoted) << get keys;
write("\!n\!nDateID from associative array:\!n" || date_ids_2[1];)