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.
![](https://img.haomeiwen.com/i2085791/12f8bd388bc76dd0.png)
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.
![](https://img.haomeiwen.com/i2085791/33f162b3e4f957d1.png)
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.
![](https://img.haomeiwen.com/i2085791/dac467d2d594111a.png)
![](https://img.haomeiwen.com/i2085791/f3f98893a78a8f77.png)
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:
![](https://img.haomeiwen.com/i2085791/e4a4dadcb0886d55.png)
CRM_STATUS_READ still works as before:
![](https://img.haomeiwen.com/i2085791/65d4f23e799332f3.png)
![](https://img.haomeiwen.com/i2085791/635686849446e550.png)
or you can also call function module CRM_ORDER_READ to read those status as before:
![](https://img.haomeiwen.com/i2085791/a663534577bd0d30.png)
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.
![](https://img.haomeiwen.com/i2085791/157183210b499830.png)
Create a user status profile:
![](https://img.haomeiwen.com/i2085791/f92f1fd95340bae0.png)
assign user status records to this created profile ZCS00002:
![](https://img.haomeiwen.com/i2085791/6cfd85f2adb06238.png)
(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.
![](https://img.haomeiwen.com/i2085791/550f7901c669d296.png)
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.
![](https://img.haomeiwen.com/i2085791/efe4123c51c07ffd.png)
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.
![](https://img.haomeiwen.com/i2085791/6433c4a8d5beb424.png)
Jerry’s other blogs on S/4HANA for Customer Management
- S/4HANA for Customer Management 1.0 introduction from technical point of view
- CRM One Order Model Redesign in S/4HANA for Customer Management 1.0 – Part 1
- CRM One Order Model Redesign in S/4HANA for Customer Management 1.0 – Part 2
- Create Mass Products by code in S/4HANA for Customer Management
- Create Mass Service document in S/4HANA for Customer Management
- One order extensibility in S4HANA for Customer Management
- One Order Partner Component model in S/4HANA for Customer Management
- Step by step to create custom partner function in S4HANA for Customer Management
- One Order Status Component in S4HANA for Customer Management
- How to create employee in S/4HANA for Customer Management
网友评论