Ciao Tommaso,
ecco un piccolo script, che potrebbe svolgere il tuo compito,
la prima parte serve solo a creare una tabella di esempio (potresti già averla),
il secondo è quello importante per te e puoi modificarlo in base alle tue esigenze.
Per capire meglio puoi eseguirlo riga per riga e dare un'occhiata al registro per vedere cosa succede.
Giorgio
// 1st part, generate table
// make a table and fill it with some data
dt = New Table( "Query Data",
Add Rows( 1e2 ),
New Column( "Wafer", set each value( Row() ) ),
New Column( "Machine", Character, set each value( If( Row() < 50, "A", "B" ) ) ),
New Column( "date",
Numeric,
Format( "d.m.y", 10 ),
Input Format( "d.m.y" ),
set each value( Date Increment( Date DMY( 19, 8, 2019 ), "Day", -1 * Row() ) )
),
New Column( "value", set each value( Random Normal( 100, 10 ) ) ),
);
// add a script (oracle sql query with date placeholder &DATE )
dt << New Property( "MySQLQuery", "select * from some_table where date > to_date('&DATE', 'dd.mm.yyyy') " );
// 2nd part, perform task
// get max date
max_date = Col Max( dt:date );
Show( Day( max_date ), Month( max_date ), Year( max_date ) );
// modify and convert max date to string
my_query = dt << get Property( "MySQLQuery" );
date_string = Right( "0" || Char( Day( max_date ) - 3 /* subtract some days */ ), 2 ) || "." || Right( "0" || Char( Month( max_date ) ), 2 ) || "."
|| Char( Year( max_date ) );
Show( date_string );
// replace query with changed date in table
Substitute Into( my_query, "&DATE", date_string );
dt << set property( "MySQLQuery", Eval( my_query ) );