Hi All,

 

just an FYI - I finally got around to updating the the simple how to guide on the OData Channel API for SP3+...it used to be based on the old SP2 stuff, the following is a list of new features covered in the update H2G:

  • shows how to add and activite the service on the Gateway using transaction /IWFND/MAINT_SERVICE.
  • shows how to test the service using the FireFox RESTClient plugin - shows how to obtain and use the CSRF token which is required for executing the create and update services
  • shows how to use the sap-ds-debug=true query string parameter...this is a very helpful feature when it comes to testing!

 

Anyway, you can find the updated How To Guide here: http://scn.sap.com/docs/DOC-10466

 

Hope you enjoy it!

 

Cheers,

Jeff

With SAP Netweaver Gateway SP04 HANA Database data can be accessible from Gateway system. And I started to search for a document for this. I accessed a SAP Help url but it is very short. (Document Link). But there are some limitations for SAP HANA. You can read them from this link.

 

First install HANA client on your Gateway Server:

 

Unix(Logon with root):

hdbinst -a client -p /usr/sap/<SID>/hdbclient -s <SID>

 

Windows(Logon with SIDadm):

hdbinst -a client -p <lw>:\usr\sap\<SID>\hdbclient

 

Create a new db entry in DBCON table. To achieve this enter transaction code DBCO.

 

1.png

 

Now we can create Model Class. Go to transaction SE24. Create a new class. And define Superclass. Superclass is: "/IWHDB/CL_HAI_RT_ABS_MODEL"

 

2.png

 

Now redefine GET_HDB_ARTIFACTS method and write code. Dont forget to change code with your catalog name and view name.

 

data: lr_view_assgmnt type ref to /iwhdb/s_hai_rt_view_assgmnt.

 rt_views = super->get_hdb_artifacts( ).

 append initial line to rt_views reference into lr_view_assgmnt.

 lr_view_assgmnt->catalog_name = 'demo'.
 lr_view_assgmnt->view_name = 'AT_SALES'.

 

3.png

Save and activate your class.

 

Go to transaction SPRO. Click SAP Reference IMG button. Go to SAP Netweaver -> Gateway Service Enablement -> Backend OData Channel -> Service Development for Backend OData Channel. And click "Execute" button near Maintain Models.

 

4.png

 

Enter your Technical Model Name and Model Version your models and click create. In the next screen enter your class name above created.

 

5.png

Save your work. And enter IMG Activity Maintain Services. In this screen enter your Technical Service Name and Service Version and click Create button. In Data Provider Class input field enter "/IWHDB/CL_HAI_RT_DATA". Save your service and click Assign Model. Choose you created below Technical Model and save again.

 

6.png

Now we need to create a BAdl Class. We need to do this because system does not know which dbcon entry to use. I dont write how to create a BAdl because I think you know it. In implementing class we implement "/IWBEP/IF_DESTIN_FINDER_BADI~GET_DB_CONNECTION" method. In this method we tell system which DBCON table entry to use. You can check name above. And if you have one more HANA systems you can write own logic to select system.

 

  rv_db_connection = 'AWSHANA' .

 

7.png

 

Now we will register a service and use it. Go to transaction /IWFND/MAINT_SERVICE (I dont like Gateway transaction codes!). Add a new service.

8.png

9.png

Choose your service before you created. Enter your Technical Model Name and Technical Service Name. Enter package name $TMP. If you want you change package name.

 

And if everything is ok we can test your service.

 

10.png

 

And yes! We got data from SAP HANA!

 

11.png

12.png

13.png

After following John Moy's blog series on setting up the Netweaver Gateway trial on Amazon EC2, I thought it would be helpful to share how to connect your shiny new gateway trial to the ES Workplace ERP. Since using the ES Workplace systems a couple years ago for a CRM Mobile app, I have always praised the ES team for putting together a great set of resources for encouraging and enabling a service oriented architecture (SOA). The systems (ECC, CRM and PI) are great for doing testing against and developing POC's or demo apps. In this case we will be using the ERP instance to connect our Gateway system for data consumption.

 

In this example we will be initially connecting our systems together and then going through setting up a very basic example of consuming data from the ES Workplace ERP system via the Netweaver Gateway system sitting in the AWS cloud.

 

Please note that the Prepackaged Netweaver Gateway Trials already have this configured and ready for your username/password.

 

In order to connect and consume data from the ES Workplace ERP system, you will need an account. You can create one here and it only takes a couple of minutes: http://www.sdn.sap.com/irj/sdn/soareg
Once you have created your account, I suggest logging in and changing the initial password you received through registration. Its also just a good idea to check you are able to gain access to avoid any issues down the road.

Next up head over to your Netweaver Gateway Trial system and open up SPRO

  -> SAP Netweaver

    -> Gateway

      -> OData Channel

        -> Configuration

          -> Connection Settings

            ->SAP Netweaver Gateway to SAP System

              -> Manage RFC Destinations

Screen Shot 2012-07-20 at 4.47.32 PM.png
Click on ABAP Connections and select the "New" icon.Screen Shot 2012-07-20 at 8.08.35 PM.png

Name your RFC Destination and make sure that Connection Type is configured to be 3 - ABAP Connection.

 

Under Technical Settings enter the following values:

 

Target Host: iwdfvm3989

System Number: 00

Save As: IP Address

Gateway Host: /H/155.56.56.170/S/3299/W/e$workp1ace/H/iwdfvm3989.dmzwdf.sap.corp

Gateway Service: 3300

Screen Shot 2012-07-20 at 5.11.42 PM.png

next click the "Logon & Security" Tab and enter your ES Gateway Credentials and save the connection.

Screen Shot 2012-07-20 at 5.11.52 PM.png
After saving, select "Manage SAP System Aliases" and enter the details which will create a system alias for the ES Workplace ERP system.Screen Shot 2012-07-20 at 8.29.31 PM.png

SAP System Alias: Any name e.g. ESW

RFC Connection: Should be the name of your RFC connection you specified above

Software Version: Default

Screen Shot 2012-07-20 at 8.31.19 PM.png
Click the connection test button and you should receive a screen looking like this.Screen Shot 2012-07-20 at 5.12.03 PM.png
Once this is done, we are ready to create our webservice.

 

 

