When we talk to people about CloudSimple’s capabilities, there are two common reactions:
- “Wow, that’s really cool!”
- “Could it do [CRAZY_HARD_THING]?”
A lot of times, the answer to [CRAZY_HARD_THING] is “yes, it can do that – let me show you”. Realistically, however, there are times when the answer is “no, it can’t do that at the moment”.
As a developer, whenever my code can’t do [CRAZY_HARD_THING] I take it as a personal challenge. Accordingly, last week I set aside Friday to engage my elite rock star ninja hacker programming skills to see if I could unravel one of these challenges.
The problem: get CloudSimple to output the results of standard SAP GUI ALV reports. As it is, CloudSimple can read and interpret delivered SAP Gateway services, as well as customer developed Gateway services. But what if you already have a bunch of ALV reports developed and simply want to put their results into Google Sheets?
The solution: a Gateway service that can dynamically call programs and extract their results into a generic container. On the CloudSimple side, this presents itself as a service with two filters (program name and variant) that outputs the results of the program/variant. As a double bonus, it also outputs field descriptors for the ALV columns – so your data retains some meaning after it is transported from the SAP backend.
Here’s what it looks like.
I set up a simple ALV report in my SAP system, outputting some basic information on material inventory. The selection screen, with my variant:
Quick look at the SAP GUI ALV result:
Here are the CloudSimple filters necessary to duplicate this:
And finally, the CloudSimple screen with the results fully in place. Note that the top row contains the generic field names from the Gateway service, the second row contains field names from the actual ALV report, and the third row is the actual data output by the ALV report.
And that, dear readers, is how it works. So, among all the other cool stuff that you can do in CloudSimple, add this: call existing ABAP ALV reports and export their data right to Google Sheets!
In the meantime, I’m going to take a nap to recover from my elite rock star ninja hacker programming session.