developing a simple list based sapui5 application.doc

20
Developing a simple List based SAPUI5 Application Posted by Murali Shanmugham in UI Development Toolkit for HTML5 Developer Center on Jul 23, 2013 8:12:42 AM inShare 2 I have been for long thinking of writing my first SAPUI5 Application. I thought I will share my experience especially for beginners like me. I still remember my first simple Sales Order Display screen which I developed using Abstract Portal Component (APC) back in 2005. Since then, I have been developing applications using different technologies – BSP/WDJ/WDA/Visual Composer and have seen lot of changes in the UI space. SAPUI5 for sure is to stay for its own features and benefits. I believe we will get to see more SAP transactions delivered with SAPUI5 in the near future. I have already been introduced to some of these SAPUI5 screens in HR Renewal and Identity Management applications . I will quickly demonstrate how to build a simple list based screen (Sales Order List Screen) without the need to depend on having a NetWeaver Gateway or an SAP ABAP 7.31 system with UI Add-on in your own environment. I would highly recommend to read this tutorial posted by Bertram Ganz . When I started building this application, I got stuck in several places and I was lucky to find solutions posted by others in different places. Prerequisites: 1. NetWeaver Gateway Server - I am using the SAP Netweaver Gateway Service Consumption Demo System offered by SAP. You can register for an access using this link 2. Install Eclipse IDE (Juno ) 3. Download SAPUI 5 library 1.12.1 4. Setup Eclipse to include SAPUI5 Plug-in 5. Download NetWeaver Gateway Eclipse Plugin 6. Download and Install Tomcat Web Server 7. Modern browser – I am using Firefox with the Add-ons RESTClient and JSONView Steps: 1. I registered an account to access the Demo NetWeaver Gateway system. I used the Sales Order example -Query - Sales Order (Header) . The steps to obtain access and launch SAPGUI are explained in detail. Once you have the URL of your service, you can test it using REST Client to see the output

Upload: raj

Post on 04-Oct-2015

33 views

Category:

Documents


8 download

TRANSCRIPT

Developing a simple List based SAPUI5 ApplicationPosted byMurali ShanmughaminUI Development Toolkit for HTML5 Developer Centeron Jul 23, 2013 8:12:42 AMinShare2I have been for long thinking of writing my first SAPUI5 Application. I thought I will share my experience especially for beginners like me. I still remember my first simple Sales Order Display screen which I developed using Abstract Portal Component (APC) back in 2005. Since then, I have been developing applications using different technologies BSP/WDJ/WDA/Visual Composer and have seen lot of changes in the UI space. SAPUI5 for sure is to stay for its own features and benefits. I believe we will get to see more SAP transactions delivered with SAPUI5 in the near future. I have already been introduced to some of these SAPUI5 screens inHR RenewalandIdentity Management applications.

I will quickly demonstrate how to build a simple list based screen (Sales Order List Screen) without the need to depend on having a NetWeaver Gateway or an SAP ABAP 7.31 system with UI Add-on in your own environment. I would highly recommend to read thistutorialposted byBertram Ganz. When I started building this application, I got stuck in several places and I was lucky to find solutions posted by others in different places.

Prerequisites:

1. NetWeaver Gateway Server - I am using the SAP Netweaver Gateway Service Consumption Demo System offered by SAP. You can register for an access using thislink

2. Install Eclipse IDE (Juno)

3. DownloadSAPUI 5 library 1.12.1

4. Setup Eclipse to include SAPUI5 Plug-in5. DownloadNetWeaver Gateway Eclipse Plugin

6. Download and InstallTomcatWeb Server

7. Modern browser I am using Firefox with the Add-ons RESTClient and JSONView

Steps:

1. I registered an account to access the Demo NetWeaver Gateway system. I used the Sales Order example -Query -Sales Order (Header).The steps to obtain access and launch SAPGUI are explained in detail. Once you have the URL of your service, you can test it using REST Client to see the output

2. Download and install Eclipse Juno editor along with JDK 1.6. Make sure that the JAVA_HOME and classpath are set accordingly

3. The downloaded SAPUI5 Library would have the below folder structure

4. To install the SAPUI5 Plug-in, Open Eclipse and navigate to Help > Install New Software.. Provide Name for the Repository and click on Local to locate the \HTML5Evaluation_complete_1.12.1\tools-updatesite folder. Select all the components and install them

5. NetWeaver Gateway plug-in folder structure is shown below

