Thursday, October 23, 2014

How to patch SAP Support Package Manager

There is this well-known error message which make me crazy almost every time I want to patch SAP system. It is about SAP Support Package Manager tools (SAINT or SPAM) which need to be upgraded prior the real upgrade of some component that I wanted to patch originally. The message goes like this for example:

SAPKB74005 requires at least version 0051 of the Support Package Manager
Message no. TN194

OK SAP. What else I can do? Just to patch the SAP Support Package Manager. So how do I do that? First of all the patch needs to be obtained from SMP.  It can be found at Basically it is SAR file. Then login as DDIC user into your 000 client. Run Tcode SPAM. Go via menu Support packages ->Load Packages ->From Front End.

Choose decompress. System will announce that “File 'sapkd74054.sar' successfully transferred, decompressed, and then deleted Message no. TN713. After that go to menu Support packages again and choose Import SPAM/SAINT item. The system will notify you about upcoming import of the patch:

This pop-up needs just to be confirmed. SPAM update icon will turn to red as signaling – ongoing update of the tool. The patch import phase will go through all its stages like main import, execution of reports after put, etc. After same time the patching will be finished with following pop-up:

Restart SPAM and read the current information ('i' button)
Message no. TN189
The message mean nothing else just the Support Package Manager was successfully patched.

Wednesday, October 22, 2014

Solution Manager or SolMan is important part of Application Lifecycle Management (ALM). It supports SAP systems in trough entire lifecycle like: Business Blueprint creation, configuration, template management, test management, production operation/monitoring, Change Control Management, IT Service Management, documentation, SAP Engagement and Service Delivery, upgrade management, custom code management etc.

One important thing is here also which was introduced by SolMam. This affects SAP basis ground work which is patching of the systems – implementing Support Packages (SP) / Support Packages Stacks (SPS). SP/SPS package delivery requires approval as of April 2nd, 2007. There is a precise message like that: [Package of this category delivered after April 2nd, 2007 will require approval]. This practically means that you are not able to download any SP from SMP directly via SAP Download Manager. Simply such downloads are disabled. In the Download Basket of Download Manager there is additional tab called "Approval List". All packages that require approval are initially display here. Only once they are approved the respective package is moved to the Download list tab. After that it can be downloaded.

The only way how to get an approval to download it is via SolMan.

Normally we would do the confirmation of files for download via SolMan’s Maintenance Optimizer. In its Change Management section – in Maintenance Optimizer tool.

However there is also different way of how to achieve that. Alternatively you can run ABAP report /TMWFLOW/RMOBASKETAPPROVAL or function module /TMWFLOW/MO_UI_BASKET_AUTHORIZ to do kind of manual approval. User is used the one which is associated in SolMan with user on SMP. While running one for those two ABAPs you get list of objects in the Download Manager. You just simple click on the object which you wish to approve and that’s it!

More information:

Tuesday, October 21, 2014

List of available SAP IDES systems

I intend to maintain this blog post with most up-to-date information on available versions of SAP IDES system. Following are currently available Cross-Industry IDES Systems:
For general overview of IDES Systems see SAP note:
799639 - IDES - General Information about the usage of IDES systems

IDES ERP releases:
SAP note
IDES ERP 6.0 incl. EHP7
IDES ERP 6.0 incl. EHP6
IDES ERP 6.0 incl. EHP5
IDES ERP 6.0 incl. EHP4
IDES ERP 2005 ECC 6.0 SR3
IDES ERP 2005 ECC 6.0 SR2
IDES ERP 2005 ECC 6.0

IDES CRM releases:
SAP note
IDES CRM 7.0 incl. EHP2
IDES CRM 7.0 incl. EHP1

IDES SCM releases:
SAP note

IDES SRM releases:
SAP note

IDES BW/SEM releases:
SAP note
IDES BW 7.0 /SEM 6.0
IDES BW 3.5 / SEM 4.0

Wednesday, October 15, 2014

SAP API Management

In today’s world Application Programming Interface (API) plays very important role. This is given by nature of every business which is nowadays – digital business. Regardless if the business is between companies and customer (in its every form like customer, employees, etc.) or between companies there always some digital part of it. The API connects digital businesses. Whether it is business process, service, platform, technology solution or content at the end it needs to be able to communicate with other of these. So they must be capable of performing data exchange between them. Here comes a role of the APIs. All parties involved in the data exchange needs to have API. By this I mean that function which do the exchange are known to all the parties and they can use them to actually perform the exchange. Moreover in today’s economy driven by mobile devices (not to mention Internet of Things (IoT) or even Internet of Everything (IoE)). Companies data (e.g. web shop data) must be available in the form of software responses to queries from other software or applications. This is so true for companies ruining their ERP systems where SAP is big player in the field.