For our consumption example we will be pulling out a simple list of all users. If you would like to see a complete and detailed guide of CRUD (Create, Read, Update and Delete) operations.

 

Open up SE80 and create your Gateway Data Model.Screen Shot 2012-07-20 at 8.25.27 PM.png
Be sure to specify your System Alias when creating the Model.Screen Shot 2012-07-20 at 8.40.47 PM.png
Per the documentation, search for a BAPI you would like to use. Because we defined the System Alias in the previous step, the BAPIs being displayed are coming from the target system, in this case the ES Workplace machine.Screen Shot 2012-07-20 at 8.51.23 PM.png
Continue through the process by mapping the query operation.Also be sure to set a primary key by highlighting your unique property and clicking the "Key" button. Once done, click "generate".Screen Shot 2012-07-20 at 9.01.33 PM.png
Next up we will create a consumption model for our data model. Open up SE80 again and attach the gateway data model to consumption model.Screen Shot 2012-07-20 at 9.39.01 PM.png
Now we should be done, you can open up the browser and point to your URL listed in SE80 under the consumption model to see the definition and available collections.

Screen Shot 2012-07-20 at 9.40.35 PM.png

 

This is directly on the AWS machine, but I can also call this from my local machine:





Troubleshooting:

In the event you try to view a collection and receive the error: No System Alias found for Service, open up SPRO and assign a System Alias to the Service.

Screen Shot 2012-07-20 at 9.32.23 PM.png
Here you can see where the ESWORKPLACE alias has been defined.Screen Shot 2012-07-20 at 9.35.36 PM.png

Having additional problems?

 

Check that the service has been defined in SICF

Screen Shot 2012-07-20 at 9.37.49 PM.png
If you queries are taking a long time to load or your dataset is large, don't forget to limit it/add parameters to restrict the returned records. This can be done when defining the data model.Screen Shot 2012-07-20 at 9.46.04 PM.png
If your service will display locally on AWS but not from another machine, check that the AWS Security Rules include the port gateway is running on (in my case 8000).
If you try to view the detail of the  you will get an error, this is because I did not map the operation of GetDetail or Read - we only did the Query. Follow the guide to easily add this.

 

 

If you have a elastic IP associated with you EC2 instance you should be able to call the REST service from any machine connected to internet. (You could also use your public DNS name, its just not all the short!).

 

 

Here are a couple of useful TCodes for working with Gateway:

 

/IWFND/ERROR_LOG                            Gateway Error Log
/IWFND/APPS_LOG                            

Gateway Application Log Viewer

/IWFND/MAINT_SERVICE                        Maintain Service

Now that John Moy has done all of the hard work setting up an EC2 instance and installing NetWeaver Gateway from scratch, and documented the process in his three blogs, I thought I’d just add my two cents as a wannabe-system administrator on some AWS features which make operating an EC2 system a little simpler.

 

First things first: networking. AWS EC2 instances get assigned a public IP address and matching DNS name upon start-up. However, this is a dynamic address and will be different every time the instance is started. It’s also not terribly nice to remember - for example, right now the DNS name is ec2-54-251-14-47.ap-southeast-1.compute.amazonaws.com, but it would be different the next time we started it.

 

 

Elastic IP Addresses

Amazon of course offers a solution for this - Elastic IP addresses. Basically these are static IP addresses on the public Internet which are “rented” to your account and can be assigned to any running EC2 instance via the management console. Since IPv4 addresses are getting quite rare, they are not free. But they are cheap: $0.005 per hour when not assigned to a system. When it is assigned to a running EC2 instance, it’s free!

 

So let’s get one of those:

 

 

Step

Screenshot

In the EC2 Management console, go to Elastic IPs under the Network & Security group. image02.jpg
Click Allocate New Addressimage06.jpg
The default is fine - we want an address for EC2 - so just click Yes, Allocatezimage07.jpg
And we’re done! Our new, static IP address is shown zimage10.jpg
Now, we could manually assign this Elastic IP address to a running EC2 instance by right-clicking the IP address and choosing Allocate, but this assignment is lost every time the instance is shut down. So to avoid having to do this step every time, we’re going to automate it!image22.jpg

 

 

 

 

The Amazon EC2 API Tools

Luckily for us, almost any functionality in AWS is available via rich APIs, and Amazon even supplies tools which interact with those APIs. Which is convenient because we can automate otherwise tedious manual tasks, such as assigning that Elastic IP address every time we start the system.

 

 

Step

Screenshot

Log on to your EC2 instance using Remote Desktop. Using the Firefox browser you installed earlier, go to this URL: http://aws.amazon.com/developertools/351/
Click the Download the Amazon EC2 API Tools link under the Download heading and save the ZIP file to the D: drive of your server.
Open the zip file, and copy the folder ec2-api-tools-1.5.6.0 into the clipboard using Ctrl+C
Open a Windows Explorer window, and browse to C:\Program Files\Amazon and paste the directory here using Ctrl+V.
image03.png
Before we can actually use the tools, we need to meet a few more prerequisites such as a Java Runtime Environment. Using Firefox again, browse to http://www.java.com and follow the prompts to download the installer.

 

Double-click the installer and run through its prompts.

Next we need to set some environment variables. We do this by going to the Control Panel in Windows via Start > Control Panelimage05.png
In the search box in the top right, type variable to quickly find the entry Edit the system environment variables. Click on it to open the dialog. image15.png
Click on the Environment Variables buttonimage16.png
In the bottom section, find the variable called Path, and click the Edit button.

 

Assuming you installed the EC2 API tools in the folder mentioned earlier, simply add the following text to the end of the string:

 

;C:\Program Files\Amazon\ec2-api-tools\bin

 

Please make sure you include the semicolon!
image27.png
While we’re here, let’s add a new variable called JAVA_HOME using the New button. If you installed the latest version of the Java Runtime Environment into the default location, then the variable value should be:

 

C:\Program Files (x86)\Java\jre7

 

Click OK to save this.
image19.png
For the moment, we need one more variable called EC2_HOME. Follow the same process as above, and set its value to:

 

C:\Program Files\Amazon\ec2-api-tools-1.5.6.0

 

