SlideShare a Scribd company logo
1 of 40
MBO Development
A Branded Service Delivered by Customer Solution Adoption
June, 2012
Objectives


After completing this course, you should be able to:
Understand how to use the Sybase Unwired Workspace
Understand the SUP development paradigm
Understand MBO mobility properties
Understand shared-read MBOs
Understand guidelines for data loading
Understand how to include attachments in you MBO model
Build an MBO package




©  2012 SAP AG. All rights reserved.                     2
Sybase SAP Mobility Platform

                                                                                                 Apps (native, container, player)

                                                                                                            Reusable libraries




                                                                                                                                                                                                                                       Sybase development
                                                                                                                                                                                                                                        tools and lifecycle
                                                                      SDK* on MBO**                                                                  SDK on OData+
       Afaria




                                                                                     MBO                                                                             OData



                                                                                         Sybase Unwired Platform 2.x

                                                                                                                                                                                         Onboarding, monitoring
                            Other connector                        Data consolidation                        Notifications and                              OData                            lifecycle, and
                             technologies                           and distribution                          subscriptions                               connector
                                                                                                                                                                                            administration




                                 Web service                               BAPI
                                                                                                                                                                    OData
                                 JDBC                                      Wrapper
                                 Rest                                      (Suite)
                                                                                                                                         OData/SAP: data provider
                                                                                                                                     (such as SAP NetWeaver Gateway)
            Third-party services
                                                                                                                      Back ends running SAP software



                                                                                             SAP Business Suite                   SAP Business ByDesign                       SAP BusinessObjects solutions

                                       *Software development kit ** Mobile business object                                                   +Open Data Protocol

This presentation and SAP‘s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without a warranty of any kind, either express or implied, including
but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement


 ©  2012 SAP AG. All rights reserved.                                                                                                                                                                                                                         3
Covered in this Session

                                                                                                 Apps (native, container, player)

                                                                                                            Reusable libraries




                                                                                                                                                                                                                                       Sybase development
                                                                                                                                                                                                                                        tools and lifecycle
                                                                      SDK* on MBO**                                                                  SDK on OData+
       Afaria




                                                                                     MBO                                                                             OData



                                                                                         Sybase Unwired Platform 2.x

                                                                                                                                                                                         Onboarding, monitoring
                            Other connector                        Data consolidation                        Notifications and                              OData                            lifecycle, and
                             technologies                           and distribution                          subscriptions                               connector
                                                                                                                                                                                            administration




                                 Web service                               BAPI
                                                                                                                                                                    OData
                                 JDBC                                      Wrapper
                                 Rest                                      (Suite)
                                                                                                                                         OData/SAP: data provider
                                                                                                                                     (such as SAP NetWeaver Gateway)
            Third-party services
                                                                                                                      Back ends running SAP software



                                                                                             SAP Business Suite                   SAP Business ByDesign                       SAP BusinessObjects solutions

                                       *Software development kit ** Mobile business object                                                   +Open Data Protocol

This presentation and SAP‘s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without a warranty of any kind, either express or implied, including
but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement


 ©  2012 SAP AG. All rights reserved.                                                                                                                                                                                                                         4
Application Development

•  Using Eclipse tooling and the MBO model, a developer creates a package
   containing one or more MBOs that can be deployed into the server runtime
   environment. Each package is assigned a version that is associated with the
   specific runtime artifacts generated by the deployment architecture.

•  Once a mobile package is available, the developer can generate device-side
   artifacts that form the basis of mobile application interactions with SUP
   services and data

•  Developer creates the application, using Xcode, Eclipse, Visual Studio or
   other design tools for a native application. For a Hybrid Application the Form
   Designer is used to develop jQuery based UI or a third party tool is used to
   bring in an HTML based design




©  2012 SAP AG. All rights reserved.                                                5
SUP MBO-based Apps Development


The behavior of the MBO, and the development practices are different for
each API.
•        Native Object API: MBO configures server for synchronization, client DB & objects,
         and generates query methods in Native Object API
•        HTML5/JS Container API: MBO configures server mappings, creates HTML5 storage
         key-value structure, and generates request methods in JavaScript API



                                                          SUP Development Task Flow

                                                   3                   4
                                                         Generate
                                                                           Develop Native
                                                       Native Object
     1                        2                                             Application     5                6
          Develop                 Deploy Mobile            Code
                                                                                                Deploy and       Deploy and
           Mobile                   Business
                                                                                                  Test in         Test on
          Business                  Objects to
                                                         Generate                                Simulator         Device
           Objects                Unwired Server                             Develop
                                                         HTML5/
                                                                              Hybrid
                                                        JavaScript
                                                                            Application
                                                          Code


 ©  2012 SAP AG. All rights reserved.                                                                                         6
Native Object API MBO

The synchronization architecture is based on a
Cache DB that resides on the SUP Server, and
replicates and/or messages updates to the Client
DB
                                           SUP                            Client
                                                                           DB
                                          Server
                                                       Synchronization
     Data
    Source

                                               Cache
                                                DB                                 Client
                                                                                    DB

                          Cache Refresh
                                                                     Client
                                                                      DB

©  2012 SAP AG. All rights reserved.                                                    7
Native Object API MBO: Operations


Operations are staged from EIS to Cache, Cache to Client, and vice versa




     Enterprise                                                         Operation Replay: operations
                              Invoke the corresponding                   executed in Client DB are
      System                                                SUP
                               mapped EIS Operations                      replayed on Cache DB
                                                           Server


    Operations                           Fill                                      Filter               Client
                                                                                                         DB

                                 Load Operations (with                         Cache à Device
      Data
                                 parameters) to retrieve                   Operations are filtered by
    Repository                       data from EIS              Cache     Synchronization Parameters
                                                                 DB




©  2012 SAP AG. All rights reserved.                                                                             8
Native Object API MBO: Data Schema

The MBO maps EIS columns as attributes of an Object
When the client code files are generated, they include the Class files
with the attributes and types; the Client DB creates tables for the
Objects at runtime
When the MBO is deployed to the SUP Server, the Cache DB
creates tables for the Objects, and a table for maintaining synch-
parameter partitions

     Enterprise
      System



      Data
    Repository


                                                                     Client
                                       Cache                          DB
    Operations                          DB

©  2012 SAP AG. All rights reserved.                                  9
Native Object API MBO

The MBO provides configuration for all aspects of the mobile architecture


                                                     Client DB schema
                                                      Object Class files
                     Cache content                   Query & Operation
                     (data filtering)                    methods
 Data                    Cache DB                                           Client