Historically it is not one of SAP strength (e.g. see here) when it comes to the API. Over the years SAP has tried to something about it but with not much success. There were, hmm well they still are there their own solutions which tried to kind of cover role of API. To name few of them them: SAP Enterprise Services (SOA), BAPIs, IDocs. The most famous are probably sets of remote execution functions called BAPI. However in today’s world it becomes clear that SAP has to be more aggressive API when it comes to their API approach.

To solve in larger scale SAP turned to APIgee. They both recently announced a partnership. In this term SAP will delivers the API management application based on OEM’s Apigee Edge digital acceleration platform. The SAP API Management application will be available as a cloud solution on HANA Cloud Platform (HEC) and also as an on-premise solution.

The SAP API Management application provides managing of exposed functions (e.g. services available over the web) of backend systems and it has following scope:

Security – controls access to exposed services
Compatibility – support of different platform and devices that consume services
Measurability – monitoring of services

SAP API Management consists of following parts that all provide infrastructure for the API management:
API Platform - creation, security, management, consuming or basically all operations within API
Analytics Services – analytics on top of API, to see trends in its e.g. usage
Developer Services - tools to manage the community of application developers

The importance of API is very significant with SAP offerings like SAP Gateway. The Gateway provides ODATA access to SAP data. As it is currently used at very large scale within SAP customers therefore was seen a clear need for API management tool. Technically having SAP API Management on top Gateway will call on predefined Gateway services, and expose those services in the cloud. Gateway’s service catalogs will be integrated with API Management. This means out-of-the-box integration with that catalog as API proxy will be defined then catalog can be browsed and finally there is a call up of service.

Other vendors of API mngt software, basically competitors to APIgee:

More information:
2051594 - SAP API Management - Release Note

SAP Gateway

Within term Gateway we need to be careful. SAP Basis people know this term as component of SAP NW ABAP and JAVA app servers which handles the SAP proprietary RFC protocol. The gateway is specified in RFC connections as hostname where program ID runs. It is e.g. used by outbound IDoc which are send form SAP system. Maybe you know Tcodes like SMGW where you can monitor the gateway.

On other hand we have here something which is called SAP NetWeaver Gateway (NW GW). What is "SAP NetWeaver Gateway" then? It is SAP NetWeaver ABAP AS based solution introduced in 2011 based on open standards (e.g. OData) which can be used to more easily connect non SAP applications to SAP applications and vice versa. The NW GW can be used to connect to SAP backend applications by using any programming language or model without the need for SAP knowledge. This is achieved by leveraging REST services and OData and ATOM protocols, according to SAP. Formerly the solution’s name was changed in 2014. The NetWeaver abbreviation was dropped and now it is called just SAP Gateway (GW).

We can say about the GW that it is ODATA for Enterprise. Basically what it does is nothing else just exposing the data residing in SAP application to outside world. Of course this was possible long time before GW was introduced. But what is advantage of GW is that instead of using SAP’s proprietary RFC functions (also known as BAPI) standard opens source technologies (OData) are used.

