这是Jerry2020年的第37篇文章,也是汪子熙公众号总共第220篇原创文章。 最近Jerry做的一个项目需要使用SAPAnalyticsCloud和SAPCloudforCustomer进行集成。以前我对这个领域是一无所知,正好借此机会学习。 项目背景在Jerry之前的文章如何在SAPCloudforCustomer页面嵌入自定义UI已经介绍过。我们给汽车销售开发了一个微信小程序,在使用过程中会在SAPCloudforCustomer里生成Lead数据。我们希望使用SAPAnalyticsCloud对C4C里这些Leads数据做各种分析和预测,以帮助该销售更有效地完成其销售目标。 从SAPAnalyticsCloud官网得知,AnalyticsCloud同提供数据源的SAP其他产品或第三方系统建立连接,有LiveDataConnections和ImportDataConnections两种,二者最大区别就在于前者没有数据复制(Replication),而后者存在类似SAPERP和SAPCRM之间的数据复制。 两种连接类型的支持矩阵表明,SAPCloudforCustomer只支持通过ImportDataConnections的方式,同SAPAnalyticsCloud集成。 因为二者都通过公有云的方式部署,因此也无需使用SAPCloudConnector进行内外网穿越了。 在SAPAnalyticsCloud里新建一个connection: 在AcquireData里选择SAPCloudPlatformAnalytics: DataServiceURL维护如下: https:lt;hostnamegt;。c4c。saphybriscloud。cnsapbydodatacchomeanalytics。svclt;hostgt; SAPCloudforCustomer系统的Analytics模型,通过上面这个URL暴露给SAPAnalyticsCloud使用。 连接建立后,基于该连接开启一个新的Model创建任务,选择SAPCloudforCustomerAnalytics: SAPAnalyticsCloud的Model是基于Query的,所以先创建一个Query: 点击Next后,SAPAnalyticsCloud会从SAPCloudforCustomer读取Query列表信息: 稍等片刻,SAPCloudforCustomer的Report模型就被读取出来,显示在SAPAnalyticsCloud的Query列表里。因为SAPAnalyticsCloud作为一个AnalyticsHub,不可能知道CloudforCustomer应用比如Sales,Service,Marketing这些领域数据的存储明细,所以通过这些充当代理角色的C4CReport,去完成数据读取的任务。 每一个出现在上图对话框列表内的Query都对应着C4C系统BusinessAnalytics(工作中心)的DesignReports(工作中心视图)里的一个Report,命名规范为RPlt;c4creportidgt;Q000amp;lt;数字amp;gt;QueryResults。其中C4CReportID可以在C4C系统里找到。lt;!数字gt;lt;c4cgt; 假设SAPC4C发布的标准Report不能满足我项目的实际需求,我可以基于SalesLead(CODLEAHB)这个C4C的标准DataSource,自己新建一个Report。 点击NewReport: 维护Name为Zjerryc4cLeadReport: 选中默认的两个KeyFigure,Counter和Today,因为我希望创建的这个Report,能告诉我:到今天为止,C4C系统里一共存在多少个Lead,以及这些Lead的来源分布情况(通过Lead的Source字段区分)。 这个自定义的C4CReport创建完毕: 创建完毕后,对其进行简单的测试: 因为没有选择任何限制条件,所以该Report显示的Counter值为当前系统里全部的Lead个数:5837。点击漏斗图标,打开Source字段的帮助对话框: 选择Z01代表的WechatSocialChannel: 得到意料之中的结果:6。 这和OWL查询出的结果一致。 C4C的Report创建好之后,就可以在SAPAnalyticsCloud的Query列表里检索出来并选择: 在SAPAnalyticsCloud里可以选择C4C自定义Report里所有支持的Characteristics作为SAPAnalyticsCloud模型的选择条件。下图的IncrementalLoad工作原理和SAPCRM中间件的DeltaDownload类似,不在本文讨论范围之内。 定义好SAPAnalyticsCloudModel的选择条件之后,数据同步工作就开始了。 待数据全部从SAPC4C同步到SAPAnalyticsCloud之后,提示信息显示总共5837条记录导入成功: SAPAnalyticsCloudModel基于这批导入的数据自动进行创建。 接下来,就是SAPAnalyticsCloud的常规操作了,即基于模型创建Story,进行各种图表的展示,具体步骤请参考SAPAnalyticsCloud的帮助文档。 下图是C4C系统全部的Lead按照其Source字段进行区分而显示出的分布情况,可以看到来自Campaign的Lead最多,而通过WechatSocialChannel创建的Lead最少。 可以在SAPAnalyticsCloud里切换不同的图表来显示这些Lead的来源分布情况: