You can implement this with the following in the in and out ports of a reformat component:
record
datetime("YYYYMMDDHH24MISSNNNNN")[delimiter=="\x01"] date_vec = NULL;
string("\n") str;
end;
and as an example, a transformation to assign values as follows:
/*Reformat operation*/
out::reformat(in)=
begin
out.*::in.*;
out.date_vec::generate_dates(in.str);
end;
// This function generates as many timestamps as there are characters in
the string supplied to the function
out :: generate_dates(str) =
begin
let int i;
out::for(i,i<length_of(str)): (datetime("YYYYMMDDHH24MISSNNNNN"))(now());
end;
IN:
NULL,HELLO
OUT:
date_vec.date_vec str
2021070212223281659 HELLO
2021070212223281662
2021070212223281662
2021070212223281662
2021070212223281662