ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

使用BAPI_BUPA_CREATE_FROM_DATA创建BP主数据

2021-05-21 10:05:46  阅读:235  来源: 互联网

标签:BAPI RETURN TELEFONDATA KNA1 LT BP LS TYPE CREATE


*数据类型相关定义
  DATA:
    LV_PARTNERGROUP            TYPE BAPIBUS1006_HEAD-PARTN_GRP,   "分组
    LS_CENTRALDATA             TYPE BAPIBUS1006_CENTRAL,          "搜索词
    LS_CENTRALDATAORGANIZATION TYPE BAPIBUS1006_CENTRAL_ORGAN,    "名称信息
    LS_ADDRESSDATA             TYPE BAPIBUS1006_ADDRESS.          "地址

  DATA:
    LT_TELEFONDATA TYPE STANDARD TABLE OF BAPIADTEL,   "电话号码,移动电话
    LS_TELEFONDATA TYPE BAPIADTEL,
    LT_FAXDATA     TYPE STANDARD TABLE OF BAPIADFAX,   "传真2
    LS_FAXDATA     TYPE BAPIADFAX,
    LT_E_MAILDATA  TYPE STANDARD TABLE OF BAPIADSMTP,   "电子邮件地址2
    LS_E_MAILDATA  TYPE BAPIADSMTP,
    LT_RETURN      TYPE STANDARD TABLE OF BAPIRET2,    "返回信息
    LS_RETURN      TYPE BAPIRET2.

*&--分组
  "分组
  LV_PARTNERGROUP = IS_KNA1-BPGROUP.

*&--搜索词
  "搜索项1
  LS_CENTRALDATA-SEARCHTERM1 = IS_KNA1-SORT1.
  "搜索项2
  LS_CENTRALDATA-SEARCHTERM2 = IS_KNA1-SORT2.
  "称谓
  LS_CENTRALDATA-TITLE_KEY = IS_KNA1-TITLE.

*&--名称信息
  "名称1
  LS_CENTRALDATAORGANIZATION-NAME1 = IS_KNA1-NAME.
  "名称2
  LS_CENTRALDATAORGANIZATION-NAME2 = IS_KNA1-NAME1.
  "名称3
  LS_CENTRALDATAORGANIZATION-NAME3 = IS_KNA1-NAME2.

*&--标准地址
  " 邮政编码
  LS_ADDRESSDATA-POSTL_COD1 = IS_KNA1-POST_CODE1.
  " 城市
  LS_ADDRESSDATA-CITY = IS_KNA1-CITY1.
  " 国家
  LS_ADDRESSDATA-COUNTRY = IS_KNA1-COUNTRY.
  " 省份/地区
  LS_ADDRESSDATA-REGION  = IS_KNA1-REGION.
  " 街道1
  LS_ADDRESSDATA-STREET = IS_KNA1-STREET.
  "语言代码
  LS_ADDRESSDATA-LANGU      =  IS_KNA1-SPRAS.

*&--通信
  "电话号码
  LS_TELEFONDATA-COUNTRY = IS_KNA1-COUNTRY.
  LS_TELEFONDATA-STD_NO    = 'X'.
  LS_TELEFONDATA-HOME_FLAG = 'X'.
  LS_TELEFONDATA-R_3_USER  = '1'.
  LS_TELEFONDATA-TELEPHONE    =  IS_KNA1-TEL_NUMBER.
  APPEND  LS_TELEFONDATA  TO LT_TELEFONDATA.
  "移动电话
  LS_TELEFONDATA-COUNTRY = IS_KNA1-COUNTRY.
  LS_TELEFONDATA-R_3_USER  = '3'.
  LS_TELEFONDATA-TELEPHONE    =  IS_KNA1-MOB_NUMBER.
  APPEND  LS_TELEFONDATA  TO LT_TELEFONDATA.
  "传真
  LS_FAXDATA-FAX    =  IS_KNA1-FAX_NUMBER.
  APPEND  LS_FAXDATA  TO LT_FAXDATA.
  "电子邮件地址
  LS_E_MAILDATA-E_MAIL    =  IS_KNA1-SMTP_ADDR.
  APPEND  LS_E_MAILDATA  TO LT_E_MAILDATA.

*创建BP基本数据
  CALL FUNCTION 'BAPI_BUPA_CREATE_FROM_DATA'
    EXPORTING
      BUSINESSPARTNEREXTERN   = E_PARTNER
      PARTNERCATEGORY         = '2'                       "02:组织
      PARTNERGROUP            = LV_PARTNERGROUP
      CENTRALDATA             = LS_CENTRALDATA
      CENTRALDATAORGANIZATION = LS_CENTRALDATAORGANIZATION
      ADDRESSDATA             = LS_ADDRESSDATA
    IMPORTING
      BUSINESSPARTNER         = E_PARTNER
    TABLES
      TELEFONDATA             = LT_TELEFONDATA
      FAXDATA                 = LT_FAXDATA
      E_MAILDATA              = LT_E_MAILDATA
      RETURN                  = LT_RETURN.

  CLEAR LS_RETURN.
  LOOP AT LT_RETURN INTO LS_RETURN WHERE TYPE = 'E' OR TYPE = 'A'.
    EXIT.
  ENDLOOP.
  IF SY-SUBRC = 0.
    EV_MSGTYP = 'E'.
    EV_MSGTXT = TEXT-E43 && LS_RETURN-MESSAGE.
    SAVE_PARA_DATA  :  '0'       "0 : Inbound  1: outbound
                 EV_MSGTYP       "'S'
                 EV_MSGTXT       "'发送数据到ESB(SAP->ESB)'
                 ''
                 ''              "Batch
                 IS_KNA1-NAME    "凭证号码
                 ''.
    EXIT.

    CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
    RETURN.
  ELSE.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT = 'X'.
  ENDIF.

标签:BAPI,RETURN,TELEFONDATA,KNA1,LT,BP,LS,TYPE,CREATE
来源: https://blog.csdn.net/calla_wang/article/details/117108823

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有