Ho una tabella dati di processo che include il timestamp di inizio e il timestamp di fine. Vorrei che la durata del processo fosse calcolata dai timestamp e poi fossero aggiunte righe aggiuntive. I valori di colonna del timestamp di inizio vengono aggiunti aumentando il tempo di 1 minuto fino al raggiungimento del tempo di fine. Tutti gli altri valori nella tabella dovrebbero essere semplicemente copiati nella riga successiva.


Come appaiono i dati iniziali (presumo che l'immagine sia quella del risultato finale)?
Modifica: l'altra immagine è stata caricata un po' più lentamente
Ecco un'opzione che potrebbe funzionare. Crea una nuova tabella invece di aggiungere righe a quella esistente
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(2),
Compress File When Saved(1),
New Column("S", Character, "Nominal", Set Values({"A1", "A2"})),
New Column("Start",
Numeric,
"Continuous",
Format("d/m/y h:m:s", 22, 0),
Input Format("d/m/y h:m:s", 0),
Set Values([3661768800, 3661769400])
),
New Column("End",
Numeric,
"Continuous",
Format("d/m/y h:m:s", 22, 0),
Input Format("d/m/y h:m:s", 0),
Set Values([3661768980, 3661769700])
),
New Column("Data", Character, "Nominal", Set Values({"A", "B"}))
);
dt_new = dt << Clone;
dt_new << Delete Rows(1::NRows(dt_new));
For Each Row(dt,
For(i = 0, i <= Date Difference(:Start, :End, "minute"), i++,
dt_new << Add Rows(1);
dt_new[N Rows(dt_new), 0] = dt[Row(), 0];
dt_new[N Rows(dt_new), "Start"] = Date Increment(:Start, "minute", i);
);
);
Inizio

FINE

@jthi L'ho appena testato con dati reali e funziona benissimo. Grazie, è esattamente quello che volevo avere.