Source                   Operations                                          DB

                     Cache Refresh       SUP
                                        Server
                       frequency
                                                     Synchronization
                                                       Parameters
                                                     Synchronization
                                             Cache     frequency
                                              DB


©  2012 SAP AG. All rights reserved.                                         10
Demo: Creating an MBO


-    Database MBO (Quick Create)

-    Web Service MBO

-    SAP MBO




 ©  2012 SAP AG. All rights reserved.   11
Native Object API MBO


MBO Properties include:
•  Attributes
     •  Data Source, Type, Connection Settings
•    Operations
     •  Bind to Existing Operations, or Add New
•    Relationships
     •  Mappings, Complex Types
•    Object Queries
     •  Query methods generated in Object Classes
•    Synchronization Settings
     •  Rules, Partitions




 ©  2012 SAP AG. All rights reserved.               12
Native Object API MBO


Mobility Properties include:
•    Data Source
     •  Stored as a Connection Profile
•    Parameters

     •  Name, Type, Nullability, Required
     •  Mapping: Variable (Personalization
        Key) mapping, rules for updating on
        device, old-value rules
•    Roles
     •  Rules for Logical and Physical roles
•    Cache Update Policy
     •     On Demand, Scheduled, DCN
•    Synchronization Settings
 ©  2012 SAP AG. All rights reserved.          13
MBO Mobility Properties


Synchronization

Load Arguments

Cache Groups

Operation Cache Policy

Object Queries




©  2012 SAP AG. All rights reserved.   14
Synchronization


Restricts amount of rows transferred from Unwired Server CDB to the device
Filter results that have large amount of data that does not change frequently

Personalization keys
Enables users to store their search preferences on the client, the server, or by
session

Does not affect EIS interaction with the CDB




©  2012 SAP AG. All rights reserved.                                               15
Synchronization




©  2012 SAP AG. All rights reserved.   16
Example: Synchronization Parameter

               Definition: SELECT * FROM Customer
               Data Source Type: SampleDB (SQL Anywhere) database
               Fill: Data is retrieved by executing the Load Operation (SELECT …)

              Customer ID	
                 Name	
         Address	
            City	
               State	
  
              1	
                           Intel	
        1 Intel Drive	
      Santa Clara	
        CA	
  
Cache DB




              2	
                           Cisco	
        1 Cisco Way	
        San Jose	
           CA	
  
              3	
                           Ultra	
        1 Ultra Lane	
       Santa Clara	
        CA	
  
              4	
                           AMD	
          1 AMD Ave	
          Santa Clara	
        CA	
  
              5	
                           Oracle	
       1 Oracle Lane	
      Redwood Shores	
     CA	
  
              6	
                           Qualcomm	
     1 Qualcomm Way	
     San Diego	
          CA	
  
              7	
                           JPMorgan       270 Park Ave	
       New York	
           NY	
  
                                            Chase	
  
              Filter: This MBO has one synchronization parameter [city]
              Mobile application sets the synchronization parameter prior to performing
              synchronization to ‘Santa Clara’
               Customer ID	
                 Name	
        Address	
            City	
               State	
  
Client DB




               1	
                           Intel	
       1 Intel Drive	
      Santa Clara	
        CA	
  
               3                             Ultra         1 Ultra Lane         Santa Clara          CA
               4	
                           AMD	
         1 AMD Ave	
          Santa Clara	
        CA	
  


            ©  2012 SAP AG. All rights reserved.                                                                 17
Synchronization Data Flow

1.        User initiates a synchronization request
          that includes an attribute value

2.        Unwired Server filters the data in the
          CDB
If attribute is country and user supplied “USA” as
the value, rows that contain “USA are returned

3.        Unwired Server synchronizes the device
          with the results




 ©  2012 SAP AG. All rights reserved.                18
Load Arguments


Control the amount of data refreshed between the EIS and CDB

Creates its own partition in the CDB based on load argument value (partition
key)

Can be paired with synchronization parameters
User will supply values for the argument(s)




©  2012 SAP AG. All rights reserved.                                           19
Load Arguments




©  2012 SAP AG. All rights reserved.   20
Example: Load and Synchronization Parameters


               Definition: SELECT * FROM Customer WHERE State = ?
               Data Source Type: SampleDB database
               Fill: Data is retrieved by executing the Load Operation with the load parameter set to ‘CA’

               Customer ID	
                 Name	
         Address	
            City	
               State	
  
               1	
                           Intel	
        1 Intel Drive	
      Santa Clara	
        CA	
  
Cache DB




               2	
                           Cisco	
        1 Cisco Way	
        San Jose	
           CA	
  
               3	
                           Ultra	
        1 Ultra Lane	
       Santa Clara	
        CA	
  
               4	
                           AMD	
          1 AMD Ave	
          Santa Clara	
        CA	
  
               5	
                           Oracle	
       1 Oracle Lane	
      Redwood Shores	
     CA	
  
               6	
                           Qualcomm	
     1 Qualcomm Way	
     San Diego	
          CA	
  

              Filter: This MBO has one synchronization parameter [city]
              Mobile application sets the synchronization parameter prior to performing
              synchronization to ‘Santa Clara’
Client DB




               Customer ID	
                 Name	
         Address	
            City	
               State	
  
               1	
                           Intel	
        1 Intel Drive	
      Santa Clara	
        CA	
  
               3                             Ultra          1 Ultra Lane         Santa Clara          CA
               4	
                           AMD	
          1 AMD Ave	
          Santa Clara	
        CA	
  
            ©  2012 SAP AG. All rights reserved.                                                                  21
Load Argument Data Flow

1.        User initiates a synchronization request and includes an argument value
2.        If personalization keys are used, Unwired server passes the query to the
          EIS
3.        EIS refreshes Unwired Server based on the argument value

4.        Unwired Server creates a partition with the results in the CDB for the
          validated user or updates the partition

5.        Unwired Server synchronizes the device with the data in the CD partition
          for that user




 ©  2012 SAP AG. All rights reserved.                                              22
Cache Groups


Specifies the data refresh behavior for every MBO within the group

An MBO can belong to only one cache group

Cache Policy
On demand
Scheduled
DCN
Online




©  2012 SAP AG. All rights reserved.                                 23
Cache Groups




©  2012 SAP AG. All rights reserved.   24
Cache Group Data Flow


The deployed MBO package triggers a cache
update depending on the cache group to
which it belongs

CDB is updated based on the cache group
settings




©  2012 SAP AG. All rights reserved.        25
Operation Cache Policy


