Difference between MBO based & OData based Mobile App
We all know that SMP 3.0 has already been launched in Ramp-up. There are certain factors to be considered while migrating SMP 2.x MBOs based applications to SMP 3.0
SAP Mobile Platforms 2.x MBOs based applications can be migrated to SMP 3.0 by redeveloping the MBOs. I found some differences between Mobile business object based apps and OData based apps from architectures, SDKs, modeling point of view.
Difference between MBO & OData architectures:
|Key Point||SMP 2.x||SMP 3.x|
SUP CDB is available
Note: check here how to access SUP cache database
|Integration||Its part of MBO design||
for more details check here
|Reverse Proxies||Some support for reverse proxies,
but Relay server is recommended
|Support for Std. reversed proxies|
|OS support||Only Windows||Windows, Linux|
Difference between MBO & OData SDK:
Here is the differences of functional capabilities between MBO & OData SDK.
|Business Logic||Data Models||Entity Data Models
|Interconnection||via Relationshiop||via Assosiations|
|Offline Object Queries||find By||N/A|
|Online Object Queries||find By||HTTP GET, $filter|
|UPDATE||HTTP PUT, PATCH|
|On Device Relational DB
( for Offline Lookup)
|Offline Custom queries||YES||N/A|
Difference between MBO Models & OData Entity Data Models (EDM):
- If there is an requirement to convert MBO based app to OData app, we must first develop entity data model.
- MBO data model is similar to Entity data model.
- There is no direct mapping from MBO based elements to OData based elements.
- OData Entity data model is used as a contract in an HTTP REST pattern, so all operations are performed using HTTP verbs like GET, POST, PUT, DELETE
|MBO Model||Entity Model|
|CRUD operations||Nothing like CURD operations.
OData follows HTTP REST pattern for CURD.
|Other operations||Function Import|
Note: I will be updating the same document based on my learning towards SMP 3.0