打通C/4HANA和S/4HANA的一個原型開發:智能服務創新案例

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

今年6月SAP發布C/4HANA之后,有顧問朋友們在公眾號后臺留言,詢問C/4HANA如何同SAP的數字化核心S/4HANA系統結合起來,從而打通企業的前后端業務,幫助企業實現數字化轉型。

有的顧問朋友們詢問有沒有具體的案例來體現這種前后端一體化的解決方案,正好SAP成都研究院Customer Experience 數字創新空間最近做過一個連接了C/4HANA和S/4HANA的原型開發,這里分享給大家。

這個原型開發的編碼部分是由數字創新空間的Wen AvivaWang LeoJerry完成的,前端頁面設計和美工由簡總負責。王總,雯總師爺負責設計原型的使用場景,設計過程中也得到了SAP成都研究院的其他多位產品經理的幫助,在此表示感謝。

這個智能服務的場景,用一句話概括就是通過微信作為客戶端,讓用戶能夠方便地使用C/4HANA和S/4HANA提供的一體化服務流程。其中C/4HANA這個套件里我們選用了SAP Cloud for Customer(C4C)。

原型開發場景介紹

我們先來看看具體的場景。

1. 有一位叫曾海瑞的客戶,是綠野種子集團生產主管。由于公司業務需要,他在網上訂購了藍天機器人有限公司的一款機械臂,并關注了藍天機器人有限公司的公眾號。

根據曾海瑞訂單上維護的信息,比如姓名和手機號碼等,一旦曾海瑞關注了公眾號,公眾號的消息服務器會收到一個subscribe事件,通過消息服務器上的編程觸發SAP系統中客戶主數據的創建。

根據企業實際情況,如果您想把微信觸發客戶主數據的創建放在C/4HANA的C4C里,可以參考Jerry的公眾號文章?C4C和微信集成系列教程?以及Jerry的同事Li Sean的博客:

Integration of WeChat and C4C Service Ticket on HTML5 Client

如果想把客戶主數據放在S/4HANA,那么就把S/4HANA客戶主數據的創建函數通過Cloud Connector暴露給微信消息服務器調用。具體做法可以參考Jerry這兩篇文章:

  • 使用Java+SAP云平臺+SAP Cloud Connector調用ABAP On-Premise系統里的函數

  • 在SAP云平臺的CloudFoundry環境下消費ABAP On-Premise OData服務

2. 藍天機器人的工作人員把機械臂包裝好之后,在包裝外殼貼了一個二維碼,上面包含了這臺機械臂的序列號。每臺售出的機械臂,在S/4HANA后臺對應一個Equipment實例,而序列號就是Equipment上一個字段。

曾海瑞收到機械臂后,用微信掃描包裝上的二維碼,就會觸發S/4HANA的一個預先開發好的函數,完成這臺機械臂的序列號和用戶信息的綁定,這樣無需藍天機器人公司的S/4HANA操作人員手工在系統里錄入。

二維碼掃描完成后,曾海瑞在微信上點擊“預約”菜單,即可自助預約藍天機器人公司的技師進行機械臂的上門安裝。

3. 在微信預約上門頁面里,曾海瑞的當前地址自動被GPS識別出來,當然他也可以手動修改。因為我們開發人員是在公司里做的測試,所以下圖的預約地址顯示的是SAP成都研究院數字創新空間的實際地址:

曾海瑞微信里顯示的安裝技師的清單是通過調用C4C的客戶主數據服務生成的。這個服務會在C4C后臺自動篩選和曾海瑞指定的預約時間匹配的技師,然后返回給微信。

最終曾海瑞在可選技師列表中選擇了顏值最高的一位技師,李曉剛。

李曉剛這個名字不是我們杜撰的,現實中是Jerry的同事,SAP成都研究院C4C開發團隊的開發人員Li Sean。

李曉剛的業余愛好除了烹飪之外,還喜歡玩飛鏢和讀佛經。

曾海瑞在微信上選定李曉剛作為安裝技師后,李曉剛手機上的C4C應用程序立即收到一條消息提醒:

你有新的工單。用戶預定了上門安裝服務,請及時查看工單詳情。

李曉剛點擊消息提示,進入C4C手機應用的工單明細頁面,看到這個機械臂的安裝明細信息。

到了曾海瑞預約的日期,在李曉剛出發之前,他可以點擊C4C工單界面底部工具欄上的"共享你的位置"按鈕,向曾海瑞發起一個實時位置共享。

此時曾海瑞在微信里就可以隨時查看李曉剛的實時位置。

5.?李曉剛到達現場完成機械臂安裝之后,在自己的C4C手機應用上,點擊按鈕"推送賬單",將本次安裝費用的賬單明細推送到曾海瑞的微信上。賬單里除了本次安裝費用后,還包括了該機械臂在S/4HANA系統里維護的和交叉銷售(Cross Selling)相關的信息,比如和機械臂配套的噴嘴沖洗槍。