Leave this window open, we’ll need to create more variables in a moment.
image01.png
Now that we have set up the prerequisites for running the EC2 API tools, let’s configure them for our account. The AWS documentation provides some details on this here
First of all, we need to tell our tools which AWS Availability Zone the server is in. Earlier during the install process, we chose South-East Asia; if you chose a different region then the URL here will be different for you. To find out, go to Start > Run and enter cmd followed by the Enter key. image25.png
Run the command ec2-describe-regions, and note down the long string ending in “amazonaws.com” which matches the Availability Zone our EC2 instance is running in.

 

In our case, this is ec2.ap-southeast-1.amazonaws.com
zimage18 - Version 2.jpg
Going back to the Environment Variable screen, create a new System Variable called EC2_URL with a value of https://, followed by the string we just found from the commandline.

 

In our case, this is https://ec2.ap-southeast-1.amazonaws.com
image26.png
Now we need to authorise the client tools to access our AWS account and act on our behalf in order to automate things. We do this by installing the private key and X.509 certificate associated with the AWS account.

 

Using Firefox on the server again, go to your AWS Account page and log in with your AWS account here: https://portal.aws.amazon.com/gp/aws/manageYourAccount

 

Once there, click on Security Credentials.
zimage28 - Version 2 (1).jpg
Under the Access Credentials heading, click on the X.509 Certificates tab, then on the Create a new Certificate link. image20 - Version 2 (1).jpg
Download both the Private Key File and X.509 Certificate to the server. I would suggest creating a new folder called D:\aws and saving both files there.

 

Once you click “Close”, these files will not be accessible again, so this is important!
image09.png
Once downloaded, D:\aws should look like this: image21.png
Now we need to tell the API tools where to find those certificates. You guessed it - more Environment Variables!

 

Going back to the Environment Variable screen, create two new System Variables: One called EC2_CERT with a value of the complete file path to the cert-... file we just downloaded, and another called EC2_PRIVATE_KEY whose value is the complete path of the pk-... file we downloaded.
image13.png
Now, it seems like a long time ago but the whole purpose behind setting up these tools was to automate the process of assigning an elastic IP address to this EC2 instance. So let’s go:
First we need to find the ID of our EC2 instance. Conveniently, this is at the top of the information printed on the Desktop background of our system!

 

Note this for the next step.
image14.jpg
Start Notepad by Going to Start > Run and typing notepad followed by the Enter key. image29.png
Enter the following into notepad:

 

ec2-associate-address -i <instance ID> <Elastic IP address>, substituting the instance ID from two steps ago and the Elastic IP address we created earlier.

 

Next, go to File > Save As and save the file in a convenient folder such as the D:\aws folder we created earlier.

 

Make sure you save it with a .bat file extension, which is possible once you select All Files from the second drop-down.

 

And we have a script which assigns the Elastic IP address automatically to our server!
image11 - Version 2 (1).jpg
Now we just need to execute this script as part of the server’s booting process. Here’s how to do that:

 

Go to Start > Run and launch GPEdit.msc (The Local Group Policy Editor):
image17.png
In the Local Group Policy Editor, go into Computer Configuration > Windows Settings > Scripts (Startup/Shutdown), and double-click the Startup entry on the right. image00 - Version 2.jpg
Click the Add button and Browse to the .bat script we created earlier.

 

In our example, this is D:\aws\assignElasticIP.bat
image12.png
Click OK and you should see this:image08.png
Click OK again and you’re done! Every time the system boots up now, it will run this script which will assign the static, unchanging Elastic IP address to itself. Your Gateway system now has an address which can be referenced from bookmarks, JavaScript code or anywhere else that a frequently-changing IP address or server name is not convenient.

 

Let’s test it!

Log out of Remote Desktop, and log into your AWS Management Console from your local PC here: http://console.aws.amazon.com/ec2

 

Stop your instance by right-clicking it in the list and choosing Stop from the menu. Wait for the shutdown to finish which could take a minute or so.

 

When the instance has shut down, start it again by choosing Start from the same right-click menu. Wait for it to start up, which could take a minute or two.
image23 - Version 2 (1).jpg
When the instance has finished booting, its status will change to green and the Elastic IP address we created and assigned via the script should now be displayed in the properties area.

 

You may need to click the Refresh button once or twice for this to update.

 

If this is the case, then our changes were successful and the server can not be accessed via this static IP address.

 


If you have control of a domain such as mydomain.com, you could now assign a DNS hostname such as gw.mydomain.com by creating an A record which maps gw.mydomain.com to your Elastic IP address! I won’t go into the details here as this will depend on how the DNS is setup for your domain if you have one.
image24 - Version 2 (1).jpg

 

That's it for now! The EC2 API tools are really a treasure-trove of functionality and there would be many more ways of automating manual tasks with the EC2 infrastructure. Chris Paine alluded to some of this in his recent blog on managing their AWS systems, and I'm sure there are many more!

This blog post follows Part 1 where we established a basic Windows 64-bit instance on Amazon's Elastic Compute service, and Part 2 where we prepared the environment and downloaded the SAP Trial software.

 

Now we will actually proceed with the installation, continuing on after step 47 in Part 2 ...

 

StepScreenshot

48.  Commence installation of ABAP Server

 

From your unpacked installation files on the instance D: drive, navigate through the folders as follows ...

 

NWABAPTRIAL70211_64_GW204 ->

SAP_NetWeaver_702e _Installation_Master ->

IM_WINDOWS_X86_64

 

Double click on the file 'sapinst'

step48.jpeg

49.  Installation of ABAP Server

 

Within the software delivery tool, select the Central System option. 

 

Press the 'Next' button

step49.jpeg

50.  Installation of ABAP Server

 

You will see the warning shown in the image to the right.  Press OK.

 

SAPInst immediately logs you off, causing your Remote Desktop session to disconnect.  Log back in via Remote Desktop, and the installation will automatically continue.

step50.jpeg

51.  Installation of ABAP Server

 

Accept the license.

 

Press the 'Next' button.

step51.jpeg

52.  Installation of ABAP Server

 

For the Java Runtime Environment, specify the path to the JRE which you installed from Part 2 of this blog series.

 

Press the 'Next' button.

step52.jpeg

53.  Installation of ABAP Server

 

Specify a Master Password for your system. 

 

Press the 'Next' button.

step53.jpeg

54.  Installation of ABAP Server

 

