使用CRM_ORDER_MAINTAIN更改订单状态

2020-09-15 09:58发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) 专家您好...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家您好,

能满足以下要求吗?

我正在尝试使用FM CRM_ORDER_MAINTAIN更改"订单"状态(请找到代码的附件)。

当我执行此FM时,我得到SY_SUBRC = 0,但是在后端,它没有更新状态。

但是当我尝试使用事务CRMD_ORDER更改状态时,它已成功更新。

我正在程序中传递相同的值,这是执行事务时要填充的值,但是我不知道为什么它不通过Program进行更新。

请帮助我。

感谢与问候,

萨加尔。

(20.0 kB)
1条回答
梦想连接
2020-09-15 10:15

您的代码可能是错误的。

调试crmd_order,您将看到结构填充方式

CT_INPUT_FIELDS [1]

REF_HANDLE 0000000000

REF_GUID 0050569F0EA61ED8A5BBE454127C3361

REF_KIND A

对象名称状态

LOGICAL_KEY E0003CRMORDER

FIELD_NAMES [1x3(64)]排序表

FIELDNAME ACTIVATE

可更改

不活跃

IT_STATUS

REF_HANDLE 0000000000

REF_GUID 0050569F0EA61ED8A5BBE454127C3361

REF_KIND A

状态E0003

USER_STAT_PROC CRMORDER

激活X

过程

有什么不对的地方:

1,不应评论ls_status-user_stat_proc ='zpa_svo'

2,ls_field_names-fieldname ="状态"->我们需要fieldname =激活,而fieldname = status是不必要的。

3,[ls_input_fields-field_names = lt_field_name],我怀疑它是否正常运行。 您可以尝试直接插入ls_input_fields-field_names。

一周热门 更多>