SAP CRM Service Order(服务订单)的状态字段设计原理介绍
WebUI上的One order header和status是1:N的关系:在WebUI上的search结果里,会把一个order当前所有的status全部连接成一个string,并显示出来。
从Component design里也能看清楚,status绑的是CONCATSTAT,
![](https://user-images.githubusercontent.com/5669954/33001493-4e02c990-cde9-11e7-9b51-10c28b02a968.png)
这个状态连接是后台完成然后返回给前台的:
![](https://user-images.githubusercontent.com/5669954/33001494-4e355ae0-cde9-11e7-9c60-81a48824edea.png)
WebUI status render逻辑,在Search result和detail page不一样。
(1). 在Search result,显示所有的status:
![](https://user-images.githubusercontent.com/5669954/33001495-4e67d434-cde9-11e7-84d2-cebc6dec5a02.png)
(2). 在detail page,分两种情况:
(2.1): 如果order的transaction type没有配置user status profile,就只显示system status的第一个。例如590这个order从后台查询它有两个active的system status,但是在界面上只显示第一个 I1003:
![](https://user-images.githubusercontent.com/5669954/33001498-4eceb08c-cde9-11e7-9f1d-5028bd22aee9.png)
![](https://user-images.githubusercontent.com/5669954/33001499-4f00c4b4-cde9-11e7-84ec-6e9b1d5212c8.png)
![](https://user-images.githubusercontent.com/5669954/33001500-4f383606-cde9-11e7-960e-0a40bbe6e1c4.png)
-
在Smart template的list report页面里,list report 里的table column和CDS view 里的field都是一一对应的,1:1的关系。但是现在由于CRM里order status的design,一个order可能拥有N个status。
-
HANA studio里Opportunity相关的view
结论 仍然是: Opportunity和Status的关系是1:N, 而非1:1.
HANA studio 里的model全是为了Analytic report设计的,而非我们将来要做的service process ( transaction application ).
因此,HANA studio里相关的model 只针对system status建模,并未包含user status。这个我们的scenario有所差异。
n How to get system status code and description
HANA model取system status code和description和我CDS的做法一样:简单描述如下:
All system status are queried from TJ02 table:
The description of status code is from TJ02T table:
![](https://user-images.githubusercontent.com/5669954/33001504-500252f6-cde9-11e7-9651-4060db3833d7.png)
![](https://user-images.githubusercontent.com/5669954/33001505-5034531e-cde9-11e7-9b58-4125daeb0d53.png)
Data preview looks like below:
但如果perform 一个where used list就能发现,这个calculation view并未用于opportunity相关的report里。
n OpportunityQuery
这个calculation view被大量用于CBA的tile里,it will show the total number of Opportunities with the following status:
- won
- lost
- hasError
- Open
- InProcess
下图右边Output里StatusXXXX 几个column都是calculated field,计算的逻辑就是看system status是否为对应值。例如下图isWon的判断。
Its modelling detail:
Final data preview result below:
From here we get the conclusion that the cardinality of Opportunity UUID : SystemStatus code is: 1:N.
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关文章
- 关于 sap.ui.base.Object 的简要介绍
- 关于 SAP Spartacus SSR 请求 OCC API 遇到 403 错误的解决办法
- SAP UI5 sap.ui.Device.media.RANGESETS.SAP_STANDARD_EXTENDED 介绍
- SAP UI5 sap.ui.Device.media 公有方法介绍
- SAP UI5 sap.m.Table Manual Pop-In Mode 概述
- SAP UI5 响应式表格 sap.m.Table 根据不同宽度的屏幕动态决定显示或隐藏 Column 的实现源代码讲解试读版
- SAP 常用表(转)详解编程语言
- SAP中使用FTP服务详解编程语言
- Version Management in SAP ABAP详解编程语言
- [SAP ABAP开发技术总结]动态语句、动态程序详解编程语言
- SAP vs Oracle:差异点与解析(sap和oracle的区别)
- 对比:Oracle 与 SAP的优势(oracle 与 sap)
- 系统Oracle公司收购SAP系统开启新的商业时代(Oracle公司sap)
- Oracle与SAP权衡利弊比较之路(oracle与sap比较)
- Oracle SAP系统深入探索管理系统之魅力(oracle sap系统)
- Oracle与SAP的技术潜力比较(oracle sap比较)