際際滷

際際滷Share a Scribd company logo
From SAP to app using Rhomobile

Mark Teichmann, Info AG




                              息 INFO AG | 13 May 2012 | page 1
Mobile Application Development Platforms
What is a MADP?


=> Suite of products and services that enable development of
mobile applications

Typical Features
   Cross-platform support
   Middleware for Data Sync, Security, App Provisioning
   Graphical Editor / Code generation




                                                    息 INFO AG | 13 May 2012 | page 2
Mobile Application Development Platforms
Overview of well known Vendors


 Antenna Software
 Appcelerator
 IBM Worklight
 Kony Solutions
   Rhomobile
 Rhomobile
 Sybase Unwired Platform
 Syclo (will be merged into Sybase Unwired Platform)
 Verivo
 

                                                  息 INFO AG | 13 May 2012 | page 3
Components of Rhomobile
Source: http://www.rhomobile.com/products/




                                             息 INFO AG | 13 May 2012 | page 4
Mobile Process
Approval of a Purchase Requisition




                                     息 INFO AG | 13 May 2012 | page 5
Live Demo




            息 INFO AG | 13 May 2012 | page 6
Livedemo continued




                      息 INFO AG | 13 May 2012 | page 7
Livedemo continued




                      息 INFO AG | 13 May 2012 | page 8
Components of Rhomobile


 Design mobile apps using Ruby and Eclipse




 Synchronize data with backend systems


 Build apps for all platforms in the cloud




                                              息 INFO AG | 13 May 2012 | page 9
Rhodes


 Open Source Framework for building mobile applications
 Ruby MVC
 Rhom Database Object Mapper
 UI is HTML5/CSS/JS
 Rendered in native browser app
 Available for Android, iOS, Blackberry, Windows Phone




                                                 息 INFO AG | 13 May 2012 | page 10
Rhodes Framwork Architecture
Source: http://docs.rhomobile.com/rhodes/introduction#framework-architecture




                                                                               息 INFO AG | 13 May 2012 | page 11
Ruby MVC
                        Model




           Controller           View




                          息 INFO AG | 13 May 2012 | page 12
Rhom
Mini Database Object Mapper


 Easy data handling
 No database schema
 No data migrations needed
 Data model extendable by code




                                  息 INFO AG | 13 May 2012 | page 13
Rhom Example Code
Added Property get_banfpos_list to the model




                 Built-in Sync functionality


                                 Model is easily
                                 expandable




                                                   息 INFO AG | 13 May 2012 | page 14
Usage of Workflow.get_banfpos_list
Source code of View index.rb




                                     息 INFO AG | 13 May 2012 | page 15
Corresponding
View


                                                            Source code
        <li><div data-role="collapsible>

                <h3>Bestellpositionen</h3>


        <ul data-role="listview" data-inset="true" >

                   <% @workflow.get_banfpos_list.each do |pos| %>

                    <li data-role="list-divider" >Position <%= pos['bnfpo'].to_i %>

                          <span class="ui-li-count"><%= pos['menge'] %></span>

                    </li>

                   <li>

                      <p><strong>Material: <%= pos['matnr'] %></strong></p>

                                                  

                                                   
                                                息 INFO AG | 13 May 2012 | page 16
RhoConnect
Source: rhomobile.com




                        息 INFO AG | 13 May 2012 | page 17
RhoConnect
Data Synchronization with Source Adapters




                                            息 INFO AG | 13 May 2012 | page 18
Source Adapter for Workflow object




                                     息 INFO AG | 13 May 2012 | page 19
SAP Business Workflow
One-Step PR Approval Workflow




                                息 INFO AG | 13 May 2012 | page 20
SAP Objects




              息 INFO AG | 13 May 2012 | page 21
RESTful Controller


SDN blog by Uwe Kunath




                         息 INFO AG | 13 May 2012 | page 22
REST Service in SAP
       Transaction SICF




rest_result = RestClient.get("#{@base}/sap/zrest/banfdemo/workflows/#{current_user.login.upcase}").body




                                                                             息 INFO AG | 13 May 2012 | page 23
Workflow document in Browser




                               息 INFO AG | 13 May 2012 | page 24
Workflow document stored in Rhoconnect
Redis based NoSQL Sync Server




                                   息 INFO AG | 13 May 2012 | page 25
RhoHub
Build native apps for all platforms


 Git Repository for your source code
 RhoHub Editor for working in the Cloud (optional)
 Build app for different Mobile Platforms




                                                      息 INFO AG | 13 May 2012 | page 26
息 INFO AG | 13 May 2012 | page 27
Example iOS Build




                    息 INFO AG | 13 May 2012 | page 28
RhoHub Editor




                息 INFO AG | 13 May 2012 | page 29
RhoGallery
App Store in the Cloud




                         息 INFO AG | 13 May 2012 | page 30
Lessons learned


 Learning Ruby is straight forward
 Implementing SAP backend needs manual work
 Documentation of Rhomobile could be better and more up to date
 Good support via Google Group and @adamblum (CEO)
 jQuery Mobile slows apps down -> jqMobi is possible but much
  manual work needed




                                                 息 INFO AG | 13 May 2012 | page 31
