Problem in opening up pdf attachment
Hi experts,
I have a scenario where I am sending a pdf attachment with a mail.The pdf is generated from a smartform by the function module 'CONVERT_OTF_TO_PDF' . The attachment is coming with the mail but on trying to open the attachment an error is being shown as given below:-
Adobe Reader could not open <doc1.pdf> because it is either not a supported file type or the file has been damaged (for eg:it was sent as an email attachment and wasn't correctly decoded.)
Now I have done it in one of my development servers .It is working fine .But when I have tried to create it in the other development server this error is being thrown . Please suggest some solution. this is very urgent.
Thanks & Regards,
Samrat Dutta
Hi Raja Sekhar,
This is the code that I am using...
FUNCTION ZSENDPDF_BASSO.
""Local Interface:
*" IMPORTING
*" VALUE(OBJECTGUID) TYPE DNOS_BOR_KEY-GUID OPTIONAL
*" VALUE(PARTNERNO) TYPE CRMT_PARTNER_NO OPTIONAL
tables: crmd_orderadm_i,crmd_schedlin,crmd_order_index.
data: i_lines TYPE tline OCCURS 0 WITH HEADER LINE.
DATA: tb_pdf LIKE tline OCCURS 0.
DATA: tb_pdf255 TYPE so_text255 OCCURS 0.
DATA: lw_subject TYPE so_obj_des.
DATA: lwa_body TYPE solisti1.
DATA: ltb_body TYPE TABLE OF solisti1.
DATA: lw_filename TYPE char100.
DATA: ltb_recipients TYPE TABLE OF somlreci1.
DATA: lwa_recipients TYPE somlreci1.
data addrnumber type but000-addrcomm.
data email type adr6-smtp_addr.
data email1 type SOMLRECI1-RECEIVER.
data p_guid type CRMT_OBJECT_GUID.
p_guid = OBJECTGUID.
*parameters: p_guid type crmd_order_index-guid.
data:
fm_name TYPE RS38L_FNAM, "Smart Forms: FM Name
*sf_name TYPE TDSFNAME
*value 'YOUR_FORM_NAME', "Smart Forms: Form Name
P_OUTPUT_OPTIONS TYPE SSFCOMPOP,
P_JOB_OUTPUT_INFO TYPE SSFCRESCL,
P_CONTROL_PARAMETERS TYPE SSFCTRLOP,
P_LANGUAGE TYPE SFLANGU value 'E',
P_E_DEVTYPE TYPE RSPOPTYPE.
data:
P_BIN_FILESIZE TYPE I,
P_BIN_FILE TYPE XSTRING,
P_OTF type table of ITCOO,
P_DOCS type table of DOCS,
P_LINES type table of TLINE,
name type string,
path type string,
fullpath type string,
filter type string,
guiobj type ref to cl_gui_frontend_services,
uact type i,
filename(128).
GET SMARTFORM FUNCTION MODULE NAME ---
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZBASO_CREATION'
IMPORTING
FM_NAME = fm_name
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
*OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'SSF_GET_DEVICE_TYPE'
EXPORTING
I_LANGUAGE = P_LANGUAGE
I_APPLICATION = 'SAPDEFAULT'
IMPORTING
E_DEVTYPE = P_E_DEVTYPE.
P_OUTPUT_OPTIONS-XSFCMODE = 'X'.
P_OUTPUT_OPTIONS-XSF = SPACE.
P_OUTPUT_OPTIONS-XDFCMODE = 'X'.
P_OUTPUT_OPTIONS-XDF = SPACE.
P_OUTPUT_OPTIONS-TDPRINTER = P_E_DEVTYPE.
P_CONTROL_PARAMETERS-NO_DIALOG = 'X'.
P_CONTROL_PARAMETERS-GETOTF = 'X'.
****...................................PRINTING.........................
*CALL FUNCTION fm_name
*EXPORTING
*CONTROL_PARAMETERS = P_CONTROL_PARAMETERS
*OUTPUT_OPTIONS = P_OUTPUT_OPTIONS
(....) <--- your form import parameters
*IMPORTING
*JOB_OUTPUT_INFO = P_JOB_OUTPUT_INFO.
*IF SY-SUBRC <> 0.
*MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
*ENDIF.
CALL FUNCTION fm_name "'/1BCDWB/SF00000019'
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = P_CONTROL_PARAMETERS
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS = P_OUTPUT_OPTIONS
USER_SETTINGS = 'X'
*I_GUID = '4344382C5A9B77438A20F480E833CDF8'
I_GUID = p_guid
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = P_JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS =
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
P_OTF[] = P_JOB_OUTPUT_INFO-OTFDATA.
****...................................CONVERT TO PDF...............
CALL FUNCTION 'CONVERT_OTF_2_PDF'
IMPORTING
BIN_FILESIZE = P_BIN_FILESIZE
TABLES
OTF = P_OTF
DOCTAB_ARCHIVE = P_DOCS
LINES = P_LINES
EXCEPTIONS
ERR_CONV_NOT_POSSIBLE = 1
ERR_OTF_MC_NOENDMARKER = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Change the PDF format from 132 to 255.
CALL FUNCTION 'SX_TABLE_LINE_WIDTH_CHANGE'
EXPORTING
line_width_src =
line_width_dst =
transfer_bin = 'X'
TABLES
content_in = P_LINES
content_out = tb_pdf255
EXCEPTIONS
err_line_width_src_too_long = 1
err_line_width_dst_too_long = 2
err_conv_failed = 3
OTHERS = 4
lw_subject = '<Subject>'.
lwa_body-line = 'This is the email body - Line1'.
APPEND lwa_body TO ltb_body.
lwa_body-line = 'This is the email body - Line2'.
APPEND lwa_body TO ltb_body.
*lwa_body-line = 'This is the email body - Line3'.
*APPEND lwa_body TO ltb_body.
*lwa_body-line = 'This is the email body - Line4'.
*APPEND lwa_body TO ltb_body.
lw_filename = '<File Name>'.
*RECIPIENTS
lwa_recipients-rec_type = 'B'.
lwa_recipients-express = 'X'.
lwa_recipients-receiver = 'SAPUSER'.
lwa_recipients-copy = ''.
APPEND lwa_recipients TO ltb_recipients.
*RECIPIENTS
*lwa_recipients-rec_type = 'U'.
*lwa_recipients-express = 'X'.
*lwa_recipients-receiver = '<email-id1>'.
*lwa_recipients-copy = ''.
*APPEND lwa_recipients TO ltb_recipients.
RECIPIENTS
lwa_recipients-rec_type = 'U'.
lwa_recipients-express = 'X'.
lwa_recipients-receiver = <email-id2>.
lwa_recipients-copy = ''.
APPEND lwa_recipients TO ltb_recipients.
Sends the PDF by email.
PERFORM f_send_pdf_by_email
TABLES
tb_pdf255
ltb_body
ltb_recipients
USING
lw_subject
lw_filename.
ENDFUNCTION.
FORM f_send_pdf_by_email
TABLES
ptb_pdf255 STRUCTURE solisti1
ptb_body STRUCTURE solisti1
ptb_recipients STRUCTURE somlreci1
USING
pw_subject TYPE so_obj_des
pw_filename TYPE char100.
*-DATA DECLARATION----
Variables y tablas internas.
DATA: BEGIN OF ltb_objbin OCCURS 0.
INCLUDE STRUCTURE solisti1.
DATA: END OF ltb_objbin.
DATA: lwa_doc_chng LIKE sodocchgi1,
lw_tab_lines LIKE sy-tabix,
ltb_objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
ltb_objpack LIKE sopcklsti1 OCCURS 2 WITH HEADER LINE.
*-MAIN PROCESSING SECTION----
clear: ltb_objbin, ltb_objtxt, ltb_objpack, lwa_doc_chng.
refresh: ltb_objbin, ltb_objtxt, ltb_objpack.
Control Data
lwa_doc_chng-obj_name = 'URGENT'.
lwa_doc_chng-sensitivty = 'P'.
lwa_doc_chng-no_change = 'X'.
lwa_doc_chng-priority = '1'.
lwa_doc_chng-obj_prio = '1'.
lwa_doc_chng-obj_langu = sy-langu.
lwa_doc_chng-no_change = 'X'.
Email Subject
lwa_doc_chng-obj_descr = pw_subject.
Email Body
ltb_objtxt[] = ptb_body[].
CLEAR ltb_objtxt.
DESCRIBE TABLE ltb_objtxt LINES lw_tab_lines.
IF lw_tab_lines GT 0.
READ TABLE ltb_objtxt INDEX lw_tab_lines.
lwa_doc_chng-doc_size =
( lw_tab_lines - 1 ) * 255 + STRLEN( ltb_objtxt ).
CLEAR ltb_objpack-transf_bin.
ltb_objpack-body_start = 1.
ltb_objpack-body_num = lw_tab_lines.
ltb_objpack-doc_type = 'RAW'.
APPEND ltb_objpack.
ENDIF.
Attachment
Move the binary attachment to other internal table.
ltb_objbin[] = ptb_pdf255[].
ltb_objpack-transf_bin = 'X'.
ltb_objpack-body_start = 1.
Get the number of lines in the Attachment (PDF FILE)
DESCRIBE TABLE ltb_objbin LINES lw_tab_lines.
ltb_objpack-body_num = lw_tab_lines.
ltb_objpack-doc_type = 'PDF'.
ltb_objpack-obj_descr = pw_filename.
ltb_objpack-obj_name = pw_filename.
ltb_objpack-doc_size = lw_tab_lines * 255.
APPEND ltb_objpack.
Call the function to send the PDF file by email
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = lwa_doc_chng
put_in_outbox = 'X'
TABLES
packing_list = ltb_objpack
contents_bin = ltb_objbin
contents_txt = ltb_objtxt
receivers = ptb_recipients
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.
CASE sy-subrc.
WHEN 0.
WHEN 1. RAISE too_many_receivers.
WHEN 2. RAISE document_not_sent .
WHEN 3. RAISE document_type_not_exist.
WHEN 4. RAISE operation_no_authorization.
WHEN 5. RAISE parameter_error.
WHEN 7. RAISE enqueue_error .
WHEN OTHERS. RAISE x_error.
ENDCASE.
COMMIT WORK.
ENDFORM.
I am calling this function module from within a method in my workflow....
So plz tell me whether there is anything wrong with this code..
Thanks & Regards,
Samrat Dutta
Message was edited by:
Samrat Dutta
Message was edited by:
Samrat Dutta
Similar Messages
-
Problem with opening of PDF in my webmail application
I have a problem with opening a pdf file in my webmail application of my internet provider in apple safari since yesterday. When I wanted to open up a pdf file I got a pop up message to allow a connection between adobe and the webmail application which I did. Since then I can not open up a pdf file. If I go to another browser or if I use email from another internet provider I use too it works and I can open up. It seems to be a blockage of the specific combination of this webmail application and safari.
What can I do ?Hi,
I have same requirement.
I need to cnvert smartform->pdf->send mail.
The mail is send but the attachment is corrupted.
Can you tell me what code you have written so its working in developement? -
This whole support process doesn't make sense to me, but that's a problem for another day...
I opened a PDF attached to an email ( from a trusted source). Now I can't close it, nor can I get back to my email account. When I try, I just get the open PDF. How do I close it?I looked at similar inquiries, and got my answer. Thanks!
-
Hi All,
Iam having an issue while opening the PDF-Attachment in which iam sending it as attachment to the mail.While opening the PDF iam getting the error that "Aodbe Reader could not open the document because it is either not a supported file type or because the file has been damaged(for example,it was sent as an email attachment and was'nt correctly decoded)".
The function-module "SO_NEW_DOCUMENT_ATT_SEND_API1" is getting use to send the attachment.
First iam converting the internal table data into PDF and then am sending the mail with PDF-attchment.
Thanks,
Asmitha.Even i had a smilar problem. The reason is perhaps the data in internal table doesnt get converted into PDF corectly. In my case i had to convert into PDF and download on local machine. Attching below code for it.Maybe u can get pointers to your problem.
REPORT sy-repid
NO STANDARD PAGE HEADING
LINE-COUNT 74
LINE-SIZE 200
MESSAGE-ID zz.
PARAMETERS : pcfile LIKE rlgrap-filename LOWER CASE.
DATA :textlines LIKE tline OCCURS 100 WITH HEADER LINE.
DATA otf LIKE itcoo OCCURS 1000 WITH HEADER LINE.
DATA it_lines LIKE tline OCCURS 100 WITH HEADER LINE.
DATA options LIKE itcpo.
DATA header LIKE thead.
DATA result LIKE itcpp.
DATA: bin_filesize TYPE i.
DATA: filesize TYPE i,
convcount TYPE i,
cancel(1).
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pcfile.
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
mask = ',*.*,*.*.'
IMPORTING
filename = pcfile
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
START-OF-SELECTION.
DATA : BEGIN OF itab OCCURS 0,
matnr TYPE mara-matnr,
END OF itab.
SELECT matnr FROM mara UP TO 10 ROWS INTO TABLE itab.
LOOP AT itab.
textlines-tdformat = '*'.
textlines-tdline = itab-matnr. APPEND textlines.
ENDLOOP.
options-tdgetotf = 'X'.
options-tdnoprev = 'X'.
CALL FUNCTION 'PRINT_TEXT'
EXPORTING
dialog = ' '
header = header
OPTIONS = options
IMPORTING
RESULT = RESULT
tables
lines = textlines
otfdata = otf
EXCEPTIONS
canceled = 1
device = 2
form = 3
OPTIONS = 4
unclosed = 5
unknown = 6
format = 7
textformat = 8
communication = 9
bad_pageformat_for_print = 10
OTHERS = 11.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
IMPORTING
bin_filesize = filesize
TABLES
otf = otf
lines = it_lines
EXCEPTIONS
err_conv_not_possible = 1
err_bad_otf = 2.
DATA : g_file TYPE string.
g_file = pcfile.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
bin_filesize = bin_filesize
filename = g_file
filetype = 'BIN'
TABLES
data_tab = it_lines
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6.
Regards,
Mansi -
How do I open a PDF attachment from an email so I can edit it for reply on an iPad?
I need to open a PDF attachment on an email, edit it and resend it back to the originator on an iPad. Help?
A PDF is a graphics document, so you can't edit it without access to an expensive program like Adobe Acrobat.
-
How to open a pdf attachment in imac mail
I am unable to open a PDF attachment in Mac Mail. There is not a PDF Icon in the email message. Is there a setting that should be checked?
I have a new iMac (less than a month old) with Mountain Lion.
Help would be greatly appreciated. ThanksIt is an actual PDF that is an attachment to an email. There is not a link to click on to open the attachment.
The attachment is a statement that I normally open, then print..
What I am seeing on the monitor is the heading portion of the email with the statement image, all on one page..It prints exactly as seen on the screen.
I have checked my Mail>Preferences>Viewing Tab."Display remote images in HTML" messages is checked..
Thanks for the help. -
Error when opening the PDF attachment
Hi,
We are able to successfully send the PDF attachment to external email id from SAP SCRIPT:
but when we are opening the PDF attachment we are getting the following error:
"Adobe Reader could not open because it is not either a supported file type or the file has been damaged ..etc.."
Is any logic need to write for the above or any parameters are missing .
Can any one help...
Thanks in advance.Hi Ramana,
Just try below given example code.....In which I have just different function Module to convert from OFT to PDF....
AT END OF VSTEL.
IF R_EMAIL = 'X'.
*--Opening Layout set for Printing
PERFORM CLOSE_FORM.
SELECT SINGLE SMTP_ADDR INTO V_EMAIL
FROM ADR6
WHERE ADDRNUMBER = T_ADRC-ADDRNUMBER.
CLEAR T_LIPS.
READ TABLE T_LIPS WITH KEY VBELN = T_LIKP-VBELN.
CLEAR T_VBAK.
READ TABLE T_VBAK WITH KEY VBELN = T_LIPS-VGBEL.
CLEAR V_ADRNR.
SELECT SINGLE ADRNR
INTO V_ADRNR
FROM T001
WHERE BUKRS = T_VBAK-BUKRS_VF.
REFRESH T_CC_EMAIL.
CLEAR T_CC_EMAIL.
SELECT SMTP_ADDR INTO TABLE T_CC_EMAIL
FROM ADR6
WHERE ADDRNUMBER = V_ADRNR.
SELECT SINGLE smtp_addr
INTO cc_email
FROM adr6
WHERE addrnumber = v_adrnr.
IF T_TO_EMAIL[] IS INITIAL.
CLEAR T_CC_EMAIL.
REFRESH T_CC_EMAIL.
ENDIF.
PERFORM BUILD_PDF_DATA_TABLE.
Populate message body text
PERFORM POPULATE_EMAIL_MESSAGE_BODY.
CONCATENATE T_LIKP-VSTEL '-' 'Warehouse Release' INTO V_SUBJECT SEPARATED BY SPACE.
Send file by email as .xls speadsheet
PERFORM SEND_FILE_AS_EMAIL_ATTACHMENT
TABLES IT_MESSAGE
PT_CONTENTS_BIN "LINES "it_attach
USING V_EMAIL
V_SUBJECT
'PDF'
'Delivery'
'Deliveries'
CHANGING GD_ERROR
GD_RECIEVER.
Instructs mail send program for SAPCONNECT to send email(rsconn01)
PERFORM INITIATE_MAIL_EXECUTE_PROGRAM.
ENDIF.
ENDAT.
***---/End by sagun
ENDLOOP. "loop at t_likp.
***---/added by sagun 25.05.2007
IF R_EMAIL = 'X'.
WRITE /01 SY-ULINE(180).
WRITE :/55 'End of Report'.
ENDIF.
***---/end by sagun
ENDFORM. " PRINT_DELIVERY
*& Form close_form
text
--> p1 text
<-- p2 text
FORM CLOSE_FORM .
IF R_PRINT = 'X'. " added by sagun 24.05.2007
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
OTFDATA =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 4
CODEPAGE = 5
OTHERS = 6
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF. " added by sagun 24.05.2007
IF R_EMAIL = 'X'.
*otf_table like itcoo occurs 0 with header line
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT = .
TABLES
OTFDATA = HOTFDATA
EXCEPTIONS
UNOPENED = 3.
ENDIF.
ENDFORM. " close_form
*& Form BUILD_PDF_DATA_TABLE
text
--> p1 text
<-- p2 text
FORM BUILD_PDF_DATA_TABLE .
DATA : LC_FORMAT(3) TYPE C VALUE 'PDF'.
DATA: lt_tline TYPE tp_tline_standard_table,
DATA : L_BIN_FILESIZE TYPE I,
PC_CONTENTS_BIN_LINES TYPE I.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = LC_FORMAT
IMPORTING
BIN_FILESIZE = L_BIN_FILESIZE
TABLES
OTF = HOTFDATA
LINES = LINES
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
OTHERS = 4.
IF SY-SUBRC = 0.
CALL FUNCTION 'QCE1_CONVERT'
TABLES
T_SOURCE_TAB = LINES
T_TARGET_TAB = PT_CONTENTS_BIN
EXCEPTIONS
CONVERT_NOT_POSSIBLE = 1
OTHERS = 2.
IF SY-SUBRC = 0.
DESCRIBE TABLE PT_CONTENTS_BIN LINES PC_CONTENTS_BIN_LINES.
ELSE.
... -->
ENDIF.
ELSE.
An OTF conversion error occured
-->
ENDIF.
ENDFORM. " BUILD_PDF_DATA_TABLE
*& Form POPULATE_EMAIL_MESSAGE_BODY
text
--> p1 text
<-- p2 text
FORM POPULATE_EMAIL_MESSAGE_BODY .
REFRESH IT_MESSAGE.
IT_MESSAGE = 'Please find enclosed here with our Warehouse Release Document(s)'.
APPEND IT_MESSAGE.
CLEAR IT_MESSAGE.
APPEND IT_MESSAGE.
APPEND IT_MESSAGE.
APPEND IT_MESSAGE.
APPEND IT_MESSAGE.
IT_MESSAGE = 'For United Phosphorous Inc.'.
APPEND IT_MESSAGE.
CLEAR IT_MESSAGE.
APPEND it_message.
APPEND it_message.
APPEND it_message.
IT_MESSAGE = 'TEST EMAIL from 520 clinet please ignore it'.
APPEND IT_MESSAGE.
ENDFORM. " POPULATE_EMAIL_MESSAGE_BODY
*& Form SEND_FILE_AS_EMAIL_ATTACHMENT
text
-->PIT_MESSAGE text
-->PIT_ATTACH text
-->P_EMAIL text
-->P_MTITLE text
-->P_FORMAT text
-->P_FILENAME text
-->P_ATTDESCRIPTION text
-->P_SENDER_ADDRESS text
-->P_SENDER_ADDRES_TYPE text
<--P_ERROR text
<--P_RECIEVER text
FORM SEND_FILE_AS_EMAIL_ATTACHMENT TABLES PIT_MESSAGE
PIT_ATTACH
USING P_EMAIL
P_MTITLE
P_FORMAT
P_FILENAME
P_ATTDESCRIPTION
P_SENDER_ADDRESS
P_SENDER_ADDRES_TYPE
CHANGING P_ERROR
P_RECIEVER.
DATA: LD_ERROR TYPE SY-SUBRC,
ld_reciever TYPE sy-subrc,...
LD_MTITLE LIKE SODOCCHGI1-OBJ_DESCR,
LD_EMAIL LIKE SOMLRECI1-RECEIVER,
LD_FORMAT TYPE SO_OBJ_TP ,
LD_ATTDESCRIPTION TYPE SO_OBJ_NAM ,
LD_ATTFILENAME TYPE SO_OBJ_DES ,
LD_SENDER_ADDRESS LIKE SOEXTRECI1-RECEIVER,
LD_SENDER_ADDRESS_TYPE LIKE SOEXTRECI1-ADR_TYP,
LD_RECEIVER LIKE SY-SUBRC.
p_filename = 'INVOICE'.
LD_EMAIL = P_EMAIL.
LD_MTITLE = P_MTITLE.
LD_FORMAT = P_FORMAT.
LD_ATTDESCRIPTION = P_ATTDESCRIPTION.
LD_ATTFILENAME = P_FILENAME.
LD_SENDER_ADDRESS = P_SENDER_ADDRESS.
LD_SENDER_ADDRESS_TYPE = P_SENDER_ADDRES_TYPE.
Fill the document data.
W_DOC_DATA-DOC_SIZE = 1.
Populate the subject/generic message attributes
W_DOC_DATA-OBJ_LANGU = SY-LANGU.
W_DOC_DATA-OBJ_NAME = 'SAPRPT'.
W_DOC_DATA-OBJ_DESCR = LD_MTITLE .
W_DOC_DATA-SENSITIVTY = 'F'.
Fill the document data and get size of attachment
CLEAR W_DOC_DATA.
READ TABLE PIT_ATTACH INDEX W_CNT.
W_DOC_DATA-DOC_SIZE =
( W_CNT - 1 ) * 255 + STRLEN( PIT_ATTACH ).
W_DOC_DATA-OBJ_LANGU = SY-LANGU.
W_DOC_DATA-OBJ_NAME = 'SAPRPT'.
W_DOC_DATA-OBJ_DESCR = LD_MTITLE.
W_DOC_DATA-SENSITIVTY = 'F'.
CLEAR T_ATTACHMENT.
REFRESH T_ATTACHMENT.
T_ATTACHMENT[] = PIT_ATTACH[].
Describe the body of the message
CLEAR T_PACKING_LIST.
REFRESH T_PACKING_LIST.
T_PACKING_LIST-TRANSF_BIN = SPACE.
T_PACKING_LIST-HEAD_START = 1.
T_PACKING_LIST-HEAD_NUM = 0.
T_PACKING_LIST-BODY_START = 1.
DESCRIBE TABLE IT_MESSAGE LINES T_PACKING_LIST-BODY_NUM.
T_PACKING_LIST-DOC_TYPE = 'RAW'.
APPEND T_PACKING_LIST.
Create attachment notification
T_PACKING_LIST-TRANSF_BIN = 'X'.
T_PACKING_LIST-HEAD_START = 1.
T_PACKING_LIST-HEAD_NUM = 1.
T_PACKING_LIST-BODY_START = 1.
DESCRIBE TABLE T_ATTACHMENT LINES T_PACKING_LIST-BODY_NUM.
T_PACKING_LIST-DOC_TYPE = LD_FORMAT.
T_PACKING_LIST-OBJ_DESCR = LD_ATTDESCRIPTION.
T_PACKING_LIST-OBJ_NAME = LD_ATTFILENAME.
T_PACKING_LIST-DOC_SIZE = T_PACKING_LIST-BODY_NUM * 255.
APPEND T_PACKING_LIST.
Add the recipients email address
CLEAR T_RECEIVERS.
REFRESH T_RECEIVERS.
LOOP AT T_TO_EMAIL WHERE EMAIL <> SPACE.
CLEAR T_RECEIVERS.
T_RECEIVERS-RECEIVER = T_TO_EMAIL-EMAIL.
T_RECEIVERS-REC_TYPE = 'U'.
T_RECEIVERS-COM_TYPE = 'INT'.
T_RECEIVERS-NOTIF_DEL = 'X'.
T_RECEIVERS-NOTIF_NDEL = 'X'.
APPEND T_RECEIVERS.
CLEAR T_RECEIVERS.
ENDLOOP.
copy email address
CLEAR T_RECEIVERS.
IF NOT T_RECEIVERS[] IS INITIAL.
LOOP AT T_CC_EMAIL.
T_RECEIVERS-RECEIVER = T_CC_EMAIL-EMAIL.
T_RECEIVERS-REC_TYPE = 'U'.
T_RECEIVERS-COM_TYPE = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
T_RECEIVERS-COPY = 'X'.
APPEND T_RECEIVERS.
CLEAR T_RECEIVERS.
ENDLOOP.
ENDIF.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
DOCUMENT_DATA = W_DOC_DATA
PUT_IN_OUTBOX = 'X'
SENDER_ADDRESS = LD_SENDER_ADDRESS
SENDER_ADDRESS_TYPE = LD_SENDER_ADDRESS_TYPE
COMMIT_WORK = 'X'
IMPORTING
SENT_TO_ALL = W_SENT_ALL
TABLES
PACKING_LIST = T_PACKING_LIST
CONTENTS_BIN = T_ATTACHMENT
CONTENTS_TXT = IT_MESSAGE
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.
Populate zerror return code
LD_ERROR = SY-SUBRC.
Populate zreceiver return code
LOOP AT t_receivers.
ld_receiver = t_receivers-retrn_code.
ENDLOOP.
IF SY-SUBRC = 0.
FORMAT COLOR COL_NORMAL ON.
LOOP AT T_LOG.
WRITE :/03 T_LOG-VBELN,
19 SY-VLINE,
20 T_LOG-KUNNR,
34 SY-VLINE,
35 T_LOG-NAME1,
76 SY-VLINE,
77 T_LOG-EMAIL,
110 SY-VLINE,
111 'Email Sent Successfuly',
180 SY-VLINE.
ENDLOOP . "t_log
FORMAT COLOR COL_NORMAL OFF.
CLEAR T_LOG.
REFRESH T_LOG.
ENDIF.
IF SY-SUBRC NE 0.
CASE LD_ERROR.
WHEN 1.
V_ERROR = 'too_many_receivers' .
WHEN 2.
V_ERROR = 'Email address not found in Customer Master' .
WHEN 3.
V_ERROR = 'document_type_not_exist'.
WHEN 4.
V_ERROR = 'operation_no_authorization'.
WHEN 5.
V_ERROR = 'Email address not found in Customer Master'.
WHEN 6.
V_ERROR = 'x_error'.
WHEN 7.
V_ERROR = 'enqueue_error'.
WHEN 8.
V_ERROR = 'Error in sending email' .
ENDCASE.
FORMAT COLOR COL_NEGATIVE ON.
LOOP AT T_LOG.
WRITE :/03 T_LOG-VBELN,
19 SY-VLINE,
20 T_LOG-KUNNR,
34 SY-VLINE,
35 T_LOG-NAME1,
76 SY-VLINE,
77 T_LOG-EMAIL,
110 SY-VLINE,
111 V_ERROR,
180 SY-VLINE.
ENDLOOP . "t_log
FORMAT COLOR COL_NEGATIVE OFF.
CLEAR T_LOG.
REFRESH T_LOG.
ENDIF.
ENDFORM. " SEND_FILE_AS_EMAIL_ATTACHMENT
*& Form INITIATE_MAIL_EXECUTE_PROGRAM
text
--> p1 text
<-- p2 text
FORM INITIATE_MAIL_EXECUTE_PROGRAM .
WAIT UP TO 2 SECONDS.
SUBMIT RSCONN01 WITH MODE = 'INT'
WITH OUTPUT = 'X'
AND RETURN.
ENDFORM. " INITIATE_MAIL_EXECUTE_PROGRAM
Reward Point If it usefull....
Cheers,
Sagun Desai.... -
Cannot open a PDF attachment. I get a message saying Preview does not recognize it. What is Preview?
CLICKY CLICK---> Preview - Apple Support
Care to share which OS you are using?
===========
When posting in Apple Communties/Forums/Message Boards.......It would help us to know which Mac model you have, which OS & version you're using, how much RAM, etc. You can have this info displayed on the bottom of every post by completing your system profile and filling in the information asked for.
Click on your name Welcome "your name."
Click on your name link
Click on the BIO tab. Scroll down to the bottom till you see "My Products." This is the section where you can edit your profile.
CLICKY CLICK-----> Help us to help you on these forums -
How Do I Open a PDF attachment in IOS 8 mail app?
Hi all,
I am curious how do I open a pdf attachment in IOS 8 mail app?Hi,
My friend has what you stated = a square with and arrow coming out the top and works as expected
BUT I don't
what happens to me - is the small muti page opens and does NOT show a pdf ICON - BUT DOES show only the first page and I DO NOT GET = a square with and arrow coming out the top TO CLICK ON!
So it seems the normal behavior is not happening - how can I fix this - to see ALL pages and or open pdf in another pdf app? -
I am unable to open my PDF attachment in mail.
I cannot open my PDF attachment in mail. I am able to on all of my other apple products but not my air. Is there a setting that i might have wrong?
If it is your own pdf and you are unsure of your password, you are out of luck. You will need to create a new file from the original documents. I suggest using password managers, if you need to create many different documents with different passwords.
-
Error while opening the Pdf Attachment at the time sending mail ..
Hi Frn's ,
i am sending a mail with pdf attachment ... but the pdf is not opening ...it is giving error "There was and error opening this document . This file can not be open because it has no page ."
Please resolve the problem ...below is the code pasted ..
REPORT ZPRI_TEST_LDB.
DATA: it_pdf LIKE tline OCCURS 0 WITH HEADER LINE .
Spool to PDF conversions
DATA: gd_spool_nr LIKE tsp01-rqident,
gd_destination LIKE rlgrap-filename,
gd_bytecount LIKE tst01-dsize,
gd_buffer TYPE string.
DATA: w_recsize TYPE i.
DATA: gd_recsize TYPE i.
DATA: gd_subject LIKE sodocchgi1-obj_descr,
it_mess_bod LIKE solisti1 OCCURS 0 WITH HEADER LINE,
it_mess_att LIKE solisti1 OCCURS 0 WITH HEADER LINE,
gd_sender_type LIKE soextreci1-adr_typ,
gd_attachment_desc TYPE so_obj_nam,
gd_attachment_name TYPE so_obj_des.
data: gd_error TYPE sy-subrc,
gd_reciever TYPE sy-subrc.
PARAMETER: p_email1 LIKE somlreci1-receiver
DEFAULT 'abc,
p_sender LIKE somlreci1-receiver
DEFAULT 'abc'.
perform write_output .
perform create_pdf .
PERFORM process_email .
FORM WRITE_OUTPUT .
write:'Listed below are the employees in your area who are due a Performance Appraisal'.
write:'during the month of May 2009 .A performance appraisal form can be found on-line'.
write: 'in the MUD template section .The Performance Appraisal is to be completed and' .
write:'discussed with the employee by the immediate supervisor .Signed forms should be '.
write: 'returned to the Human Resource Department by May 31,2009 .'.
skip 2 .
write: 'employee name' .
write: 'Job Date' .
write: 'Date of last appraisal' .
ENDFORM. " WRITE_OUTPUT
FORM CREATE_PDF .
DATA: spoolno LIKE tsp01-rqident.
DATA : p_repid LIKE sy-repid .
DATA: v_len TYPE i , v_len1 TYPE i .
DATA: v_temp(8) TYPE c .
DATA: p_uname LIKE sy-uname .
DATA: it_tsp01 TYPE STANDARD TABLE OF tsp01 WITH HEADER LINE .
DATA: it_pdf LIKE tline OCCURS 0 WITH HEADER LINE .
TABLES: tsp01.
data: var type c .
*-- STRUCTURES
DATA:
lc_rq2name LIKE tsp01-rq2name.
DATA:
mstr_print_parms LIKE pri_params,
mc_valid(1) TYPE c,
mi_bytecount TYPE i,
mi_length TYPE i,
mi_rqident LIKE tsp01-rqident.
*-- INTERNAL TABLES
DATA:
mtab_pdf LIKE tline OCCURS 0 WITH HEADER LINE,
mc_filename LIKE rlgrap-filename.
*-- SELECTION SCREEN
DATA:
p_linsz LIKE sy-linsz VALUE 132, " Line size
p_paart LIKE sy-paart VALUE 'X_65_132'. " Paper Format
*-- Setup the Print Parmaters
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
authority = space
copies = '1'
cover_page = space
data_set = space
department = space
destination = space
expiration = '1'
immediately = space
new_list_id = 'X'
no_dialog = 'X'
user = sy-uname
IMPORTING
out_parameters = mstr_print_parms
valid = mc_valid
EXCEPTIONS
archive_info_not_found = 1
invalid_print_params = 2
invalid_archive_params = 3
OTHERS = 4.
*-- Explicitly set line width, and output format so that
*-- the PDF conversion comes out OK
mstr_print_parms-linsz = p_linsz.
mstr_print_parms-paart = p_paart.
importing variable value set at first time to restrict the infinite loop .
IMPORT var FROM MEMORY ID 'abc' .
var = var + 1 .
p_uname = sy-uname .
p_repid = sy-repid .
*checking variable to restricted scecond time exction of this block of code
IF var = 1 .
v_memid = 1 .
EXPORT var TO MEMORY ID 'abc' .
start ----p3d(02/13/2009)
EXPORT it_pernr it_pernr_quali v_memid it_pernr_status
p_file p_file1 rb_pres rb_app rb2 TO MEMORY ID 'bcd' .
EXPORT it_pernr it_pernr_quali v_memid it_pernr_status it_notqualified
p_file p_file1 rb_pres rb_app rb1 rb2 rb3 rb4 TO MEMORY ID 'bcd' .
EXPORT it_pernr it_pernr_quali v_memid it_pernr_status it_notqualified
p_file p_file1 rb_pres rb_app rb3 rb4 TO MEMORY ID 'bcd' .
end ----p3d(02/13/2009)
submitting the spool request
SUBMIT (p_repid) TO SAP-SPOOL
SPOOL PARAMETERS mstr_print_parms
WITHOUT SPOOL DYNPRO
AND RETURN.
ENDIF.
FREE MEMORY ID 'abc'.
FREE MEMORY ID 'bcd'.
*Calculating the lenth of report name
v_len = STRLEN( p_repid ) .
*consutrucing the database variable rq2name to search the spool request
IF v_len >= 9 .
CONCATENATE p_repid+0(9)
p_uname+0(3) INTO lc_rq2name .
ELSE.
v_len1 = 9 - v_len .
DO v_len1 TIMES .
CONCATENATE v_temp '_' INTO v_temp .
ENDDO.
CONCATENATE p_repid v_temp
p_uname INTO lc_rq2name .
ENDIF.
*selecting the spool request using the above consructed varibale
SELECT * FROM tsp01 INTO TABLE it_tsp01
WHERE rq2name = lc_rq2name .
*sorting the interbla table
SORT it_tsp01 BY rqcretime DESCENDING .
*reading the first spool request
READ TABLE it_tsp01 INDEX 1.
*converting the spool request into pdf
CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = it_tsp01-rqident
dst_device = 'LP01'
TABLES
pdf = it_pdf
EXCEPTIONS
err_no_abap_spooljob = 1
err_no_spooljob = 2
err_no_permission = 3
err_conv_not_possible = 4
err_bad_destdevice = 5
user_cancelled = 6
err_spoolerror = 7
err_temseerror = 8
err_btcjob_open_failed = 9
err_btcjob_submit_failed = 10
err_btcjob_close_failed = 11
OTHERS = 12.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CHECK sy-subrc = 0.
Transfer the 132-long strings to 255-long strings
LOOP AT it_pdf.
TRANSLATE it_pdf USING ' ~'.
CONCATENATE gd_buffer it_pdf INTO gd_buffer.
ENDLOOP.
TRANSLATE gd_buffer USING '~ '.
DO.
it_mess_att = gd_buffer.
APPEND it_mess_att.
SHIFT gd_buffer LEFT BY 255 PLACES.
IF gd_buffer IS INITIAL.
EXIT.
ENDIF.
ENDDO.
ENDFORM. " CREATE_PDF
FORM SEND_eMAIL using p_email .
REFRESH it_mess_bod.
Default subject matter
gd_subject = 'Subject'.
gd_attachment_desc = 'Attachname'.
CONCATENATE 'attach_name' ' ' INTO gd_attachment_name.
it_mess_bod = 'Message Body text, line 1'.
APPEND it_mess_bod.
it_mess_bod = 'Message Body text, line 2...'.
APPEND it_mess_bod.
If no sender specified - default blank
IF p_sender EQ space.
gd_sender_type = space.
ELSE.
gd_sender_type = 'INT'.
ENDIF.
Send file by email as .xls speadsheet
PERFORM send_file_as_email_attachment
tables it_mess_bod
it_mess_att
using p_email
'Example .xls documnet attachment'
'PDF'
gd_attachment_name
gd_attachment_desc
p_sender
gd_sender_type
changing gd_error
gd_reciever.
ENDFORM. " SEND_MAIL
FORM process_email.
DESCRIBE TABLE it_mess_att LINES gd_recsize.
CHECK gd_recsize > 0.
PERFORM send_email using p_email1 . .
perform send_email using p_email2.
ENDFORM.
FORM send_file_as_email_attachment tables it_message
it_attach
using p_email
p_mtitle
p_format
p_filename
p_attdescription
p_sender_address
p_sender_addres_type
changing p_error
p_reciever.
DATA: ld_error TYPE sy-subrc,
ld_reciever TYPE sy-subrc,
ld_mtitle LIKE sodocchgi1-obj_descr,
ld_email LIKE somlreci1-receiver,
ld_format TYPE so_obj_tp ,
ld_attdescription TYPE so_obj_nam ,
ld_attfilename TYPE so_obj_des ,
ld_sender_address LIKE soextreci1-receiver,
ld_sender_address_type LIKE soextreci1-adr_typ,
ld_receiver LIKE sy-subrc.
data: t_packing_list like sopcklsti1 occurs 0 with header line,
t_contents like solisti1 occurs 0 with header line,
t_receivers like somlreci1 occurs 0 with header line,
t_attachment like solisti1 occurs 0 with header line,
t_object_header like solisti1 occurs 0 with header line,
w_cnt type i,
w_sent_all(1) type c,
w_doc_data like sodocchgi1.
ld_email = p_email.
ld_mtitle = p_mtitle.
ld_format = p_format.
ld_attdescription = p_attdescription.
ld_attfilename = p_filename.
ld_sender_address = p_sender_address.
ld_sender_address_type = p_sender_addres_type.
Fill the document data.
w_doc_data-doc_size = 1.
Populate the subject/generic message attributes
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
Fill the document data and get size of attachment
CLEAR w_doc_data.
READ TABLE it_attach INDEX w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
CLEAR t_attachment.
REFRESH t_attachment.
t_attachment[] = it_attach[].
Describe the body of the message
CLEAR t_packing_list.
REFRESH t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
DESCRIBE TABLE it_message LINES t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
APPEND t_packing_list.
Create attachment notification
t_packing_list-transf_bin = 'X'.
t_packing_list-head_start = 1.
t_packing_list-head_num = 1.
t_packing_list-body_start = 1.
DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
t_packing_list-doc_type = ld_format.
t_packing_list-obj_descr = ld_attdescription.
t_packing_list-obj_name = ld_attfilename.
t_packing_list-doc_size = t_packing_list-body_num * 255.
APPEND t_packing_list.
Add the recipients email address
CLEAR t_receivers.
REFRESH t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
APPEND t_receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
IMPORTING
sent_to_all = w_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = it_message
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.
Populate zerror return code
ld_error = sy-subrc.
Populate zreceiver return code
LOOP AT t_receivers.
ld_receiver = t_receivers-retrn_code.
ENDLOOP.
ENDFORM.
Thanks and Regards ..
Priyankhi this is the part of code ...
PERFORM process_email .
CHECK sy-subrc = 0.
Transfer the 132-long strings to 255-long strings
LOOP AT it_pdf.
TRANSLATE it_pdf USING ' ~'.
CONCATENATE gd_buffer it_pdf INTO gd_buffer.
ENDLOOP.
TRANSLATE gd_buffer USING '~ '.
DO.
it_mess_att = gd_buffer.
APPEND it_mess_att.
SHIFT gd_buffer LEFT BY 255 PLACES.
IF gd_buffer IS INITIAL.
EXIT.
ENDIF.
ENDDO.
ENDFORM. " CREATE_PDF
FORM process_email.
DESCRIBE TABLE it_mess_att LINES gd_recsize.
CHECK gd_recsize > 0.
PERFORM send_email using p_email1 . .
perform send_email using p_email2.
ENDFORM.
FORM SEND_eMAIL using p_email .
REFRESH it_mess_bod.
Default subject matter
gd_subject = 'Subject'.
gd_attachment_desc = 'Attachname'.
CONCATENATE 'attach_name' ' ' INTO gd_attachment_name.
it_mess_bod = 'Message Body text, line 1'.
APPEND it_mess_bod.
it_mess_bod = 'Message Body text, line 2...'.
APPEND it_mess_bod.
If no sender specified - default blank
IF p_sender EQ space.
gd_sender_type = space.
ELSE.
gd_sender_type = 'INT'.
ENDIF.
Send file by email as .xls speadsheet
PERFORM send_file_as_email_attachment
tables it_mess_bod
it_mess_att
using p_email
'Example .xls documnet attachment'
'PDF'
gd_attachment_name
gd_attachment_desc
p_sender
gd_sender_type
changing gd_error
gd_reciever.
ENDFORM. " SEND_MAIL
FORM send_file_as_email_attachment tables it_message
it_attach
using p_email
p_mtitle
p_format
p_filename
p_attdescription
p_sender_address
p_sender_addres_type
changing p_error
p_reciever.
DATA: ld_error TYPE sy-subrc,
ld_reciever TYPE sy-subrc,
ld_mtitle LIKE sodocchgi1-obj_descr,
ld_email LIKE somlreci1-receiver,
ld_format TYPE so_obj_tp ,
ld_attdescription TYPE so_obj_nam ,
ld_attfilename TYPE so_obj_des ,
ld_sender_address LIKE soextreci1-receiver,
ld_sender_address_type LIKE soextreci1-adr_typ,
ld_receiver LIKE sy-subrc.
data: t_packing_list like sopcklsti1 occurs 0 with header line,
t_contents like solisti1 occurs 0 with header line,
t_receivers like somlreci1 occurs 0 with header line,
t_attachment like solisti1 occurs 0 with header line,
t_object_header like solisti1 occurs 0 with header line,
w_cnt type i,
w_sent_all(1) type c,
w_doc_data like sodocchgi1.
ld_email = p_email.
ld_mtitle = p_mtitle.
ld_format = p_format.
ld_attdescription = p_attdescription.
ld_attfilename = p_filename.
ld_sender_address = p_sender_address.
ld_sender_address_type = p_sender_addres_type.
Fill the document data.
w_doc_data-doc_size = 1.
Populate the subject/generic message attributes
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
Fill the document data and get size of attachment
CLEAR w_doc_data.
READ TABLE it_attach INDEX w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
CLEAR t_attachment.
REFRESH t_attachment.
t_attachment[] = it_attach[].
Describe the body of the message
CLEAR t_packing_list.
REFRESH t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
DESCRIBE TABLE it_message LINES t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
APPEND t_packing_list.
Create attachment notification
t_packing_list-transf_bin = 'X'.
t_packing_list-head_start = 1.
t_packing_list-head_num = 1.
t_packing_list-body_start = 1.
DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
t_packing_list-doc_type = ld_format.
t_packing_list-obj_descr = ld_attdescription.
t_packing_list-obj_name = ld_attfilename.
t_packing_list-doc_size = t_packing_list-body_num * 255.
APPEND t_packing_list.
Add the recipients email address
CLEAR t_receivers.
REFRESH t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
APPEND t_receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
IMPORTING
sent_to_all = w_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = it_message
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.
Populate zerror return code
ld_error = sy-subrc.
Populate zreceiver return code
LOOP AT t_receivers.
ld_receiver = t_receivers-retrn_code.
ENDLOOP.
ENDFORM. -
Error while opening the PDF attachment
HI SDN's
I have to send order confirmation thru mail as a pdf attachment as soon as order has been saved.
I have written the code and assigned to output type.
Here I am getting an error opening a converted pdf file with Adobe Reader
The error message reads:
Adobe Reader could not open "filename.PDF" because it is either not a supported file type or because the file has been corrupted (for example, it was sent as an email attachment and wasn't correctly decoded).
Any help would be appreciated.
Thanks in advance
VRhello, i have the same problem as VR's. The pdf file sent to my email is not able to open. You mentioned that this is only supported by early releases of Adobe. But anyhow, I followed your advice to have my spool converted to PDF, instead of OTF to PDF. But I get this error: Spool request 23595 contains no ABAP list data.
What exactly my transaction does is that, it makes use of a sapscript layout via VL02N using an output type. I retrieve the OTF data in CLOSE_FORM function module. OTF is then converted to PDF via SX_OBJECT_CONVERT_OTF_PDF, then send via email through SO_NEW_DOCUMENT_ATT_SEND_API1.
When I view the sent PDF file in my email, It cannot be opened.
I would appreciate your help guys! thank you very much. -
Can no longer open email PDF attachment in iBooks
Just discovered can no longer open on iPad mini any email attachment PDF file in iBooks. Cannot tap attachment and select open in iBooks. PDF attachment opens itself automatically on the body of the email. Is this a PDF problem or iPad problem or iBooks problem.
It's not a problem with either app. Just hold down on the open PDF to bring up the "open in" window. If hold down on the open PDF and select "Quick Look" , that will give you the full screen file and you will see the share icon in the upper right corner.
-
How can I open a pdf attachment in Mozilla Thunderbird?
In my Thunderbird email account, I checked a box for MSWord to open all attachments, but I would like to reverse that decision since I got a pdf attachment, and MSWord doesn't open that. How do I change it back to the way it was so the pdf attachment can be opened with adobe?
Tools > Options > Attachments > Incoming tab
* in the 'Content Type' column:
* look for: Microsoft Office Word document
* then look at the 'Action' for it
* click on the current Action and select 'use Microsoft Office Word'
If this is already setup ok then leave alone and do the next step.
Is there a 'Content type' for Adobe Acrobat Document' ?
If yes,
* click on the Action and select 'Use Adobe Acrobat' or 'Adobe Reader'
* click on OK
If there is no 'Content type' for Adobe Acrobat Document'
then click on OK and do the next step below.
* Locate email with pdf attachment
* right click on attachment and choose Open
* select 'Open with' and choose 'Adobe Reader'
* select 'do this automatically for files like this from now on.'
* click on OK -
New iPad wont open a PDF attachment.
Hi,
I recently bought a new iPad 64GB. It has worked perfectly until yesterday when I tried to open a PDF email attachment. The attachment sort of twitches and then does nothing. This happens everytime I try to open it.
I have tried: restart, hard reset, tap and hold, swapping from all mail to the single inbox and back again. I have tried pretty much everything to get it to work.
Please help.
Thanks in advance,
Theblokedownstairs.Try this:
1. Double-click the Home button to close all Inactive Apps in Task Bar
2. Hold the Apps in Task Bar down for a second or two until you see the minus sign
3. Tap the minus sign to close Apps
4. Tap center of screen to return to Home Screen
5. Reset iPad. Hold the Sleep and Home button down for about 10 second until you see the Apple logo. Ignore the red slider
Maybe you are looking for
-
Units of Measures found in the material master.
Hi, What is significance of different Units of Measures found in the material master. Ajay
-
Problem in changing the internal table contents of a standard program
Dear All, I am making changes to internal table LT_PPDIT of standard program SAPLHRPT in the user exit EXIT_SAPLACC4_001 while payroll posting to accounting with tcode PC00_M99_CIPE. But though the changed value of LT_PPDIT is visible within the exit
-
Web.wml one more time...
Hi, my problem with init parameters in web.xml is solved for JSP but I have still a problem with servlets... here the config file : <web-app> <servlet> <servlet-name>initAll</servlet-name> <servlet-class>Init</servlet-class> <init-param> <param-name>
-
Is JavaMail 1.3.3 supported on z/Linux platform
Hi, I would like to know are following libraries supported on z/Linux platform ? 1) JavaMail 1.3.3 and 2) Java Activation Framework 1.0.2 Or can you please send me the known issues, if any ? Also would appreciate if could send me any info/link for 64
-
Can't play iTune file I received by email in iTunes?
I received an iTune audio file by email but I can't play the file nor import the file into the library. If I click on the file it opens iTunes but nothing else happens. Any suggestions?