Today I am going to continue looking into the current SOA offer from SAP. As I wrote previously, I wanted to evaluate the ESA components in different modules of SAP ERP, and I am starting with master data.
Master data is obviously not the first candidate for extensive coverage with services. Most of it is pretty static and is loaded once, at the beginning of implementation or deployment of the system to new company divisions/plants. That’s why we didn’t have really good support of master data with BAPIs, and I don’t think it’s going to change with ESA. In this entry, it won’t be a review of a full set of every possible basic data piece that an enterprise would need, just several most useful and obvious to be supported by the enterprise services. Let’s have a look. I will be comparing the ESA offer with the current set of BAPI functions in my old 4.6C.
We start with basics. Materials – this is what all companies need to operate even if they services oriented businesses. Why do we need to support materials with “official” functions and enterprise services? Imagine we are a manufacturing company. Most of them use external systems for product development and lifecycle management (those big systems from Parametrics or IBM/Dassault for example). If the products and their actual data are coming from such systems, we will most likely need to design interfaces, and those interfaces will have to support reliable live links into our SAP ERP. Good old BAPIs provided us with a full set of functions to manage materials. Currently, in the ES catalogue of SAP, I could find only read-only services: Manage Material In and Query Material In. Not that much.
Materials are bought and sold. So here come customers and vendors. Why the need for support here? Imagine some cool future system (SRM or CRM kind) where our business partners will be able to access some of their details, maybe even including possibility to change the data. You’ve heard about Plaxo? You change your data and all your contacts have the immediate access to updates. May be it sounds like a crazy idea, but what about our customer having a way to update their address or contact details without waiting for our company employees to do that? For me it sounds reasonable, so I wanted to check whether we have services for customers and vendors.
For customers, we had full set of BAPIs. ESA offer: Manage/Query Customer In. There is no “create” service/method, but at least we can find and change things.
For vendors, we have a limited set of BAPIs, mainly for reading. ESA goes the same way today: Manage Supplier In, Query Supplier In – both read only. NOTE: there is probably a difference between “supplier” and “vendor” – I won’t dig deeper here. I did not find anything about “vendors” in ESA directory.
The BAPIs in 4.6C have an object “Vendor price catalogue”, that may be useful to us. ESA: offers no such thing today. Perhaps they have obsoleted it.
Because of the similar background as in the case with materials, it would be great to have access to bills of materials and routings used in the production process. They can also be managed from external CAD/CAM/PDM/PLM systems.
For routings, we got “create” and “check” BAPIs; no read, no change. ESA offer: nothing.
BOMs – no BAPIs. ESA: Query Production Bill of Material In. AHA! That’s a progress! But still only read operations.
With the similar background, documents are a good candidate area. Those can be drawings from external systems. In this case, SAP offers a full set of BAPIs and a full of enterprise services, like Document Action In, Manage Document In.
One interesting BAPI set, related to master data, that I have found: Currency exchange rate. Currency rate data is normally delivered to companies via EDI, and to complement it, SAP offers BAPIs for create and change operations. However, I could not find any related enterprise services.
So, you see, we don’t have lots of exciting things for master data in ESA, but as I said, I would expect less for master data and more for dynamic data to work with the mechanics of business modules. Those areas are going to be covered in later entries of ABAPlog.