You will see a warning 'Your system does not meet some prerequisites ...'.  The reason is that the Swap Size for your service is not as large as desired.  You can ignore this warning, as the installation will still proceed successfully.

 

Press the 'OK' button.

step54.jpeg

55.  Installation of ABAP Server

 

On the parameter summary screen, review the settings and check to ensure the target drive for the MaxDB database is the D: drive.

 

Press the 'Next' button.

step55.jpeg

56.  Installation of ABAP Server

 

Your installation will commence. 

step56.jpeg

57.  Installation of ABAP Server

 

After approximately 45 minutes (assuming you originally provisioned a 'High' instance), you should see the success message shown in the image to the right.

 

Press the 'OK' button.

step57.jpeg

58.  Installation of SAP GUI

 

Here we can also install the SAP GUI on the Windows Server itself.  Execute the installer for this which you unpacked in Part 2.

 

Select all default options and proceed through the installation wizard until the installation completes.

step58.jpeg

59.  Logging into the ABAP Server

 

Your SAP GUI should now be installed, and the SAP ABAP server should be running by default, after the installation.

 

Launch the SAP GUI, and create a new system entry as per the image to the right.

step59.jpeg

60.  Logging into the ABAP Server

 

Log into the server with the following default credentials ..

 

Username:  bcuser

Password: minisap

step60.jpeg


 


Congratulations!  You now have a running SAP NetWeaver ABAP 7.02 + Gateway 2.0 SP04 system.  Because of the ports we have opened in the course of this blog, you should be able to connect from your local machine.

 

*** IMPORTANT: To proceed with using the NetWeaver Gateway components, you will need to activate and configure the SAP NetWeaver Gateway component.  Follow the steps in this blog by Andre Fischer to do that. ***

 

Useful links are as follows ...

 

General Documentation for SAP NetWeaver Gateway 2.0 SP04

 

What's new with SAP NetWeaver Gateway 2.0 SP04 (note that this release includes support for JSON)

 

SAP NetWeaver Gateway Developer Guide

 

SAP NetWeaver Gateway Cookbooks and Tutorials

 

 

 

 

Some other housekeeping matters ...

 

TopicScreenshot

Registering as a Developer

 

To register as a developer, simply attempt to create anything in ABAP (via SE80) and use the following key for user BCUSER ...

 

14421119653247674476

step61.jpeg

Securing your ABAP Server

 

You can take some basic actions to tighten the security of your ABAP server.  Since we chose to open the ports for SAP GUI access from the outside, it is prudent to change the standard password for the BCUSER account in case anyone stumbles across your running server.

 

Note that the SAP* and DDIC user accounts will have the password chosen by you as the master password in step 53, so they should not be accessible to strangers.

 

I don't purport to be a security expert, so if anyone has any further advice here, feel free to add it in the comments.

step64.jpeg

Stopping your ABAP Server

 

Whenever you finish working with your ABAP server, be sure to remember to STOP your ABAP server from the sapmmc console BEFORE you stop your AWS instance.

 

To stop the server, right-click on the green NSP icon and select 'Stop'.  The next time you access your instance, you will need to remember to 'Start' it again.

step62.jpeg

Changing the Instance Type

 

After the installation is complete, you no longer need to retain a 'High' Instance Type.  You can downgrade this to a Medium instance, as the AWS fees are lower.  The ABAP server will start and operate fine with a Medium instance.  To do this, your AWS instance must be stopped.  Right click on it, and select the option 'Change Instance Type', then select m1.medium

step63.jpeg

 

 

Don't forget to stop your AWS instance from the AWS management console when you are not using your instance, to limit your fees (and as indicated above, don't forget to stop your ABAP server first).

 

I hope this blog series assisted you in establishing your SAP NetWeaver Gateway server in the cloud.  Don't forget, this is a trial ABAP server, so you can also use it in the same manner as any basic ABAP server.  This means you can also use it to refine your skills with Web Dynpro ABAP, Floorplan Manager etc.

 

 

 

Addendum: Fellow SAP Mentor Sascha Wenninger has also posted an accompanying Part 4 to this series, which describes in detail how to assign an Elastic IP to your AWS instance, so you can continue to reference it with a consistent IP address.

Also see this excellent blog by Paul Aschmann who describes how to connect your new trial NetWeaver Gateway instance with the ES Workplace ERP system.

 

 

 

 


In Part 1 of this blog series, I outlined the steps necessary to establish a basic Windows 64-bit instance on Amazon's Elastic Compute service.  In this part I describe the steps necessary to prepare the environment as well as to download the latest Trial SAP NetWeaver Gateway 2.0 SP04 with NetWeaver ABAP 7.02.

 

Here, we continue on after step 24. in Part 1 ...

 

StepScreenshot

25.  Start your AWS instance and log in to it using Remote Desktop

If at the end of Part 1, you stopped your AWS instance, log back into the AWS Management Console and start your instance from the instances page by right clicking on your instance and selecting the 'Start' option.  It will take about 30 seconds to start the instance.  When it displays as 'Running', select the instance and from the instance details page, copy the Public DNS contents into your Remote Desktop client, and log in as an Administrator (hopefully with the password you reset from step 22. in Part 1)

step24.jpeg

26. Assign a short HostName

Unfortunately the hostname generated by AWS is too long for the SAP installer (see OSS Note 611361).  So we must firstly reduce the length of it. 

 

From the Windows server, select Start -> Computer -> System Properties

step25.jpeg

27.  Assign a short HostName

 

Next to the 'Computer name' field, select the 'Change settings' option

step26.jpeg

28.  Assign a short HostName

 

Enter a computer description, then press the 'Change' button

step27.jpeg

29.  Assign a short HostName

 

Overwrite the computer name to be 'sapnwgw'.  Then press the 'OK' button.

step28.jpeg

30.  Restart the instance

 

The instance will ask you the restart the computer.  Press the 'Restart Now' button.  Your Remote Desktop session will immediately terminate. 

step29.jpeg

31.  Amend Windows Firewall settings

 

Log back into the instance.  Now we will open ports in the Windows firewall to enable communications for SAPGUI and HTTP traffic from outside the instance (eg. from your smartphone).  Whilst we configured the applicable ports within AWS in Part 1, we still need to configure the internal firewalls within the Windows operating system here.

 

