Skip to Content

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

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

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Best Answer
    Oct 23, 2017 at 05:37 PM

    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

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Nov 02, 2017 at 10:21 AM

    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

    Add comment
    10|10000 characters needed characters exceeded