Thanks for your attention!
MARK TEICHMANN
mark.teichmann@info-ag.de
@thulium3




                             息 INFO AG | 13 May 2012 | page 32

More Related Content

From SAP to app using rhomobile

  • 1. From SAP to app using Rhomobile Mark Teichmann, Info AG 息 INFO AG | 13 May 2012 | page 1
  • 2. Mobile Application Development Platforms What is a MADP? => Suite of products and services that enable development of mobile applications Typical Features Cross-platform support Middleware for Data Sync, Security, App Provisioning Graphical Editor / Code generation 息 INFO AG | 13 May 2012 | page 2
  • 3. Mobile Application Development Platforms Overview of well known Vendors Antenna Software Appcelerator IBM Worklight Kony Solutions Rhomobile Rhomobile Sybase Unwired Platform Syclo (will be merged into Sybase Unwired Platform) Verivo 息 INFO AG | 13 May 2012 | page 3
  • 4. Components of Rhomobile Source: http://www.rhomobile.com/products/ 息 INFO AG | 13 May 2012 | page 4
  • 5. Mobile Process Approval of a Purchase Requisition 息 INFO AG | 13 May 2012 | page 5
  • 6. Live Demo 息 INFO AG | 13 May 2012 | page 6
  • 7. Livedemo continued 息 INFO AG | 13 May 2012 | page 7
  • 8. Livedemo continued 息 INFO AG | 13 May 2012 | page 8
  • 9. Components of Rhomobile Design mobile apps using Ruby and Eclipse Synchronize data with backend systems Build apps for all platforms in the cloud 息 INFO AG | 13 May 2012 | page 9
  • 10. Rhodes Open Source Framework for building mobile applications Ruby MVC Rhom Database Object Mapper UI is HTML5/CSS/JS Rendered in native browser app Available for Android, iOS, Blackberry, Windows Phone 息 INFO AG | 13 May 2012 | page 10
  • 11. Rhodes Framwork Architecture Source: http://docs.rhomobile.com/rhodes/introduction#framework-architecture 息 INFO AG | 13 May 2012 | page 11
  • 12. Ruby MVC Model Controller View 息 INFO AG | 13 May 2012 | page 12
  • 13. Rhom Mini Database Object Mapper Easy data handling No database schema No data migrations needed Data model extendable by code 息 INFO AG | 13 May 2012 | page 13
  • 14. Rhom Example Code Added Property get_banfpos_list to the model Built-in Sync functionality Model is easily expandable 息 INFO AG | 13 May 2012 | page 14
  • 15. Usage of Workflow.get_banfpos_list Source code of View index.rb 息 INFO AG | 13 May 2012 | page 15
  • 16. Corresponding View Source code <li><div data-role="collapsible> <h3>Bestellpositionen</h3> <ul data-role="listview" data-inset="true" > <% @workflow.get_banfpos_list.each do |pos| %> <li data-role="list-divider" >Position <%= pos['bnfpo'].to_i %> <span class="ui-li-count"><%= pos['menge'] %></span> </li> <li> <p><strong>Material: <%= pos['matnr'] %></strong></p> 息 INFO AG | 13 May 2012 | page 16
  • 17. RhoConnect Source: rhomobile.com 息 INFO AG | 13 May 2012 | page 17
  • 18. RhoConnect Data Synchronization with Source Adapters 息 INFO AG | 13 May 2012 | page 18
  • 19. Source Adapter for Workflow object 息 INFO AG | 13 May 2012 | page 19
  • 20. SAP Business Workflow One-Step PR Approval Workflow 息 INFO AG | 13 May 2012 | page 20
  • 21. SAP Objects 息 INFO AG | 13 May 2012 | page 21
  • 22. RESTful Controller SDN blog by Uwe Kunath 息 INFO AG | 13 May 2012 | page 22
  • 23. REST Service in SAP Transaction SICF rest_result = RestClient.get("#{@base}/sap/zrest/banfdemo/workflows/#{current_user.login.upcase}").body 息 INFO AG | 13 May 2012 | page 23
  • 24. Workflow document in Browser 息 INFO AG | 13 May 2012 | page 24
  • 25. Workflow document stored in Rhoconnect Redis based NoSQL Sync Server 息 INFO AG | 13 May 2012 | page 25
  • 26. RhoHub Build native apps for all platforms Git Repository for your source code RhoHub Editor for working in the Cloud (optional) Build app for different Mobile Platforms 息 INFO AG | 13 May 2012 | page 26
  • 27. 息 INFO AG | 13 May 2012 | page 27
  • 28. Example iOS Build 息 INFO AG | 13 May 2012 | page 28
  • 29. RhoHub Editor 息 INFO AG | 13 May 2012 | page 29
  • 30. RhoGallery App Store in the Cloud 息 INFO AG | 13 May 2012 | page 30
  • 31. Lessons learned Learning Ruby is straight forward Implementing SAP backend needs manual work Documentation of Rhomobile could be better and more up to date Good support via Google Group and @adamblum (CEO) jQuery Mobile slows apps down -> jqMobi is possible but much manual work needed 息 INFO AG | 13 May 2012 | page 31
  • 32. Thanks for your attention! MARK TEICHMANN mark.teichmann@info-ag.de @thulium3 息 INFO AG | 13 May 2012 | page 32