I have been thinking more about creating new ABAP-code, lately.
For years, the ABAP-Report hast been my default-solution for that.
(Like the blog is my default in SAP-Community – with some questions in the end!).
My template shows how this reports are usually build up:
A selection screen.
Example: select SalesOrders, that have no follow-up-document and ZZ_myfield is initial.
The reason that report exists, the core of the task at hand. Example: send an e-mail to the creator of those SalesOrder.
This is “optional”, a side-product. It has close to no cost, but quite some benefit: It gives the option to ‘peak’ at the data, before actually doing something.
That way, you’ll catch if your selection hits thousands of orders, when you expected just a few (check your sel-screen!).
It also might turn out that “looking at the data” is a use case for itself. In our examaple, SaesOrder-creators might look up via their username and sort things out themselves -> no need for even sending an e-mail.
So, what can I do with this report?
– Start via SE38/SA38
– Assign one (or more!) Transaction to it, start it that way.
– Plan it as batchjob in SM36
I deem this kind or report still relevant.
(in case release plays a role for answers here: just assume I’m on the latest S/4HANA!)
– Given this features, could I do it differently/better?
– e.g. could I do it via (only) a global class? (Can classes have selection screens? Can they be run as a batchjob?)
– is there a benefit in moving all thats possible to global class and only keeping Selscreen and start-of-selection in the report?
– (how) could I make this more “cloud-ready”?
Edit: PS: This seems to be a nice resource, on “how to create a modern report” :