Quantcast
Viewing all articles
Browse latest Browse all 229

Change system status with customer coding.

I meet an interesting issue recently.

 

There is the request to change system status to I1005 in some special logic. FM CRM_ORDER_MAINTAIN is used to change the system status. But it does not work. After long time debugging, I found that system checks the user status profile to see whether the system status I1005 could be set or not.

My user status profile is configured as:

 

StatusBusiness Transaction Triggerred
Z001OPEN
Z002RELE
Z003FINI
Z004CANC

 

User status Z003 is mapped to business transaction FINI, thus system does not allow changing the system status to I1005 with CRM_ORDER_MAINTAIN. There are also logs found in the system status analysis:

System status 'Completed' (short 'CMPD', technical short form: 'I1005') is inactive

Status 'Completed' cannot be set

Transaction 'FINI' to change status 'Completed' used in status profile

 

The solution is simple, in the 'Transaction Control' of user status Z003, add the entry:

 

Business TransactionSet
Complete

X

 

The issue was solved. I think the check makes sence. Both system status and user status can infunce the business transactions. If the user status does not allow the setting, there might be inconsistancy caused.

 

A couple of days later, I realized there is another way to solve the issue: making above setting in my user status profile, then use FM CRM_ORDER_MAINTAIN to change the user status to Z003, system will set system status I1005 automatically.

 

The system is clever, isn't it?

 

More information can be found in Status Management in Business Transactions http://help.sap.com/saphelp_crm700_ehp01/helpdata/en/48/db7fe063f45c97e10000000a42189d/frameset.htm


Viewing all articles
Browse latest Browse all 229

Trending Articles