
IMG Menu | IMG >Cross-Application Components >General Application Functions >eDocument >General Settings >Extend Actions for eDocument Processes via Function Module |
define BGRFC
If you are unfamiliar with the BGRFC, please refer to https://support.sap.com/en/alm/sap-focused-run/expert-portal/integration-cloud-monitoring/bgrfc.html
configuration for Thailand eTax
FUNCTION zedoc_act_error_notification.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(IV_EDOC_GUID) TYPE EDOC_GUID
*" VALUE(IS_PROCESS_ATTR) TYPE EDOC_ATTR_MANAGED_BY_PROCMGR
*" EXCEPTIONS
*" AUTHORIZATION_ERROR
*" UNKNOWN_ERROR
*"----------------------------------------------------------------------
DATA:lt_main_text TYPE soli_tab.
DATA:ls_main_text LIKE LINE OF lt_main_text.
DATA lv_ext_number TYPE balhdr-extnumber .
DATA lt_messages TYPE STANDARD TABLE OF balm .
DATA: lv_msg TYPE string,
lo_edo_db TYPE REF TO if_edocument_db,
ls_edoc TYPE edocument.
DATA:lv_subject TYPE so_obj_des.
DATA:lv_subject_long TYPE string.
DATA:lv_sender TYPE adr6-smtp_addr.
DATA lt_recipients_to TYPE bcsy_smtpa .
DATA ls_recipients_to TYPE ad_smtpadr .
CHECK iv_edoc_guid IS NOT INITIAL .
CREATE OBJECT lo_edo_db TYPE cl_edocument_db.
ls_edoc = lo_edo_db->select_edocument( iv_edoc_guid = iv_edoc_guid ).
CLEAR lv_ext_number.
lv_ext_number = iv_edoc_guid .
"get error messages
CALL FUNCTION 'APPL_LOG_READ_DB'
EXPORTING
object = 'EDOCUMENT'
subobject = '*'
external_number = lv_ext_number
TABLES
messages = lt_messages.
SORT lt_messages BY mandant time_stmp DESCENDING .
DELETE ADJACENT DUPLICATES FROM lt_messages COMPARING mandant.
CLEAR lv_msg .
LOOP AT lt_messages INTO DATA(ls_message).
lv_msg = lv_msg && ls_message-msgv1 && ls_message-msgv2 && ls_message-msgv3 && ls_message-msgv4 .
CLEAR ls_message .
ENDLOOP.
"set main text
CLEAR ls_main_text.
ls_main_text-line = 'Document Source key: ' && ls_edoc-source_key.
APPEND ls_main_text TO lt_main_text.
CLEAR ls_main_text.
ls_main_text-line = 'Error messages:' .
APPEND ls_main_text TO lt_main_text.
CLEAR ls_main_text.
ls_main_text-line = lv_msg.
APPEND ls_main_text TO lt_main_text.
"send Email
lv_subject = 'Error notification test'.
lv_sender = 'your email address'.
ls_recipients_to = 'your email address'.
APPEND lS_recipients_to TO lt_recipients_to .
TRY.
CALL METHOD cl_edoc_util=>send_email
EXPORTING
iv_email_type = 'RAW'
iv_subject = lv_subject
it_content_text = lt_main_text
* it_content_hex =
* iv_content_length =
* iv_language = SY-LANGU
* iv_vsi_profile =
iv_sender = lv_sender
it_recipients_to = lt_recipients_to
* it_recipients_cc =
* iv_sensitivity =
* iv_importance =
* it_email_header =
* it_attachments =
iv_send_immediately = 'X'.
CATCH cx_edocument.
ENDTRY.
ENDFUNCTION.
Example Notification
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
9 | |
5 | |
4 | |
4 | |
2 | |
2 | |
2 | |
2 | |
2 |