Solved! Go to Solution.
Here's one more option to ensure fields remain in the same order: the CReW macro for Block All Records
http://www.chaosreignswithin.com/2019/01/block-all-records.html
You have an input dataset and want to make sure that the output of your process (e.g. macro) contains all of the fields in the same order as the original file. You could use the Block All Records macro and stream that into a UNION tool. Then set the UNION to read #1 first. It is then up to you whether you will auto-configure by Name or manually configure the data. The bottom line is that the incoming data fields are in the same order on output.