SAP Service and Asset Manager requires the minimum release of SAP_GWFND 7.4 SP17, which is SAP Gateway embedded within SAP NetWeaver, such as SAP NetWeaver 7.4 or later releases.
OData service provider with business logic (model provider and data provider) is typically implemented in the business layer of the SAP S/4HANA or SAP Business Suite system.
SAP Service and Asset Manager integrates natively with either SAP S/4HANA or SAP ERP back-end system via dedicated OData services designed to support offline scenarios. The OData service for SAP Service and Asset Manager is provisioned through SAP Gateway. It relies on SAP Gateway for the OData runtime processing and monitoring.
Important SAP Gateway and OData Features for SAP Service and Asset Manager
OData service for SAP Service and Asset Manager is implemented in OData V2. To support offline scenarios, the OData service has some unique characteristics and uses some of the advanced features in SAP Gateway and OData protocol:
$skiptoken:
Offline mobile application scenario requires data replication from SAP back-end system to mobile client, through SAP Business Technology Platform Mobile Services. Large data volume might be transferred, especially during initial sync between mobile client and SAP system. By default, response payload size from SAP Gateway to SAP Business Technology Platform Mobile Services must not exceed 64 MB. $skiptoken with server-side paging is required if payload size exceeds this limit.
$deltatoken:
Offline mobile application performs incremental delta sync after its initial sync with SAP system, for optimal performance. This requires the use of delta token in OData response. SAP Gateway doesn’t allow combining $skiptoken and $deltatoken in the same response payload, so it must be managed by the OData service provider.
Tombstone:
Entity set records replicated to mobile client must be deleted when data distribution rule disqualified the records. Tombstone for those records to be removed from mobile client must be generated in SAP Gateway response payload, using <deleted_entities> tag.
$batch with GET requests:
$batch of GET requests are used extensively by SAP Service and Asset Manager application for optimal sync performance.
Use of $expand to download large volume of associated entity set records can cause performance problem. SAP Service and Asset Manager avoids the use of $expand, and instead using $batch with GET requests to download large volume of associated entity set records, for best performance.
Avoid the use of parallel query:
Unlike OData services for some online Fiori applications, use of parallel queries must be avoided for SAP Service and Asset Manager OData service. This is because query sequence must be ensured for many entity sets in SAP Service and Asset Manager due to their complex dependency. If query parallelization is enabled for SAP Gateway due to SAP Fiori application requirement, specific OData Offline configuration (DEST_SAMxxxx_PPROP.ini file) in SAP Business Technology Platform Mobile Services is required to ensure the proper sequencing. It is possible to change the parallelization for individual OData Service.
Use of Batch At Once option:
SAP Service and Asset Manager OData service uses the Gateway Batch At Once option when downloading data using $batch of GET requests. With Batch At Once enabled, download performance can be improved substantially. The option is enabled by turning on the Gateway model feature use_deferred_batch_resp_crea.
Batch At Once option is only available in SAP systems with SAP NetWeaver 7.51 or later, such as SAP S/4HANA system 1610 or later releases. SAP ERP system uses SAP NetWeaver 7.4, with which the option is not supported, therefore associated performance optimization is not available.
Changeset with Content-Id:
SAP Service and Asset Manager OData service supports complex business object creation and update using Changeset and Content-Id, instead of the use of Deep Insert.
Generic model provider class and data provider class:
SAP Service and Asset Manager OData service is implemented using Mobile Application Integration Framework (MAIF), which is designed to support the unique requirements for offline mobile applications. MAIF uses a generic model provider and data provider class approach for all of its OData services. For each OData service, Gateway technical model and technical service must be defined, but they all have the same model provider class /MFND/CL_CORE_ODATA_V2_MPC, and data provider class /MFND/CL_CORE_ODATA_V2_DPC.
Gateway Deployment Options

SAP Service and Asset Manager can support both embedded SAP Gateway and SAP Gateway Hub deployment options. Embedded SAP Gateway is recommended for its performance advantage.