Dear Expert,
I used QCE1_CONVERT to get application server pdf file which was set password ,but it can not work well, this pdf file can not open well ,after i sent mail ,would you please give advice?
FORM SEND_MAIL_latest .
data: itcpo like itcpo,
tab_lines like sy-tabix.
*Variables for EMAIL functionality
data: maildata like sodocchgi1.
data: mailpack like sopcklsti1 occurs 2 with header line.
data: mailhead like solisti1 occurs 1 with header line.
data: mailbin like solisti1 occurs 10 with header line.
data: mailtxt like solisti1 occurs 10 with header line.
data: mailrec like somlrec90 occurs 0 with header line.
data: solisti1 like solisti1 occurs 0 with header line.
perform send_form_via_email.
endform. "SEND_MAIL_latest
************************************************************************
* FORM SEND_FORM_VIA_EMAIL *
************************************************************************
form send_form_via_email.
clear: maildata, mailtxt, mailbin, mailpack, mailhead, mailrec.
refresh: mailtxt, mailbin, mailpack, mailhead, mailrec.
maildata-obj_name = 'SRQ '.
*Mail Subject
maildata-obj_descr = 'Questionnaires'.
*Mail Contents
mailtxt-line = 'Questionnaires'.
append mailtxt.
*Prepare Packing List
perform prepare_packing_list.
*Set recipient - email address here!!!
mailrec-receiver = '550252982@gmail.com'.
mailrec-rec_type = 'U'.
append mailrec.
*Sending the document
call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = maildata
put_in_outbox = 'x'
TABLES
packing_list = mailpack
object_header = mailhead
contents_bin = mailbin[]
contents_txt = mailtxt
receivers = mailrec
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
operation_no_authorization = 4
others = 99.
COMMIT WORK.
C_DEV = SY-SYSID.
IF SY-SYSID = C_DEV.
WAIT UP TO 5 SECONDS.
* SUBMIT RSCONN01 WITH MODE = 'INT'
* WITH OUTPUT = 'X'
* AND RETURN.
SUBMIT RSCONN01 WITH MODE = 'INT'
* WITH OUTPUT = 'X'
AND RETURN.
ENDIF.
endform. "SEND_MAIL_latest
************************************************************************• Form PREPARE_PACKING_LIST
************************************************************************
form prepare_packing_list.
DATA: BEGIN OF INT_SRQ OCCURS 0,
FIELD(255),
END OF INT_SRQ.
DATA: WS_FILE1(100) VALUE 'D:\Payslip\installed\00000103.PDF'.
OPEN DATASET WS_FILE1 FOR INPUT IN BINARY MODE.
DO.
READ DATASET WS_FILE1 INTO INT_SRQ-FIELD.
IF SY-SUBRC EQ 0.
APPEND INT_SRQ.
ELSE.
EXIT.
ENDIF.
ENDDO.
close dataset ws_file1.
clear: mailpack, mailbin, mailhead.
refresh: mailpack, mailbin, mailhead.
describe table mailtxt lines tab_lines.
read table mailtxt index tab_lines.
maildata-doc_size = ( tab_lines - 1 ) * 255 + strlen( mailtxt ).
* Creation of the entry for the compressed document
clear mailpack-transf_bin.
mailpack-head_start = 1.
mailpack-head_num = 0.
mailpack-body_start = 1.
mailpack-body_num = tab_lines.
mailpack-doc_type = 'RAW'.
append mailpack.
CALL FUNCTION 'QCE1_CONVERT'
TABLES
T_SOURCE_TAB = INT_SRQ
T_TARGET_TAB = mailbin[]
EXCEPTIONS
convert_not_possible = 1
OTHERS = 2.
append mailbin.
*CLEAR:TAB_LINES.
describe table mailbin lines tab_lines.
READ TABLE MAILBIN INDEX TAB_LINES.
mailpack-transf_bin = 'X'.
mailpack-head_start = 1.
mailpack-head_num = 0.
mailpack-body_start = 1.
mailpack-body_num = tab_lines.
mailpack-doc_type = 'PDF'.
mailpack-obj_name = 'TEST1'.
mailpack-obj_descr = '103'.
mailpack-doc_size = tab_lines * 255.
mailpack-obj_langu = 'E'.
append mailpack.
IF SY-SUBRC EQ 0.
MESSAGE I000(2) WITH 'FILE READ IS OKAY'.
ENDIF.
endform. "prepare_packing_list