Determines how the CDB is updated after an operation
Apply results to the cache
Invalidate the cache (refresh all data)
No effect
Ÿ  If a cache policy is not selected, the operation results are not applied to the cache




©  2012 SAP AG. All rights reserved.                                                        26
Operation Cache Policy




©  2012 SAP AG. All rights reserved.   27
Operation Cache Policy Data Flow


1.        The Device application initiates a create, update, or delete operation

2.        Unwired Server passes the operation to the EIS where the operation is
          executed

3.        The CDB is updated based on the cache policy. A subsequent
          synchronization reflects the changed CDB




 ©  2012 SAP AG. All rights reserved.                                              28
Object Queries


SQL statements associated with an MBO against the persistent store on the
device

Returns a subset of a result set

Automatically generated for each MBO attribute identified as a primary key
If multiple primary keys exists, an additional composite object query is generated




©  2012 SAP AG. All rights reserved.                                                 29
Object Queries




©  2012 SAP AG. All rights reserved.   30
Local Business Object


A client only object

Defined in the Unwired Workspace

Not bound to EIS data sources

Cannot be synchronized

Used as a local data store on the device




©  2012 SAP AG. All rights reserved.       31
Shared-Read MBOs


Optimization feature that loads multiple MBOs with a single read operation
Better performance

No shared write or composite write operation




©  2012 SAP AG. All rights reserved.                                         32
MBO and Attachments


Inline attachments are expensive
Do not embed inline with the MBO as an attribute
Attachments typically do not change
Ÿ  Uploading and downloading a large attachment can be significant
Upload of attachments is slower than downloads
Ÿ  Not advisable to upload attachments

Object instantiation and resource consumption is also costly
SUP uses BigString and BigBinary
Ÿ  Not loaded when the object containing them is instantiated
Ÿ  Include a special API to access only the segment the application is interested in




©  2012 SAP AG. All rights reserved.                                                    33
MBO and Attachments


Consider the attachment as an MBO
Use a separate MBO to hold the attachment
Ÿ  Provides flexibility using synchronization parameters and synchronization groups
Ÿ  Allows the application to subscribe to the attachment when required via a synchronization
    parameter

Bulk download all attachments during an initial synchronization in a high
quality connected environment
Attachments typically do not change
Cost of this approach is more complex an longer application roll-out cycle




©  2012 SAP AG. All rights reserved.                                                            34
Result Checker

A result checker is a custom Java class that implements
error checking for Mobile Business Objects (MBOs).
Not all MBO operations use a "standard" error reporting
technique; you may want to implement your own custom
result checker.
   Doing so allows you to check any field for errors
   Implement logic that determines what constitutes an error
   Logic that determines the severity of the error

The error code and message can be influenced in the result
checker by throwing a DSException



 ©  2012 SAP AG. All rights reserved.                          35
Result Checker

A custom result checker can throw errors for both a
scheduled cache refresh as well as an on demand cache
refresh
  For a scheduled refresh
          Ÿ  log message to the Unwired Server log.
          Ÿ  transaction for the entire cache group is rolled back
          Ÿ  The device client user is not notified of these errors; no client log
              records are generated
  On demand refresh
          Ÿ  No error to the server log, but the log message is written to the
              Unwired Server Services handle the exception
          Ÿ  The transaction for the cache group is rolled back
          Ÿ  A client log record is generated, which is visible to the client
              application after synchronization

©  2012 SAP AG. All rights reserved.                                                  36
Result Checker - Example

MBO representing the price of a sales order item, based on
a WebService call
WebService works fine, no technical errors
Due to some internal calculation and bad backend data, it
occurred that a price of 0 or less was returned


Custom Result Checker to determine the price is actually
calculated correctly
   price below 0 means error



 ©  2012 SAP AG. All rights reserved.                       37
Demo: MBO Deployment


Follow along as an MBO Package is deployed to the server.
•  Unwired Workspace allows for development of MBOs at design time
•    In order to actually consume MBOs, the model needs to be deployed to server
     (recall split of runtime and design time)




 ©  2012 SAP AG. All rights reserved.                                              38
Lab 2: Create Mobile Business
Objects
© 2012 SAP AG. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose     Google App Engine, Google Apps, Google Checkout, Google Data API, Google Maps,
without the express permission of SAP AG. The information contained herein may be               Google Mobile Ads, Google Mobile Updater, Google Mobile, Google Store, Google Sync,
changed without prior notice.                                                                   Google Updater, Google Voice, Google Mail, Gmail, YouTube, Dalvik and Android are
                                                                                                trademarks or registered trademarks of Google Inc.
Some software products marketed by SAP AG and its distributors contain proprietary
software components of other software vendors.                                                  INTERMEC is a registered trademark of Intermec Technologies Corporation.

Microsoft, Windows, Excel, Outlook, PowerPoint, Silverlight, and Visual Studio are registered   Wi-Fi is a registered trademark of Wi-Fi Alliance.
trademarks of Microsoft Corporation.
                                                                                                Bluetooth is a registered trademark of Bluetooth SIG Inc.
IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x,
System z, System z10, z10, z/VM, z/OS, OS/390, zEnterprise, PowerVM, Power                      Motorola is a registered trademark of Motorola Trademark Holdings LLC.
Architecture, Power Systems, POWER7, POWER6+, POWER6, POWER, PowerHA,                           Computop is a registered trademark of Computop Wirtschaftsinformatik GmbH.
pureScale, PowerPC, BladeCenter, System Storage, Storwize, XIV, GPFS, HACMP,
RETAIN, DB2 Connect, RACF, Redbooks, OS/2, AIX, Intelligent Miner, WebSphere, Tivoli,           SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer,
Informix, and Smarter Planet are trademarks or registered trademarks of IBM Corporation.        StreamWork, SAP HANA, and other SAP products and services mentioned herein as well as
                                                                                                their respective logos are trademarks or registered trademarks of SAP AG in Germany and
Linux is the registered trademark of Linus Torvalds in the United States and other countries.   other countries.
Adobe, the Adobe logo, Acrobat, PostScript, and Reader are trademarks or registered             Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal
trademarks of Adobe Systems Incorporated in the United States and other countries.              Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services
Oracle and Java are registered trademarks of Oracle and its affiliates.                         mentioned herein as well as their respective logos are trademarks or registered trademarks
                                                                                                of Business Objects Software Ltd. Business Objects is an SAP company.
UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.
                                                                                                Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybase
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin                products and services mentioned herein as well as their respective logos are trademarks or
are trademarks or registered trademarks of Citrix Systems Inc.                                  registered trademarks of Sybase Inc. Sybase is an SAP company.

