Skip to Content
0
Former Member
Apr 21, 2014 at 02:11 PM

Address number change for partner in parties Involved

100 Views

Hi all,

I am trying to change the address for( ADDR_NR) for Partner . I am using the function module CRM_PARTNER_MAINTAIN_SINGLE_OW.

I am calling below code in ORDER_SAVE Badi. but still it is not changing the address number .

ls_partner1-ref_guid = ls_partner-ref_guid.

ls_partner1-ref_handle = ls_partner-ref_handle.

ls_partner1-ref_kind = ls_partner-ref_kind.

ls_partner1-partner_no = lv_partner.

ls_partner1-kind_of_entry = gc_c.

ls_partner1-partner_fct = 'Z00000001'.

ls_partner1-display_type = gc_bp.

ls_partner1-no_type = gc_bp.

ls_partner1-city = ex_addresses-city1.

ls_partner1-region = ex_addresses-region .

ls_partner1-country = ex_addresses-country .

ls_partner1-house_no = ex_addresses-streetcode.

ls_partner1-street = ex_addresses-street.

ls_partner1-postl_cod1 = ex_addresses-post_code1.

ls_partner1-district = ex_addresses-city2.

ls_partner1-addr_nr = lv_add_num1. " NEW ADDRESS NUMBER

ls_partner1-addr_origin = gc_b.

ls_partner1-addr_np = ''.

ls_partner1-addr_type = '1'.

ls_partner1-mainpartner = 'X'.

* ls_partner1-addr_nr = lv_add_num.

ls_input_field-fieldname = 'DISPLAY_TYPE'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'KIND_OF_ENTRY'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'NO_TYPE'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'PARTNER_FCT'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'PARTNER_NO'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'CITY'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'COUNTRY'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'REGION'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'HOUSE_NO'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'STREET'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'POSTL_COD1'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'ADDR_NR'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'DISTRICT'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'ADDR_ORIGIN'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'ADDR_NP'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'ADDR_TYPE'.

INSERT ls_input_field INTO TABLE lt_input_field_names.

ls_input_field-fieldname = 'STD_BP_ADDRESS'.

INSERT ls_input_field INTO TABLE lt_input_field_names.



CALL FUNCTION 'CRM_PARTNER_MAINTAIN_SINGLE_OW'

EXPORTING

iv_ref_guid = ls_partner-ref_guid

iv_ref_kind = 'A'

is_partner_com = ls_partner1

iv_populate_mode = ' '

* IV_CHECK_PARTNER_ONLY = ' '

* IS_PARTNER_CONTROL =

* IS_COM_STRUCTURE =

* IV_EXTERNAL_CALL = FALSE

* IMPORTING

* EV_CREATED_PARTNERSET_GUID =

CHANGING

ct_input_field_names = lt_input_field_names

* CT_PARTNER_ATTRIBUTES_COM =

EXCEPTIONS

error_occurred = 1

OTHERS = 2

.

IF sy-subrc <> 0.

* Implement suitable error handling here

ENDIF.



regards,

rama