As shown in Fehd and Carpenter, it is a Good Idea to separate the Reporting macro from the macro do-loop that calls it.
This separation allows unit testing of the Reporting macro before submitting it with a list.