Wednesday, February 2, 2011

E-mail EFT Remittance using BTE

The objective of this development is to e-mail EFT Remittance advices to the specified (vendor) address.

SAP R/3 does not provide an automatic approach to send e-mails along with print option.

The activation and implementation of suitable BTE will fulfill the requirement. Though this is a specific scenario we can see how we can find and use a relevant BTE through this example.

How to find and use BTEs?

To find out what BTEs exist in the system for our application execute transaction BERP (Process Info system). In this transaction pass relevant values to attribute type - A (application component) and selection attributes FI-AP-AP-PT to get more relevant BTEs.

Upon execution of transaction the following BTEs were found for Payment transaction.

After reading the documentation we found that BTE 00002040 and 00002050 are suitable for our scenario. Search the source code for “OPEN_FI_PERFORM” to see if these are being called. We can find these BTEs being called in remittance advice include program RFFORI06 (Main program - DME program for bank transfer RFFOAU_T).

Create a new ZF_F110_PROCESS_00002040 function module in SE37 by copying the sample code from SAMPLE_PROCESS_00002040 and modify this FM according to your requirement.

Now we see how we configure the BTEs.

Go to FIBF transaction and do the following steps:

1) Define a customer product ZMAIL in FIBF – Menu Settings->Products->of a customer and remember to tick the check box which will activate the product. Save and go back to initial screen of BTE.

2) Create a new entry to link custom function module, custom product and process in Menu Settings->Process modules->of a customer. Depending on the requirement, Country and Application has to be specified.

Sample code of ZF_F110_PROCESS_00002040:

FUNCTION ZF_F110_PROCESS_00002040.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(I_REGUH) LIKE REGUH STRUCTURE REGUH
*" TABLES
*" T_FIMSG STRUCTURE FIMSG
*" CHANGING
*" VALUE(C_FINAA) LIKE FINAA STRUCTURE FINAA
*"----------------------------------------------------------------------
*  Read mail address of vendor from lfb1.Vendor no is available in REGUH payment data     structure
IF NOT i_reguh-lifnr IS INITIAL and
not i_reguh-zbukr is initial.
SELECT SINGLE intad
INTO c_finaa-intad
FROM lfb1
WHERE lifnr = i_reguh-lifnr
AND bukrs = i_reguh-zbukr.
IF sy-subrc = 0.
* choose message type 'I'nternet and fill email address
c_finaa-nacha = 'I'.
ENDIF.
ENDIF.
ENDFUNCTION.
To test this BTE create a new payment run through F110 transaction which will trigger the BTE. You can find the entries of send requests to vendors generated in SOST.

No comments:

Tutorials on SAP-ABAP

Adobe Interactive Forms Tutorials

Business Server Pages (BSP)

Userexits/BADIs

Web Dynpro for ABAP (Step by step procedure for web dynpro,Tutorials on Web Dynpro,)

ALV Tutorials

Blog Archive

goodsites