Similar to the above steps, Open Eclipse and navigate to Help > Install New Software.. Provide Name for the Repository and click on Local to locate the \SAPNetWeaverGatewayPluginForEclipse_2.6.400 folder. Select only the required components and install them.

After restarting eclipse, under File > New > Other, you will be able to see SAPUI5 Application development and SAP NetWeaver Gateway folders

6. Download and Install Tomcat 7 server. I used the 32-bit/64-bit Windows Service Installer to install Tomcat. The installation is straight forward and Apache website has lot of help documents on this.

After installing tomcat, you should be able to see the below folder

Check if your server is working by usinghttp://localhost:8080

Configure the Server in Eclipse so that you could administer it from within Eclipse. Navigate to Window > Show View > Others to bring the Server .

Add the Apache Tomcat v7 server.

Now we are ready to build the application.

In Eclipse, Navigate to File > New > Other. Most of the tutorials on SCN, show how to create an SAPUI5 application from scratch using "SAPUI5 Application development". I used the NetWeaver Gateway wizard to quickly build an SAPUI5 application with the code auto-generated.

Select "Starter Application Project" and proceed with the wizard.

Select "HTML5" in the below screen and provide a Project name

Select SAPUI5 option instead of JQuery Mobile.

Provide the Gateway Service URL. In my case, I providedhttps://sapes1.sapdevcenter.com/sap/opu/odata/sap/ZCD204_EPM_DEMO_SRV/. You can browse the available services by clicking on the "Catalog" button. Click on the Validate button to ensure that the service is valid.

In the below List template, provide the View name, select the Entity Set and columns to be displayed.

Once you click Finish, you will see a project created with files generated.

While testing this application initially, I got to see blank screens/no data being retrieved. On researching in SCN, I found out that below changes had to be made.

In the file connectivity.js, I had make some changes.

var serviceUrl = "https://sapes1.sapdevcenter.com/sap/opu/odata/sap/ZCD204_EPM_DEMO_SRV/";changed to

var serviceUrl = "proxy/https/sapes1.sapdevcenter.com/sap/opu/odata/sap/ZCD204_EPM_DEMO_SRV/";

This is because of Same-Origin Policy which is explained in the E2E Tutorial (which I mentioned above). Since, I am just having a Tomcat server, I continued with this fix.

In Index.html

src="./sapui5-1.4/resources/sap-ui-core.js" changes to src="./resources/sap-ui-core.js"

In mylistscreenController.js

oTable.bindRows("SalesOrders"); changes to oTable.bindRows("/SalesOrders");

After making all these changes, I used the option to "Run on Server". This would open another window within eclipse and show the output.

I was also able to test this from the browser by accessing the application on Tomcat server

You could still go ahead and develop the same for a mobile application and package the source code into a Mobile Application which can be deployed on to a mobile device using products like Titanium or Adobe Phonegap (cloud service)

I hope you found this informative.

18529ViewsAverage User Rating

(12 ratings)

inShare2Comments

24Comments

Martin SchneidersJul 29, 2013 9:05 AMThanks Murali,

great stuff! This was really very helpfull to me.

I was just able to start my first SAPUI5 Screen :-)

Thanks a lot and best regards

Martin

Like(0)

Murali ShanmughamJul 29, 2013 10:44 AM(in response to Martin Schneiders)

Good to know that you found it useful. Thanks.

Like(0)

Nagesh ANov 11, 2013 4:27 PM(in response to Murali Shanmugham)

Thanks Murali,

Good blog for UI5 development.

I had started developing a simple UI5 app by following your steps, my local server is working fine, my service url is working fine and i have done all the changes suggested by you but i am unable to get any data. It is just simply showing empty columns and no data.

Can you please help me out on this.

Thanks

Nagesh

Like(0)

M Sudhakar ReddySep 29, 2014 11:49 AM(in response to Nagesh A)

Hi Eshwar,

Its a binding issue with table. please check it once.

Like(0)

Nagesh ASep 29, 2014 2:49 PM(in response to M Sudhakar Reddy)

Hi ,

How can i modify that.

Thanks

Nagesh

Like(0)

Shri Vishnu Priyan KrishnamurthyDec 12, 2013 1:01 PM(in response to Murali Shanmugham)

hai....can you guide me how to get a jason data Sales order list from a localhost ...Without any gateway services

Like(0)

Simon KempAug 5, 2013 12:03 AMThanks for sharing Murali and nice job outlining all the steps required to get started with this - for me it was a good reminder of the NW Gateway Eclipse plugin (I had sort of forgotten it existed!).

