
IW31 Movement Type Customization
July 17, 2012
WDA: How to programatically populate RadioButtonGroupByKey Without Creating Domain
July 4, 2013Pre-Requisties:
SMS service (Refer) .
2. Create static public Method ‘SEND_SMS’ with below parameter.
SMS service (Refer) .
1. Create a class
2. Create static public Method ‘SEND_SMS’ with below parameter.
METHOD send_sms. DATA: send_request TYPE REF TO cl_bcs. DATA: text TYPE bcsy_text. DATA: document TYPE REF TO cl_document_bcs. DATA: sender TYPE REF TO cl_cam_address_bcs. DATA: recipient TYPE REF TO if_recipient_bcs. DATA: bcs_exception TYPE REF TO cx_bcs. DATA: sent_to_all TYPE os_boolean. DATA: lp_sms_num TYPE ad_pagnmbr, lv_senderid TYPE adr6-smtp_addr. DATA: o_user TYPE REF TO cl_sapuser_bcs. TRY. * -------- create persistent send request ------------------------ send_request = cl_bcs=>create_persistent( ). * -------- create and set document ------------------------------- * create document from internal table with text APPEND i_sms_body TO text. document = cl_document_bcs=>create_document( i_type = 'RAW' i_text = text i_length = '12' i_subject = '' ). * add document to send request CALL METHOD send_request->set_document( document ). * --------- set sender ------------------------------------------- lv_senderid = i_sender_id. * TRY. sender = cl_cam_address_bcs=>create_internet_address( i_address_string = '[email protected]' i_address_name = lv_senderid "'SAP-MM' * i_incl_sapuser = ). * CATCH cx_address_bcs . * ENDTRY. CALL METHOD send_request->set_sender EXPORTING i_sender = sender. * --------- add recipient (e-mail address) ----------------------- lp_sms_num = i_sms_to. recipient = cl_cam_address_bcs=>create_sms_address( lp_sms_num ). * add recipient with its respective attributes to send request CALL METHOD send_request->add_recipient EXPORTING i_recipient = recipient i_express = 'X'. * set immediate processing, instead of queues send_request->set_send_immediately( 'X' ). * ---------- send document --------------------------------------- CALL METHOD send_request->send( EXPORTING i_with_error_screen = 'X' RECEIVING RESULT = sent_to_all ). IF sent_to_all = 'X'. ENDIF. COMMIT WORK. CATCH cx_bcs INTO bcs_exception. RAISE sms_sending_failed. EXIT. ENDTRY. ENDMETHOD.
3.Then Call the method wherever you want.
zcl_send=>send_sms( EXPORTING * i_sender_id = 'CHEMANOL' i_sms_body = i_sms_to = * EXCEPTIONS * sms_sending_failed = 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.