ABAP Code - Email Recipients (Specific Format) - SAP BW Process Chain

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9
At a glance
Powered by AI
The document discusses sending emails to specific recipients in a formatted manner using an ABAP code and a process chain. The ABAP code retrieves data from a DSO and formats an email which is then sent to recipients maintained in a custom table using the SO_NEW_DOCUMENT_SEND_API1 function module.

The scenario is to send a specific formatted email using a process chain. Values are retrieved from a DSO and a formatted email is sent to specific email IDs.

The solution involves two steps - ICM and SAP Connect setup, and using an ABAP code. The ABAP code retrieves data, formats an email and calls a function module to send it. A process chain is also created to schedule sending emails.

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

Applies to:
This article is applicable to all the SAP BI consultants who are accustomed with SAP ABAP skills. For more information, visit the EDW homepage.

Summary
This document specifies the detailed understanding of sending specific format emails using process chain. Author: Suraj Tigga

Company: Capgemini Consulting India Pvt. Ltd. Created on: 8 July 2010

Author Bio
Suraj Tigga is a Senior SAP BI / ABAP consultant at Capgemini Consulting, India. Suraj joined Capgemini Consulting in 2008 and has worked on multiple SAP BI implementation and support projects.

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 1

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

Table of Contents
Scenario ....................................................................................................................................................... 3 Step-by-Step Solution ................................................................................................................................ 3
ABAP Code (Email Function Module) .......................................................................................................................... 3 Process Chain.............................................................................................................................................................. 7

Related Content ............................................................................................................................................ 8 Disclaimer and Liability Notice ....................................................................................................................... 9

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 2

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

Scenario
Send specific format email using process chain. Values are retrieved from DSO and then a formatted email to be sent to specific Email-IDs. Step-by-Step Solution Solution is explained in two steps:

ICM Setup and SAP Connect: Confirm the SMTP activation alongwith the setting in SCOT. ABAP Code (Email Function Module): Use of the FM SO_NEW_DOCUMENT_SEND_API1 to send email. Process Chain: Schedule the process chain to send email
ABAP Code (Email Function Module)

Maintain the Email IDs in custom table to whom the mail to be sent:

ICM setup and SAP Connect: Go to transaction SICF and verify the SMTP node is activated properly.

SAPConnect All of the SAPConnect monitoring and configuration can be reached from one transaction called SCOT.

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 3

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

ABAP Code: Step1: Retrieve the details from DSO PHSDRBSE, whose details have to be sent:

Email to be sent which contains details about the Chain ID , Date etc and also should be formatted as the requirement.
* Retrieve data from Rebate Selection Screen DSO
SELECT * FROM /bic/aphsdrbse00 INTO TABLE t_phsdrbse. IF sy-subrc EQ 0.

* Rebate BI-BO Validation


CONCATENATE text-001 '(' sy-datum+6(2) '-' sy-datum+4(2) '-' sydatum+0(4) ')' INTO t_mail_header-obj_descr. t_mail_content-line = text-012. APPEND t_mail_content. CONCATENATE ' ' ' APPEND t_mail_content. ' INTO t_mail_content-line.

* Validation successfully done for following:


t_mail_content-line = text-002. APPEND t_mail_content. CONCATENATE ' ' ' APPEND t_mail_content. ' INTO t_mail_content-line.

LOOP AT t_phsdrbse INTO wa_phsdrbse.

* Customer
IF wa_phsdrbse-customer IS NOT INITIAL. CONCATENATE 'Customer' ':' wa_phsdrbse-customer INTO APPEND t_mail_content. ENDIF. t_mail_content-line.

* Chain ID
IF wa_phsdrbse-/bic/zcustchid IS NOT INITIAL. CONCATENATE 'Chain ID' ':' wa_phsdrbse-/bic/zcustchid INTO t_mail_content-

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 4

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

line. APPEND t_mail_content. ENDIF.

* National Grp
IF wa_phsdrbse-/bic/zcnltgpc IS NOT INITIAL. CONCATENATE 'National Group' ':' wa_phsdrbse/bic/zcnltgpc INTO t_mail_content-line. APPEND t_mail_content. ENDIF.

* National Sub Grp


IF wa_phsdrbse-/bic/zcntlsgpc IS NOT INITIAL. CONCATENATE 'National Sub Group' ':' wa_phsdrbse/bic/zcntlsgpc INTO t_mail_content-line. APPEND t_mail_content. ENDIF.

