Hi abap experts,
I am working on FI Module, Here my requirement is when ever we execute f.27 tcode ( customer periodic acct stmt) body of mail will be trigger to
customer language. i have created text in English(EN), FRENCH(FR),SPANISH(ES).
I have write logic to pic language as per below .
f27_1000_EN
F27_1000_ES
F27_1000_FR.. I have used fm read_text by passing language 'EN' or 'ES' or 'FR'.
but its dipaly english language only not dispaly in spanish and french.
This is my logic , pl check and correct me.
TYPES: BEGIN OF TP_ADRT,
ADDRNUMBER TYPE ADRT-ADDRNUMBER,
CONSNUMBER TYPE ADRT-CONSNUMBER,
LANGU TYPE ADRT-LANGU,
REMARK TYPE ADRT-REMARK,
END OF TP_ADRT.
TYPES:BEGIN OF TP_ADR6,
ADDRNUMBER TYPE ADR6-ADDRNUMBER ,
CONSNUMBER TYPE ADR6-CONSNUMBER,
SMTP_ADDR TYPE ADR6-SMTP_ADDR,
END OF TP_ADR6.
DATA:LT_ADR6 TYPE TABLE OF TP_ADR6,
LWA_ADR6 TYPE TP_ADR6.
DATA: LWA_ADRT TYPE TP_ADRT,
LT_ADRT TYPE TABLE OF TP_ADRT.
DATA:L_SMTP_ADDR TYPE AD_SMTPADR.
DATA : L_ADR6 TYPE ADR6,
L_FLAG TYPE CHAR1,
L_TEXT1 TYPE CHAR100.
SELECT ADDRNUMBER
CONSNUMBER
SMTP_ADDR FROM ADR6 INTO TABLE LT_ADR6
WHERE ADDRNUMBER = I_KNA1-ADRNR .
IF SY-SUBRC = 0.
SELECT ADDRNUMBER
CONSNUMBER
LANGU
REMARK FROM ADRT INTO TABLE LT_ADRT
WHERE ADDRNUMBER = I_KNA1-ADRNR
AND LANGU = I_KNA1-SPRAS.
ENDIF.
LOOP AT :LT_ADR6 INTO LWA_ADR6.
READ TABLE:LT_ADRT INTO LWA_ADRT WITH KEY ADDRNUMBER = LWA_ADR6-ADDRNUMBER
CONSNUMBER = LWA_ADR6-CONSNUMBER.
IF I_KNB1-BUKRS = LWA_ADRT-REMARK+4(4). "AND
* I_KNA1-SPRAS = LWA_ADRT-REMARK+9(1). "LANGU ."( commented this line)
CONCATENATE LWA_ADR6-SMTP_ADDR L_SMTP_ADDR INTO L_SMTP_ADDR SEPARATED BY ' '.
ENDIF.
ENDLOOP.
IF L_SMTP_ADDR IS NOT INITIAL.
L_FLAG = 'X'.
C_FINAA-INTAD = L_SMTP_ADDR.
C_FINAA-NACHA = 'I'.
DATA:LT_LINE LIKE TLINE OCCURS 0 WITH HEADER LINE,
L_TDNAME LIKE THEAD-TDNAME.
DATA BEGIN OF TEXTHEADER.
INCLUDE STRUCTURE THEAD.
DATA END OF TEXTHEADER.
DATA: CT_LINES TYPE SOLI_TAB.
C_FINAA-NAMEP = 'ZTEXT'.
L_TDNAME = C_FINAA-NAMEP .
CLEAR LT_LINE.
CLEAR TEXTHEADER.
CLEAR CT_LINES .
CALL FUNCTION 'READ_TEXT'
EXPORTING
CLIENT = SY-MANDT
ID = 'FIKO'
LANGUAGE = LWA_ADRT-REMARK+9(1) "I_KNA1-SPRAS
NAME = L_TDNAME
OBJECT = 'TEXT'
IMPORTING
HEADER = TEXTHEADER
TABLES
LINES = LT_LINE
EXCEPTIONS
ID = 1
LANGUAGE = 2
NAME = 3
NOT_FOUND = 4
OBJECT = 5
REFERENCE_CHECK = 6
WRONG_ACCESS_TO_ARCHIVE = 7
OTHERS = 8.
*IF SY-SUBRC <> 0.
** IMPLEMENT SUITABLE ERROR HANDLING HERE
*ENDIF.
CT_LINES[] = LT_LINE[].