From the Windows start menu, navigate to Start -> Windows Firewall and Advanced Security.

 

Select 'Inbound Rules', and then the option 'New Rule'.

step46.jpeg

32.  Amend Windows Firewall settings

 

For 'Protocol and Ports', select 'TCP', and enter the specific local ports '3200, 8000'.

 

Press the 'Next' button.

 

For the remainder of the wizard, accept the default options.  Give the rule a name such as 'sapnwgw' and finalise the wizard by pressing the 'Finish' button.

step47.jpeg

33.  Change IE Security settings

 

Launch Internet Explorer on the instance.  One thing we find with IE on a Windows 2008 Server is that it is practically unusable with the security settings in place.  We will firstly relax these settings, then from IE download Firefox and use that thereafter.

 

When you first launch IE, you will see a pop-up offering to 'Use recommended security and compatibility settings'.  Select the 'Ask me later' button.

 

Within IE, navigate to Tools -> Internet Options -> Security -> Custom Level

step30.jpeg

34.  Change IE Security Settings

 

Under the section 'Downloads', for the option 'File download', select 'Enable'.

 

Under the section 'Scripting', for the option 'Active scripting', select 'Enable'.

 

Then press the 'OK' button.  Internet Explorer displays a warning asking you if you are sure you wish to make these changes ... select 'Yes'.

step32.jpeg

35.  Install Firefox browser

 

From Internet Explorer, download and install the latest version of the Firefox browser. 

 

When asked whether you wish to import settings from Microsoft Internet Explorer, select the option 'Don't import anything'.

 

After Firefox is installed, close Internet Explorer.

step33.jpeg

36.  Download 7-zip

 

From the Firefox browser, navigate to the following web URL

 

http://7-zip.org/download.html

 

Select to download the option for 64-bit Windows. This is a free download.

step34.jpeg

37.  Download Java SE 5 JRE

 

The SAP installer which we will use later will need a Java 1.5 JRE (note that Java 6 and above are not supported by the installer).

 

Firstly, if you don't already have an Oracle Web account, you will need to sign up for a free one here ...

 

https://login.oracle.com/mysso /signon.jsp

 

 

Then, from the Firefox browser, navigate to the following web URL

 

http://www.oracle.com/technetwork /java/archive-139210.html

 

Select the option 'Java SE 5'

step35.jpeg

38.  Download Java SE 5 JRE

 

Select the latest available Java SE 5.0 Runtime Environment.

step36.jpeg

39.  Download Java SE 5 JRE

 

Accept the license agreement, and then select to download:

 

Windows Offline Installation - jre-1_5_0_22-windows-i586-p.exe

 

You will be asked to enter your Oracle Web account credentials.  Then with the pop-up window select to 'Save File'

step37.jpeg

40.  Download SAP Trial software

 

Using Firefox, navigate to the following URL ...

 

http://bit.ly/LVMAB9

 

Log into SCN, then you will be directed to a SCN Software Download page. 

 

Here we will download both the SAPGUI and the latest SAP NetWeaver Gateway Trial.

 

Read the license agreement

 

Then select 'SAP NetWeaver ABAP Trial 7.02 SP11 WinGUI' and press the 'I Agree - Download Selected File' button.

 

NOTE: One reason we use Firefox here is that I was never able to get IE on this server build to successfully download the software.  Special thanks to  Jason Scott who provided me with this solution.  Even when using Firefox, I have on occasion received an error 'Unfortunately we have trouble completing your download request ...'.  I cannot explain this, because it is intermittent.  For instance, the last time I received this error, I tried again the next day and it worked perfectly.

step38.jpeg

41.  Download SAP Trial software

 

Next select 'SAP NetWeaver ABAP Trial 7.02 SP11 Win 64 bit Version with Gateway 2.0 SP04' and press the 'I Agree - Download Selected File' button

step39.jpeg

42.  Confirm downloads and transfer to D: drive

 

At this stage your downloads should look somewhat like the image on the right.  These are by default saved against your C: volume.

 

As space on this volume is valuable, MOVE these files to your D: volume.

step40.jpeg

43.  Install 7-zip

 

From the D: volume, execute the installer for 7-zip by double clicking the file 7z920-x64.  In my case I chose to install onto a directly on the D: volume.

step41.jpeg

44.  Install JRE 1.5

 

From the D: volume, execute the installer for Java Runtime 1.5.  In my case I choose the 'Typical Setup' option.

step42.jpeg

45.  Unpack SAP GUI installation files

 

Open the 7-zip File Manager via the Windows Start Menu.

 

Select the file NWABAPTRIAL70211_64_GUI.rar and press the 'Extract' button. 

 

Ensure that you select a folder in the D: drive to extract the contents to.

step43.jpeg

46.  Unpack SAP ABAP Gateway Trial installation files

 

Open the 7-zip File Manager via the Windows Start Menu.

 

Select the file NWABAPTRIAL70211_64_ GW204.rar and press the 'Extract' button. 

 

Ensure that you select a folder in the D: drive to extract the contents to.

step44.jpeg

47.  Check unpacked installation files

 

At this stage your Unpacked SAP installation files should appear as per the image to the right.

step45.jpeg

 

At this stage, you are ready to commence the installation.  The steps for that are outlined in Part 3.

UPDATE

