on 08-26-2008 6:58 AM
Hi all,
I have a requirement to change message processor of a support desk message, anyone knows what's the FM name to do the same ?.
Thanks and regards
Jijo
hi
Modifying the Support Team
SELECT SINGLE * FROM crmd_partner INTO wa_crmd_partner
WHERE guid = l_lguid AND
partner_fct = 'SLFN0003'.
wa_crmd_partner-partner_no = l_st_guid.
MODIFY crmd_partner from wa_crmd_partner.
UPDATE crmd_order_index SET partner_no = l_sid
WHERE header = iv_guid AND
pft_16 = 'X'.
************************************************************************************************
SELECT SINGLE * FROM crmd_partner into wa1_crmd_partner
WHERE guid = l_lguid AND
partner_fct = 'SLFN0003'.
Get Address number corresponding to Partner GUID
if l_st_guid is not initial.
CALL FUNCTION 'BUPA_ADDRESSES_READ'
EXPORTING
IV_PARTNER_GUID = l_st_guid
IMPORTING
EV_STANDARD_ADDRNUMBER = lv_addrnum.
IF SY-SUBRC <> 0."#EC *
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
wa1_crmd_partner-partner_no = l_st_guid.
wa1_crmd_partner-ADDR_NR = lv_addrnum. " Address number
wa1_crmd_partner-ADDR_TYPE = '1'. " Address type ( 1- Orgnaisation Address )
MODIFY crmd_partner from wa1_crmd_partner.
endif.
**********************************************************************************************
Deleting Msg.Processor Initially
DELETE FROM crmd_partner
WHERE guid = l_lguid AND
partner_fct = 'SLFN0004'.
DELETE from crmd_order_index WHERE header = iv_guid AND
pft_8 = 'X'.
************************************************************************************
regards,
sabari
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Elaborate your requirement, it is suggested that not to get into development until you are sure that its not available.
Feel free to revert back.
--Ragu
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ragu,
My requirement is to modify the Message Processor ( partner) of a support desk message.
We can directly change it from CRM_dno_monitor but we are implementing portal integration and i have to
do some bapi for the sam.
I have put a break point in CRM_DNO_MONITOR and called CRM_ORDER_MAINTAIN with the same parameters, even it's not working.
Please find the below code .
DATA : LV_GUID TYPE CRMT_OBJECT_GUID.
LV_GUID = '7B8E9648A4C6540CE1000000C0A8643D'.
Data : lit_partner TYPE CRMT_PARTNER_COMT,
wa_partner LIKE LINE OF lit_partner,
ls_input_field TYPE crmt_input_field,
ls_input_field_names TYPE crmt_input_field_names,
lt_input_field_names TYPE crmt_input_field_names_tab,
lt_input_fields TYPE crmt_input_field_tab.
data: it_guid_h type CRMT_OBJECT_GUID_TAB ,
wa_guid_h type CRMT_OBJECT_GUID.
data it_partner type CRMT_PARTNER_EXTERNAL_WRKT.
wa_guid_h = LV_GUID.
append wa_guid_h to it_guid_h.
MOVE: Lv_guid TO wa_partner-ref_guid,
'A' TO wa_partner-ref_kind,
'0000' TO wa_partner-ref_partner_handle,
'SDSM0004' TO wa_partner-partner_fct,
'1034' TO wa_partner-partner_no,
'SDSM0004' TO wa_partner-ref_partner_fct,
'1034' TO wa_partner-ref_partner_no,
'BP' TO wa_partner-no_type,
'BP' TO wa_partner-display_type,
'X' TO wa_partner-mainpartner,
'C' to wa_partner-kind_of_entry.
APPEND wa_partner TO lit_partner.
ls_input_field-ref_guid = Lv_guid.
ls_input_field-ref_kind = 'A'.
ls_input_field-objectname = 'PARTNER'.
DATA l_logkey type crmt_logical_key.
data : it_fname type CRMT_INPUT_FIELD_NAMES_TAB,
wa_fname type CRMT_INPUT_FIELD_NAMES.
wa_fname-FIELDNAME = 'DISPLAY_TYPE'.
append wa_fname to it_fname.
wa_fname-FIELDNAME = 'NO_TYPE'.
append wa_fname to it_fname.
wa_fname-FIELDNAME = 'PARTNER_NO'.
append wa_fname to it_fname.
l_logkey = lv_guid.
concatenate wa_partner-partner_fct
wa_partner-partner_no wa_partner-no_type wa_partner-display_type into ls_input_field-logical_key.
ls_input_field-field_names = it_fname.
INSERT ls_input_field INTO TABLE lt_input_fields.
CALL FUNCTION 'DIALOG_SET_NO_DIALOG'
.
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
EXPORTING
IT_PARTNER = Lit_partner
CHANGING
CT_INPUT_FIELDS = lt_input_fields
EXCEPTIONS
ERROR_OCCURRED = 1
DOCUMENT_LOCKED = 2
NO_CHANGE_ALLOWED = 3
NO_AUTHORITY = 4
OTHERS = 5.
DATA gt_saved_objects TYPE crmt_return_objects.
DATA : IT_sAVE TYPE CRMT_OBJECT_GUID_TAB,
WA_SAVE TYPE CRMT_OBJECT_GUID.
WA_sAVE = LV_GUID.
APPEND WA_SAVE TO IT_SAVE.
data it_nosave type CRMT_OBJECT_GUID_TAB.
CALL FUNCTION 'CRM_ORDER_SAVE'
EXPORTING
IT_OBJECTS_TO_SAVE = IT_SAVE
* IV_UPDATE_TASK_LOCAL = ''
* IV_SAVE_FRAME_LOG = FALSE
* IV_NO_BDOC_SEND = FALSE
IMPORTING
ET_SAVED_OBJECTS = gt_saved_objects
* ET_EXCEPTION =
ET_OBJECTS_NOT_SAVED = it_nosave
* CHANGING
* CV_LOG_HANDLE =
EXCEPTIONS
DOCUMENT_NOT_SAVED = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
commit work.
The contents of table gt_saved_objects and it_nosave are always initial. I cant' find out the problem.
Anyone can help me?
Thanks and regards
Jijo
Hang on.... How can you say this feature "Changing Message Processor". Please elaborate your requirement first. you just keep saying "Changing Mesage processor", What do you mean by this?
Instead of just pasting your code here.
Please explain your requirement, there might be some work around.
Feel free to revert back.
--Ragu
User | Count |
---|---|
87 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.