Guys,
Its not working. I am using the below code:
V_PARTNER is old person responsible while X_PARTNER is the new one.
Do let me know if tyou find out any discrepancy in the code.
LS_PARTNER_COM-REF_PARTNER_HANDLE = '0000'.
LS_PARTNER_COM-REF_PARTNER_FCT = '00000014'.
LS_PARTNER_COM-REF_PARTNER_NO = V_PARTNER.
LS_PARTNER_COM-REF_NO_TYPE = 'BP'.
LS_PARTNER_COM-REF_DISPLAY_TYPE = 'BP'.
LS_PARTNER_COM-REF_GUID = ls_header_guid.
LS_PARTNER_COM-REF_KIND = 'A'.
LS_PARTNER_COM-KIND_OF_ENTRY = 'C'.
LS_PARTNER_COM-PARTNER_FCT = '00000014'.
LS_PARTNER_COM-PARTNER_NO = X_PARTNER.
LS_PARTNER_COM-DISPLAY_TYPE = 'BP'.
LS_PARTNER_COM-NO_TYPE = 'BP'.
APPEND LS_PARTNER_COM TO LT_PARTNER_COM.
WA_INPUT_FIELDS-REF_HANDLE = '0000000000'.
WA_INPUT_FIELDS-REF_GUID = ls_header_guid.
WA_INPUT_FIELDS-REF_KIND = 'A'.
WA_INPUT_FIELDS-OBJECTNAME = 'PARTNER'.
CONCATENATE LS_PARTNER_COM-REF_PARTNER_HANDLE LS_PARTNER_COM-REF_PARTNER_FCT LS_PARTNER_COM-REF_PARTNER_NO LS_PARTNER_COM-REF_NO_TYPE
LS_PARTNER_COM-REF_DISPLAY_TYPE INTO WA_INPUT_FIELDS-LOGICAL_KEY RESPECTING BLANKS.
WA_INPUT_FIELDS-FIELD_NAMES[] = lt_nametab[].
INSERT wa_input_fields INTO TABLE lt_input_fields.
CALL FUNCTION 'CRM_PARTNER_MAINTAIN_SINGLE_OW'
EXPORTING
iv_ref_guid = ls_header_guid
* iv_ref_kind = l_c_ref_kind
is_partner_com = ls_partner_com
CHANGING
ct_input_field_names = lt_input_fields
EXCEPTIONS
error_occurred = 1
OTHERS = 2.