There is no big change on One Order Status component in S/4HANA for Customer Management.

There are some dedicated flag modeled in flat table each of which represents a given system status.
If the order has a given system status, the corresponding flag will be set as X.

SAP S/4HANA里的订单状态管理机制介绍

For example, my service order 8000000424 has flag STAT_ERROR and STAT_OPEN as X, which means it has system status I1030 and does not have I1005.

SAP S/4HANA里的订单状态管理机制介绍

The logic to set these series of flags could be found from method IF_CRMS4_BTX_DATA_MODEL~CONVERT_1O_TO_S4 of class CL_CRMS4_STATUS_CONV.

SAP S/4HANA里的订单状态管理机制介绍
SAP S/4HANA里的订单状态管理机制介绍

The introduction of these flags in flat table is to avoid the unnecessary join on CRM_JESTin analytics scenario. The original status storage via CRM_JEST still remains in S/4HANA for Customer Management.

In the above mentioned example, two flags STAT_OPEN and STAT_ERROR are marked as X, which has corresponding storage in CRM_JEST as below:

SAP S/4HANA里的订单状态管理机制介绍

CRM_STATUS_READ still works as before:

SAP S/4HANA里的订单状态管理机制介绍
SAP S/4HANA里的订单状态管理机制介绍

or you can also call function module CRM_ORDER_READ to read those status as before:

SAP S/4HANA里的订单状态管理机制介绍

How to create user status in S/4HANA for Customer Management

(1) Create a new extension field to store the order lifecycle status value. The extension field must have type as Text with length 1. This step is optional – when end users specify a user status from drop down list, the mapped lifecycle status will be stored into this extension field.

SAP S/4HANA里的订单状态管理机制介绍

Create a user status profile:

SAP S/4HANA里的订单状态管理机制介绍

assign user status records to this created profile ZCS00002:

SAP S/4HANA里的订单状态管理机制介绍

(2) Tcode SM34, open view CRMS4VC_STAT_LC, create some lifecycle status value in order to map the user status created in previous step. I use value from F to J as preceding values are occupied by my colleagues in my test system.

SAP S/4HANA里的订单状态管理机制介绍

And map the user status to these created lifecycle status.

The below customizing could be explained from technical point of view as below:
If user chooses user status E0002 from WebUI, the STAT_LIFECYCLE in CRMS4D_SERV_H will be set as F, E0003 as G, E0004 as H and so on.

SAP S/4HANA里的订单状态管理机制介绍

And the last two entries maintain the relationship between extension field and user status: if user status is E0003, then G will be filled into the specified extension field.

SAP S/4HANA里的订单状态管理机制介绍

Jerry’s other blogs on S/4HANA for Customer Management

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
SAP S/4HANA里的订单状态管理机制介绍

相关文章: