Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Convert Report output To PDF

Former Member
0 Kudos

Hi,

Can any body suggest me how to convert report output to PDF format.

I want to send report output in PDF format through mail.

Thanks & Regards,

Hari Krishna

4 REPLIES 4

Former Member
0 Kudos

hi

use the FM CONVERT_OTF_2_PDF.

rewards if useful

regards

sachhidananda

Former Member
0 Kudos

hi

this perfect code for your requirment

http://www.sapdevelopment.co.uk/reporting/rep_spooltopdf.htm

regards

vivek

Former Member
0 Kudos

Hello

Example 1:

create perform tree

perform set_pdf_to_mail.

ceate form

  • Starting ins. data

    • PDF Dökümanı Oluşturma... This data for pdf

data : itab_pdf like tline occurs 1000 with header line,

lt_report like it_report occurs 1000 with header line,

pdf_report like it_report occurs 1000 with header line.

data : rqident like tsp01-rqident ,

rqcretime like tsp01-rqcretime ,

spool_id like tsp01-rqident,

pripar like pri_params,

numbytes type i,

cancel,

file_name type string value 'c:'.

    • Dökümanı mail ile gönderme ... This data for send to mail

data: objpack like sopcklsti1 occurs 0 with header line,

objhead like solisti1 occurs 1 with header line,

objbin like solisti1 occurs 0 with header line,

objtxt like solisti1 occurs 10 with header line,

reclist like somlreci1 occurs 0 with header line,

doc_chng like sodocchgi1,

tab_lines like sy-tabix.

**

*

form set_pdf_to_mail .

perform create_pdf changing file_name.

perform send_mail using file_name.

endform. " SET_PDF_TO_MAIL

*&----


*

*& Form CREATE_PDF

*&----


*

  • text

*----


*

  • --> p1 text

  • <-- p2 text

*----


*

form create_pdf changing file_name.

call function 'GET_PRINT_PARAMETERS'

exporting

in_parameters = pripar

line_size = 255

layout = 'X_65_132'

no_dialog = 'X'

importing

out_parameters = pripar "print parameter

exceptions

archive_info_not_found = 1

invalid_print_params = 2

invalid_archive_params = 3

others = 4.

refresh : lt_report ,

itab_pdf.

clear : rqident ,

rqcretime ,

spool_id .

    • Kuyruk yazım başlangıcı.. Starting Spool write

new-page print on parameters pripar no dialog .

loop at pdf_report into lt_report.

new-page.

endloop.

    • Kuyruk yazma sonu.. End Spool Write

new-page print off.

    • Yaratılan Kuyruk nosu Added Spool number

select rqident rqcretime from tsp01

into (rqident,rqcretime)

where rqowner = sy-uname

order by rqcretime descending.

exit. " if added a number after exit

endselect.

move rqident to spool_id.

    • Kuyruktan alınan bilgi PDF 'e dönüştürülüyor.. Starting convert to PDF

call function 'CONVERT_ABAPSPOOLJOB_2_PDF'

exporting

src_spoolid = '0000004541' "example spool_id if you want create dynamic

importing

pdf_bytecount = numbytes

tables

pdf = itab_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.

    • Kayıt alanı Filena_Name default 'C:' içerir. Concatenate field name

concatenate file_name sy-tcode '.pdf' into file_name.

    • Yaratılan PDF (itab_pdf) filen_name ile belirtilen path 'e kayıt... Itab Pdf to prepare PDF after download

call function 'GUI_DOWNLOAD'

exporting

filename = file_name

filetype = 'BIN'

tables

data_tab = itab_pdf.

endform. " CREATE_PDF

*&----


*

*& Form SEND_MAIL

*&----


*

  • text

*----


*

  • --> p1 text

  • <-- p2 text

*----


*

form send_mail using file_name.

refresh : objbin.

concatenate 'Satınalma Raporu Deneme ' sy-datum "any subject name if you want create dynamic

sy-uzeit into objtxt-line .

append objtxt.

describe table objtxt lines tab_lines.

read table objtxt index tab_lines.

doc_chng-doc_size = ( tab_lines - 1 ) * 255 + strlen( objtxt ).

clear objpack-transf_bin.

objpack-head_start = 1.

objpack-head_num = 0.

objpack-body_start = 1.

objpack-body_num = tab_lines.

objpack-doc_type = 'BIN'.

append objpack.

call function 'QCE1_CONVERT'

tables

t_source_tab = itab_pdf

t_target_tab = objbin

exceptions

convert_not_possible = 1

others = 2.

        • PDF Dosyası Attachment olarak hazırlanıyor.. Starting PDF for attachment

describe table objbin lines tab_lines.

objpack-transf_bin = 'X'.

objpack-head_start = 1.

objpack-head_num = 0.

objpack-body_start = 1.

objpack-body_num = tab_lines.

objpack-doc_type = 'PDF'.

objpack-obj_name = 'SOFM'.

objpack-obj_descr = file_name.

objpack-doc_size = tab_lines * 255.

append objpack.

objhead = 'se38.pdf'. "example field name

append objhead.

clear objhead.

select single * from usr21 where bname eq sy-uname.

select single * from adr6

where addrnumber eq usr21-addrnumber and

persnumber eq usr21-persnumber and

flgdefault eq 'X'.

reclist-receiver = adr6-smtp_addr.

reclist-rec_type = 'U'.

reclist-express = 'X'.

append reclist.

doc_chng-doc_size = ( tab_lines - 1 ) * 255 + strlen( objbin ).

break vpekgozegu.

    • Hazırlanan Attachment Mail ile göneriliyor.. Starting send

call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'

exporting

document_data = doc_chng

put_in_outbox = 'X'

tables

packing_list = objpack

object_header = objhead

contents_bin = objbin

contents_txt = objtxt

receivers = reclist

exceptions

too_many_receivers = 1

document_not_sent = 2

operation_no_authorization = 4

others = 99.

commit work and wait.

refresh reclist.

endform. " SEND_MAIL

BestRegards,

Volkan PEKGOZEGU

Former Member
0 Kudos

Hello again

if you want script convert to pdf (SE71)

so

if you want smartforms convert to pdf (SMARTFORMS)

after send mail prosedure (same kind of)

Best Regards,

Volkan PEKGOZEGU