Gateway exposes services via HTTP, therefore the Gateway services must be activated on the NetWeaver ABAP system. As HTTP services are run by ICF, they are controlled by transaction SICF. The services to be activated for Gateway system that d not care about compatibility mode for SP02 are
SAP NetWeaver ABAP is the application server running most of SAP’s software. Version 7.4 comes with Gateway and the option to run Fiori on top of it. The installation of a NetWeaver ABAP system is not overly complex for a developer system: basically it is just installing the software. This installation process is composed of three steps:
Check the pre-requisites
Perform the actual installation
Apply a license
After executing all three steps, you have a fully functional SAP NetWeaver ABAP system.
To install a SAP system, you need to check first the hard ware requirements. You also need to ensure that a correct user/group is set up. This depends normally on the SID of your SAP system.
Software packages you’ll need
Database: Files to install the underlying database. Here I will use MaxDB.
Kernel. The kernel files, depend on your operating system and if you want to use unicode (UC) or not. I’ll use Linux x64 and a UC kernel.
SAP Installer: SWPM. This is the sapinst program. Be careful, as two version of SWPM exist. One is for installing NW AS and products; the other is for installing BS, SolMan and NW 7.0.
Products based on SAP NetWeaver 7.1x
SAP Composition Environment 7.1x
SAP Composition Environment 7.2
Products based on SAP NetWeaver 7.3x
Products based on SAP NetWeaver 7.4 SR1*, SR2
SAP NetWeaver 7.0, including Enhancement Package 1, 2, 3
SAP Business Suite 7i 2011, 2010, 7 SR1, 2005 SR3 based on SAP NetWeaver 7.0, including Enhancement Package 1, 2, and 3
SAP Solution Manager 7.0 including EHP1 SR1
SAP Solution Manager 7.1 SR1
Application Server: ABAP
All files are delivered as ZIP, except SWPM. You’ll have to un-SAR this one. Copy all unziped/unsared file to a common location on your server, like /install.
For each SAP system you’ll need to have one corresponding administration user. The user ID is determined by the SAP system Id (SID). The user id follows the schema: <sid>adm. For instance, when your SAP system is going to use the SID GWD, the user will be gwdadm. The group can be anything, but normally you use sapsys as group name. Creating a user in Linux is easy as it is just one command, and with SuSE you even get a wizard that aids you through the process.
To start the installation, just run sapinst from the SWPM package.
There are two executables: sapinst and sapinstgui. Sapinst will start the local server and the local GUI, while sapinstgui needs to connect to an already started sapinst server. As long as you do not have to do a remote installation, sapinst is the executable you want to run.
The initial screen shows the install options
I am going to install SAP NetWeaver 7.4 Support Release 2 ABAP for MaxDB. First thing to run is the preparations step.
Select what sapinst should test. If nothing is selected, sapinst will check a basic set of requirements. This does not mean that after the check is done your system really meets all the requirements. So make sure you select what you are going to install to have a meaningful test result. As I am going to install NetWeaver ABAP, I selected the ABAP related checks.
Provide the database type.
Confirm that a UC system will be installed.
SAPinst will ask for the location of the Kernel files.
Inform the location of the files. In my case, they are located at /sap/inst
Confirm the prerequisites data. If everything is OK, you can start the process.
The requisites are being verified.
After the check is done, sapinst presents you a screen with the results.
Go through the list. Everything needs to be OK.
The final dialog confirms that everything is OK and that a report was saved to a local file.
Now we are good to go: sapinst checked the system and gave it a quality stamp. Nothing impedes the installation of NetWeaver ABAP 7.4 SR2 with MaxDB.
The NW ABAP 7.4 SR2 system is going to be a standalone system, with everything on the same host.
Chose mode. Typical is enough, you’ll see still more than enough input dialogs.
In case the mode of the files is not correct, do not worry. Sapinst will take care of that (thank you sapinst!).
SAP system id
Specify the SID (here: GWD) and the mount directory (here: /sapmnt).
Set DNS name
The 2nd input field is to set the domain name of the server. Do not enter the FQDN or the name of the server here, just the DNS name (here: tobias.de). If you server is nwgw74.tobias.de, only the tobias.de part.
Standard password for all users
Inform where the DB files are located
Inform location of ABAP files
Let’s do not add the system to a SLD
Secure Storage Key Generation
Let the installer create a secure key
Lean back and relax, this will take a while
End of installation
After all steps are executed successfully and marked with a green check, the installation is done.
Install SAP license
Log on to the new SAP system is done via SAPGui. User is SAP* and the password is the standard password given during installation.
Automatically, a temporary license is installed.
Click the install button and select the license file. If everything is OK, a popup will confirm the installation of the license(s).
Last check is to verify that the new license is installed and active.
If the installation goes through without any error: congratulations. Many users will run into some errors, just do a search on SCN for installation problems. Here are some common problems and their solution:
R3load connect error
Step: Import ABAP:
Problem: R3load –testconnect fails
File exists in sapdb folder
Cause: Library not loaded
How to add the MaxDB library to the LD path? Configuration is stored in directory /etc/ld.so.conf
The last line is a include parameter. To add the Max DB libraries, it is just to create a conf file maxdb.conf in /etc/ld.so.conf.d/ and add the lib path to the new file.
Running the ld command from above:
SAPinst should be run as the admin user of the instance: <sid>adm. SCN is full of errors from users that had the problem to run the Import ABAP step. That error is caused by running the installation as root and not as <sid>adm. For instance, to configure the DB, R3load is called. With user <sid>adm the program connects flawlessly to the DB, as user root not. This is given by the simple fact that the environment variables are set for <sid>adm, and not for user root.
In case sapinst isn’t capable of setting the right permissions to the file sapuxusercheck, follow SAP Note 1563660.
After installing a SAP NetWeaver Gateway system, you’ll want to play around with a OData service. One option is to create everything from scratch; another option is to use a sample service that serves as a basis for learning. SAP NetWeaver ABAP comes with the flight sample, and to no surprise, SAP Gateway comes with a sample OData service based on the flight sample. To maintain a service, transaction /IWFND/MAINT_SERVICE is used. It shows a list of available services:
Adding the service
After a fresh SAP Gateway installation, the flight sample service won’t be listed. The service is already installed, but is not visible in the service catalog. To add it, select the Add Service option: This brings up the Add Selected Services screen.
The get a list of services, first inform the system alias. In my case, I created before in SPRO an alias named GWD for my Gateway system.
Then, click on Get Services: . The brings up the list of services available in the system
The OData service for the flight data is RMTSAMPLEFLIGHT or RMTSAMPLEFLIGHT_2. Select the services you want to add and click on Add Selected Services.
Confirm the following dialog
This will load the service. After everything was done successfully, you’ll hopefully see the following information:
Back at the Activate and Maintain Services transaction shows that the RMTSAMPLEFLIGHT service is added.
Test the service
Click on the service name. This will change the lower section of the screen.
To test the service, click on Gateway Client: . This will open the SAP NetWeaver Gateway Client.
Note that in the Request URI field the service URI is already inserted: /sap/opu/odata/IWFND/RMTSAMPLEFLIGHT/?$format=xml
To see of the service works, just execute a GET request. This should bring back the service description.
To retrieve data from a specific collection, click on Entity Sets: . Select an Entity Set (Collection)
This will set the URI parameter accordingly.
The information returned by the entity set can be used to retrieve the information of a specific flight. Part of the returned XML is an entity, that contains an URL like this:
When you decide to analyze your source code with a quality tool like SonarQube, sooner or later you will get messages about trailing white spaces or to replace tab with white spaces. The severity is minor and if you now use tab or white space for indentation has no effect whatsoever on my final code. At the end I run grunt and uglify over the code and unnecessary spaces are eliminated. But you may get into other problems with space / tab:
Git code review
Changes between operating systems (Linux, Windows)
Unreadable code when opened in Wordpad / Notepad / vim
Tab is normally 4 white spaces, but when defined differently on a computer, code gets really unreadable
Angry developers in endless flame wars
Now, what do to when SonarQube is showing minor problems caused by tabs?
This is caused that by default Eclipse is using tabs to indent code. You cannot change the default profile, but you can define your own. To do so, follow these steps:
Create a new profile
Windows -> Preferences
Click on New…
Inform a nice profile name.
Change the tab and white space setting.
Change tab policy to spaces only
To apply the new profile to an already edited file, you can open the file and re-format it (CTRL+SHIT+F). Running a new SonarQube analysis eliminates the white space errors:
In our long list of SAP Inside Tracks in Brazil the last event realized was SIT São Leopoldo. This time our SIT was co-hosted with DKOM at SAP Labs São Leopoldo. DKOM was a 2 day event (31.3, SAP employees only, 1.4, open to partners + clients), SIT SL a one day event (1.4). As always, we recorded the videos and streamed them, and for those wondering why no HLS this time: I think it was a good proof that you cannot rely on YouTube 🙂
My event app allowed to sign up for the event, thanks to everyone that did so! Android users had also the chance to rate SIT sessions using the app. Apple was against a release of this feature before the event started, therefore iOS users could only rate sessions after the event was over. In total 45 people downloaded the app. While this looks nice, compared to the total number of participants the number is too low. For next SIT I’ll have to think about how to increase the number of people installing the event app. I guess it will help if the registration via app is the preferred way and opening up the web site event registration only later. Which implies to release the app way earlier.
I created a wrap up presentation for internal usage. As the file size is 5MB I cannot share it here. But here are some of the key slides and numbers:
I used the UI5 app to create a web site version, giving everyone with internet access the chance to access key information about the event. The site URL was sitsl.ddns.net. The site had 122 unique visitors.
Tweets were analyzed with a variety of tools, with Kibana being the primary reporting tool.
Impressions from the event.
To speak for all other Mentors involved at the event: a big thank you to SAP Labs São Leopoldo to let us co-host the event.
SAP Inside Track in Brazil is a series of community events that started in 2009 and since then turned themselves into a real success case. What started in 2009 with 35 participants that shared hands on information after SAP Forum is now in its 11th edition and a sought after community driven event around SAP in Brazil. As of today, SITs were hosted in three cities: São Paulo, Rio de Janeiro and São Leopoldo.
A constant location is São Paulo, having hosted most of the SITs in Brazil, followed by São Leopoldo. No big surprise, as both cities have a strong SAP location: SAP offices in São Paulo and SAP Labs in São Leopoldo.
In total, the SITs attracted 1268 participants over the years, and the number of speakers and sessions is equally impressive: 126 speakers giving 136 sessions.
Our 3rd SIT at São Leopoldo was the first one to b eco-hosted at the first DKOM event at SAP Labs. DKOM being a two day event, the first day was strictly SAP internal, while the second day was open to clients and customers.