BAPI_PROJECT_MAINTAIN更新利润中心

2020-08-20 00:12发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我需要使用BAPI BA...

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

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


嗨,

我需要使用BAPI BAPI_PROJECT_MAINTAIN更新WBS元素的利润中心。

我在输入中尝试了多种组合,但无法更新利润中心,以下是我的代码段。

请问您能帮我什么地方,我到底哪里出问题了?

WA_WBS_ELEMENT_TABLE-WBS_ELEMENT ='PRJ00.01'。 " WBS元素名称
WA_WBS_ELEMENT_TABLE-PROFIT_CTR ='AB114422'。
WA_WBS_ELEMENT_TABLE-PROJECT_DEFINITION ='PRJ001.11'。"项目名称

将WA_WBS_ELEMENT_TABLE追加到IT_WBS_ELEMENT_TABLE。

WA_WBS_ELEMENT_TABLE_UPDATE-PROFIT_CTR ='X'。

APPEND WA_WBS_ELEMENT_TABLE_UPDATE到IT_WBS_ELEMENT_TABLE_UPDATE。

WA_METHOD_PROJECT-OBJECTTYPE ='WBS-ELEMENT'。
WA_METHOD_PROJECT-METHOD ='UPDATE'。 > WA_METHOD_PROJECT-REFNUMBER ='000001'。

将WA_METHOD_PROJECT附加到IT_METHOD_PROJECT。

IT_PROJECT_DEFINITION-PROJECT_DEFINITION ='PRJ001.11'。
IT_PROJECT_DEFINITION-PROFIT_CTR = WA_FINAL-PRCTR。 br>
调用功能'BAPI_PROJECT_MAINTAIN'

出口
I_PROJECT_DEFINITION = IT_PROJECT_DEFINITION
I_PROJECT_DEFINITION_UPD = IT_PROJECT_DEFINITION_UPD

TABLES
I_METHOD_PROJECT = IT_METHOD_PROJECT
I_WBS_ELEMENT_TABLE_UPDATE = IT_WBS_ELEMENT_TABLE_UPDATE
I_WBS_ELEMENT_TABLE = IT_WBS_ELEMENT_TABLE

E_MESSAGE_TABLE = IT_MESSAGE_TABLE

5条回答
黑丝骑士
2020-08-20 00:49

您需要在参数I_METHOD_PROJECT中输入两个条目,一个用于更新,另一个用于保存更改。 还建议对对象和操作使用类型池CO1中的常量而不是硬编码的文字。

以下是对我有用的一段代码:

 DATA:project_definition  TYPE bapi_project_definition,
       project_definition_upd TYPE bapi_project_definition_up,
       method_project_table bapi_method_project的类型标准表,
       method_project TYPE bapi_method_project,
       wbs_element_table bapi_wbs_element的类型标准表,
       wbs_element TYPE bapi_wbs_element,
       wbs_element_table_update bapi_wbs_element_update的类型标准表,
       wbs_element_update TYPE bapi_wbs_element_update,
       消息TYPE bapiret1,
       method_messages bapi_meth_message的类型标准表。

 * WBS的操作"更新"
 method_project-objecttype = co1_type-wbs_element。
 method_project-method = co1_meth-update。
 method_project-objectkey ='WBS_NAME'。
 method_project-refnumber = 1。
 INSERT method_project INTO TABLE method_project_table。

 *为项目采取行动"保存"
 清除method_project。
 method_project-method = co1_meth-save。
 INSERT method_project INTO TABLE method_project_table。

 *要更新的WBS元素和字段
 wbs_element-wbs_element ='WBS_NAME'。
 wbs_element-profit_ctr ='NEW_PRCTR'。
 插入wbs_element到表wbs_element_table中。

 *标记字段以进行更新
 wbs_element_update-profit_ctr = abap_true。
 INSERT wbs_element_update插入表wbs_element_table_update。

 *项目定义
 project_definition-project_definition ='PROJECT_NAME'。

 通话功能'BAPI_PROJECT_MAINTAIN'
   出口
     i_project_definition = project_definition
     i_project_definition_upd = project_definition_upd
   输入
     返回=消息
   桌子
     i_method_project = method_project_table
     i_wbs_element_table_update = wbs_element_table_update
     i_wbs_element_table = wbs_element_table
     e_message_table = method_messages。
  

一周热门 更多>