HTML, XML, XHTML, and W3C are trademarks or registered trademarks of W3C®,                      Crossgate, m@gic EDDY, B2B 360°, and B2B 360° Services are registered trademarks of
World Wide Web Consortium, Massachusetts Institute of Technology.                               Crossgate AG in Germany and other countries. Crossgate is an SAP company.

Apple, App Store, iBooks, iPad, iPhone, iPhoto, iPod, iTunes, Multi-Touch, Objective-C,         All other product and service names mentioned are the trademarks of their respective
Retina, Safari, Siri, and Xcode are trademarks or registered trademarks of Apple Inc.           companies. Data contained in this document serves informational purposes only. National
                                                                                                product specifications may vary.
IOS is a registered trademark of Cisco Systems Inc.
                                                                                                The information in this document is proprietary to SAP. No part of this document may be
RIM, BlackBerry, BBM, BlackBerry Curve, BlackBerry Bold, BlackBerry Pearl, BlackBerry           reproduced, copied, or transmitted in any form or for any purpose without the express prior
Torch, BlackBerry Storm, BlackBerry Storm2, BlackBerry PlayBook, and BlackBerry App             written permission of SAP AG.
World are trademarks or registered trademarks of Research in Motion Limited.




 ©  2012 SAP AG. All rights reserved.                                                                                                                                                    40

More Related Content

What's hot

Dev mobile apps ent it final
Dev mobile apps ent   it finalDev mobile apps ent   it final
Dev mobile apps ent it finalHeinrich Seeger
 
Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3
Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3
Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3SAP Portal
 
Soa cloud con8968_pdf_8968_0001
Soa cloud con8968_pdf_8968_0001Soa cloud con8968_pdf_8968_0001
Soa cloud con8968_pdf_8968_0001jucaab
 
Soa con8642 pdf_8642_0001
Soa con8642 pdf_8642_0001Soa con8642 pdf_8642_0001
Soa con8642 pdf_8642_0001jucaab
 
Sap netweaver gateway_2.0_sap_net_weaver
Sap netweaver gateway_2.0_sap_net_weaverSap netweaver gateway_2.0_sap_net_weaver
Sap netweaver gateway_2.0_sap_net_weaverNagendra Babu
 
Skelta Software Corporate Presentation
Skelta Software Corporate PresentationSkelta Software Corporate Presentation
Skelta Software Corporate PresentationSchneider Electric
 
Sap microsoft interoperability sitnl 08-12-2012
Sap microsoft interoperability sitnl 08-12-2012Sap microsoft interoperability sitnl 08-12-2012
Sap microsoft interoperability sitnl 08-12-2012Twan van den Broek
 
AD404 - Extend your Social Business by integrating SAP Solutions
AD404 - Extend your Social Business by integrating SAP SolutionsAD404 - Extend your Social Business by integrating SAP Solutions
AD404 - Extend your Social Business by integrating SAP SolutionsChristian Holsing
 
Gateway for the uninformed #sitnl edition
Gateway for the uninformed #sitnl editionGateway for the uninformed #sitnl edition
Gateway for the uninformed #sitnl editionfredverheul
 
GlassFish Mobility Platform - Hans Hrasna
GlassFish Mobility Platform - Hans HrasnaGlassFish Mobility Platform - Hans Hrasna
GlassFish Mobility Platform - Hans HrasnaEduardo Pelegri-Llopart
 
Evaluating jaspersoft community & commercial editions
Evaluating jaspersoft community & commercial editionsEvaluating jaspersoft community & commercial editions
Evaluating jaspersoft community & commercial editionsMike Boyarski
 
How to build an agentry based mobile app from scratch connecting to an sap ba...
How to build an agentry based mobile app from scratch connecting to an sap ba...How to build an agentry based mobile app from scratch connecting to an sap ba...
How to build an agentry based mobile app from scratch connecting to an sap ba...Ganesh Kumar
 
Sql Server 2012 Reporting-Services is Now a SharePoint Service Application
Sql Server 2012   Reporting-Services is Now a SharePoint Service ApplicationSql Server 2012   Reporting-Services is Now a SharePoint Service Application
Sql Server 2012 Reporting-Services is Now a SharePoint Service ApplicationInnoTech
 

What's hot (20)

Dev mobile apps ent it final
Dev mobile apps ent   it finalDev mobile apps ent   it final
Dev mobile apps ent it final
 
Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3
Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3
Top Five Reasons to Upgrade to SAP NetWeaver Portal 7.3
 
Soa cloud con8968_pdf_8968_0001
Soa cloud con8968_pdf_8968_0001Soa cloud con8968_pdf_8968_0001
Soa cloud con8968_pdf_8968_0001
 
Soa con8642 pdf_8642_0001
Soa con8642 pdf_8642_0001Soa con8642 pdf_8642_0001
Soa con8642 pdf_8642_0001
 
Sap netweaver gateway_2.0_sap_net_weaver
Sap netweaver gateway_2.0_sap_net_weaverSap netweaver gateway_2.0_sap_net_weaver
Sap netweaver gateway_2.0_sap_net_weaver
 
NetWeaver Gateway- Extend the Reach of SAP Applications
NetWeaver Gateway- Extend the Reach of SAP ApplicationsNetWeaver Gateway- Extend the Reach of SAP Applications
NetWeaver Gateway- Extend the Reach of SAP Applications
 
Skelta Software Corporate Presentation
Skelta Software Corporate PresentationSkelta Software Corporate Presentation
Skelta Software Corporate Presentation
 
Sap microsoft interoperability sitnl 08-12-2012
Sap microsoft interoperability sitnl 08-12-2012Sap microsoft interoperability sitnl 08-12-2012
Sap microsoft interoperability sitnl 08-12-2012
 
AD404 - Extend your Social Business by integrating SAP Solutions
AD404 - Extend your Social Business by integrating SAP SolutionsAD404 - Extend your Social Business by integrating SAP Solutions
AD404 - Extend your Social Business by integrating SAP Solutions
 
SAP Runs SAP Mobile
SAP Runs SAP MobileSAP Runs SAP Mobile
SAP Runs SAP Mobile
 
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
 
IBM Connect 2013 - AD405
IBM Connect 2013 - AD405IBM Connect 2013 - AD405
IBM Connect 2013 - AD405
 
Gateway for the uninformed #sitnl edition
Gateway for the uninformed #sitnl editionGateway for the uninformed #sitnl edition
Gateway for the uninformed #sitnl edition
 
Unwired Platform
Unwired PlatformUnwired Platform
Unwired Platform
 
