One of the things that I think is critical with AI/ML is that you cannot have good insights without good data. Data that accurately describes what is going on in a business and that major stakeholders agree is correct. This may sound simple but it often is not. And even when you get an agree up definition it still takes more work than you’d like to turn that into a usable data source. Having learned a lot of about SAP data is structured over the past few years I think that’s a great system to bring up as an example. A simple and useful example of this would be to look at – how much inventory do we have and what is it worth? Sounds simple doesn’t it? However this is where learning the combination of business process, systems and some basic technical skills really makes this ‘easy’ to solve. Here’s the quick way I would look at doing it on the fly:
1. IMATERIALSTOCK cube – this tells me what we have and where we have it. However it doesn’t tell me what the material is worth or what type of material it is so it’s time to do some joins.
2. Joining this table to the MARC table by Material Number and Plant lets me pull through the type of material it is and whether we buy it or make it at a given site.
3. Then I’ll need to pull the CEPCT table to give me a readable description of that profit center and I’ll need the MAKT table to get me a descrition of the item. I’ll also need to know what the material types are (FERT vs HALB vs ROH anyone?).
4. However I still need to know what that material is worth – am I using list price to customers, standard price for internal bookkeeping or something else? Let’s go with internal values for the time being so here we go with our fifth join of the day to the MBEW table which gives me material valuation? Or alternatively I can go the EORD table to look at what is being paid to a vendor for this material more recently if that standard price isn’t updated.
5. Oh – but wait – there’s more! Those values are probably in local currency of the entity so now I need to get the value back to the global currency – time to hit up the TCURR table for currency exchange rates. But the fun doesn’t stop there – the dates on this table follow a unique system. To get the date in YYYYMMDD you need to take the GDATU field from this table and subtract it from ‘99999999’ and then parse that number into a date field.
Now that’s just for a really basic stripped down query and I’ve left a bunch of details out but it gives you an idea of how much you have to learn about how SAP data works to truly go from raw data to something usable. And that’s a simple use case. It’s a great exercise and an example of going from a basic business question or need to a digital asset that tells you about something going on in your business. It gets even more complicated when you start looking at places where more than one system is running or situations where you have different types of inventory (reserved, WIP, free to use, etc). Now this is also usually not the limit of the story because you also want trending information so some sort of snapshot or ‘rewind feature for comparison is needed – with SAP it’s doable if you add in the net change from material movements but is still far from simple. Please reach out if you have business questions where you want to get more information of your core systems – I’d love to help!

Leave a Reply