REPORT ZBPADD2.
DATA:L_PARTN_CAT TYPE BAPIBUS1006_HEAD-PARTN_CAT,
LS_CENTRAL TYPE BAPIBUS1006_CENTRAL,
LS_PARTN_GROUP TYPE BAPIBUS1006_HEAD,
LS_CENTRAL_PERSON TYPE BAPIBUS1006_CENTRAL_PERSON,
LS_CENTRAL_ORGAN TYPE BAPIBUS1006_CENTRAL_ORGAN,
L_PARTN_GRP TYPE BAPIBUS1006_HEAD-PARTN_GRP,
LS_CENTRAL_GROUP TYPE BAPIBUS1006_CENTRAL_GROUP,
LS_ADDRESS TYPE BAPIBUS1006_ADDRESS,
L_BPARTNER TYPE BAPIBUS1006_HEAD-BPARTNER,
LT_BAPIADTEL LIKE TABLE OF BAPIADTEL WITH HEADER LINE,
LT_BAPIRET2 LIKE TABLE OF BAPIRET2 WITH HEADER LINE,
LT_GUID LIKE TABLE OF BUS000___I WITH HEADER LINE,
LT_CUSTO TYPE TABLE OF BUS000_EEW WITH HEADER LINE.
DATA:LS_BUT0BK TYPE BUT0BK,
LV_BKVID TYPE BUT0BK-BKVID,
LV_TYPE TYPE CHAR1,
L_STR TYPE STRING,
L_ROLE TYPE BAPIBUS1006_HEAD-PARTNERROLE VALUE 'FLCU00'.
DATA:LS_BANKDETAIL TYPE BAPIBUS1006_BANKDETAIL.
DATA:LS_BANKDETAIL_X TYPE BAPIBUS1006_BANKDETAIL_X.
DATA:LT_RETURN TYPE TABLE OF BAPIRET2.
DATA:LS_RETURN TYPE BAPIRET2.
L_PARTN_CAT = '2'.
LS_CENTRAL_ORGAN-NAME1 = 'aaa'.
LS_CENTRAL-SEARCHTERM1 = 'aaa'.
LS_CENTRAL_ORGAN-FOUNDATIONDATE = '20190220'.
LS_ADDRESS-COUNTRY = 'JP'.
LS_ADDRESS-CITY = 'TOKYO'.
LS_ADDRESS-POSTL_COD1 = '270-2261'.
LS_ADDRESS-STREET = 'aaa'.
L_PARTN_GRP = 'Z001'.
CLEAR LT_BAPIADTEL.
LT_BAPIADTEL-COUNTRY = 'JP'.
LT_BAPIADTEL-STD_NO = 'X'.
LT_BAPIADTEL-TELEPHONE = '010-84522355'.
APPEND LT_BAPIADTEL.
LS_ADDRESS-LANGU = '1'.
LS_ADDRESS-STREET = 'BACK STRET'.
CALL FUNCTION 'BAPI_BUPA_CREATE_FROM_DATA'
EXPORTING
* USINESSPARTNEREXTERN =
BUSINESSPARTNEREXTERN = '0000999966'
PARTNERCATEGORY = L_PARTN_CAT
PARTNERGROUP = L_PARTN_GRP
CENTRALDATA = LS_CENTRAL
CENTRALDATAPERSON = LS_CENTRAL_PERSON
CENTRALDATAORGANIZATION = LS_CENTRAL_ORGAN
CENTRALDATAGROUP = LS_CENTRAL_GROUP
ADDRESSDATA = LS_ADDRESS
* UPLICATE_MESSAGE_TYPE =
* CCEPT_ERROR = ' '
IMPORTING
BUSINESSPARTNER = L_BPARTNER
TABLES
TELEFONDATA = LT_BAPIADTEL
* AXDATA =
* ELETEXDATA =
* ELEXDATA =
* _MAILDATA =
* MLADDRESSDATA =
* 400ADDRESSDATA =
* FCADDRESSDATA =
* RTADDRESSDATA =
* SFADDRESSDATA =
* RIADDRESSDATA =
* AGADDRESSDATA =
* DDRESSNOTES =
* OMMUNICATIONNOTES =
* OMMUNICATIONUSAGE =
* ELEFONDATANONADDRESS =
* AXDATANONADDRESS =
* ELETEXDATANONADDRESS =
* ELEXDATANONADDRESS =
* _MAILDATANONADDRESS =
* MLADDRESSDATANONADDRESS =
* 400ADDRESSDATANONADDRESS =
* FCADDRESSDATANONADDRESS =
* RTADDRESSDATANONADDRESS =
* SFADDRESSDATANONADDRESS =
* RIADDRESSDATANONADDRESS =
* AGADDRESSDATANONADDRESS =
* OMMUNICATIONNOTESNONADDRESS =
* OMMUNICATIONUSAGENONADDRESS =
RETURN = LT_BAPIRET2
* DDRESSDUPLICATES =
.
IF LT_BAPIRET2[] IS INITIAL.
CALL FUNCTION 'BUP_MEMORY_BUT000_GET'
EXPORTING
IV_PARTNER = L_BPARTNER
IMPORTING
ES_BUT000 = LT_GUID
EXCEPTIONS
NOT_FOUND = 1
PARAMETER_ERROR = 2
BPEXT_NOT_UNIQUE = 3
OTHERS = 4.
READ TABLE LT_GUID INDEX 1.
LT_CUSTO-PARTNR_GUID = LT_GUID-PARTNER_GUID.
APPEND LT_CUSTO.
CALL FUNCTION 'BUPA_CENTRAL_CI_CHANGE'
EXPORTING
IS_BUS000_EEW = LT_CUSTO.
IF SY-SUBRC EQ 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ENDIF.
ELSE.
CLEAR L_STR.
LOOP AT LT_BAPIRET2 WHERE TYPE = 'E'.
IF L_STR IS INITIAL.
L_STR = LT_BAPIRET2-MESSAGE.
ELSE.
CONCATENATE L_STR LT_BAPIRET2-MESSAGE INTO L_STR.
ENDIF.
ENDLOOP.
ENDIF.
IF L_BPARTNER IS NOT INITIAL.
*->ADD ROLE
CALL FUNCTION 'BAPI_BUPA_ROLE_ADD'
EXPORTING
BUSINESSPARTNER = L_BPARTNER
BUSINESSPARTNERROLE = L_ROLE
TABLES
RETURN = LT_RETURN.
CALL FUNCTION 'BAPI_BUPA_ROLE_ADD'
EXPORTING
BUSINESSPARTNER = L_BPARTNER
BUSINESSPARTNERROLE = 'FLCU01'
TABLES
RETURN = LT_RETURN.
LS_BANKDETAIL-BANK_CTRY = 'JP'.
LS_BANKDETAIL-BANK_KEY = '0001027'.
LS_BANKDETAIL-BANK_ACCT = '100122'.
LS_BANKDETAIL-BANKACCOUNTNAME = 'aaaa'.
LS_BANKDETAIL-CTRL_KEY = '01'.
LS_BANKDETAIL-ACCOUNTHOLDER = 'aa'.
CALL FUNCTION 'BAPI_BUPA_BANKDETAIL_ADD'
EXPORTING
BUSINESSPARTNER = L_BPARTNER
BANKDETAILDATA = LS_BANKDETAIL
TABLES
RETURN = LT_RETURN.
READ TABLE LT_RETURN INTO LS_RETURN WITH KEY TYPE = 'E'.
IF SY-SUBRC NE 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ENDIF.
ENDIF.
CLEAR LT_RETURN[].
* CALL FUNCTION 'BAPI_BUPA_TAX_ADD'
* EXPORTING
* businesspartner = l_bpartner
* taxtype = 'CN0'
* taxnumber = ps_in-stceg
* TABLES
* return = lt_return.
* READ TABLE lt_return INTO ls_return WITH KEY type = 'E'.
* IF sy-subrc NE 0.
* CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
* EXPORTING
* wait = 'X'.
* ENDIF.
*
DATA: LS_MASTER_DATA TYPE CMDS_EI_MAIN,
LS_MASTER_DATA_CORRECT TYPE CMDS_EI_MAIN,
LS_MESSAGE_CORRECT TYPE CVIS_MESSAGE,
LS_MASTER_DATA_DEFECTIVE TYPE CMDS_EI_MAIN,
LS_MESSAGE_DEFECTIVE TYPE CVIS_MESSAGE.
DATA: LT_CUSTOMERS TYPE CMDS_EI_EXTERN_T,
LS_CUSTOMER TYPE CMDS_EI_EXTERN,
LS_SALES_DATA TYPE CMDS_EI_CMD_SALES,
LT_SALES TYPE CMDS_EI_SALES_T,
LS_SALES TYPE CMDS_EI_SALES,
LS_COMPANY TYPE CMDS_EI_COMPANY,
LT_FUNCTIONS TYPE CMDS_EI_FUNCTIONS_T,
LS_FUNCTION TYPE CMDS_EI_FUNCTIONS.
REFRESH : LT_FUNCTIONS, LT_SALES.
CLEAR: LS_CUSTOMER, LS_SALES_DATA.
LS_CUSTOMER-HEADER-OBJECT_INSTANCE-KUNNR = L_BPARTNER.
LS_CUSTOMER-HEADER-OBJECT_TASK = 'U'. " I/U/D
LS_SALES_DATA-CURRENT_STATE = SPACE.
LS_COMPANY-TASK = 'I'.
LS_COMPANY-DATA_KEY-BUKRS = '1000'.
LS_COMPANY-DATA-AKONT = '0001141000'.
LS_COMPANY-DATAX-AKONT = 'X'.
APPEND LS_COMPANY TO LS_CUSTOMER-COMPANY_DATA-COMPANY.
LS_SALES-TASK = 'I' .
LS_SALES-DATA_KEY-VKORG = '1000'.
LS_SALES-DATA_KEY-VTWEG = '10'.
LS_SALES-DATA_KEY-SPART = '10'.
LS_SALES-FUNCTIONS-CURRENT_STATE = SPACE.
LS_SALES-DATA-WAERS = 'JPY'.
LS_SALES-DATAX-WAERS = 'X'.
CLEAR LS_FUNCTION.
LS_FUNCTION-TASK = 'I'.
LS_FUNCTION-DATA_KEY-PARVW = 'AG'.
LS_FUNCTION-DATA-PARTNER = L_BPARTNER.
*ls_function-datax-partner = 'X'.
APPEND LS_FUNCTION TO LT_FUNCTIONS.
LS_FUNCTION-TASK = 'I'.
LS_FUNCTION-DATA_KEY-PARVW = 'RE'.
LS_FUNCTION-DATA-PARTNER = L_BPARTNER.
*ls_function-datax-partner = 'X'.
APPEND LS_FUNCTION TO LT_FUNCTIONS.
LS_FUNCTION-TASK = 'I'.
LS_FUNCTION-DATA_KEY-PARVW = 'RG'.
LS_FUNCTION-DATA-PARTNER = L_BPARTNER.
*ls_function-datax-partner = 'X'.
APPEND LS_FUNCTION TO LT_FUNCTIONS.
LS_FUNCTION-TASK = 'I'.
LS_FUNCTION-DATA_KEY-PARVW = 'WE'.
LS_FUNCTION-DATA-PARTNER = L_BPARTNER.
*ls_function-datax-partner = 'X'.
APPEND LS_FUNCTION TO LT_FUNCTIONS.
LS_SALES-FUNCTIONS-FUNCTIONS = LT_FUNCTIONS[].
APPEND LS_SALES TO LT_SALES.
LS_SALES_DATA-SALES[] = LT_SALES[].
LS_CUSTOMER-SALES_DATA = LS_SALES_DATA.
APPEND LS_CUSTOMER TO LT_CUSTOMERS.
LS_MASTER_DATA-CUSTOMERS = LT_CUSTOMERS[].
CMD_EI_API=>INITIALIZE( ).
CMD_EI_API=>LOCK( IV_KUNNR = LS_CUSTOMER-HEADER-OBJECT_INSTANCE-KUNNR ).
CALL METHOD CMD_EI_API=>MAINTAIN_BAPI
EXPORTING
IV_TEST_RUN = SPACE
IV_COLLECT_MESSAGES = 'X'
IS_MASTER_DATA = LS_MASTER_DATA
IMPORTING
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.
IF LS_MESSAGE_DEFECTIVE IS INITIAL.
BREAK-POINT.
COMMIT WORK.
ELSE.
BREAK-POINT.
ENDIF.
CMD_EI_API=>UNLOCK( IV_KUNNR = LS_CUSTOMER-HEADER-OBJECT_INSTANCE-KUNNR ).
2019年9月4日星期三
订阅:
博文评论 (Atom)
Customer Characteristic
Characteristic Descriptions are stored in the table - CABNT - Language - SPRAS - Characteristic description - ATBEZ Characteristic Values ...
-
REPORT ZBPADD2 . DATA : L_PARTN_CAT TYPE BAPIBUS1006_HEAD - PARTN_CAT , LS_CENTRAL TYPE BAPIBUS1006_CENTRAL , ...
-
HEADER: ADD Customer Fields to structure of IMKPF and BAPI_TE_XMKPF. Items: ADD Customer Fields to structure of IMSEG and BAPI_TE_XMSEG....
-
FUNCTION:SD_SALESDOCUMENT_CREATE Append fiels to Structure below. BAPE_VBAP BAPE_VBAPX VBAPKOZ VBAPKOZX No need to append fields to Struc...
没有评论:
发表评论