SAP CRM My Opportunity Fiori应用网络请求的详细分析

Posted sap-jerry

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SAP CRM My Opportunity Fiori应用网络请求的详细分析相关的知识,希望对你有一定的参考价值。

This roundtrip is used to render the navigation list when the Opportunity tile is clicked by launchpad. It is mandatory, could not be eliminated.

技术图片

2: #11: https://fiorilaunchpad-faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/

Once the top 20 opportunities are retrieved from backend, by default the FIRST item in the navigation list will be selected automatically, and its detail data will be displayed in the detail view ( technical name: S3.view.xml ). Thus the detailed data of this selected opportunity will be fetched via OData batch request (roundtrip marked with green in below picture - this is however the #13 roundtrip mentioned in the excel).

技术图片

Before this batch request is really sent to backend, OData framework will issue a token request refresh operation first:

技术图片
技术图片

Detail operation of this roundtrip:

技术图片

And new CSRF token is returned and contained in HTTP response header:

技术图片

Summary: this roundtrip is issued by OData handling framework and thus could not be controlled by application:

技术图片

3: #13 roundtrip - just the batch request mentioned in step2:

技术图片
技术图片
技术图片

--batch_c9c9-beb3-1a6d
Content-Type: application/http
Content-Transfer-Encoding: binary

GET SalesStages HTTP/1.1
Accept-Language: en
Accept: application/json
MaxDataServiceVersion: 2.0
DataServiceVersion: 2.0

--batch_c9c9-beb3-1a6d
Content-Type: application/http
Content-Transfer-Encoding: binary

GET Priorities HTTP/1.1
Accept-Language: en
Accept: application/json
MaxDataServiceVersion: 2.0
DataServiceVersion: 2.0

--batch_c9c9-beb3-1a6d
Content-Type: application/http
Content-Transfer-Encoding: binary

GET UserStatuses HTTP/1.1
Accept-Language: en
Accept: application/json
MaxDataServiceVersion: 2.0
DataServiceVersion: 2.0

--batch_c9c9-beb3-1a6d
Content-Type: application/http
Content-Transfer-Encoding: binary

GET Currencies HTTP/1.1
Accept-Language: en
Accept: application/json
MaxDataServiceVersion: 2.0
DataServiceVersion: 2.0

--batch_c9c9-beb3-1a6d
Content-Type: application/http
Content-Transfer-Encoding: binary

GET Opportunities(guid‘FA163EEF-573D-1ED4-BEC1-5BEA665821F3‘)?$expand=ChangeDocs,Competitors,Products,OpportunityLogSet HTTP/1.1
Accept-Language: en
Accept: application/json
MaxDataServiceVersion: 2.0
DataServiceVersion: 2.0

--batch_c9c9-beb3-1a6d
Content-Type: application/http
Content-Transfer-Encoding: binary

GET RetrieveMaxHitSet HTTP/1.1
Accept-Language: en
Accept: application/json
MaxDataServiceVersion: 2.0
DataServiceVersion: 2.0

--batch_c9c9-beb3-1a6d--

Instance based.

4: #12 roundtrip https://fiorilaunchpad-faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/Opportunities(guid‘3C9E5E12-ECCD-AE44-A46C-C3BB558EE9A3‘)

This roundtrip is used to get ETAG:

技术图片
技术图片

ETAG returned in http response header:

技术图片
技术图片

Instance based.

5: #14 roundtrip: https://fiorilaunchpad-
faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/AccountCollection(‘3272‘)?$expand=Logo

This roundtrip is responsible to retrieve the logo header information of a given account. Logo is maintained in CRM backend system via attachment.

  1. 15 roundtrip: https://fiorilaunchpad-faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/AttachmentCollection(documentID=‘0090FA0D8ACA1EE39287D2CF99FACB4F‘,documentClass=‘BDS_POC1‘,businessPartnerID=‘3272‘)/$value

The document id and document class are retrieved by the previous roundtrip, #14. Then the binary data of logo image is retrieved in this step.

The data retrieve for logo image binary data is expensive. Just checked in SAP internal system, for a small image with 16.8k, still more than 800ms is spent in backend handling.

技术图片
技术图片

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
技术图片

以上是关于SAP CRM My Opportunity Fiori应用网络请求的详细分析的主要内容,如果未能解决你的问题,请参考以下文章

如何自行给指定的SAP OData服务添加自定义日志记录功能

SAP C4C Opportunity和SAP ERP Sales流程的集成

为什么CRM Opportunity的删除会触发一个通向BW系统的RFC

从SAP客户主数据里直接创建商机(Opportunity)

如何在SAP gateway系统配置路由到后台系统的OData服务路径

SAP系统的核心模块