cancel
Showing results for 
Search instead for 
Did you mean: 

SOLMAN 7.2 ITSM - Send email to Support Team when changed?

tsenol
Active Participant
0 Kudos

Hello All,

We are using Solman 7.2 SP3 for ITSM. Our transaction is copy of SMIN.

I'm using ZMIN_STD_FIND_PARTNER_FDT for assigning to a group and sending an email.

In our scenario Support team can forward the message to any team without changing the status. I couldn't find any way to send an email to new group when just the support team is changed.

Can you give me some advice for that?

Regards

Accepted Solutions (1)

Accepted Solutions (1)

former_member196574
Participant
0 Kudos

Hello Ilke,

I had a similar problem, I needed to trigger an e-mail to the new responsible person everytime it changed. Bellow is the solution I found (sorry, don't have the original site anymore), with a few adjustments it should work for your requirement too. You will need help of an ABAP developer.

1. In transaction SE19 create an implementation for the BADi EVAL_STARTCOND_PPF, in filter values create an filter eg.: ZPARNER_CHANGED

2. In tab 'Interface' double click in the method 'EVALUATE_START_CONDITION' and create your code to compare support teams, bellow is an example, feel free to use it if you wish (this code may need some adjustments since it is suposed to trigger the action on responsible change):

data: lr_crm_order       type ref to cl_doc_crm_order,
          ls_object          type sibflporb,
          lv_partner_fct     type crmt_partner_fct,
          lv_item_guid       type crmt_object_guid,
          lv_guid            type crmt_object_guid,
          lv_guid_db         type crmt_object_guid,
          lt_partner_db      type crmt_partner_db_tab,
          ls_partner_wrk     type crmt_partner_external_wrk.


  ep_rc = 1.
  lr_crm_order  ?= io_context->appl.


  if lr_crm_order->get_crm_obj_kind( ) = 'A'.
    lv_guid  = lr_crm_order->get_crm_obj_guid( ).
  elseif lr_crm_order->get_crm_obj_kind( ) = 'B'.
    lv_item_guid  = lr_crm_order->get_crm_obj_guid( ).
    call function 'CRM_ORDERADM_I_READ_OW'
      exporting
        iv_guid        = lv_item_guid
      importing
        ev_header_guid = lv_guid
      exceptions
        item_not_found = 1
        others         = 2.
  endif.
  check not lv_guid is initial.
  case flt_val.
    when 'ZPARTNER_CHANGED'. "Change with your filter created in step 1
      check ii_container is not initial.
      call method ii_container->get_value
        exporting
          element_name = 'PARTNER_CHANGE' "Must be the same value of step 6
        importing
          data         = lv_partner_fct.
      check lv_partner_fct is not initial.
      select single guid from crmd_orderadm_h into lv_guid_db where  guid = lv_guid .
*        Read Main Partner from Buffer
      call function 'CRM_PARTNER_READ_OW'
        exporting
          iv_ref_guid          = lv_guid
          iv_ref_kind          = 'A'
          iv_partner_fct       = lv_partner_fct
          iv_mainpartner_only  = 'X'
        importing
          es_partner_wrk       = ls_partner_wrk
        exceptions
          error_occurred       = 1
          parameter_error      = 2
          entry_does_not_exist = 3
          others               = 4.
      if sy-subrc <> 0.
        "Issue with Buffer
      endif.
*        Read Partners from Database
      call function 'CRM_PARTNER_READ_DB'
        exporting
          iv_ref_guid                   = lv_guid
          iv_ref_kind                   = 'A'
        importing
          et_partner_db                 = lt_partner_db
        exceptions
          entry_does_not_exist          = 1
          record_not_found              = 2
          at_least_one_record_not_found = 3
          parameter_error               = 4
          others                        = 5.
      if sy-subrc <> 0.
        "Issue with Buffer
      endif.
** Compare Partners from Buffer and DB
      read table lt_partner_db with key partner_no = ls_partner_wrk-bp_partner_guid partner_fct = lv_partner_fct transporting no fields.
      if sy-subrc = 0.
        ep_rc = 4.
      else.
        ep_rc = 0.
      endif.
    when others.
  endcase.

3. In transaction SPPFCADM > Define Action Profile and Actions create a new action on your action profile. Example: ZMIN_MAIL_SUP_TEAM_CHANGED. Select the following options: Processing Time = 4 Processing When Saving Document / Processing Times Not Permitted = XXXXX No Restrictions / Schedule Automatically = X / Changeable in Dialog = X (leave the other options unflaged)/ Rule Type = Conditions Using business AddIn (BAdI) / Action Merging = Set Highest Number of Processed Actions;

4. In 'Processing Types' select the method you are using to send mail, in my case I am using the method SEND_MAIL_WITH_MAIL_FORMS;

5. In transaction SPPFCADM > Condition Configuration (Transportable Conditions). Import the action you just created, in tab 'Start Condition' select the field 'Start Condition' and press F4, select the filter you defined in step 1.

6. Click in the button 'Define Parameter', click in 'New' and create a new paramenter: Element = PARTNER_CHANGE / Name = PARTNER_CHANGE / Short Descript. = PARTNER_CHANGE / ABAP Dict. Data Type = CRMT_PARTNER_FCT. / Initial Value = SDCD0004.

Please, let me know if this helped you in any way.

Regards,

Fabio J. Gross

tsenol
Active Participant
0 Kudos

Hello Fabio,

Thank you very much! I'll try it with an abaper!

Have a great year!

Answers (1)

Answers (1)

former_member536542
Discoverer
0 Kudos

Hi,

We are using Solman 7.2 SP4 for ITSM. Our transaction is also copy of SMIN.

I'm using ZMIN_STD_FIND_PARTNER_FDT for assigning to a group and sending an email automatically but in my case its not working. I need to munually assign it to support team. appreciate any suggestions..

Preeti