使用cmd_ei_api => maintain_bapi更新信用卡详细信息

2020-09-16 21:00发布

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

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


专家您好,

我需要在BP tcode中修改付款明细。 要求是使用值" Z1"更新信用卡详细信息("付款卡锁")。

。 我正在使用方法cmd_ei_api => maintain_bapi进行此操作。 有趣的是,更新的信息未在BP中显示,而仅在某些与信用卡相关的表中显示。 即,更新的信息显示在表vcnum中,而不显示在CCARD中。 下面是我的代码,

        ls_company-task ='M'。
        ls_company-data_key-bukrs ='1000'。"公司代码
         APPEND ls_company至lt_company。



         ls_customers-header-object_instance-kunnr =  -kunnr。

         ls_customers-header-object_task ='M'。

         ls_customers-company_data-company = lt_company。
       ls_credit_card-task ='M'。

          ls_credit_card-data_key-CCINS =  -ccins。
          ls_credit_card-data_key-CCNUM =  -ccnum。
          ls_credit_card-data-datab =  -datab。
          ls_credit_card-data-datbi =  -datbi。
          ls_credit_card-data-CCLOCK ='Z1'。
          ls_credit_card-datax-cclock = abap_true。
          将ls_credit_card附加到lt_creditcard。

          ls_credit_card2-CURRENT_STATE ='X'。
          ls_credit_card2-creditcard = lt_creditcard。
          ls_customers-central_data-creditcard = t_credit_card。
          ls_customers-central_data-creditcard = ls_credit_card2。

          将ls_customers附加到lt_customers。
         l_es_master_data-customers = lt_customers。
         调用方法cmd_ei_api =>初始化。

         呼叫方法cmd_ei_api => maintain_bapi
         出口
         iv_test_run =空间
         is_master_data = l_es_master_data
         输入
           es_master_data_correct = ls_master_data_correct
           es_message_correct = ls_message_correct
           es_master_data_defective = ls_master_data_defective
           es_message_defective = ls_message_defective。




 

(1.4 kB)

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

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


专家您好,

我需要在BP tcode中修改付款明细。 要求是使用值" Z1"更新信用卡详细信息("付款卡锁")。

。 我正在使用方法cmd_ei_api => maintain_bapi进行此操作。 有趣的是,更新的信息未在BP中显示,而仅在某些与信用卡相关的表中显示。 即,更新的信息显示在表vcnum中,而不显示在CCARD中。 下面是我的代码,

        ls_company-task ='M'。
        ls_company-data_key-bukrs ='1000'。"公司代码
         APPEND ls_company至lt_company。



         ls_customers-header-object_instance-kunnr =  -kunnr。

         ls_customers-header-object_task ='M'。

         ls_customers-company_data-company = lt_company。
       ls_credit_card-task ='M'。

          ls_credit_card-data_key-CCINS =  -ccins。
          ls_credit_card-data_key-CCNUM =  -ccnum。
          ls_credit_card-data-datab =  -datab。
          ls_credit_card-data-datbi =  -datbi。
          ls_credit_card-data-CCLOCK ='Z1'。
          ls_credit_card-datax-cclock = abap_true。
          将ls_credit_card附加到lt_creditcard。

          ls_credit_card2-CURRENT_STATE ='X'。
          ls_credit_card2-creditcard = lt_creditcard。
          ls_customers-central_data-creditcard = t_credit_card。
          ls_customers-central_data-creditcard = ls_credit_card2。

          将ls_customers附加到lt_customers。
         l_es_master_data-customers = lt_customers。
         调用方法cmd_ei_api =>初始化。

         呼叫方法cmd_ei_api => maintain_bapi
         出口
         iv_test_run =空间
         is_master_data = l_es_master_data
         输入
           es_master_data_correct = ls_master_data_correct
           es_message_correct = ls_message_correct
           es_master_data_defective = ls_master_data_defective
           es_message_defective = ls_message_defective。




 

(1.4 kB)
付费偷看设置
发送
5条回答
悻福寶寶
1楼 · 2020-09-16 21:29.采纳回答

我调试了BP tcode,发现SAP正在使用cmd_ei_api => maintain。

我做了同样的事情,并且令人惊讶的是它起作用了:)但是不知道为什么cmd_ei_api => maintain _bapi无法起作用。 奇怪




打个大熊猫
2楼-- · 2020-09-16 21:18

有什么想法吗?

空代码
3楼-- · 2020-09-16 21:09
  • 请考虑删除" ls_customers-central_data-creditcard = t_credit_card"。 这似乎与我无关。
  • 您是否分析了ls_master_data_correct中返回的正确数据以及es_message_defective中的错误?
  • 还考虑使用经典的BAPI,例如BAPI_BUPA_PCARD_CHANGE(GETDETAILS,ADD和REMOVE)吗?

哎,真难
4楼-- · 2020-09-16 21:08

也许,他们使用读取的API(例如cmd_ei_api_extract),然后使用insert和update而不修改状态/标志,您是否调试了BP调用(我必须这样做 某些合作伙伴/通讯数据的供应商API)

亦是此间程序员
5楼-- · 2020-09-16 21:10

您好 Raymond Giuseppi

感谢您的回答。 但是在BAPI_BUPA_PCARD_CHANGE中没有要更改的字段CCLOCK(付款卡被拒的原因)。

一周热门 更多>