Let just introduce OData briefly by quoting Wikipedia: OData is data access protocol to provide standard CRUD (Create/Read/Update/Delete) access to a data source via a website. It is similar to JDBC and ODBC although OData is not limited to SQL databases. It is kind of ODBC for web means data is accessible via URLs (e.g. http://:/sap/opu/sdata/iwfnd/RMTSAMPLEFLIGHT/$metadata?$format=xml). OData is designed to provide implementation of RESTful API for creating and consuming data APIs. Also it is multichannel means they can serve data to multiple apps from one logical model. OData is extensible so by using GW; SAP allows to supplement OData data types within information from ABAP data dictionary.

By using GW we can get SAP data to every environment, tool or device. GW supports developers to create apps that connect to SAP software.

How GW application looks like? There is a data abstraction part residing on GW server – service model (structure of OData). This is developed in OData Modeler- a plugin to Eclipse also part residing on GW server The service is implemented by binding to data sources (e.g. SAP ECC). There is a GW’s Service Builder to develop that. The service has its implementation and business logic. In order to consume OData there is external app e.g. created JAVA/PHP/JSE/iOS/Android/HTML5 e.g. in Eclipse.

From licensing point of view notice that external app is supposed to communicate with SAP backend (via GW) by using so called SAP Gateway User. Which is named user (SAP terminology, see more here) authorized to use licensed software from SAP.

To download and install trial version of SAP NetWeaver Gateway kindly follow my other blog: SAP NetWeaver Application Server ABAP 7.02 SP11 with Gateway SP04 Trial - Ready for SAP Gateway

More information:

Named users in SAP licensing

This is a term used within SAP terminology. It is popping up in many SAP documents. Also it may appear while you setting up some SAP’s functionalities. One of examples would be some installation of SAP solution checking license and demanding to acquire more named user licenses in case license limit has been exceeded.

Therefore I thought it will be good to know more about it. Basically it describes type of SAP license. A named user is a license of user (user should have a meaningful name, therefore they say “named” user) that is authorized for individual access to licensed SAP software. By software it is meant particular functionality of SAP. It is a mandatory for most of users (speaking here about regular business users not technical ones) to have this named users while accessing SAP functionality. So named users are e.g. employees with organization using SAP software. There is license price associated per named users.

Other posts on same topic:

Tuesday, October 14, 2014

SAP BI Strategy and BI portfolio simplification

Being either SAP consultant or guy at SAP’s customer side we all know that there are many BI tools in SAP’s portfolio. Partially it is caused by acquisitions done by SAP over the years but also partially by SAP’s pursuit of new technologies and offerings built on top of them. Basically like in every part of life a lifecycle comes in place and the new offerings (Lumira) are supposed to replace old technologies/tools (BEx) in long run.

It is clear that there has to be done something about all these tools. This is not only to relieve a worries of customers bit. But also as SAP is sticking to their newest strategy: Run simple as echoed in this year spring at annual SapphireNow conference in Orlando. As per run simple mantra it should be up to customers to keep existing BI content in place but from SAP side there is a focus on few core products allowing customers to do possible migration from existing tools to the new ones.

This means the portfolio of SAP BI products should potentially shrink a bit. Some tools will not be developed further and their functions will be covered by other tools. Possible paths of replacements can be as follows:

SAP BusinessObjects Explorer -> SAP Lumira

SAP BusinessObjects Dashboards (Xcelsius) -> Design Studio

Of course one can argument that tools which is supposed to left behind have features which are not included yet in those who are supposed to stay. There are issues like this but there is no “do migration now!” approach. Customers can keep using what they use at the moment but they should evaluate and test new things just in case to be prepared for migration which may come in future.

Further information:

Monday, October 13, 2014

Business content (BI Content aka BCT) activation procedure – part II

Long time ago I wrote a short blogpost about Business content (BI Content or BCT) activation procedure. However the post is just really brief. Therefore I establish on that post and will try to improve it within this post.

So what I have to do in order to activate BI Content?

First let’s check if BI Content is present in your SAP NetWeaver based system. This can be done while user is logged in the system e.g. via SAP GUI. In menu of the system choose System -> Status -> Component Information. Here observe if there is software component called BI_CONT. I this is not there then there is nothing to be activated. You need to ask your SAP Basis support about missing component. They have to install it via TA SAINT.

Once it is there you are good to go further. In case of BW system we use TA RSOR to see and further to activate the BCT. While we enter the RSOR we need to know which object we are going to install. If you follow either:

- Standard implementation of e.g. Best Practices or
- Implementation Guide of some SAP solution or
- Documentation of BW’s BCT like in case of Procurement’s Purchase Orders Confirmed as Requested report

just check what objects are supposed to be installed and search for them.

Imagine we go with 3rd option and we want to activate e.g. report [ABC Analysis - Vendors 0D_NW_EPM_MP01_Q0001]. First we search for that object as per following object:

Once we transfer the object it is useful to set following settings:

Grouping -> Only Necessary Objects – by this only objects which are needed for report’s data flow will be included in activation.

Now we can bring more objects into the list of objects that will be displayed. This is useful in case we want to activate other e.g. reports:

Friday, October 10, 2014

Limitations of BAPI RFC_READ_TABLE

While working with BAPI RFC_READ_TABLE I came across following issue. In case I called the BAPI with input parameters where I specified very large table (e.g. MARA) I got exception DATA_BUFFER_EXCEEDED thrown.

I checked the ABAP code and what it does is that in case of data extracted for a row of table is larger than 512 bytes then exception is raised. This means function call limits extracted data to 512 bytes per row and there is nothing you can do about it.

However there is a kind of workaround available. There is another BAPI Z_AW_RFC_READ_TABLE which doesn't have that limitation. I found the other BAPI working perfectly. All of cases I tested I never got the same issue as with 1st BAPI.

However you need to notice that the 2nd BAPI although it is delivered by SAP is included in Z* namespace. The BAPI is included in development package ZDAV which belongs to BusinessObjects Data Integrator (BODS) Development Class. It is not clear to me why it is in Z* namespace. There is already few years after SAP acquired BO so SAP had already enough time to migrate it.

However I must admit that at least the issue is correctly described and documented via SAP Note: 1752954 - DATA_BUFFER_EXCEEDED error - Data Services.