* Rebate ID
CONCATENATE 'Rebate ID' ':' wa_phsdrbse-/bic/zreb_id INTO APPEND t_mail_content. t_mail_content-line.

* From Date
CONCATENATE 'Date From' ':' wa_phsdrbse-/bic/phrbfr INTO APPEND t_mail_content. t_mail_content-line.

* To date
CONCATENATE 'Date From' ':' wa_phsdrbse-/bic/phrbto INTO APPEND t_mail_content. ENDLOOP. CONCATENATE '******************************' ' APPEND t_mail_content. t_mail_content-line.

' INTO t_mail_content-line.

* Kindly execute either of them to validate:


CONCATENATE text-004 ' ' INTO t_mail_content-line. APPEND t_mail_content.

* Query : ZPHSDRBMP1_COMPARE_BI_BO
CONCATENATE text-005 ' ' INTO t_mail_content-line. APPEND t_mail_content.

* WAD: ZWT_PHSDRBMP1_COMPARE_BI_BO
CONCATENATE text-006 ' ' INTO t_mail_content-line. APPEND t_mail_content. CONCATENATE '******************************' ' APPEND t_mail_content. ' INTO t_mail_content-line.

* Web Template Execution


CONCATENATE text-007 ' ' INTO t_mail_content-line. APPEND t_mail_content.

* Portal Link
CONCATENATE 'http://essbwpapp01.mckesson.com:59000/irj/' ' ' INTO t_mail_content-line. APPEND t_mail_content. CONCATENATE ' ' ' APPEND t_mail_content. ' INTO t_mail_content-line.

CONCATENATE text-013 ' ' INTO t_mail_content-line. APPEND t_mail_content. CONCATENATE text-010 ' ' INTO t_mail_content-line.

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 5

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

APPEND t_mail_content. CONCATENATE text-011 ' ' INTO t_mail_content-line. APPEND t_mail_content. CONCATENATE ' ' ' APPEND t_mail_content. CONCATENATE ' ' ' APPEND t_mail_content. ' INTO t_mail_content-line.

' INTO t_mail_content-line.

CONCATENATE text-008 ' ' INTO t_mail_content-line. APPEND t_mail_content. CONCATENATE text-009 ' ' INTO t_mail_content-line. APPEND t_mail_content. ENDIF.

Step 1: Retrieve the email IDs as maintained in custom table YBBWT_REB_EMAIL


* Retreive Email Address
SELECT * FROM ybbwt_reb_email INTO TABLE t_ybbwt_reb_email. IF sy-subrc EQ 0. LOOP AT t_ybbwt_reb_email INTO wa_ybbwt_reb_email. t_receivers-com_type = 'INT'. t_receivers-rec_type = 'U'. t_receivers-receiver = wa_ybbwt_reb_email-address. APPEND t_receivers. ENDLOOP. ENDIF.

Step 2: Call the Function Module SO_NEW_DOCUMENT_SEND_API1 which sent the email
* Send email (Notify the Users about the successful validation) CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1' EXPORTING document_data = t_mail_header document_type = 'RAW' put_in_outbox = 'X' commit_work = 'X' TABLES object_content = t_mail_content receivers = t_receivers EXCEPTIONS too_many_receivers = 1 document_not_sent = 2 document_type_not_exist = 3 operation_no_authorization = 4 parameter_error = 5 x_error = 6 enqueue_error = 7 OTHERS = 8.

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 6

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

Step3: Check the email in Inbox


Process Chain

Create a process chain which contains the ABAP Code, which sents email to specific Email IDs:

Execute the Process Chain

Email Notification

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 7

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

Related Content
For more information, visit the EDW homepage.

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 8

ABAP Code - Email Recipients (Specific Format) SAP BW Process Chain

Disclaimer and Liability Notice


This document may discuss sample coding or other information that does not include SAP official interfaces and therefore is not supported by SAP. Changes made based on this information are not supported and can be overwritten during an upgrade. SAP will not be held liable for any damages caused by using or misusing the information, code or methods suggested in this document, and anyone using these methods does so at his/her own risk. SAP offers no guarantees and assumes no responsibility or liability of any type with respect to the content of this technical article or code sample, including any liability resulting from incompatibility between the content within this document and the materials and services offered by SAP. You agree that you will not hold, or seek to hold, SAP responsible or liable with respect to the content of this document.

SAP COMMUNITY NETWORK 2010 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com 9

You might also like