I strongly recommend you to use the new version of the toolkit for Andrdoid in Gateway Productivity Accelerator (more info in this blog: http://scn.sap.com/community/netweaver-gateway/blog/2013/05/10/new-gateway-tool--sap-netweaver-gateway-productivity-accelerator).

The blog is still relevant, except that SAP NetWeaver Gateway plugin for Eclipse 2.5.2 is superseded by Gateway Productivity Accelerator 1.0.

 

It has never been easier to create mobile based applications connected to SAP systems. The SAP NetWeaver Gateway offers access to processes and data from a standard SAP Business Suite system (ERP, CRM ...) via open protocols.

 

Together with the SAP NetWeaver Gateway plugin for Eclipse, anyone with a passion for Android development can immediately start using Gateway!

 

Starting with version 2.5.2 of the plugin, an Android Toolkit is available, enabling the native Android developer to easily develop applications that consume SAP NetWeaver Gateway services.

 

Today I will show you how easy it is to create an Android application that reads and displays data from SAP NetWeaver Gateway.

 

I assume you already have a running Eclipse IDE with the Android Developer Tools (ADT) plugin for Eclipse installed.

 

First thing you’ll need to do is to download and install the SAP NetWeaver Gateway plugin for Eclipse. Once installed, the second step will be to configure an NW Gateway system connection. I’ll be using the online NW Gateway demo system. To configure it, go to Eclipse Preferences and add a new connection under SAP NetWeaver Gateway > Connections.

 

One last thing before we can start, since the Android Toolkit is based on the SAP OData Mobile SDK, we need to download the SDK, and extract to a location on the file system. Then all we have to do is to set the path to where we have extracted the libraries, in Eclipse Preferences under SAP NetWeaver Gateway > Android Toolkit.

 

Now that we are done with the formalities, we can go ahead and use the plugin to create an Android app. Start by opening the New Project wizard and select Starter Application Project under the SAP NetWeaver Gateway node. Give your project a name, and select Android from the dropdown of available target platforms. Follow the wizard steps and select the List/Details Application template from the templates page of the wizard.

 

The service I will use in my application is the sample service that exposes data from the good old Flight sample application, and is available in SAP NetWeaver since many years. This is also the first example found under Sample Gateway Services in the NW Gateway demo system page on the SCN.

 

We have several ways to select the service to base our application on, but let’s try out the nice Catalog functionality to explore the Gateway service catalog. Clicking the Catalog button will open the service catalog. In case you skipped the connection configuration step, no worries, you can still do it without closing the wizard (simply click on the Configure… link and add the online demo system details).

 

Search for: *flight to display all services on this system that deal with flight data. The service I’m looking for is RMTSAMPLEFLIGHT_2.

 

We are almost done!

list details app.png

 

The final step of the List Template is to model the application pages (activities).

The modeling is quite intuitive: we start with a List activity that displays data from a selected collection of the service (Entity Set Navigation) in a list manner. Pick a few fields to appear on each entry in the list.

 

For example, I want to have a list of flight carriers as my first page. Then, on clicking a specific carrier I would like to list the carrier’s flights. So I add another page, and select its type to a List, and its Entity Set Navigation to CarrierFlights. I pick a couple of fields that describe a flight entry (for example, the flight number and date).

 

Last but not least I add a third page, this time of type Details to display detailed information on a specific flight, and add all fields.

 

Then, I click the Finish button of the wizard. A new Android project is generated containing a semantic proxy for the service I selected and application logic and resources according to my modeling. Also, the SAP OData Mobile SDK libraries are copied into the project under libs folder.

 

Now I can already run the application in an emulator or on a real Android device and check it out.

 

In runtime, you need to enter a username and a password for login. Just enter the same credentials you used to configure the Demo System.

 

Note that if working behind a proxy you might need to configure the proxy host and port in the application to avoid an Unknown Host Exception. For instructions on how to do that, refer to the troubleshooting guide – page 105 in the SAP NetWeaver Gateway plug-in for Eclipse guide.

 

I hope you find this blog helpful. Keep in mind that this is just a starting point for understanding how to consume Gateway services in an Android application. You can customize the generated project code manually like adding or removing pages, changing the layout and icons or add additional functionality.

 

Feel free to share in the comments section any customization and/or feedback you have.

 

Useful Links:

 

ADT Plugin

 

SAP NetWeaver Gateway plug-in for Eclipse

 

SAP OData Mobile SDK for Android

 

SAP OData Mobile SDK for Android documentation

 

SAP NetWeaver Gateway Demo System

 

To be updated on future #SAPGateway blogs and updates please follow us @shirilevil

Recently, SAP released a clean (non-virtualized) installation of a Trial SAP NetWeaver Gateway 2.0 with ABAP 7.02 SP11 for Windows 64-bit on SCN.  This is basically a classic trial ABAP (NSP) system, with the addition of NetWeaver Gateway components pre-installed.  I thought it would be a good opportunity to install this on Amazon's AWS EC2 (Amazon Web Services Elastic Compute) infrastructure-as-a-service in the cloud.  After all, a Gateway instance in the cloud brings with it opportunities to test out any number of client consumption approaches, including mobile and non-mobile use cases, outside the confines of one's own home network.

 

A short note - It is well known that last year SAP made available a Trial Version of SAP NetWeaver Gateway in pre-packaged virtualized containers (both in VMware for Linux and Hyper-V for Microsoft Windows).  However to my understanding you cannot run these directly on an AWS EC2 instance unless you do some sophisticated extractions which are beyond my abilities.

 

I've never been comfortable in the area of SAP installations, even though I've installed my fair share of trial ABAP and Java servers on local machines in the past decade.  But as a developer you need to cross this bridge every so often in order to get up and running to try new things.  I was personally interested in having a NetWeaver Gateway instance in the cloud which I could connect my iPhone to.  Interestingly, another SAP developer  Jason Scott  who works in Western Australia by coincidence attempted the same installation on the same weekend.  Via Twitter, we found that we both hit the same hurdles with the installation.  Therefore I resolved that the community might benefit from our shared experiences so as to make it as painless as possible for those who follow the steps in this blog.

 

Also I should acknowledge some key resources which I leveraged as part of the installation.  People have been writing blogs about AWS installations for many years (including in-depth ones by the real experts such as Martin English and Chris Kernaghan), but for this exercise the ones I referenced most often were these ...

 

Installing the 7.02 ABAP Trial System (NSP) in an Amazon AWS instance - Part 1 by Steve Rumsby

(This is an excellent resource - in some ways this blog here is an update to the steps posted in Steve's original blog for setting up the instance)

 

Step by Step Installation Guide for SAP NetWeaver AS ABAP 7.02 SP6 32-bit Trial Version by Faisal Altaf

(This blog basically covers off the steps from where Steve's blog ends)

 

Implementing SAP Solutions on Amazon Web Services

(An 'official' document which is essential pre-reading, although this document pertains to proper SAP instances, not the trial ABAP version which we install here)

 

 

Charges

 

Before commencing, familiarise yourself with the Amazon charges for this service.  Basically you need to pay for your Windows Usage on the Elastic Compute (EC2) service only for the hours that your instance is running.  Additionally, you will need to pay ongoing costs for your persistent storage using the Elastic Blog Store (EBS) service.

 

Here is an approximate cost (based on pricing as at 1 July 2012 - see website for updates)

 

Service Pricing
1 x Standard On-Demand Instance - Medium Window Usage - $0.23 - $0.25 per Hour (depending upon selected Region)
1 x Amazon Elastic Block Store - 90GB (30GB + 60GB)

$0.10 - $0.19 per GB-month of provisioned storage (depending upon selected Region)

+ charges per 1 million I/O requests (unlikely to be an issue for a Trial ABAP)

 

There are additional charges for internet data transfer, elastic IP addresses etc.  Check the website.  Given that we are dealing with a Trial instance it is unlikely that these additional charges will be significant. 

 

When looking at these charges, the most significant is for the on-demand instance itself.  If you leave it running permanently the costs will add up.  However if you simply start the instance when you are working on it, then stop it when it is not being used, you can keep the costs reasonable.

 

 

Steps

 

 

StepScreenshot
1.  Create a new AWS account via http://aws.amazon.com/
2.  In the AWS Management Console, select the EC2 (Elastic Compute) tabstep2.jpg
3.  Select the most appropriate Region to create your instance (in my case I chose Asia Pacific Singapore because it has the lowest latency to where I reside).step3.jpg
4.  Select the Launch Instance buttonstep4.jpg
5.  From the Request Instances Wizard, select Microsoft Windows Server 2008 R2 Base (64 bit)step5.jpg

6.  Select the Instance Type as 'Large (m1.large, 7.5GB)'.  For the 'Launch Instances' section select an Availability Zone (any choice should suffice - but note down which you choose). 

 

Leave all other options as defaulted. 

 

** Note that during the installation we will use a large instance to expedite the process, however after the installation we can downgrade to a medium instance, hence keeping ongoing charges low **

 

Press 'Continue'.

step6.jpeg

7.  In the 'Advanced Instance Options' window

 

Select the 'Termination Protection' flag.  This prevents you from accidentally terminating (destroying) your instance.  You can still terminate it (when you have finished working with the Trial), but you will be forced to uncheck this flag first.  I learned the hard way that this should always be selected to prevent accidental deletions of instances.

 

Leave all other options as per their default values.

 

Press 'Continue'.

step7.jpeg

8.  For the tags section, simply add the value 'SAP ABAP7.02 + Gateway 2.0 SP04' for the tag 'Name'.  This simply gives your instance a visible name - you can change this later if you wish.

 

Press 'Continue'

step8.jpeg

9.  At the 'Create Key Pair' step, enter any name for your key pair (eg. mykeypair) and press the 'Create & Download Your Key Pair' link.  This will download a file which you will need later to connect to your AWS system via your local machine.

 

Press 'Continue'

step9.jpeg

10.  At the 'Configure Firewall' step, you can accept the suggested new Security Group name of 'quick-start-1', or alternatively change it to whatever name you wish.  What is important is to add the TCP ports 3200 and 8000 by typing them in and pressing the 'Add Rule' button in turn.  Opening port 3200 enables communication via a SAPGUI on your local machine, and opening port 8000 enables web communication with the SAP Internet Communication Manager (ICM) to invoke Gateway services from outside your instance.  If you leave the Source as 0.0.0.0/0 it means ANY external IP address can access this system via those ports.

 

Also ensure that TCP port 3389 is included as you need that open to connect later via Remote Desktop.

 

Press 'Continue'

 

IMPORTANT NOTE: The setup here results in quite an open system which will allow you to later connect devices such as smartphones to your Trial instance.  However, from a security perspective you would presumably apply more stringent controls for a Productive system.

step10.jpeg

11.  At the 'Review' step, press the 'Launch' button.

 

You will see a window with the text 'Your instances are now launching'. 

 

Select the option 'View your instances on the Instances page'

step11.jpeg

12.  You should see your instance in the Instances page.  Within 30 seconds the instance should appear as 'Running'.

step12.jpeg

13.  Next we need to allocate additional disk storage to this instance to accommodate the ABAP system. 

 

Select the option 'Volumes' under ELASTIC BLOCK STORE

step13.jpeg

14.  Here we create a volume (D drive) for our instance.

 

First, press the 'Create Volume' button at the top of the 'EBS Volumes' canvas.  For the window that appears, select the size as 60GB, and the availability zone which you selected in step 6.

 

Press the 'Yes, Create' button.

step14.jpeg

15.  You will now see two rows in the EBS Volumes area.  One which is 30GB was originally provisioned as part of your new instance - this is effectively the 'C:' drive.  The other which is 60GB appears with state 'available' - we want this to become the 'D:' drive for our instance. 

 

Right click on the available 60GB volume and select 'Attach Volume'.

step15.jpeg

16.  In the popup window 'Attach Volume', select the instance you created.  Leave other fields defaulted.

 

Press the 'Yes, Attach' button.

step16.jpeg

17.  At this stage it may take a few minutes for the new volume to register as attached to the new instance. 

 

To see that the volume is attached, navigate back to the Instances page, click on the instance you created and you should see two entries (sda1 and xvdf) in the details pane against the field 'Block Devices'.

 

NOTE: I have on occasions found that I needed to stop and start my instance to get the new volume to 'attach'.  Be patient and cross your fingers.

step17.jpeg

18.  Next we need to retrieve the initial Windows password for the new system.  It takes a while (sometimes as long as 15 - 30 minutes) for this to be generated for you.

 

Right click on your instance in the instance page, and select the option 'Get Windows Password'.  If you receive a popup saying that it is 'not available yet', wait a while longer and try again.

step18.jpeg

19.  You will see a popup window 'Retrieve Default Windows Administrator Password'

 

Using a text editor (eg. Notepad), open the key pair file you downloaded in step 9.  Copy the ENTIRE contents of this file, and paste it into the 'Private Key' field as shown in the image shown here. 

 

Press the 'Decrypt Password' button. 

step19.jpeg

20.  You will be presented with the initial Windows password for your new instance.  Note down both the computer address, and the password.

step20.jpeg

21.  Launch a windows remote desktop client from your local machine.  Windows machines should have it available in the Accessories folder of your start menu.  If you have a Mac (as I do), you can download a free Windows remote desktop client here.

 

Insert the computer name you retrieved from step 20, then for user Administrator enter the password from step 20.   Enter 'OK' in the remote desktop client to login.

step21.jpeg

22.  If you have made it to this step, you should now be logged into your newly provisioned Windows Server.

 

At this stage, you SHOULD change your password.  From the Windows start menu, select

Start -> Windows Security.

 

Then select the option Change Password, and enter an appropriate new password.

step22.jpeg
23.  Congratulations.  You now have provisioned a new Windows Server in the cloud for your ABAP Trial installation.

24.  If at this stage you wish to take a break, you can stop your instance by right-clicking your instance in the AWS instance page and selecting the 'Stop' option.  This will ensure you will not incur any unnecessary charges for the running instance (note however that you will incur ongoing charges for the disk storage which you have provisioned).  You will be automatically disconnected from your Remote Desktop session when you stop the instance.

 

Note that when subsequently starting your instance at a later stage (right-clicking on the instance and selecting the 'Start' option, you will need to look in the details pane for the instance and copy the generated computer address to use in your remote desktop session.  This address may differ from the one you had used earlier (you can avoid this problem by subsequently assigning an elastic IP address - Part 4 of this blog series, by fellow SAP Mentor Sascha Wenninger outlines how to accomplish this).

step24.jpeg

 

 

In Part 2 of this blog series I outline the steps necessary to prepare your running Windows Server for the ABAP Trial installation, downloading the necessary installation files, and in Part 3 I cover the actual SAP installation itself.

SAP NetWeaver Gateway 2.0 SP4 contained the first release of the Gateway Service Builder transaction - SEGW. This transaction will grow going forward. Today you can create service with it by importing DDIC structures or EDMX models, or you can define them by hand. I wanted to create some simple videos to that show this new transaction. The first of these is focusing on the DDIC importer, you can watch it on youtube here:

 

 

Let me know what you think about this new transaction - SEGW.

 

Thanks!

Jeff

architecture.pngDate: June 26-29, 2012

 

Location: Boston

 

Event: Red Hat Summit and JBoss World

 

The Red Hat Summit and JBoss World is an event you may not consider to be important to a product such as SAP NetWeaver Gateway but if you hear me out I will tell you why it is - or was - this year.

 

After a decade of cooperation between Red Hat and SAP both companies announced the certification of Red Hat Enterprise Linux 6 for SAP applications at this year’s Red Hat Summit and JBoss World. But that certification was not the only important topic at the event. SAP stressed their intention to offer open interoperability to developers and partners by positioning SAP NetWeaver Gateway.

 

In context of Red Hat this means SAP NetWeaver Gateway supports JBoss. JBoss developers can now leverage SAP NetWeaver Gateway as consumption platform to easily access SAP Business Suite data using open standards (OData via RESTful services). This adds an additional channel to the broad set of channels SAP NetWeaver Gateway is already supporting today.

 

What does that mean to me as developer/partner? If you are a JBoss developer you can now easily develop applications that access SAP Business Suite data from within your known development environment and a plug-in will help you connecting to the SAP system and finding the relevant services. Even better: All you need to get started with SAP NetWeaver Gateway can be found here and installed for free (trial).

Please note that there are many other channels you can leverage using SAP NetWeaver Gateway. Actually multi-channel support is one of the huge advantages of SAP NetWeaver Gateway.

Forbes 2000.png

 

So you are not an SAP developer or partner yet and I hear you asking “Why?”. Well take a look at the picture on the right. SAP gives you access to 25 industries and has a share of over 50 percent in every sector of Forbes 2000 companies.

 

So if I got you interested in SAP NetWeaver Gateway let me give you a short list of pages you maybe want to visit:

  1. My favorite: SAP NetWeaver Gateway on YouTube
  2. SAP NetWeaver Gateway on SDN
  3. SAP NetWeaver Gateway Develop Center on SDN
  4. SAP NetWeaver Gateway on Partner Portal

Let me finish my Blog with some additional information and impressions on the Red Hat summit and JBoss World: SAP NetWeaver Gateway’s first appearance at the event was a huge success. In addition to the interest in SAP as such I had the opportunity to talk to many interesting developers and partners with interesting ideas on how to leverage SAP NetWeaver Gateway.

 

If it comes to the event as such I would like to let you actively participate in some parts of it by offering you a choice of recommended viewings (MP4):

  1. Red Hat Summit 2012 Opening Keynote, Jim Whitehurst
  2. SAP Keynote: The Enterprise of Tomorrow, Irfan Khan

And last but not least, if you wondered about the green monster in the title: Boston is always worth a visit and the convention center is conveniently located in the city center which gave Red Hat the opportunity to invite to an evening event at the famous Fenway Park – a Baseball stadium with 100 years history in 2012. You can see the stadium in the picture below. The Green Wall on the left side is called the Green Monster.

 

green_monster.png

Together with my colleague Genady Podgaetsky the following article

 

"Take Advantage of Cross-Platform, Cross-Device Access While Keeping Your Data Secure with SAP NetWeaver Gateway"

 

has been published in the July issue of the SAPinsider magazin.

 

In this article, we provide you with an overview of how SAP NetWeaver Gateway security works, and the options available for authentication and SSO.

 

Best Regards,

André

It is a pleasure for me to announce that for SAP NetWeaver Gateway 2.0 SP4 the following software component versions

 

 

  • SAP_IW_FND 240
  • GW_CORE 190

 

 

have been released to customers today, July 6, 2012, for usage on SAP NetWeaver 7.00 / 7.01.

 

 

 

With this release customers can leverage the embedded deployment option also on older SAP Business Suite Systems since so far the software components mentioned above were only available for SAP NetWeaver 7.02 and SAP NetWeaver 7.31.

 

 

When using the embedded deployment option all core software components for SAP NetWeaver Gateway and any optional backend components are deployed together in the SAP Business Suite backend system.

 

 

Please note that a deployment of SAP NetWeaver Gateway as a Central Hub is NOT supported on SAP NetWeaver 7.00 / 7.01 and that the software component versions belong to SP4 of SAP NetWeaver Gateway 2.0.

 

Development can be done using the Service Builder (transaction SEGW) based on the OData Channel programming model.

 

For any other restrictions please see SAP Note 1574568.

 

 

Best Regards,

André

 

Filter Blog

By author:
By date:
By tag: