Then I would make it as straight forward as possible and create a config table something like

Which makes your JSL pretty simple, something like:
Names Default To Here( 1 );
dt = Current Data Table();
dtConfig = Data Table( "Config" );
For( i = 1, i <= N Rows( dtConfig ), i++,
frCol = dtConfig:From Column[i];
toCol = dtConfig:To Column[i];
For( k = dtConfig:Start Row[i], k <= dtConfig:End Row[i], k++,
Column( dt:toCol )[k] = Column( dt, FromCol )[k];
If( dtConfig:Move_Copy == "Move",
Column( dt, FromCol ) = ""
);
);
);
Jim