Convertir la date / heure (jusqu'à quelques millièmes de seconde) en une variableBonjour,
J'essaie de convertir une date / heure en millisecondes afin de l'insérer dans une instruction SQL que j'utilise dans mon script JSL. La méthode typique que j'utilise pour ce faire crée généralement la variable (date) avec des guillemets simples autour d'elle. Cependant, lorsque vous essayez la même méthode à ma date / heure qui comprend des millisecondes, il ajoute deux guillemets simples à chaque extrémité de la variable. Quelqu'un pourrait-il éventuellement m'aider à résoudre mon problème et / ou m'aider à m'orienter dans une direction différente pour le résultat que je recherche?
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||"'"; Le résultat que je voudrais serait comme ceci -> Format: HTML Format Version: 1.0 StartHTML: 165 EndHTML: 420 StartFragment: 314 EndFragment: 388 StartSelection: 314 EndSelection: 314
'2021-3-4-09.20.00.000000'
Toute aide est appréciée!
ScriptingRe: Convertir la date / heure (jusqu'à quelques millièmes de seconde) en une variablesalut @Souiller ,
Je ne sais pas exactement quelle partie de votre script ne se comportait pas correctement car elle n'est pas sortie de la boîte.J'ai apporté quelques modifications, pouvez-vous voir si cela répond à vos besoins?
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];)