GlassFish Mobility Platform - Hans Hrasna
GlassFish Mobility Platform - Hans HrasnaGlassFish Mobility Platform - Hans Hrasna
GlassFish Mobility Platform - Hans Hrasna
 
Evaluating jaspersoft community & commercial editions
Evaluating jaspersoft community & commercial editionsEvaluating jaspersoft community & commercial editions
Evaluating jaspersoft community & commercial editions
 
How to build an agentry based mobile app from scratch connecting to an sap ba...
How to build an agentry based mobile app from scratch connecting to an sap ba...How to build an agentry based mobile app from scratch connecting to an sap ba...
How to build an agentry based mobile app from scratch connecting to an sap ba...
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
 
Sql Server 2012 Reporting-Services is Now a SharePoint Service Application
Sql Server 2012   Reporting-Services is Now a SharePoint Service ApplicationSql Server 2012   Reporting-Services is Now a SharePoint Service Application
Sql Server 2012 Reporting-Services is Now a SharePoint Service Application
 
Company profile Metrasys
Company profile MetrasysCompany profile Metrasys
Company profile Metrasys
 

Similar to MBO Development Guide

UI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver GatewayUI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver GatewayJohn Moy
 
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...SAP Portal
 
Accessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_versionAccessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_versionadatta12
 
2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical UpdateWSO2
 
Accessing Your Existing SAP NetWeaver Portal on Mobile Device
Accessing Your Existing SAP NetWeaver Portal on Mobile DeviceAccessing Your Existing SAP NetWeaver Portal on Mobile Device
Accessing Your Existing SAP NetWeaver Portal on Mobile DeviceSAP Portal
 
Hovitaga Data Visualizer - Overview
Hovitaga Data Visualizer - OverviewHovitaga Data Visualizer - Overview
Hovitaga Data Visualizer - OverviewHovitaga Kft.
 
Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)
Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)
Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)Marc Dutoo
 
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)WSO2
 
Glass Fish Portfolio Web Space What Is James Falkner
Glass Fish Portfolio Web Space What Is James FalknerGlass Fish Portfolio Web Space What Is James Falkner
Glass Fish Portfolio Web Space What Is James FalknerEduardo Pelegri-Llopart
 
SAP NetWeaver Neo*: Community-Driven Development
SAP NetWeaver Neo*: Community-Driven DevelopmentSAP NetWeaver Neo*: Community-Driven Development
SAP NetWeaver Neo*: Community-Driven DevelopmentMatthias Steiner
 
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA SuiteFive Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA SuiteGuido Schmutz
 
Open Source
Open SourceOpen Source
Open Sourceblamb
 
Oracle Fusion applications 101 [2010 OAUG Collaborate]
Oracle Fusion applications 101 [2010 OAUG Collaborate]Oracle Fusion applications 101 [2010 OAUG Collaborate]
Oracle Fusion applications 101 [2010 OAUG Collaborate]Rhapsody Technologies, Inc.
 
The SENSORIA Development Environment
The SENSORIA Development EnvironmentThe SENSORIA Development Environment
The SENSORIA Development EnvironmentIstvan Rath
 
Introduction to ABAP Core Data Services (CDS).pdf
Introduction to ABAP Core Data Services (CDS).pdfIntroduction to ABAP Core Data Services (CDS).pdf
Introduction to ABAP Core Data Services (CDS).pdfAndreaPellati2
 
Microsoft BI for SAP
Microsoft BI for SAPMicrosoft BI for SAP
Microsoft BI for SAPNaresh Koka
 
Virbak Abio Presentation Vs32 Pp 01 Ovw Tp
Virbak Abio Presentation Vs32 Pp 01 Ovw TpVirbak Abio Presentation Vs32 Pp 01 Ovw Tp
Virbak Abio Presentation Vs32 Pp 01 Ovw Tppowerguy73
 

Similar to MBO Development Guide (20)

Sybase Unwired Platform Development Overview
Sybase Unwired Platform Development OverviewSybase Unwired Platform Development Overview
Sybase Unwired Platform Development Overview
 
UI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver GatewayUI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver Gateway
 
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
 
Accessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_versionAccessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_version
 
2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update
 
SAP NetWeaver Gateway - Introduction
SAP NetWeaver Gateway - IntroductionSAP NetWeaver Gateway - Introduction
SAP NetWeaver Gateway - Introduction
 
Accessing Your Existing SAP NetWeaver Portal on Mobile Device
Accessing Your Existing SAP NetWeaver Portal on Mobile DeviceAccessing Your Existing SAP NetWeaver Portal on Mobile Device
Accessing Your Existing SAP NetWeaver Portal on Mobile Device
 
Hovitaga Data Visualizer - Overview
Hovitaga Data Visualizer - OverviewHovitaga Data Visualizer - Overview
Hovitaga Data Visualizer - Overview
 
Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)
Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)
Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)
 
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
 
Glass Fish Portfolio Web Space What Is James Falkner
Glass Fish Portfolio Web Space What Is James FalknerGlass Fish Portfolio Web Space What Is James Falkner
Glass Fish Portfolio Web Space What Is James Falkner
 
SAP HANA Cloud – Virtual Bootcamp: How to use the HANA Persistence Se…
SAP HANA Cloud – Virtual Bootcamp: How to use the HANA Persistence Se…SAP HANA Cloud – Virtual Bootcamp: How to use the HANA Persistence Se…
SAP HANA Cloud – Virtual Bootcamp: How to use the HANA Persistence Se…
 
SAP NetWeaver Neo*: Community-Driven Development
SAP NetWeaver Neo*: Community-Driven DevelopmentSAP NetWeaver Neo*: Community-Driven Development
SAP NetWeaver Neo*: Community-Driven Development
 
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA SuiteFive Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
 
Open Source
Open SourceOpen Source
Open Source
 
Oracle Fusion applications 101 [2010 OAUG Collaborate]
Oracle Fusion applications 101 [2010 OAUG Collaborate]Oracle Fusion applications 101 [2010 OAUG Collaborate]
Oracle Fusion applications 101 [2010 OAUG Collaborate]
 
The SENSORIA Development Environment
The SENSORIA Development EnvironmentThe SENSORIA Development Environment
The SENSORIA Development Environment
 
Introduction to ABAP Core Data Services (CDS).pdf
Introduction to ABAP Core Data Services (CDS).pdfIntroduction to ABAP Core Data Services (CDS).pdf
Introduction to ABAP Core Data Services (CDS).pdf
 