李曉剛和曾海瑞當面溝通后,曾海瑞決定將這個噴嘴沖洗槍也一并購買。于是李曉剛在推送賬單之前,將相關產品區域噴嘴沖洗槍前面的勾選框選中,再點擊"推送賬單"按鈕。

曾海瑞微信上收到賬單后,確認信息無誤后進行支付。當然這里的支付也可以和S/4HANA的billing流程集成,只是這個原型開發我們沒有做。

6. 曾海瑞支付完成后,會在手機上看到一個對這次安裝服務滿意程度的調查問卷。

這里我們直接使用了S/4HANA Survey的數據模型,把調查問卷提交函數通過Cloud Connector暴露出來給微信應用消費。

曾海瑞在微信頁面上打了五星好評后,該結果通過S/4HANA的Survey API寫入數據庫中。

關于用ABAP代碼提交S/4HANA Survey數據的更多細節,參考我的博客:

Use ABAP code to fill CRM Survey question and submit

原型開發架構介紹

下面是智能服務原型開發的架構圖。

1.?白色圖例代表SAP成都研究院數字創新空間的開發人員為這個原型做的開發內容,這些開發包含:

  • 新的代碼,比如圖中C4C和S/4 API endpoint是我們在Netweaver后臺新創建的API。

  • 新的配置,比如在SAP云平臺上創建的一些Destination配置。

  • 新的數據模型,比如在S/4HANA創建的CDS view,用于存儲用戶提交的Survey結果,借助CDS view本身強大的實時數據分析功能進行各種報表的自開發。

更詳細的用自開發的CDS view和前臺界面來渲染S/4HANA Survey結果的細節,請參考我的博客:

Develop your own Chart to visualize your CRM Survey result

2.?淺綠色圖例代表藍天機器人公司公眾號的消息服務器,我們部署在阿里云平臺上。

3.?深綠色圖例代表SAP產品里的標準功能。

  • Account Management:?曾海瑞關注公眾號后,在C4C生成一個客戶主數據,使用的是C4C Account Maangement提供的OData服務。

  • Service Ticket:?李曉剛收到的工單和曾海瑞收到的賬單我們都用Service Ticket這個模型來實現。

  • **Offline Pricing:**因為是原型開發,為簡單起見,對于C4C的賬單計費需求,我們并未使用和S/4HANA集成的計費方案。

  • **Product Master:**S/4HANA的物料主數據通過HANA Cloud Integration同步到C4C中,從而被C4C工單和賬單使用。

4.?灰色圖例代表這個原型開發里使用到的SAP產品:

  • C4C

  • S/4HANA

  • SAP Cloud Connector

  • SAP Cloud Platform

這個原型開發從技術上來說,客戶曾海瑞,技師李曉剛,C4C和S/4HANA這四個系統之間的時序交互如下圖所示:

如果您想了解這個原型開發更詳細的技術細節,請聯系我。感謝閱讀。

更多閱讀

  • SAP S4CRM vs C4C, 諸葛亮和周瑜?

  • SAP成都C4C小李探花:淺談Fiori Design Guidelines

  • SAP成都研究院C4C光明左使:SAP Cloud for Customer 使用SAP UI5的獨特之處

  • SAP Cloud for Customer Extensibility的設計與實現

  • SAP移動應用解決方案之一:HTML5應用 + Cordova = 平臺相關的混合應用

  • 機器學習在SAP Cloud for Customer中的應用

  • SAP C/4HANA到底包含哪些產品:https://zhuanlan.zhihu.com/p/45188119

要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

轉載于:https://my.oschina.net/u/3771578/blog/2253349

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537606.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537606.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537606.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

爬蟲的重要思想

1.理論上講只要網頁上面能夠看到的數據都是可以爬取的,因為所有看到的網頁上的數據都是服務器發送到我們電腦上面的,只是有的數據加密過,很難解密。 2.在網頁上無法看到或者無法獲取的數據,爬蟲同樣不可能拿到,比如一…

python web環境傻瓜搭建_python——web 環境搭建