Like(0)

Murali ShanmughamAug 5, 2013 2:38 AM(in response to Simon Kemp)

Thanks Simon. It's really good that SAP is providing us with Trial servers to test most of their new stuffs.

Like(0)

Shen PengAug 5, 2013 7:39 AMIt will be excellent to support JSON.

Like(0)

San GopiOct 21, 2013 11:06 AMHi Murali,

Thank you very much for the detailed explanation, finally I got output..And I understand the flow.

Cheers,

Gopi.

Like(0)

Sang-Min OhNov 7, 2013 8:25 AMThanks Murali,

Wow, greate blog.

Finally, I clear this problem after reading your blog.

Thanks.

Like(0)

Syam BabuNov 22, 2013 4:18 PMGood Blog and also helpful for beginner like me

When I am installing the\SAPNetWeaverGatewayPluginForEclipse_2.6.400getting below

error.

Cannot complete the install because one or more required items could not be found. Software being installed: SAP NetWeaver Gateway HTML5 Toolkit 2.6.100.201211111631 (com.sap.iw.gw.oc.eclipse.html5.feature.feature.group 2.6.100.201211111631) Missing requirement: Component List 2.6.400.201211111622 (com.sap.iw.gw.oc.eclipse.component.list 2.6.400.201211111622) requires 'bundle org.junit4 4.8.1' but it could not be found Cannot satisfy dependency: From: SAP NetWeaver Gateway HTML5 Toolkit 2.6.100.201211111631 (com.sap.iw.gw.oc.eclipse.html5 2.6.100.201211111631) To: bundle com.sap.iw.gw.oc.eclipse.patterns 2.5.400 Cannot satisfy dependency: From: SAP NetWeaver Gateway HTML5 Toolkit 2.6.100.201211111631 (com.sap.iw.gw.oc.eclipse.html5.feature.feature.group 2.6.100.201211111631) To: com.sap.iw.gw.oc.eclipse.html5 [2.6.100.201211111631] Cannot satisfy dependency: From: Patterns 2.6.400.201211111622 (com.sap.iw.gw.oc.eclipse.patterns 2.6.400.201211111622) To: bundle com.sap.iw.gw.oc.eclipse.component.list 1.0.0

Thanks,

Syam

Like(0)

shruti mJan 3, 2014 10:45 AMThanks Murali,

This is really very helpful to me.

I was just able to start my first SAPUI5 application.

Regards

Shruti

Like(0)

Jitendra KansalJan 7, 2014 4:39 PMgreat stuff.. would try it very soon.

Like(0)

Thushara RatnayakeApr 8, 2014 10:51 AMHi Murali,

Great stuff. Thanks .

I am getting following error after i validate the service url . Can you please assist me to fix this .

screenshots as follows ;

Thanks a lot in advance ..

Regards,

Thushara

Like(0)

Christian SandovalAug 25, 2014 5:08 PM(in response to Thushara Ratnayake)

Hello,

Can you resolved this fixed?

I am getting some error. Can you help me?

Regards.Christian

Like(0)

Virinchy PJun 10, 2014 4:15 PMHiMurali Shanmugham

Thanks for a great write up.

Can you suggest which function modules used in this demo service ?

Like(0)

Sai Krishna KowluriJun 13, 2014 6:39 PMThanks a lot for the detailed blog post Murali :-)

Like(0)

Willi RobertJun 24, 2014 10:54 PMHi Murli,

Where do you write the query, my confusion is how do we access the SAP tables to get/update the data.

Please let me know if you need more information.

Thanks

Rahul

Like(0)

Yokesvaran kumarasamyJun 29, 2014 3:08 PMGreat work.

Thanks Murali...

Like(0)

Yokesvaran kumarasamyJun 30, 2014 12:16 PMHi Murali,

The above application is working in Desktop browser, but when im executing this in iPad through WIFI its not working.

Can you help me with this issue?

Regards

Yokesvaran Kumarasamy

Like(0)

Murali ShanmughamJul 1, 2014 10:57 PMThanks and apologies for not responding to some of the questions here. Can you please post your questions in thisforum.

Like(1)

GyuYong HaJul 25, 2014 9:30 AMNew_Gateway_plug-in_for_ EclipseLike(1)

Vaibhav JainAug 12, 2014 12:16 PMHey Murali

When I try to integrate the plugin in Eclipse only search console installs.

No other thing than 'search console' installs. I have attached the screenshot.

Help me to solve this. Its very urgent.