Microsoft BI for SAP
Microsoft BI for SAPMicrosoft BI for SAP
Microsoft BI for SAP
 
Virbak Abio Presentation Vs32 Pp 01 Ovw Tp
Virbak Abio Presentation Vs32 Pp 01 Ovw TpVirbak Abio Presentation Vs32 Pp 01 Ovw Tp
Virbak Abio Presentation Vs32 Pp 01 Ovw Tp
 

More from SAP PartnerEdge program for Application Development

More from SAP PartnerEdge program for Application Development (20)

SAP HANA Cloud Platform Expert Session - SAP HANA Cloud Platform Analytics
SAP HANA Cloud Platform Expert Session - SAP HANA Cloud Platform AnalyticsSAP HANA Cloud Platform Expert Session - SAP HANA Cloud Platform Analytics
SAP HANA Cloud Platform Expert Session - SAP HANA Cloud Platform Analytics
 
SUSE Technical Webinar – Get started with creating Lumira CVOM extensions -- ...
SUSE Technical Webinar – Get started with creating Lumira CVOM extensions -- ...SUSE Technical Webinar – Get started with creating Lumira CVOM extensions -- ...
SUSE Technical Webinar – Get started with creating Lumira CVOM extensions -- ...
 
SUSE Technical Webinar – Get started with creating Design Studio extensions -...
SUSE Technical Webinar – Get started with creating Design Studio extensions -...SUSE Technical Webinar – Get started with creating Design Studio extensions -...
SUSE Technical Webinar – Get started with creating Design Studio extensions -...
 
SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE ...
SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE ...SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE ...
SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE ...
 
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
 
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
 
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
 
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
 
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
 
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud PlatformSUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
 
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
 
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
 
Autodesk Technical Webinar: SAP Business One
Autodesk Technical Webinar: SAP Business OneAutodesk Technical Webinar: SAP Business One
Autodesk Technical Webinar: SAP Business One
 
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
 
Mobile Apps 4 Charity
Mobile Apps 4 CharityMobile Apps 4 Charity
Mobile Apps 4 Charity
 
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
 
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
 
Autodesk Technical Webinar: SAP HANA in-memory database
Autodesk Technical Webinar: SAP HANA in-memory databaseAutodesk Technical Webinar: SAP HANA in-memory database
Autodesk Technical Webinar: SAP HANA in-memory database
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
 

