日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

给用过SAP CRM中间件的老哥老姐们讲讲SAP CPI

發(fā)布時間:2023/12/19 编程问答 73 豆豆
生活随笔 收集整理的這篇文章主要介紹了 给用过SAP CRM中间件的老哥老姐们讲讲SAP CPI 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近Jerry由于項目需要,又得學(xué)習(xí)一個新工具:SAP Cloud Platform Integration,簡稱CPI,以前又叫做HCI - HANA Cloud Platform Integration Service.

盡管距離Jerry開始接觸CPI還不到48小時,我仍然想把我剛使用這個工具的第一手體會分享給曾經(jīng)用過SAP CRM中間件,但尚未有機會接觸到CPI的朋友們。

之所以文章標(biāo)題里把SAP CRM中間件和SAP CPI關(guān)聯(lián)在一起,是因為二者同廣義上說,扮演的都是系統(tǒng)集成里中間件的角色。

SAP ERP和CRM通過qRFC進行業(yè)務(wù)數(shù)據(jù)同步,而中間件能夠提供隊列機制,錯誤處理,重試,傳輸監(jiān)控等功能。關(guān)于Jerry在SAP CRM中間件上的工作經(jīng)驗分享,請參考我的文章 Jerry的CRM Middleware(中間件)文章合集。

而SAP CPI顧名思義,則是云時代下SAP推薦的SAP產(chǎn)品同第三方云產(chǎn)品進行集成的云端中間件解決方案。Jerry的S4CRM同事童丹之前文章 S/4HANA Service Management和SAP Field Service Management的集成 里提到的場景就是SAP CPI的一個典型集成應(yīng)用。

作為學(xué)習(xí)筆記,Jerry這里把我學(xué)習(xí)SAP CPI時做的一個Hello World級別的練習(xí)步驟記錄下來。

這個練習(xí)的場景是,假設(shè)有一個部署在第三方云平臺上的OData服務(wù),提供了產(chǎn)品主數(shù)據(jù)查詢的功能。我們需要在SAP系統(tǒng)里消費這個OData服務(wù)。SAP開發(fā)人員不希望直接去消費第三方云平臺上的OData服務(wù),而是期望SAP CPI能暴露一個更加容易訪問的API endpoint出來,例如通過postman傳一個Product ID給CPI,CPI拿到這個ID后,由CPI向第三方云平臺發(fā)起OData請求,拿到請求響應(yīng)后,CPI把結(jié)果返回給位于SAP產(chǎn)品的消費端。

用于這個場景的OData服務(wù)地址:https://espmrefapps.hana.ondemand.com/espm-cloud-web/espm.svc/$metadata

SAP CPI是一個SaaS應(yīng)用,在SAP云平臺控制臺的Subscriptions面板里訂閱和訪問。點擊Go to Applications進入主操作頁面。

我們?yōu)榱藢崿F(xiàn)這個集成場景需要在CPI里開發(fā)一個集成流 - integration flow(下文簡寫為iFlow), 用于定義當(dāng)其收到消費者傳入的product ID后,應(yīng)該進行何種處理。

和ABAP里的程序需要存儲在一個開發(fā)包里一樣,iFlow也需要存儲在一個包里,稱為Content package.

進入CPI后在此處創(chuàng)建一個Content package:


然后點擊上圖的Artifacts進入iFlow創(chuàng)建界面:

取名Jerry first integration flow, 再點擊就能進入iFlow的圖形化編輯界面了。

一個新的iFlow創(chuàng)建之后的默認(rèn)界面如下:

點擊上圖最左邊的Sender圖標(biāo),將其拖拽到上圖中間integration process矩形框內(nèi)的Start圖標(biāo)內(nèi),這個動作會幫助我們創(chuàng)建一個inbound adapter,類型我們選擇HTTPS,意思是這個iFlow期望其被消費的方式是HTTPS.

在Adapter的Address里維護一個url片段/CloudIntegrationTrials, 等到最后該iFlow正式部署后,生成的endpoint就是以該片段結(jié)尾,屆時我們可以在postman等工具里使用該endpoint消費這個iFlow.

考慮到現(xiàn)在流行的Restful API實現(xiàn)都期望其消費者以JSON格式傳輸請求內(nèi)容,我們也沿用這個最佳實踐,因此首先拖拽一個JSON to XML Converter到iFlow integration process建模區(qū)域的矩形框里,將JSON
格式的用戶輸入轉(zhuǎn)換成XML格式:

然后再使用Content Modifier,將XML格式里的product ID的值提取出來。

下圖展示了Content Modifier通過XPath將XML格式的輸入里的productIdentifier這個字段的值提取出來。

有了product ID,可以進行OData調(diào)用了。從iFlow建模的工具箱里拖拽一個External Call出來:

類型選擇成OData V2:

指定前面提過的OData服務(wù)的url:

選擇該OData服務(wù)的Products節(jié)點作為消費的對象:

將OData Product節(jié)點的ProductId字段綁定到前一步驟通過Content Modifier解析出來的包含了用戶輸入的productIdentifier字段。

就像小朋友們搭積木一樣,我們把iFlow工具箱里提供的元素,通過拖拽的方式組合成了一個圖形化的流程。點擊Deploy進行部署:

部署成功之后,抄下這個生成的endpoint:

在Postman里向這個endpoint發(fā)送一個GET請求:

部署在SAP Cloud Platform上的CPI iFlow接收到了請求后,就會按照我們維護好的邏輯,解析出Product ID,調(diào)用OData服務(wù),將該ID對應(yīng)的Product明細(xì)數(shù)據(jù)作為結(jié)果返回給消費端。

和SAP CRM中間件有各種通過事務(wù)碼比如SMW01訪問的監(jiān)控應(yīng)用一樣,SAP CPI也有類似的監(jiān)控程序:


希望這個最簡單的例子能讓還沒有接觸過SAP CPI的朋友對其作用有個最直觀的了解,感謝閱讀。

要獲取更多Jerry的原創(chuàng)文章,請關(guān)注公眾號"汪子熙":

總結(jié)

以上是生活随笔為你收集整理的给用过SAP CRM中间件的老哥老姐们讲讲SAP CPI的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。