Hi!
I hope some of you might help me to find out this issue...
I made an e-mail sender, it is working properly.
I check the email in SOST, it seems OK.
But after the e-mail lands in my gmail account, the text (Apple, banana, cake) disappears from the e-mail body and it is turned into an attachment (Shopping list.HTM).
There's a new text in the email's body: "Create a standard text for the disclosures.". I found it comes from SODIS transaction, but I don't know does it cause the problem or not?
Here's the code, simply copy-paste it, it is working...
REPORT ztest_nyt.
* e-mail section
DATA: gv_mlrec TYPE so_obj_nam,
gv_sent_to_all TYPE os_boolean,
gv_email TYPE adr6-smtp_addr,
gv_subject TYPE so_obj_des,
gt_text TYPE bcsy_text,
go_send_request TYPE REF TO cl_bcs,
go_bcs_exception TYPE REF TO cx_bcs,
go_recipient TYPE REF TO if_recipient_bcs,
go_sender TYPE REF TO cl_sapuser_bcs,
go_document TYPE REF TO cl_document_bcs,
go_attachment TYPE REF TO cl_document_bcs.
DATA: lt_tline TYPE STANDARD TABLE OF tline,
ls_tline LIKE LINE OF lt_tline.
*
TRY.
"Create send request
go_send_request = cl_bcs=>create_persistent( ).
"Email FROM...
go_sender = cl_sapuser_bcs=>create( sy-uname ).
"Add sender to send request
CALL METHOD go_send_request->set_sender
EXPORTING
i_sender = go_sender.
"Email TO...
gv_email = 'xyz@gmail.com'.
go_recipient = cl_cam_address_bcs=>create_internet_address( gv_email ).
"Add recipient to send request
CALL METHOD go_send_request->add_recipient
EXPORTING
i_recipient = go_recipient
i_express = 'X'.
"Email BODY
MOVE 'Apple' TO ls_tline-tdline. APPEND ls_tline TO lt_tline.
MOVE 'Banana' TO ls_tline-tdline. APPEND ls_tline TO lt_tline.
MOVE 'Cake' TO ls_tline-tdline. APPEND ls_tline TO lt_tline.
REFRESH: gt_text.
LOOP AT lt_tline INTO ls_tline.
AT FIRST.
APPEND '<html>' TO gt_text.
ENDAT.
CONCATENATE ls_tline-tdline '<br>' INTO ls_tline-tdline.
APPEND ls_tline-tdline TO gt_text.
AT LAST.
APPEND '</html>' TO gt_text.
ENDAT.
ENDLOOP.
MOVE 'Shopping list' TO gv_subject.
go_document = cl_document_bcs=>create_document(
i_type = 'HTM'
i_text = gt_text
i_subject = gv_subject ).
"Add document to send request
CALL METHOD go_send_request->set_document( go_document ).
"Send email
CALL METHOD go_send_request->send(
EXPORTING
i_with_error_screen = 'X'
RECEIVING
result = gv_sent_to_all ).
IF gv_sent_to_all = 'X'.
COMMIT WORK.
ENDIF.
"Exception handling
CATCH cx_bcs INTO go_bcs_exception.
WRITE:
'Error!',
'Error type:',
go_bcs_exception->error_type.
ENDTRY.
I would like to keep my text in my e-mail body.
Thank you
Tamas