MBO Development Guide

  • 1. MBO Development A Branded Service Delivered by Customer Solution Adoption June, 2012
  • 2. Objectives After completing this course, you should be able to: Understand how to use the Sybase Unwired Workspace Understand the SUP development paradigm Understand MBO mobility properties Understand shared-read MBOs Understand guidelines for data loading Understand how to include attachments in you MBO model Build an MBO package ©  2012 SAP AG. All rights reserved. 2
  • 3. Sybase SAP Mobility Platform Apps (native, container, player) Reusable libraries Sybase development tools and lifecycle SDK* on MBO** SDK on OData+ Afaria MBO OData Sybase Unwired Platform 2.x Onboarding, monitoring Other connector Data consolidation Notifications and OData lifecycle, and technologies and distribution subscriptions connector administration Web service BAPI OData JDBC Wrapper Rest (Suite) OData/SAP: data provider (such as SAP NetWeaver Gateway) Third-party services Back ends running SAP software SAP Business Suite SAP Business ByDesign SAP BusinessObjects solutions *Software development kit ** Mobile business object +Open Data Protocol This presentation and SAP‘s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement ©  2012 SAP AG. All rights reserved. 3
  • 4. Covered in this Session Apps (native, container, player) Reusable libraries Sybase development tools and lifecycle SDK* on MBO** SDK on OData+ Afaria MBO OData Sybase Unwired Platform 2.x Onboarding, monitoring Other connector Data consolidation Notifications and OData lifecycle, and technologies and distribution subscriptions connector administration Web service BAPI OData JDBC Wrapper Rest (Suite) OData/SAP: data provider (such as SAP NetWeaver Gateway) Third-party services Back ends running SAP software SAP Business Suite SAP Business ByDesign SAP BusinessObjects solutions *Software development kit ** Mobile business object +Open Data Protocol This presentation and SAP‘s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement ©  2012 SAP AG. All rights reserved. 4
  • 5. Application Development •  Using Eclipse tooling and the MBO model, a developer creates a package containing one or more MBOs that can be deployed into the server runtime environment. Each package is assigned a version that is associated with the specific runtime artifacts generated by the deployment architecture. •  Once a mobile package is available, the developer can generate device-side artifacts that form the basis of mobile application interactions with SUP services and data •  Developer creates the application, using Xcode, Eclipse, Visual Studio or other design tools for a native application. For a Hybrid Application the Form Designer is used to develop jQuery based UI or a third party tool is used to bring in an HTML based design ©  2012 SAP AG. All rights reserved. 5
  • 6. SUP MBO-based Apps Development The behavior of the MBO, and the development practices are different for each API. •  Native Object API: MBO configures server for synchronization, client DB & objects, and generates query methods in Native Object API •  HTML5/JS Container API: MBO configures server mappings, creates HTML5 storage key-value structure, and generates request methods in JavaScript API SUP Development Task Flow 3 4 Generate Develop Native Native Object 1 2 Application 5 6 Develop Deploy Mobile Code Deploy and Deploy and Mobile Business Test in Test on Business Objects to Generate Simulator Device Objects Unwired Server Develop HTML5/ Hybrid JavaScript Application Code ©  2012 SAP AG. All rights reserved. 6
  • 7. Native Object API MBO The synchronization architecture is based on a Cache DB that resides on the SUP Server, and replicates and/or messages updates to the Client DB SUP Client DB Server Synchronization Data Source Cache DB Client DB Cache Refresh Client DB ©  2012 SAP AG. All rights reserved. 7
  • 8. Native Object API MBO: Operations Operations are staged from EIS to Cache, Cache to Client, and vice versa Enterprise Operation Replay: operations Invoke the corresponding executed in Client DB are System SUP mapped EIS Operations replayed on Cache DB Server Operations Fill Filter Client DB Load Operations (with Cache à Device Data parameters) to retrieve Operations are filtered by Repository data from EIS Cache Synchronization Parameters DB ©  2012 SAP AG. All rights reserved. 8
  • 9. Native Object API MBO: Data Schema The MBO maps EIS columns as attributes of an Object When the client code files are generated, they include the Class files with the attributes and types; the Client DB creates tables for the Objects at runtime When the MBO is deployed to the SUP Server, the Cache DB creates tables for the Objects, and a table for maintaining synch- parameter partitions Enterprise System Data Repository Client Cache DB Operations DB ©  2012 SAP AG. All rights reserved. 9
  • 10. Native Object API MBO The MBO provides configuration for all aspects of the mobile architecture Client DB schema Object Class files Cache content Query & Operation (data filtering) methods Data Cache DB Client Source Operations DB Cache Refresh SUP Server frequency Synchronization Parameters Synchronization Cache frequency DB ©  2012 SAP AG. All rights reserved. 10
  • 11. Demo: Creating an MBO -  Database MBO (Quick Create) -  Web Service MBO -  SAP MBO ©  2012 SAP AG. All rights reserved. 11
  • 12. Native Object API MBO MBO Properties include: •  Attributes •  Data Source, Type, Connection Settings •  Operations •  Bind to Existing Operations, or Add New •  Relationships •  Mappings, Complex Types •  Object Queries •  Query methods generated in Object Classes •  Synchronization Settings •  Rules, Partitions ©  2012 SAP AG. All rights reserved. 12
  • 13. Native Object API MBO Mobility Properties include: •  Data Source •  Stored as a Connection Profile •  Parameters •  Name, Type, Nullability, Required •  Mapping: Variable (Personalization Key) mapping, rules for updating on device, old-value rules •  Roles •  Rules for Logical and Physical roles •  Cache Update Policy •  On Demand, Scheduled, DCN •  Synchronization Settings ©  2012 SAP AG. All rights reserved. 13
  • 14. MBO Mobility Properties Synchronization Load Arguments Cache Groups Operation Cache Policy Object Queries ©  2012 SAP AG. All rights reserved. 14
  • 15. Synchronization Restricts amount of rows transferred from Unwired Server CDB to the device Filter results that have large amount of data that does not change frequently Personalization keys Enables users to store their search preferences on the client, the server, or by session Does not affect EIS interaction with the CDB ©  2012 SAP AG. All rights reserved. 15
  • 16. Synchronization ©  2012 SAP AG. All rights reserved. 16
  • 17. Example: Synchronization Parameter Definition: SELECT * FROM Customer Data Source Type: SampleDB (SQL Anywhere) database Fill: Data is retrieved by executing the Load Operation (SELECT …) Customer ID   Name   Address   City   State   1   Intel   1 Intel Drive   Santa Clara   CA   Cache DB 2   Cisco   1 Cisco Way   San Jose   CA   3   Ultra   1 Ultra Lane   Santa Clara   CA   4   AMD   1 AMD Ave   Santa Clara   CA   5   Oracle   1 Oracle Lane   Redwood Shores   CA   6   Qualcomm   1 Qualcomm Way   San Diego   CA   7   JPMorgan 270 Park Ave   New York   NY   Chase   Filter: This MBO has one synchronization parameter [city] Mobile application sets the synchronization parameter prior to performing synchronization to ‘Santa Clara’ Customer ID   Name   Address   City   State   Client DB 1   Intel   1 Intel Drive   Santa Clara   CA   3 Ultra 1 Ultra Lane Santa Clara CA 4   AMD   1 AMD Ave   Santa Clara   CA   ©  2012 SAP AG. All rights reserved. 17
  • 18. Synchronization Data Flow 1.  User initiates a synchronization request that includes an attribute value 2.  Unwired Server filters the data in the CDB If attribute is country and user supplied “USA” as the value, rows that contain “USA are returned 3.  Unwired Server synchronizes the device with the results ©  2012 SAP AG. All rights reserved. 18
  • 19. Load Arguments Control the amount of data refreshed between the EIS and CDB Creates its own partition in the CDB based on load argument value (partition key) Can be paired with synchronization parameters User will supply values for the argument(s) ©  2012 SAP AG. All rights reserved. 19
  • 20. Load Arguments ©  2012 SAP AG. All rights reserved. 20
  • 21. Example: Load and Synchronization Parameters Definition: SELECT * FROM Customer WHERE State = ? Data Source Type: SampleDB database Fill: Data is retrieved by executing the Load Operation with the load parameter set to ‘CA’ Customer ID   Name   Address   City   State   1   Intel   1 Intel Drive   Santa Clara   CA   Cache DB 2   Cisco   1 Cisco Way   San Jose   CA   3   Ultra   1 Ultra Lane   Santa Clara   CA   4   AMD   1 AMD Ave   Santa Clara   CA   5   Oracle   1 Oracle Lane   Redwood Shores   CA   6   Qualcomm   1 Qualcomm Way   San Diego   CA   Filter: This MBO has one synchronization parameter [city] Mobile application sets the synchronization parameter prior to performing synchronization to ‘Santa Clara’ Client DB Customer ID   Name   Address   City   State   1   Intel   1 Intel Drive   Santa Clara   CA   3 Ultra 1 Ultra Lane Santa Clara CA 4   AMD   1 AMD Ave   Santa Clara   CA   ©  2012 SAP AG. All rights reserved. 21
  • 22. Load Argument Data Flow 1.  User initiates a synchronization request and includes an argument value 2.  If personalization keys are used, Unwired server passes the query to the EIS 3.  EIS refreshes Unwired Server based on the argument value 4.  Unwired Server creates a partition with the results in the CDB for the validated user or updates the partition 5.  Unwired Server synchronizes the device with the data in the CD partition for that user ©  2012 SAP AG. All rights reserved. 22
  • 23. Cache Groups Specifies the data refresh behavior for every MBO within the group An MBO can belong to only one cache group Cache Policy On demand Scheduled DCN Online ©  2012 SAP AG. All rights reserved. 23
  • 24. Cache Groups ©  2012 SAP AG. All rights reserved. 24
  • 25. Cache Group Data Flow The deployed MBO package triggers a cache update depending on the cache group to which it belongs CDB is updated based on the cache group settings ©  2012 SAP AG. All rights reserved. 25
  • 26. Operation Cache Policy Determines how the CDB is updated after an operation Apply results to the cache Invalidate the cache (refresh all data) No effect Ÿ  If a cache policy is not selected, the operation results are not applied to the cache ©  2012 SAP AG. All rights reserved. 26
  • 27. Operation Cache Policy ©  2012 SAP AG. All rights reserved. 27
  • 28. Operation Cache Policy Data Flow 1.  The Device application initiates a create, update, or delete operation 2.  Unwired Server passes the operation to the EIS where the operation is executed 3.  The CDB is updated based on the cache policy. A subsequent synchronization reflects the changed CDB ©  2012 SAP AG. All rights reserved. 28
  • 29. Object Queries SQL statements associated with an MBO against the persistent store on the device Returns a subset of a result set Automatically generated for each MBO attribute identified as a primary key If multiple primary keys exists, an additional composite object query is generated ©  2012 SAP AG. All rights reserved. 29
  • 30. Object Queries ©  2012 SAP AG. All rights reserved. 30
  • 31. Local Business Object A client only object Defined in the Unwired Workspace Not bound to EIS data sources Cannot be synchronized Used as a local data store on the device ©  2012 SAP AG. All rights reserved. 31
  • 32. Shared-Read MBOs Optimization feature that loads multiple MBOs with a single read operation Better performance No shared write or composite write operation ©  2012 SAP AG. All rights reserved. 32
  • 33. MBO and Attachments Inline attachments are expensive Do not embed inline with the MBO as an attribute Attachments typically do not change Ÿ  Uploading and downloading a large attachment can be significant Upload of attachments is slower than downloads Ÿ  Not advisable to upload attachments Object instantiation and resource consumption is also costly SUP uses BigString and BigBinary Ÿ  Not loaded when the object containing them is instantiated Ÿ  Include a special API to access only the segment the application is interested in ©  2012 SAP AG. All rights reserved. 33
  • 34. MBO and Attachments Consider the attachment as an MBO Use a separate MBO to hold the attachment Ÿ  Provides flexibility using synchronization parameters and synchronization groups Ÿ  Allows the application to subscribe to the attachment when required via a synchronization parameter Bulk download all attachments during an initial synchronization in a high quality connected environment Attachments typically do not change Cost of this approach is more complex an longer application roll-out cycle ©  2012 SAP AG. All rights reserved. 34
  • 35. Result Checker A result checker is a custom Java class that implements error checking for Mobile Business Objects (MBOs). Not all MBO operations use a "standard" error reporting technique; you may want to implement your own custom result checker. Doing so allows you to check any field for errors Implement logic that determines what constitutes an error Logic that determines the severity of the error The error code and message can be influenced in the result checker by throwing a DSException ©  2012 SAP AG. All rights reserved. 35
  • 36. Result Checker A custom result checker can throw errors for both a scheduled cache refresh as well as an on demand cache refresh For a scheduled refresh Ÿ  log message to the Unwired Server log. Ÿ  transaction for the entire cache group is rolled back Ÿ  The device client user is not notified of these errors; no client log records are generated On demand refresh Ÿ  No error to the server log, but the log message is written to the Unwired Server Services handle the exception Ÿ  The transaction for the cache group is rolled back Ÿ  A client log record is generated, which is visible to the client application after synchronization ©  2012 SAP AG. All rights reserved. 36
  • 37. Result Checker - Example MBO representing the price of a sales order item, based on a WebService call WebService works fine, no technical errors Due to some internal calculation and bad backend data, it occurred that a price of 0 or less was returned Custom Result Checker to determine the price is actually calculated correctly price below 0 means error ©  2012 SAP AG. All rights reserved. 37
  • 38. Demo: MBO Deployment Follow along as an MBO Package is deployed to the server. •  Unwired Workspace allows for development of MBOs at design time •  In order to actually consume MBOs, the model needs to be deployed to server (recall split of runtime and design time) ©  2012 SAP AG. All rights reserved. 38
  • 39. Lab 2: Create Mobile Business Objects
  • 40. © 2012 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose Google App Engine, Google Apps, Google Checkout, Google Data API, Google Maps, without the express permission of SAP AG. The information contained herein may be Google Mobile Ads, Google Mobile Updater, Google Mobile, Google Store, Google Sync, changed without prior notice. Google Updater, Google Voice, Google Mail, Gmail, YouTube, Dalvik and Android are trademarks or registered trademarks of Google Inc. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. INTERMEC is a registered trademark of Intermec Technologies Corporation. Microsoft, Windows, Excel, Outlook, PowerPoint, Silverlight, and Visual Studio are registered Wi-Fi is a registered trademark of Wi-Fi Alliance. trademarks of Microsoft Corporation. Bluetooth is a registered trademark of Bluetooth SIG Inc. IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, System z10, z10, z/VM, z/OS, OS/390, zEnterprise, PowerVM, Power Motorola is a registered trademark of Motorola Trademark Holdings LLC. Architecture, Power Systems, POWER7, POWER6+, POWER6, POWER, PowerHA, Computop is a registered trademark of Computop Wirtschaftsinformatik GmbH. pureScale, PowerPC, BladeCenter, System Storage, Storwize, XIV, GPFS, HACMP, RETAIN, DB2 Connect, RACF, Redbooks, OS/2, AIX, Intelligent Miner, WebSphere, Tivoli, SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer, Informix, and Smarter Planet are trademarks or registered trademarks of IBM Corporation. StreamWork, SAP HANA, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and Linux is the registered trademark of Linus Torvalds in the United States and other countries. other countries. Adobe, the Adobe logo, Acrobat, PostScript, and Reader are trademarks or registered Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal trademarks of Adobe Systems Incorporated in the United States and other countries. Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services Oracle and Java are registered trademarks of Oracle and its affiliates. mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects Software Ltd. Business Objects is an SAP company. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybase Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin products and services mentioned herein as well as their respective logos are trademarks or are trademarks or registered trademarks of Citrix Systems Inc. registered trademarks of Sybase Inc. Sybase is an SAP company. HTML, XML, XHTML, and W3C are trademarks or registered trademarks of W3C®, Crossgate, m@gic EDDY, B2B 360°, and B2B 360° Services are registered trademarks of World Wide Web Consortium, Massachusetts Institute of Technology. Crossgate AG in Germany and other countries. Crossgate is an SAP company. Apple, App Store, iBooks, iPad, iPhone, iPhoto, iPod, iTunes, Multi-Touch, Objective-C, All other product and service names mentioned are the trademarks of their respective Retina, Safari, Siri, and Xcode are trademarks or registered trademarks of Apple Inc. companies. Data contained in this document serves informational purposes only. National product specifications may vary. IOS is a registered trademark of Cisco Systems Inc. The information in this document is proprietary to SAP. No part of this document may be RIM, BlackBerry, BBM, BlackBerry Curve, BlackBerry Bold, BlackBerry Pearl, BlackBerry reproduced, copied, or transmitted in any form or for any purpose without the express prior Torch, BlackBerry Storm, BlackBerry Storm2, BlackBerry PlayBook, and BlackBerry App written permission of SAP AG. World are trademarks or registered trademarks of Research in Motion Limited. ©  2012 SAP AG. All rights reserved. 40