1.安裝引用第三方庫 selenium pip install selenium 2.下載瀏覽器驅動(驅動版本和瀏覽器版本要對應參考鏈接 http://npm.taobao.org/mirrors/chromedriver/) 查看瀏覽器驅動對應關系,本次已最新驅動版本作為教材講解 版本2.42 發布時間2018.9…

項目管理十大知識領域,為何不含

問:項目管理十大知識領域,為何不含以下幾項:立項管理,合同管理,文檔管理,變更管理? 答: 立項完了才有項目; 合同管理包含在采購管理; 變更管理在整體管理&am…

B站視頻下載(VideoHelper)

繼續上次的知乎爬蟲, 這次開始了嗶哩嗶哩的爬蟲實踐; 首先介紹下如何下載吧: VideoHelper 里面有三種方式下載b站視頻。 同樣的流程, 還是先抓包,分析參數,尋找參數(包括之前的請求包和頁面源碼…

在職場遇到一個總是說話帶刺的同事怎么相處?

網友: 帶刺的人如果總是撲空,或者總是戳進一團棉花,你說他,她還能堅持多久。職場重心是工作,是做事,不要為這些無聊的人事太費心,刺猬帶著刺到處轉,最后結果不會好的。 網友&#xf…

postgresql 怎么讀_大數據采集和抽取怎么做?這篇文章終于說明白了!

本文來源于公眾號【胖滾豬學編程】,轉載請注明出處! 關于數據中臺的概念和架構,我們在大白話 六問數據中臺和數據中臺全景架構及模塊解析!一文入門中臺架構師!兩篇文章中都說明白了。從這一篇文章開始分享中臺落地實戰…

ZooKeeper應用——解決分布式系統單點故障

1.單點故障問題什么是分布式系統中的單點故障:通常分布式系統采用主從模式,就是一個主控機連接多個處理節點。主節點負責分發任務,從節點負責處理任務,當我們的主節點發生故障時,那么整個系統就都癱瘓了,那…

老板思維:有支出必須有對應的收入

項目經理 要時刻關注“有支出必須有對應的收入”。 當手頭的項目產生支出時,必須要問自己,從哪里收入來填補這個支出,如果沒有可收入的,那就是公司虧錢了。如果一定要虧錢,那可否產生收入之外的效益。 甲方提了新需求…

生活之難:生活到底難在哪里

生活之難:生活到底難在哪里 一、總結 一句話總結:難在天性,難在競爭,難在積累,難在追求,難在自己 難在天性 人的天性就是好吃懶做好玩不動腦的,但是生存的壓力(食物,房子…

解決org.springframework.web.multipart.MaxUploadSizeExceededException報錯問題

在springboot中接收到上傳的文件時候,出現了這種錯誤 org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.Fil…

python中元祖 字典 列表的區別_Python中元祖,列表,字典的區別

原博文 2016-08-16 15:25 ? Python中有3種內建的數據結構:列表、元祖和字典: 1.列表 list是處理一組有序項目的數據結構,即你可以在一個列表中存儲一個序列的項目。 列表中的項目應該包括在方括號中,這樣Python就知道你是指明一個…

react 16.6 懶加載 Lazy 嘗鮮

react 16.6 發布了新的功能 lazy ,和一個組件 Suspense 下面我們看一下他的用法 首先我們先創建兩個組件 LazyTest.1 和 LazyTest.2,內容相同 import React, { Component } from reactexport default class LazyTest extends Component{render(){return …

Intellij IDEA展示類中的方法樹形結構

在intellij Idea中叫Structure(結構體),如下圖; 也可以直接AltF7快捷鍵,這樣默認會把Structure顯示在屏幕下方,如下圖操作就可以移動到右側。 效果如下:

時間計算題100道_2019四校及分校自招開放日情況匯總(含時間安排、考試內容難度、到場人數等)...

點擊上方“上海初升高”,選擇“星標公眾號”回復“加群”就能加入上萬家長信賴的升學群受到疫情的影響,今年各市重點的自招開放日報名遲遲沒有提上日程。但不管怎樣,自招應該是不會取消的,以下是去年四校及分校自招開放日情況匯總…

linux I/O 棧 預習(上)

二、預習 在我們進去device mapper的dm dedup學習之前,我們先要預習一下,什么是device mapper,和為什么device mapper能夠做塊重刪。 1、device mapper照舊,我們先看一下維基百科對它的介紹。The device mapper is a framework pr…

java.util.concurrent.RejectedExecutionException

報錯日志 java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask12e2cb93 rejected from java.util.concurrent.ThreadPoolExecutor6ecd396b[Running, pool size 10, active threads 10, queued tasks 200, completed tasks 0] 原因&am…

springboot controller 訪問 404

兩種解決方式: 1、因為SpringBoot的項目啟動類,會只掃描該包下的文件或者改包下所有子包內的文件,只要你把該文件移動到啟動類的相同目錄報下就可以。 2、就是在該類上面加者在啟動類上添加注解 ComponentScan(basePackages {"com.boota…

fegin需要實現類_【第24條】靜態成員類優于非靜態成員類

第24條靜態成員類優于非靜態成員類嵌套類(nested class)是指定義在另一個類的內部的類。嵌套類存在的目的應該只是為它的外圍類(enclosing class)提供服務。如果嵌套類將來可能會用于其他的某個環境中,它就應該是頂層類(top-level class)。嵌套類有四種:…

.h與.cpp

本質上沒什么區別。 cpp:c plus plus,就表示為c原文件。 .h文件實現的功能是聲明.cpp文件中需要使用的變量、函數及宏定義等。 .h文件就像是一個接口,具體的實現可以在.cpp中,也可以在.h中。轉載于:https://www.cnblogs.com/keguniang/p/9877581.html

Springboot 多線程的使用

直接上代碼 線程配置類 package zengmg.nbpi.com.thread;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework…