‎2008 Feb 22 4:06 PM
Hi,
i written the below code for Address updation SAP R/3 using BAPI's:
Please look over it and tell if any more modifications i have to do.
I didn't get the updation when i am testing.
Please give me needful updation.
DATA: BEGIN OF I_BUT000 OCCURS 0,
PARTNER LIKE BUT000-PARTNER, " Business Partner Number
NAME_LAST LIKE BUT000-NAME_LAST, " Last Name of Business Partner
NAME_FIRST LIKE BUT000-NAME_FIRST. " First Name of Business Partner
DATA : END OF I_BUT000.
DATA : person type BAPIBUS1006_CENTRAL_PERSON.
DATA : persondata type BAPIBUS1006_CENTRAL_PERSON_X.
DATA : centraldataperson like ADDRESX .
DATA : Adddata type BAPIBUS1006_ADDRESS.
DATA : Adddatax type BAPIBUS1006_ADDRESS_X.
DATA : contact like ADDRESX.
DATA: BEGIN OF ADDRESS OCCURS 0.
INCLUDE STRUCTURE BAPIBUS1006_ADDRESS.
DATA: END OF ADDRESS.
DATA : X type I.
DATA: BEGIN OF ADTEL OCCURS 0.
INCLUDE STRUCTURE BAPIADTEL.
DATA: END OF ADTEL.
DATA: BEGIN OF ADSMTP OCCURS 0.
INCLUDE STRUCTURE BAPIADSMTP.
DATA: END OF ADSMTP.
DATA : wa_return like lt_return.
LOOP AT RELATIONSHIPS.
CALL FUNCTION 'BAPI_BUPA_CENTRAL_CHANGE'
EXPORTING
BUSINESSPARTNER = Businesspartner
CENTRALDATAPERSON = person
CENTRALDATAPERSON_X = persondata
TABLES
RETURN = lt_return.
CALL FUNCTION 'BAPI_BUPA_ADDRESS_CHANGE'
EXPORTING
BUSINESSPARTNER = Businesspartner
ADDRESSDATA = AddData
ADDRESSDATA_X = AddDatax
TABLES
BAPIADTEL = ADTEL
BAPIADSMTP = ADSMTP
BAPIADTEL_X = ADTELX
BAPIADSMT_X = ADSMTPX
RETURN = lt_return.
IF lt_return IS INITIAL .
MOVE-CORRESPONDING ADDRESS TO ADDRESX.
ADDRESX-CONTACT = RELATIONSHIPS .
SELECT PARTNER NAME_LAST NAME_FIRST
FROM BUT000 INTO TABLE I_BUT000
WHERE PARTNER EQ Relationships.
IF SY-SUBRC NE 0. CLEAR I_BUT000. ENDIF.
READ TABLE I_BUT000 INDEX 1.
ADDRESX-fname = I_BUT000-NAME_FIRST.
ADDRESX-lname = I_BUT000-NAME_LAST.
CONCATENATE I_BUT000-NAME_FIRST I_BUT000-NAME_LAST
INTO ADDRESX-C_O_NAME SEPARATED BY SPACE .
APPEND ADDRESX.
UPDATE BUT000 from table I_BUT000.
ENDIF.
LOOP AT ADTEL.
MOVE-CORRESPONDING ADTEL TO ADTELX.
ADTELX-CONTACT = RELATIONSHIPS.
APPEND ADTELX.
ENDLOOP.
LOOP AT ADSMTP.
MOVE-CORRESPONDING ADSMTP TO ADSMTPX.
ADSMTPX-CONTACT = RELATIONSHIPS.
APPEND ADSMTPX.
ENDLOOP.
ENDLOOP.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
*IMPORTING
RETURN = lt_return.
ENDFUNCTION.
Early reply is highely appriciable.
Regards,
Chow.
‎2008 Feb 22 4:24 PM
‎2008 Feb 22 4:34 PM
Hi Rob,
Even though i did i haven't get the data.
please give the detail solution.
I am in hurry on this.
early reply is highely appriciable.
Regards.
chow.