Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Testing problem

Former Member
0 Likes
375

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.

2 REPLIES 2
Read only

Former Member
0 Likes
351

Do the commit after each BAPI call.

Rob

Read only

0 Likes
351

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.