Convert document to PDF format
I have to convert invoice ot PDF . CAn anyone tell me the function module to convert any type document(word doc, text doc) to pdf.I will revord the points
thanks
Try out this code..maybe it will help
report ZPDFPRNT no standard page heading.
TABLES: TST05.
DATA: BEGIN OF ITAB OCCURS 0,
TLINE(255),
END OF ITAB.
DATA: BEGIN OF ITAB2 OCCURS 0,
TLINE(255),
END OF ITAB2.
DATA: BEGIN OF ITAB3 OCCURS 0,
TLINE(255),
END OF ITAB3.
DATA: BEGIN OF OTF_TAB OCCURS 0,
TLINE(255),
END OF OTF_TAB.
DATA: LEN_OUT LIKE SOOD-OBJLEN.
DATA: LEN_IN LIKE SOOD-OBJLEN.
DATA: BEGIN OF DATA_SET OCCURS 200,
DATA_LENGTH(5),
PRECOL(1),
DATA_LINE(1000),
END OF DATA_SET.
DATA: BEGIN OF OTF_PAGE OCCURS 200.
INCLUDE STRUCTURE ITCOO.
DATA: END OF OTF_PAGE,
OTF_PAGES TYPE P,
OTF_MAX_PAGES TYPE P VALUE 10.
DATA: BEGIN OF OTF_CONTROL.
INCLUDE STRUCTURE ITCPP.
DATA: END OF OTF_CONTROL,
FORCE_RAW_OTF VALUE ' ',
L100_EXCLUDE(4) VALUE 'OTFJ',
BEGIN OF OTF_PAGE_INDEX OCCURS 20,
LINE_NUM TYPE P,
END OF OTF_PAGE_INDEX,
CUR_OTF_PAGE VALUE 1.
DATA: DATA_SET_LINECOUNT TYPE P,
DATA_SET_MAX_LINES TYPE P VALUE 100000,
DATA_SET_VALID TYPE C VALUE ' ',
DATA_SET_IS_OTF TYPE C VALUE ' ',
DATA_SET_LENGTH(5) TYPE C,
LINE_SPECIAL LIKE DATA_SET-DATA_LINE,
NEED_LINE_SPECIAL TYPE C,
DSN_TYPE(8) TYPE C.
DATA: FCODE(4) TYPE C,
DATE TYPE D,
TIME TYPE T,
RC(10) TYPE C,
ERRMSG(100) TYPE C,
PRINTJOB_CREATED(1) TYPE C,
PRINTJOB_CLEARED(1) TYPE C,
PRINTJOB_LIST(1) TYPE C,
DISPLAY_MODE(1) TYPE C,
LINE_MAX TYPE P VALUE '100000',
NEW_SCREEN_300(1) TYPE C,
MULTI_PRINT_300(1) TYPE C,
PRINT_ALL_300(1) TYPE C,
PRINT_COUNT_300 TYPE I,
SHOW_USER_100 TYPE C VALUE ' ',
ERROR_DISPLAY_LEVEL TYPE C VALUE '9',
NEXT_ERROR_DISPLAY_LEVEL TYPE C,
PREV_ERROR_DISPLAY_LEVEL TYPE C,
START_300(5) TYPE C, END_300(5) TYPE C,
SEP LIKE SY-VLINE,
DEFAULT_PRI,
TSP01_BUF LIKE TSP01,
TSP01_CURLINE LIKE SY-STARO,
TSP01_CURCOL LIKE SY-CUCOL,
TSP01_CURROW LIKE SY-CUROW.
DATA: BEGIN OF DATA_SET_LINE,
DATA_LENGTH(5),
PRECOL(1),
DATA_LINE(1000),
END OF DATA_SET_LINE.
DATA: STATUS LIKE SY-SUBRC.
DATA: WGF_MESSAGE(80).
DATA: H_PATH(20) TYPE C.
DATA: H_MASK(20) TYPE C VALUE ',.pdf ,.pdf. '.
DATA: FILE_NAME(20).
DATA: FILENAME LIKE RLGRAP-FILENAME.
DATA: IMPORT(132).
PARAMETERS: IDENT(5) TYPE C.
PERFORM GET_OTF_TAB.
LOOP AT OTF_PAGE.
OTF_TAB-TLINE = OTF_PAGE.
APPEND OTF_TAB.
ENDLOOP.
CALL FUNCTION 'SX_OBJECT_CONVERT_OTF_PDF'
EXPORTING
FORMAT_SRC = 'OTF'
FORMAT_DST = 'PDF'
DEVTYPE = 'ASCIIPRI'
LEN_IN = LEN_IN
IMPORTING
LEN_OUT = LEN_OUT
TABLES
CONTENT_IN = OTF_TAB
CONTENT_OUT = ITAB2
EXCEPTIONS
ERR_CONV_FAILED = 1
OTHERS = 2.
PERFORM GET_PATH USING 'PDF_FILE'.
CALL FUNCTION 'WS_DOWNLOAD'
EXPORTING
FILENAME = FILENAME
FILETYPE = 'BIN'
BIN_FILESIZE = LEN_OUT
TABLES
DATA_TAB = ITAB2
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_WRITE_ERROR = 2
INVALID_FILESIZE = 3
INVALID_TABLE_WIDTH = 4
INVALID_TYPE = 5
NO_BATCH = 6
UNKNOWN_ERROR = 7
OTHERS = 8.
*& Form GET_OTF_TAB
FORM GET_OTF_TAB.
DATA: PART(4) VALUE '0001',
BEGIN OF MSG,
A(40),
B(40),
C(40),
END OF MSG.
REFRESH DATA_SET.
DATA_SET_LINECOUNT = 0.
DATA_SET_IS_OTF = ' '.
OTF_PAGES = 0.
REFRESH OTF_PAGE_INDEX.
CALL 'RSPOACSD'.
SELECT * FROM TST05 WHERE DTHREAD = 'X'.
CALL 'RSPOAOSD'
ID 'ID' FIELD IDENT
ID 'TYPE' FIELD TST05-DTYPE
ID 'RECTYP' FIELD 'VYL----'
ID 'RC' FIELD RC
ID 'ERRMSG' FIELD ERRMSG.
STATUS = SY-SUBRC.
IF STATUS = 0.
DSN_TYPE = TST05-DTYPE.
IF DSN_TYPE(3) = 'OTF'.
DATA_SET_IS_OTF = 'X'.
ENDIF.
ENDIF.
IF STATUS <> 24. EXIT. ENDIF.
ENDSELECT.
DATA_SET_VALID = 'X'.
DATA_SET_MAX_LINES = ( LINE_MAX * '1.1' ) + 100.
DO.
CLEAR: DATA_SET_LINE, DATA_SET_LENGTH.
CALL 'RSPOARSD'
ID 'BUFF' FIELD DATA_SET_LINE+5
ID 'DATALEN' FIELD DATA_SET_LENGTH
ID 'RC' FIELD RC
ID 'ERRMSG' FIELD ERRMSG.
STATUS = SY-SUBRC.
IF STATUS = 36.
WHILE STATUS = 36.
CALL 'RSPOACSD'
ID 'RC' FIELD RC
ID 'ERRMSG' FIELD ERRMSG.
ADD 1 TO PART.
IF DATA_SET_IS_OTF = ' '.
CALL 'RSPOAOSD'
ID 'ID' FIELD IDENT
ID 'TYPE' FIELD DSN_TYPE
ID 'PART' FIELD PART
ID 'RECTYP' FIELD 'VYL----'
ID 'RC' FIELD RC
ID 'ERRMSG' FIELD ERRMSG.
ELSE.
CALL 'RSPOAOSD'
ID 'ID' FIELD IDENT
ID 'PART' FIELD PART
ID 'TYPE' FIELD DSN_TYPE
ID 'RECTYP' FIELD 'VYL----'
ID 'RC' FIELD RC
ID 'ERRMSG' FIELD ERRMSG.
ENDIF.
IF SY-SUBRC NE 0. EXIT. ENDIF.
CLEAR: DATA_SET_LINE, DATA_SET_LENGTH.
CALL 'RSPOARSD'
ID 'BUFF' FIELD DATA_SET_LINE+5
ID 'DATALEN' FIELD DATA_SET_LENGTH
ID 'RC' FIELD RC
ID 'ERRMSG' FIELD ERRMSG.
STATUS = SY-SUBRC.
ENDWHILE.
ENDIF.
IF STATUS <> 0 AND STATUS <> 40. EXIT. ENDIF.
DATA_SET = DATA_SET_LINE.
IF NOT ( DATA_SET_LENGTH IS INITIAL ).
DATA_SET-DATA_LENGTH = DATA_SET_LENGTH - 1.
ENDIF.
APPEND DATA_SET.
ADD 1 TO DATA_SET_LINECOUNT.
IF DATA_SET_IS_OTF = ' '.
IF DATA_SET_LINECOUNT >= DATA_SET_MAX_LINES.
CLEAR DATA_SET.
APPEND DATA_SET.
MOVE '----
' TO DATA_SET-DATA_LINE.
APPEND DATA_SET.
CLEAR DATA_SET.
APPEND DATA_SET.
WRITE: 'Abbruch nach'(029) TO MSG-A.
WRITE: DATA_SET_MAX_LINES TO MSG-B.
WRITE: 'Zeilen.'(030) TO MSG-C.
CONDENSE MSG.
DATA_SET-DATA_LINE = MSG.
APPEND DATA_SET.
EXIT.
ENDIF.
ELSE.
MOVE DATA_SET_LINE-DATA_LINE TO OTF_PAGE.
APPEND OTF_PAGE.
IF OTF_PAGE(2) = 'EP'.
ADD 1 TO OTF_PAGES.
IF OTF_PAGES >= OTF_MAX_PAGES.
MESSAGE S229(PO) WITH OTF_MAX_PAGES.
EXIT.
ENDIF.
ELSEIF OTF_PAGE(2) = 'OP'.
OTF_PAGE_INDEX-LINE_NUM = DATA_SET_LINECOUNT.
APPEND OTF_PAGE_INDEX.
ENDIF.
ENDIF.
ENDDO.
IF STATUS <> 0 AND STATUS <> 12.
CALL 'RSPOACSD'.
MESSAGE E112(PO) WITH STATUS RC ERRMSG.
ENDIF.
CALL 'RSPOACSD'.
STATUS = SY-SUBRC.
IF STATUS <> 0.
MESSAGE E112(PO) WITH STATUS RC ERRMSG.
ENDIF.
ENDFORM. " GET_OTF_TAB
*& Form GET_PATH
FORM GET_PATH USING P_FILENAME.
CLEAR: H_PATH, FILE_NAME.
FILE_NAME = P_FILENAME.
CALL FUNCTION 'WS_QUERY'
EXPORTING
QUERY = 'CD' "// Current Directory
IMPORTING
RETURN = H_PATH.
CONCATENATE FILE_NAME '.pdf' INTO FILE_NAME.
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
DEF_FILENAME = FILE_NAME
DEF_PATH = H_PATH
MASK = H_MASK
MODE = 'O'
IMPORTING
FILENAME = FILENAME"dbname
EXCEPTIONS
INV_WINSYS = 1
NO_BATCH = 2
SELECTION_CANCEL = 3
SELECTION_ERROR = 4
OTHERS = 5.
ENDFORM. " GET_PATH
Thanks and regards
Similar Messages
-
How can I convert a Microsoft Publisher document to PDF format. I have free version of Acrobat.
Hi raythree,
I'm sorry that your PDF conversion is working. Can you please tell me if you're getting a specific error message? Knowing that can help pinpoint the cause of the conversion failure. However, here are a couple of things that you could try:
Clear your browser cache (steps to do this vary by browser).
If you're using a work computer, check with your IT team to confirm if you have firewall/proxy settings that restrict the ability to upload files to the Internet.
Try another web browser. A list of supported browsers for accessing the ExportPDF service is available here: http://www.adobe.com/acom/systemreqs/.
Also, note that there is a 100MB file size limit, so if your publisher file is larger than that, it won't upload to ExportPDF.
I hope this helps. But let us know if you need further assistance.
Best,
Sara -
How do i change a scanned document to PDF format?
how do i change a scanned document to PDF Format"?
Hi,
If you are looking for an online service to convert your scanned document to PDF, you might consider using Adobe CreatePDF.
https://www.acrobat.com/createpdf
Regards,
Brian -
Automator Workflow to export Numbers documents in PDF format
Does anyone know of any automator workflow to export Numbers documents in PDF format? I tried this program: Convert to PDF 1.2
http://www.apple.com/downloads/macosx/automator/converttopdf_mauriziominelli.htm l
But it gives an error.Reading carefully is often useful.
The description of the tool which you tried clearly states :
*About Convert to PDF*
*_Convert all of your text files to PDF_. This action uses the underlying cups printing system ability to convert files, it’s a simple front end to the command line tool cupsfilter.*
As far as I know, but maybe you don't, *_a Numbers document isn't a text file._*
I already posted a script exporting Numbers documents as PDF.
Here is an enhanced version which apply only to Numbers '09 (or maybe higher) :
--[SCRIPT save2Numbers&PDF.app]
Enregistrer le script en tant que Script : save2Numbers&PDF.scpt
déplacer le fichier créé dans le dossier
<VolumeDeDémarrage>:Users:<votreCompte>:Library:Scripts:Applications:Numbers:
Il vous faudra peut-être créer le dossier Numbers et peut-être même le dossier Applications.
aller au menu Scripts , choisir Numbers puis choisir save2Numbers&PDF
Le script enregistre le document au format natif de Numbers
et l'enregistre dans un fichier PDF.
S'il existe déjà un PDF homonyme, il est renommé en lui ajoutant une chaîne
construite sur sa date de modification.
--=====
L'aide du Finder explique:
L'Utilitaire AppleScript permet d'activer le Menu des scripts :
Ouvrez l'Utilitaire AppleScript situé dans le dossier Applications/AppleScript.
Cochez la case "Afficher le menu des scripts dans la barre de menus".
+++++++
Save the script
as a Script: save2Numbers&PDF.scpt
Move the newly created file into the folder:
<startup Volume>:Users:<yourAccount>:Library:Scripts:Applications:Numbers:
Maybe you would have to create the folder Numbers and even the folder Applications by yourself.
go to the Scripts Menu, choose Numbers, then choose save2Numbers&PDF
The script saves the document in the native Numbers format and saves it in a .pdf file
If such a .pdf already exists, it is renamed with a stamp matching its modification date.
--=====
The Finder's Help explains:
To make the Script menu appear:
Open the AppleScript utility located in Applications/AppleScript.
Select the "Show Script Menu in menu bar" checkbox
--=====
Yvan KOENIG (VALLAURIS, France)
modifié 2010/08/17
property closeIt : true
(* true = closes the saved document
false = doesn't close it *)
property theApp : "Numbers"
property theExt : "numbers"
--=====
on run
tell application theApp
activate
set le_document to front document
if modified of le_document then save le_document
delay 0.2
set thePath to path of document 1
end tell -- theapp
set {xPath, xExt} to my saveAs(thePath)
if closeIt then tell application theApp to close document 1 saving no
end run
--=====
on saveAs(p)
local extension_export, type_export, nomde_loriginal, dossierde_loriginal, nomde_lexport, cheminde_lexport
set {extension_export, type_export} to {"pdf", "LSDocumentTypePDF"}
set {nomde_loriginal, dossierde_loriginal} to my quelNomEtDossier(p)
if nomde_loriginal ends with theExt then
• replace the original extension by the xExt one *)
set nomde_lexport to (text 1 thru -(1 + (length of theExt)) of nomde_loriginal) & extension_export
else
• add the xExt extension name *)
set nomde_lexport to nomde_loriginal & "." & extension_export
end if
set cheminde_lexport to dossierde_loriginal & nomde_lexport
• CAUTION, When saving, Numbers doesn't take care of an existing document.
It replaces it by the new one. *)
tell application "System Events"
if exists (file cheminde_lexport) then
Playing safety, we rename the existing file by inserting a modificationdatetime stamp *)
set name of file cheminde_lexport to (text 1 thru -(2 + (length of extension_export)) of nomde_lexport) & my horoDateur(modification date of file cheminde_lexport) & "." & extension_export
end if
end tell -- System Events
• save as type_export document *)
tell application "Numbers" to save document nomde_loriginal as type_export in cheminde_lexport
return {cheminde_lexport, extension_export}
end saveAs
-- =====
on quelNomEtDossier(f)
local nom, dossier
tell application "System Events" to tell file (f as Unicode text)
set nom to name (* Unicode text *)
set dossier to path of container (* Unicode HFS path *)
end tell -- to System Events
return {nom, dossier}
end quelNomEtDossier
--=====
• Build a stamp from the modification date_time
on horoDateur(datedemodification)
local les_secondes
set les_secondes to time of datedemodification
return ("_" & year of datedemodification & text -2 thru -1 of ("0" & (month of datedemodification as integer)) & text -2 thru -1 of ("0" & day of datedemodification) & "_" & text -2 thru -1 of ("0" & les_secondes div 3600) & text -2 thru -1 of ("0" & (les_secondes mod 3600) div 60) & text -2 thru -1 of ("0" & les_secondes mod 60))
(* Here, the stamp is "YYYYMMDDhhmmss" *)
end horoDateur
--=====
--[/SCRIPT]
Yvan KOENIG (VALLAURIS, France) mardi 17 août 2010 18:16:27 -
Problem with scanning document in PDF format to computer
has anyone had a problem with scanning to the computer a document in pdf format from hp Photosmart 7525 e-All-in-One series wireless printer? The document appears in My Documents but when I try and open the document I get an error message that says the document cannot be opened. I can scan and open the document in TIF format. I am running Windows 7 Home Premium and I just installed the Photosmart 7525 printer. I've uninstalled and reinstalled the printer using the CD download.
This question was solved.
View Solution.Hi,
Can you open other pdf files ? Do you have Adobe Reader in your computer ? Please download and install it on your machine then try to open file(s) again:
http://get.adobe.com/reader/
Regards.
BH
**Click the KUDOS thumb up on the left to say 'Thanks'**
Make it easier for other people to find solutions by marking a Reply 'Accept as Solution' if it solves your problem. -
I can no longer print any document in PDF format. Not sure why
I can no longer print any document in PDF format. Not sure why? When I try to print, the document saves to my hard drive as a PDF and will not allow me to print? Never had this issue before. Any thoughts?
Print to file is in the main print dialog (on Acrobat 9.x) as opposed to under Advanced
-
Print BDS document(in PDF format) from SAP R/3
Hello ,
I have a requirement to print BDS document(in PDF format) from SAP R/3 without user interaction.
In simple way, if I execute the program - PDF document will get printed on local default printer.
Please help me if anybody worked on similar requirement.
Thank you very much,
LiliyaHi Liliya,
First you should create a smartform for BDS Layout and give output parameter like this..
wa_param-langu = sy-langu.
wa_param-no_dialog = 'X'.
wa_param-getotf = 'X'.
wa_param-DEVICE = ' '. " (here you can give the path of your printer)
lv_output_options-tdnewid = 'X'. "Print parameters,
lv_output_options-tddelete = space. "Print parameters,
lv_output_options-tdnoprev = 'X' .
lv_output_options-TDIMMED = 'X' . " it will give the immediate output of form in given output device
I hope it will help you.....
Enjoy... -
When saving documents in PDF format a .txt document is also created and saved
When saving documents in PDF format to the my documents folder on a PC a .txt document is also created and saved, does anybody know the where the setting is that allows this functionality (duplicate document in txt format) to be switched off thanks.
When saving documents in PDF format to the my documents folder on a PC a .txt document is also created and saved, does anybody know the where the setting is that allows this functionality (duplicate document in txt format) to be switched off thanks.
-
How to convert Xstring to PDF format and send pdf to multiple user
Hi to all
can any one provide me saple code to convert Xstring to PDF format and send pdf to multiple user
i have searched the SDN , but cant get any proper soulution.
I shall be thankful to you for this.
Regards
Pavneet RanaUse function module 'SCMS_XSTRING_TO_BINARY' to convert from XString to a Binary table. Just like this:
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
EXPORTING
buffer = lv_xstring_pdf
append_to_table = ' '
TABLES
binary_tab = lt_doc_content.
To send the email in an OO way you should user class CA_SEND_REQUEST_BCS. Take a look to program BCS_EXAMPLE_6 or any of the test programs in package SBCOMS. -
How to convert report to PDF format
Hi,
Please let me know the procedure to convert reports into PDF format.
Thanks in Advance
Irfan HussainRefer these links
http://www.sap-img.com/bc037.htm
http://www.members.tripod.com/abap4/Save_Report_Output_to_a_PDF_File.html
<b>CONVERT_ABAPSPOOLJOB_2_PDF</b> FM convert abap spool output to PDF -
IBook converting periods on PDF formatted pages into question marks
Can someone tell me why iBook is converting periods on PDF formatted pages into question marks in the search function?
Graymatters1 wrote:
In this particular instance, we are having to build an ebook which utilizes iBook.
In case in matters, Apple doesn't accept pdf's for the ibookstore.
You might try different apps for producing the pdf and see if there is any difference.
But only Apple can change how iBooks behaves. You can tell them about the problem at
http://www.apple.com/feedback -
I am trying to scan a document into PDF format but PDF is not coming up as an option. What can I do?
Can your scanner software create PDF documents?
-
How to convert Labview document into PDF format
Hi! can any one tell me, can we convert the Labview document (Labview saved files)into PDF format. I wanted to convert it using a VI. If any one suggest me or send me the example vi i will be very thankful.
Regards
Ramesh.CHi,
We have a brand new PDF library for LabVIEW. Release date is in october. The library can create pdfs, with all kinds of text writing and picture stuff. It works stand alone, so there is no need for other programs. It should also be platform independend.
If your interested, drop me a mail. I can send you mail when it's released. Maybe we can give you a "beta test", if you send use your findings.
Regards,
Wiebe. (email is " my name " @ carya . nl )
"Ramme" <[email protected]> wrote in message news:[email protected]..
Hi! can any one tell me, can we convert the Labview document (Labview saved files)into PDF format. I wanted to convert it using a VI. If any one suggest me or send me the example vi i will be very thankful. RegardsRamesh.C -
Convert Smartform in PDF format and send to SAP Workplace
Hi to all.
I need help of somebody expert in SMARTFORM's.
I need to convert a smartform into PDF format and to send as attachement for SAP workplace
of the user.
I developed the next code.
IT is to function and to send the mail for SAP workplace, but it happens that smartform
contains images (logos) and tables, when the user tries to open the file pdf in inbox gives
to error - "An unrecognized token ' q0 ' was found".
I tried to call a smartform only with text and functioned well.
Somebody can help me?
My code:
Begin ***********************************************
REPORT zteste_nsa_send_pdf_sap_office.
DATA: t_print LIKE zeps_fm04 OCCURS 0 WITH HEADER LINE,
v_size TYPE i.
DATA: ls_bil_invoice TYPE lbbil_invoice.
TABLES: nast.
DATA: i_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
i_tline TYPE TABLE OF tline WITH HEADER LINE,
i_receivers TYPE TABLE OF somlreci1 WITH HEADER LINE,
i_record LIKE solisti1 OCCURS 0 WITH HEADER LINE,
Objects to send mail.
i_objpack LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
i_objtxt LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_objbin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_reclist LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
Work Area declarations
wa_objhead TYPE soli_tab,
w_ctrlop TYPE ssfctrlop,
w_compop TYPE ssfcompop,
w_return TYPE ssfcrescl,
wa_doc_chng TYPE sodocchgi1,
w_data TYPE sodocchgi1,
wa_buffer TYPE string,"To convert from 132 to 255
Variables declarations
v_form_name TYPE rs38l_fnam,
v_len_in LIKE sood-objlen,
v_len_out LIKE sood-objlen,
v_len_outn TYPE i,
v_lines_txt TYPE i,
v_lines_bin TYPE i.
START-OF-SELECTION.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZFPS_FICHA_VALORIZACAO'
IMPORTING
fm_name = v_form_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.
w_ctrlop-getotf = 'X'.
w_ctrlop-no_dialog = 'X'.
w_compop-tdnoprev = 'X'.
CALL FUNCTION v_form_name
EXPORTING
control_parameters = w_ctrlop
output_options = w_compop
user_settings = 'X'
is_bil_invoice = ls_bil_invoice
is_nast = nast
is_repeat = 'X'
IMPORTING
job_output_info = w_return
TABLES
t_list = t_print
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.
i_otf[] = w_return-otfdata[].
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
max_linewidth = 132
bin_filesize = v_len_in
TABLES
otf = i_otf
lines = i_tline
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
OTHERS = 4.
IF sy-subrc EQ 0.
ENDIF.
Convert PDF from 132 to 255.
LOOP AT i_tline.
TRANSLATE i_tline USING '~'.
CONCATENATE wa_buffer i_tline INTO wa_buffer.
ENDLOOP.
TRANSLATE wa_buffer USING '~'.
DO.
i_record = wa_buffer.
APPEND i_record.
SHIFT wa_buffer LEFT BY 255 PLACES.
IF wa_buffer IS INITIAL.
EXIT.
ENDIF.
ENDDO.
SEND MAIL
REFRESH: i_reclist,
i_objtxt,
i_objbin,
i_objpack.
CLEAR wa_objhead.
Object with PDF.
i_objbin[] = i_record[].
Object with main text of the mail.
i_objtxt = 'Fichas de Valorização e Esquemas Tipo'.
APPEND i_objtxt.
Document information.
wa_doc_chng-obj_name = 'SMART'.
wa_doc_chng-expiry_dat = sy-datum + 10.
wa_doc_chng-obj_descr = 'Ficha de Valorização'.
wa_doc_chng-sensitivty = 'F'. "Functional object
wa_doc_chng-doc_size = ( v_lines_txt - 1 ) * 255 + STRLEN( i_objtxt ).
Pack to main body as RAW.
Obj. to be transported not in binary form
DESCRIBE TABLE i_objtxt LINES v_lines_txt.
READ TABLE i_objtxt INDEX v_lines_txt.
CLEAR i_objpack-transf_bin.
i_objpack-head_start = 1.
i_objpack-head_num = 0.
i_objpack-body_start = 1.
i_objpack-body_num = v_lines_txt.
i_objpack-doc_type = 'RAW'.
APPEND i_objpack.
Packing as PDF.
Obj. to be transported in binary form
DESCRIBE TABLE i_objbin LINES v_lines_bin.
READ TABLE i_objbin INDEX v_lines_bin.
i_objpack-transf_bin = 'X'.
i_objpack-head_start = 1.
i_objpack-head_num = 0.
i_objpack-body_start = 1.
i_objpack-body_num = v_lines_bin.
i_objpack-doc_type = 'PDF'.
i_objpack-obj_name = 'SMART'.
CONCATENATE 'Ficha_Valorizacao' '.pdf' INTO i_objpack-obj_descr.
i_objpack-doc_size = ( v_lines_bin - 1 ) * 255 + STRLEN( i_objbin ).
APPEND i_objpack.
e-mail receivers.
CLEAR i_reclist.
i_reclist-receiver = sy-uname.
i_reclist-rec_type = 'B'.
i_reclist-express = 'X'.
APPEND i_reclist.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = wa_doc_chng
put_in_outbox = 'X'
commit_work = ' '
TABLES
packing_list = i_objpack
object_header = wa_objhead
contents_bin = i_objbin
contents_txt = i_objtxt
receivers = i_reclist
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.
IF sy-subrc EQ 0.
ENDIF.
End *************************************************
Thanks very much to all and Happy New year...
NelsonPlease check this link...
[http://help.sap.com/saphelp_nw04/helpdata/en/27/67443cc0063415e10000000a11405a/content.htm|http://help.sap.com/saphelp_nw04/helpdata/en/27/67443cc0063415e10000000a11405a/content.htm]
-Muktar -
Convert payslip to PDF format , for e-mailing to employees
HI with respect to my previous post 'Salary slip delivery thru email'
I have been able to send the email out in the html format. I want the employee to recieve the mail in the PDF format. I would like your assistance on this.
Here is the code.
tables: PV000,
T549Q,
PA0001,
V_T514D,
HRPY_RGDIR,
PA0002,
PA0105.
data: begin of ITAB occurs 0,
MTEXT(25) type C,
PERNR like PA0001-PERNR,
ABKRS like PA0001-ABKRS,
ENAME like PA0001-ENAME,
USRID_LONG like PA0105-USRID_LONG,
end of ITAB.
data: W_BEGDA like HRPY_RGDIR-FPBEG,
W_ENDDA like HRPY_RGDIR-FPEND.
data: RETURN like BAPIRETURN1 occurs 0 with header line.
data: P_INFO like PC407,
P_FORM like PC408 occurs 0 with header line,
P_P_FORM like PC408 occurs 0 with header line.
data: P_IDX type I,
MY_MONTH type T549Q-PABRP,
STR_MY_MONTH(2) type C,
MY_YEAR type T549Q-PABRJ,
STR_MY_YEAR(4) type C.
data: W_CMONTH(10) type C.
data: TAB_LINES type I,
ATT_TYPE like SOODK-OBJTP.
data: begin of P_INDEX occurs 0,
INDEX type I,
end of P_INDEX.
constants:
begin of F__LTYPE, "type of line
CMD like PC408-LTYPE value '/:', "command
TXT like PC408-LTYPE value 's', "textline
end of F__LTYPE.
constants:
begin of F__CMD, "commands
NEWPAGE like PC408-LINDA value '<NEW-PAGE>',
end of F__CMD.
data: P_LIST like ABAPLIST occurs 1 with header line.
data: OBJBIN like SOLISTI1 occurs 10 with header line,
DOCDATA like SODOCCHGI1,
OBJTXT like SOLISTI1 occurs 10 with header line,
OBJPACK like SOPCKLSTI1 occurs 1 with header line,
RECLIST like SOMLRECI1 occurs 1 with header line,
OBJHEAD like SOLISTI1 occurs 1 with header line.
INITIALIZATION *
initialization.
OBJBIN = ' | '.
append OBJBIN.
OBJPACK-HEAD_START = 1.
SELECTION SCREEN *
selection-screen begin of block BL1.
parameters: S_ABKRS like PV000-ABKRS obligatory default 'ZA'.
parameters: S_PERMO like T549Q-PABRP obligatory default '02'.
parameters: S_PABRP like T549Q-PABRP obligatory.
parameters: S_PABRJ like T549Q-PABRJ obligatory.
select-options: S_PERNR for PA0001-PERNR.
select-options: S_ORGEH for PA0001-ORGEH.
parameters: PAY_VAR like BAPI7004-PAYSLIP_VARIANT default
'ESS_PAYSLIPS' obligatory.
selection-screen end of block BL1.
AT SELECTION-SCREEN *
at selection-screen.
if SY-UCOMM ='ONLI'.
if S_PABRP > 24 or S_PABRP < 1.
message E999(YHR) with 'Improper Payroll Period'.
endif.
if S_PABRP > 9.
MY_MONTH = S_PABRP - 10 + 1.
STR_MY_MONTH = MY_MONTH.
MY_YEAR = S_PABRJ + 1.
STR_MY_YEAR = MY_YEAR.
else.
MY_MONTH = S_PABRP + 3.
STR_MY_MONTH = MY_MONTH.
MY_YEAR = S_PABRJ.
STR_MY_YEAR = MY_YEAR.
endif.
modified by Coul
if S_PERMO NE '2'.
message E999(YHR) with 'Improper Payroll Period Parameters'.
endif.
MY_YEAR = S_PABRJ.
STR_MY_YEAR = MY_YEAR.
shift STR_MY_MONTH left deleting leading SPACE.
shift STR_MY_MONTH right deleting trailing SPACE.
translate STR_MY_MONTH using ' 0'.
get payrol period first and last dates _ added by Coul
SELECT SINGLE *
FROM T549Q
WHERE PERMO = S_PERMO "Period param.; 02 = semi-monthly
AND PABRJ = S_PABRJ "Payroll period year
AND PABRP = S_PABRP. "Payroll period no.
W_BEGDA = T549Q-BEGDA.
W_ENDDA = T549Q-ENDDA.
concatenate STR_MY_YEAR STR_MY_MONTH '01' into W_BEGDA.
call function 'HR_HCP_GET_LAST_DAY_OF_MONTH'
exporting
IM_DATE = W_BEGDA
importing
EX_DATE_IS_MONTHEND =
EX_LAST_DAY_OF_MONTH = W_ENDDA.
select PA0001PERNR PA0001ABKRS PA0001~ENAME
into corresponding fields of table ITAB
from PA0001
join PA0000
on PA0000PERNR eq PA0001PERNR
join HRPY_RGDIR
on PA0001PERNR eq HRPY_RGDIRPERNR
where PA0001~PERNR in S_PERNR
where PA0001~ORGEH in S_ORGEH
and PA0001~ABKRS eq S_ABKRS
and PA0000~STAT2 eq '3'
and PA0001~ENDDA ge '99991231'
and PA0001~PLANS ne '99999999'
group by PA0001PERNR PA0001ABKRS PA0001~ENAME.
if SY-SUBRC <> 0.
message E999(YHR) with 'No record(s) found.'.
endif.
endif. "SY-UCOMM ='ONLI'
START-OF-SELECTION *
start-of-selection.
write : / 'Payroll Area : ',S_ABKRS.
write : / 'Payroll Period/Year : ',STR_MY_MONTH,'-',STR_MY_YEAR.
write : / 'System Date : ', SY-DATUM.
write : / 'System Time : ', SY-UZEIT.
write : / 'User Name : ', SY-UNAME.
write : / SY-ULINE.
sort ITAB by PERNR.
loop at ITAB.
clear : P_INFO, P_P_FORM, P_FORM, P_INDEX, P_LIST, OBJBIN,
DOCDATA, OBJTXT, OBJPACK, RECLIST, TAB_LINES.
refresh : P_P_FORM, P_FORM, P_INDEX, P_LIST, OBJBIN,
OBJTXT, OBJPACK, RECLIST.
select single *
from HRPY_RGDIR
where PERNR eq ITAB-PERNR
and FPBEG ge W_BEGDA
and FPEND le W_ENDDA
and SRTZA eq 'A'.
if SY-SUBRC = 0.
call function 'GET_PAYSLIP'
exporting
EMPLOYEE_NUMBER = ITAB-PERNR
SEQUENCE_NUMBER = HRPY_RGDIR-SEQNR
PAYSLIP_VARIANT = PAY_VAR
importing
RETURN = RETURN
P_INFO = P_INFO
tables
P_FORM = P_FORM.
check RETURN is initial.
loop at P_FORM
where LINDA eq F__CMD-NEWPAGE
and LTYPE eq F__LTYPE-CMD.
P_INDEX-INDEX = SY-TABIX.
append P_INDEX.
endloop.
P_IDX = 1.
refresh P_P_FORM.
append lines of P_FORM from P_IDX to P_INDEX-INDEX
to P_P_FORM.
P_IDX = P_INDEX-INDEX.
export P_P_FORM to memory id '%%_P_FORM_%%'.
export P_INFO to memory id '%%_P_INFO_%%'.
submit RPCEDT_LIST_TO_MEMORY exporting list
to memory and return.
call function 'LIST_FROM_MEMORY'
tables
LISTOBJECT = P_LIST.
call function 'TABLE_COMPRESS'
IMPORTING
COMPRESSED_SIZE =
tables
IN = P_LIST
OUT = OBJBIN
exceptions
others = 1.
OBJHEAD = 'Objhead'.
append OBJHEAD.
preparing subject
concatenate W_ENDDA(6)
' Payslip-' ITAB-ENAME0(28) '(' ITAB-PERNR4(4) ')'
into DOCDATA-OBJ_DESCR.
DOCDATA-OBJ_NAME = 'Pay Slip'.
DOCDATA-OBJ_LANGU = SY-LANGU.
OBJTXT = 'Pay Slip.'.
append OBJTXT.
OBJTXT = DOCDATA-OBJ_DESCR.
append OBJTXT.
OBJTXT = 'Have a nice day.'.
append OBJTXT.
Write Packing List (Main)
3 has been fixed because OBJTXT has fix three lines
read table OBJTXT index 3.
DOCDATA-DOC_SIZE = ( 3 - 1 ) * 255 + strlen( OBJTXT ).
clear OBJPACK-TRANSF_BIN.
OBJPACK-HEAD_START = 1.
OBJPACK-HEAD_NUM = 0.
OBJPACK-BODY_START = 1.
OBJPACK-BODY_NUM = 3.
OBJPACK-DOC_TYPE = 'RAW'.
append OBJPACK.
Create Message Attachment
Write Packing List (Attachment)
ATT_TYPE = 'ALI'.
describe table OBJBIN lines TAB_LINES.
read table OBJBIN index TAB_LINES.
OBJPACK-DOC_SIZE =
( TAB_LINES - 1 ) * 255 + strlen( OBJBIN ).
OBJPACK-TRANSF_BIN = 'X'.
OBJPACK-HEAD_START = 1.
OBJPACK-HEAD_NUM = 0.
OBJPACK-BODY_START = 1.
OBJPACK-BODY_NUM = TAB_LINES.
OBJPACK-DOC_TYPE = ATT_TYPE.
OBJPACK-OBJ_NAME = 'ATTACHMENT'.
OBJPACK-OBJ_DESCR = 'Payslip'.
append OBJPACK.
Create receiver list
refresh RECLIST.
clear RECLIST.
select single *
from PA0105
where PERNR eq ITAB-PERNR
and SUBTY eq 'MAIL'
and SUBTY eq '0001'
and USRID ne ''
and PA0105~ENDDA ge '99991231'.
if SY-SUBRC = 0.
RECLIST-RECEIVER = PA0105-USRID.
translate RECLIST-RECEIVER to lower case.
ITAB-USRID_LONG = RECLIST-RECEIVER.
RECLIST-REC_TYPE = 'U'.
append RECLIST.
Send the document
call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'
exporting
DOCUMENT_DATA = DOCDATA
PUT_IN_OUTBOX = 'X'
PUT_IN_OUTBOX = ''
COMMIT_WORK = 'X'
IMPORTING
SENT_TO_ALL =
NEW_OBJECT_ID =
tables
PACKING_LIST = OBJPACK
OBJECT_HEADER = OBJHEAD
CONTENTS_BIN = OBJBIN
CONTENTS_TXT = OBJTXT
CONTENTS_HEX =
OBJECT_PARA =
OBJECT_PARB =
RECEIVERS = RECLIST
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.
if SY-SUBRC <> 0.
ITAB-MTEXT = 'Message Not Sent to : '.
else.
ITAB-MTEXT = 'Message Sent to : '.
endif.
else.
ITAB-MTEXT = 'Message Not Sent to : '.
endif.
else. "SY-SUBRC Not = 0 HRPY_RGDIR
ITAB-MTEXT = 'Payroll data not found : '.
endif. " end of SY-SUBRC = 0. HRPY_RGDIR
modify ITAB.
endloop. "end loop at ITAB
sort ITAB by MTEXT PERNR.
loop at ITAB.
at new MTEXT.
uline.
write : / ITAB-MTEXT color 4 intensified on.
write : / 'Emp. Code' color 2 intensified on,
12 'Emp. Name' color 2 intensified on,
54 'Email ID' color 2 intensified on.
endat.
write : / ITAB-PERNR, 12 ITAB-ENAME, 54 ITAB-USRID_LONG.
endloop.hi,
You can send the list output to spool.
print-on ...
PERFORM REPORT_OUTPUT.
print-off.
From there, you can convert that to pdf.
fm CONVERT_ABAPSPOOLJOB_2_PDF
Getting that pdf conversion done, you can send thE same to mail..
fm SO_NEW_DOCUMENT_ATT_SEND_API1
Regards,
Sailaja.
Maybe you are looking for
-
Can't see FCE projects in full screen..?
Sometimes I can view clips in the timeline in full screen by going to VIEW - VIDEO OUT - Then it says Digital Cinema Desktop Preview (Main). When this is in bold font, I can click it, and view, but when it's not bold - like now, I can't...? Not aware
-
HD AVI FILE Compatibility I am working with a company to have our family home movies (8mm & super 8mm) from the 50's-70's and 35mm color slides restored and transferred onto a digital format (DVD archive and digital HD-AVI files saved on an external
-
Disk utility disabled the verify disk button
Hi. Up to 5 minutes ago, I was able to run the disk utility and verify my disk. Now, only the permission-related buttons are enabled. Does anyone know why this happened? Why can't I verify my disk anymore? Thanks a lot. mircea
-
ISE policy creation question - best practices
Ok, I am a rookie ISE user here and am trying to learn as I go. I have a 802.1x policy for our corporate users on both wired and wireless and a wireless guest policy that redirects to the guest portal to enter credentials created in the sponsor porta
-
Photoshop 5.0 will not install.
I purchassed Adobe Photoshop 5.0 LE and I can't get it to install on my PC Windows XP. I have the instulation disk and the key code but when I insert the disk into the CD drive nothing happens.