Smartform to PDF Conversion with number of copies to be printed
Hi,
I have requirement to display pdf in an iview for which i created a smartform and converted it into PDF using the Function Module 'CONVERT_OTF'.
Now my requirement is, when the user press the 'Print' option in the Adobe Reader, automatically 3 copies needs to be printed..
Is there any way to do this? If so, please let me know.
Thanks,
Sri
That is a question for the Adobe applications support. Regards.
Similar Messages
-
PDF conversion with PDF2ID; Hypertext not working when exported back to pdf.
I have done a PDF conversion with PDF2ID, however Hypertext is not working when I exported it back to pdf. I am using the PDF2ID plug-in program to redo all the product booklets for our company as the hypertext did not work when downloaded to any smart phone. All that appeared were blank placeholders in each booklet index page.
According to the PDF2ID people the program plug-in recovers all URLs static and dynamic and bookmarks and local links and suggested I check with Adobe ID5 for help, but Adobe says my $1,000 ID5 is no longer supported and that I should go to the forums.....so here I am.
This is the first time I've even opened my ID5, so I'm a bit lost. Now I need to improve the quality of the PDFs, as we also need to convert all images to TIFF-CMYK in order to have the booklets printed & bound professionally. they tell me ID can do that.
Any help is greatly appreciated.
DavidDaveorne wrote:
they tell me ID can do that.
Ugh...in some companies, that is training.
Don't take this the wrong way David, but of course ID can't do anything. PDF2ID conversions can be sketchy in the hands of the experienced. The same can be said of properly preparing matials for print. As Bob has already alluded, you're in an unfair position there. It's not uncommon for "management" types to just throw some sophisticated tools at a need and expect someone to make it work. In order to do what's being asked of you, you'll have to learn a fair bit about InDesign and production. It's too soon to ask about the output when you haven't learned to manage the input. -
How to send smartforms as pdf attachments with e mail
hi experts,
how to send smartforms as pdf attachments with e mail???
nitinHi
In the FORM Interface put proper parameter. Hope this helps. -
Unable to print number of copies on label printer
Hi Everyone,
I am able to print smartform any number of copies on standard printer.
But when I change from standard printer name to Label printer name and execute the smartform with number of copies ( greater than 1 ).
For label printer I am able to print only one copy, irrespective of number of copies specified. However I can able to number of copies specified for standard printer.
Can anyone help me what could be the reason? Is that any settings should be done for label printer ?
Thanks.
From
ReddyPaddy,
Welcome to Apple Discussions.
The problem might be a corrupt preference. Does this problem occur with all applications? If not, which application?
Try Repair Disk Permissions using Disk Utility. -
Setting the number of copies to be printed through crystal reports?
I posted this in another section and got redirected to this one.
So I'm working with some software that utilizes Crystal Reports 10, and am looking for a method where through Crystal Reports I can take a user entered parameter value and set that as the number of copies for the printer to print. This isn't an option in Crystal Reports itself, so I understand I may need to dig a little deeper and write some customization to accomplish this.
I've been building Crystal Reports for about two years now, all self taught, but have never had to go this far, where/how would I start on this? And I tried searching for a similar question in these forums to see if it's come up before but couldn't find anything. I'm kind of stuck at the moment because I can't alter the software that's using Crystal Reports to set number of copies, so I want to see if I can do anything in Crystal.Really, this is actually more of a report design question, though I understand why they's ask you to post here also.
Anyhow, I think what you are asking is; can I design a report such that it will internally hold how many copies it should print(?).
Answer to that is no.
Only way to do multiple copies would be to modify the app you are working with. E.g.; go to the authors of the app and ask them for an enhancement to their product so that you can print multiple copies.
- Ludek -
Smartform to PDF conversion having issue with Russian address
We are having a business situation we are the invoice in English language and the the address of ship-to party and sold-to party in Russian.
The issue we face is.
When the smartform is converted to PDF the Russian specific characters are missing in the PDF output. The same are perfect in the smart form print preview.
we are using CONVERT_OTF function module and we are getting the Russian characters correctly in the table parameter OTF.
We are using "SX_TABLE_LINE_WIDTH_CHANGE" and " SO_DOCUMENT_SEND_API1"
function module to attach and mail the pdf.
In the PDF we are missing the Russian specific characters .
For Example in "Sedláčkova čč" the output is "Sedláčkova " means "čč" is mising
Thanks in advance
Regards
JobyHi,
As described in note 999712 - PDF conversion for Unicode, there is a new unicode PDF converter PDFUC.
It depends on the SAP Version if you have to install the device type or not. You can check also via SPAD -> Full Administration -> Device Types -> Display.
You can pass the device type in the output options. I used:
SSFCTRLOP-no_dialog = 'X'.
SSFCTRLOP-getotf = 'X'.
SSFCTRLOP-langu = 'EN'.
SSFCOMPOP-tdprinter = 'PDFUC'.
If you specify a device other than printer in the control options like SSFCTRLOP-device = 'TELEFAX'., above will not work as
SSFCOMPOP-tdprinter is only evaluated for printer.
You have to check in SCOT -> Settings -> Device Types for Format Conversion.
You can make a general entry or for a specific language:
PDF SAPscript/Smart Forms PDFUC
PDF EN English SAPscript/Smart Forms PDFUC
Let me know if you get this working.
Jeroen. -
Want to Send smartform as pdf attachment with a Email to some mail id
Hi ,
I want to send a smartform as a PDF attachment with a mail to a mail id. And I can send a mail with the PDF attachment.
But I am not able to open the PDF. It is throwing some error (Adobe reader could not open u2018fileu2019 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 not correctly decoded)).
By debugging I come to know that the file which is generating is in some encoding format.
Please help me regard this. This is very urgent.
here is the code,
Main Program :
REPORT Ztest_report.
*--Top Include for Global Data Declarations.
INCLUDE ztest_report_top.
*--Form Include for Form Routines.
INCLUDE ztest_report_form.
START-OF-SELECTION.
START-OF-SELECTION.
*--Display data
Perform display_data.
END-OF-SELECTION.
Top declaration :
Internal table
DATA : i_otfdata TYPE tsfotf, " Smart Forms: Table OTF
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
w_mailaddr TYPE ppfdmailad,
w_mailtype TYPE so_escape,
w_mailrecipient TYPE swotobjid,
w_control 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
wa_objhead TYPE soli_tab,
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.
Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-009.
PARAMETER: p_bukrs TYPE bukrs OBLIGATORY, "Company Code
p_belnr TYPE belnr_d OBLIGATORY, "Document No
p_gjahr TYPE gjahr OBLIGATORY, "document type
p_mailid(50) TYPE c OBLIGATORY.
"Mail Id
SELECTION-SCREEN END OF BLOCK blk1.
Form Logic :
FORM display_data.
*Local Variable declaration
DATA: lc_fm TYPE rs38l_fnam, "local variable to store the
l_i_document_output_info TYPE ssfcrespd,
l_i_struc_job_output_info TYPE ssfcrescl,
l_i_struc_job_output_options TYPE ssfcrescl,
i_lines TYPE TABLE OF tline WITH HEADER LINE,
lv_job_output_info TYPE ssfcrescl,
lv_document_output_info TYPE ssfcrespd,
lv_job_output_options TYPE ssfcresop,
lv_bin_filesize LIKE sood-objlen.
Determine the smartform name
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZTEST_SMARTFORM'
IMPORTING
fm_name = lc_fm
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_control-getotf = 'X'.
w_control-no_dialog = 'X'.
w_control-preview = space.
w_control-device = 'MAIL'.
Call the smartform and pass the selection screen parameter
CALL FUNCTION lc_fm
EXPORTING
control_parameters = w_control
output_options = w_compop
user_settings = 'X'
t_bukrs = p_bukrs
t_belnr = p_belnr
t_gjahr = p_gjahr
IMPORTING
job_output_info = l_i_struc_job_output_info
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.
Moving the Smart Forms: Table OTF into an internal table
i_otfdata[] = l_i_struc_job_output_info-otfdata[].
CONVERT TO OTF TO PDF.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
max_linewidth = 132
IMPORTING
bin_filesize = lv_bin_filesize
TABLES
otf = i_otfdata
lines = i_lines
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
err_bad_otf = 4
OTHERS = 5.
IF sy-batch EQ l_c_no.
To directly view the print-preview in PDF format
CALL FUNCTION 'SSFCOMP_PDF_PREVIEW'
EXPORTING
i_otf = i_otfdata
EXCEPTIONS
convert_otf_to_pdf_error = 1
cntl_error = 2
OTHERS = 3.
For Sending the PDF file to a Mail ID.
LOOP AT i_lines.
TRANSLATE i_lines USING '~'.
CONCATENATE wa_buffer i_lines 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.
DATA: BEGIN OF zlines OCCURS 0,
tline TYPE char255,
END OF zlines.
*Change the PDF format from 132 to 255.
CALL FUNCTION 'SX_TABLE_LINE_WIDTH_CHANGE'
EXPORTING
transfer_bin = 'X'
TABLES
content_in = i_lines
content_out = zlines
EXCEPTIONS
err_line_width_src_too_long = 1
err_line_width_dst_too_long = 2
err_conv_failed = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Attachment
REFRESH: i_reclist,
i_objtxt,
i_objbin,
i_objpack.
CLEAR wa_objhead.
i_objbin[] = zlines[].
Create Message Body Title and Description
i_objtxt = 'test with pdf-Attachment!'.
APPEND i_objtxt.
DESCRIBE TABLE i_objtxt LINES v_lines_txt.
READ TABLE i_objtxt INDEX v_lines_txt.
wa_doc_chng-obj_name = 'smartform'.
wa_doc_chng-expiry_dat = sy-datum + 10.
wa_doc_chng-obj_descr = 'smartform'.
wa_doc_chng-sensitivty = 'F'.
wa_doc_chng-doc_size = v_lines_txt * 255.
Main Text
CLEAR i_objpack-transf_bin.
i_objpack-head_start = 1.
i_objpack-head_num = 1.
i_objpack-body_start = 2.
i_objpack-body_num = v_lines_txt.
i_objpack-doc_type = 'RAW'.
APPEND i_objpack.
Attachment (pdf-Attachment)
i_objpack-transf_bin = 'X'.
i_objpack-head_start = 1.
i_objpack-head_num = 1.
i_objpack-body_start = 2.
I_OBJPACK-DOC_TYPE = 'RAW'.
DESCRIBE TABLE i_objbin LINES v_lines_bin.
READ TABLE i_objbin INDEX v_lines_bin.
i_objpack-doc_size = v_lines_bin * 255 .
i_objpack-body_num = v_lines_bin.
i_objpack-doc_type = 'PDF'.
i_objpack-obj_name = 'smart'.
i_objpack-obj_descr = 'test'.
APPEND i_objpack.
CLEAR i_reclist.
i_reclist-receiver = p_mailid.
i_reclist-rec_type = 'U'.
APPEND i_reclist.
Send new document with attachments via RFC
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = wa_doc_chng
put_in_outbox = 'X'
commit_work = 'X'
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 <> 0.
WRITE:/ 'Error When Sending the File', sy-subrc.
ELSE.
WRITE:/ 'Mail sent'.
ENDIF.
ENDFORM. " display_datahi,
i wrote a programm.for me it is working.i think it will help for u.
DATA: t_otfdata TYPE ssfcrescl,
t_lines LIKE tline OCCURS 0 WITH HEADER LINE,
t_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
t_RECORD LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE.
Objects to send mail.
DATA:T_OBJPACK LIKE SOPCKLSTI1 OCCURS 0 WITH HEADER LINE,
T_OBJTXT LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE,
T_OBJBIN LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE,
T_RECLIST LIKE SOMLRECI1 OCCURS 0 WITH HEADER LINE.
DATA: w_filesize TYPE i,
w_bin_filesize TYPE i,
wa_ctrlop TYPE ssfctrlop,
wa_outopt TYPE ssfcompop,
WA_BUFFER TYPE STRING, "To convert from 132 to 255
WA_OBJHEAD TYPE SOLI_TAB,
WA_DOC_CHNG TYPE SODOCCHGI1,
W_DATA TYPE SODOCCHGI1.
DATA: form_name TYPE rs38l_fnam,
V_LINES_TXT TYPE I,
V_LINES_BIN TYPE I,
nast-spras type sy-langu value 'DE'.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZSR_DEMO1'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = 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.
wa_ctrlop-LANGU = nast-spras.
wa_ctrlop-getotf = 'X'.
wa_ctrlop-no_dialog = 'X'.
wa_outopt-tdnoprev = 'X'.
CALL FUNCTION form_name
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = wa_ctrlop
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS = wa_outopt
USER_SETTINGS = 'X'
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = t_otfdata
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.
t_otf[] = t_otfdata-otfdata[].
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
ARCHIVE_INDEX = ' '
COPYNUMBER = 0
ASCII_BIDI_VIS2LOG = ' '
PDF_DELETE_OTFTAB = ' '
IMPORTING
BIN_FILESIZE = w_bin_filesize
BIN_FILE =
TABLES
OTF = t_otf
LINES = t_lines
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
ERR_BAD_OTF = 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.
loop at t_lines.
TRANSLATE t_lines USING '~'.
CONCATENATE WA_BUFFER T_LINES INTO WA_BUFFER.
ENDLOOP.
TRANSLATE WA_BUFFER USING '~'.
DO.
t_RECORD = WA_BUFFER.
APPEND t_RECORD.
SHIFT WA_BUFFER LEFT BY 255 PLACES.
IF WA_BUFFER IS INITIAL.
EXIT.
ENDIF.
ENDDO.
Attachment
REFRESH: T_RECLIST,
T_OBJTXT,
T_OBJBIN,
T_OBJPACK.
CLEAR WA_OBJHEAD.
T_OBJBIN[] = T_RECORD[].
Create Message Body Title and Description
T_OBJTXT = 'test with pdf-Attachment!'.
APPEND T_OBJTXT.
DESCRIBE TABLE T_OBJTXT LINES V_LINES_TXT.
READ TABLE T_OBJTXT INDEX V_LINES_TXT.
WA_DOC_CHNG-OBJ_NAME = 'smartform'.
WA_DOC_CHNG-EXPIRY_DAT = SY-DATUM + 10.
WA_DOC_CHNG-OBJ_DESCR = 'smartform'.
WA_DOC_CHNG-SENSITIVTY = 'F'.
WA_DOC_CHNG-DOC_SIZE = V_LINES_TXT * 255.
Main Text
CLEAR T_OBJPACK-TRANSF_BIN.
T_OBJPACK-HEAD_START = 1.
T_OBJPACK-HEAD_NUM = 0.
T_OBJPACK-BODY_START = 1.
T_OBJPACK-BODY_NUM = V_LINES_TXT.
T_OBJPACK-DOC_TYPE = 'RAW'.
APPEND T_OBJPACK.
Attachment (pdf-Attachment)
T_OBJPACK-TRANSF_BIN = 'X'.
T_OBJPACK-HEAD_START = 1.
T_OBJPACK-HEAD_NUM = 0.
T_OBJPACK-BODY_START = 1.
DESCRIBE TABLE T_OBJBIN LINES V_LINES_BIN.
READ TABLE T_OBJBIN INDEX V_LINES_BIN.
T_OBJPACK-DOC_SIZE = V_LINES_BIN * 255 .
T_OBJPACK-BODY_NUM = V_LINES_BIN.
T_OBJPACK-DOC_TYPE = 'PDF'.
T_OBJPACK-OBJ_NAME = 'smart'.
T_OBJPACK-OBJ_DESCR = 'test'.
APPEND T_OBJPACK.
CLEAR T_RECLIST.
T_RECLIST-RECEIVER = 'mail id'.
T_RECLIST-REC_TYPE = 'U'.
APPEND T_RECLIST.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = WA_DOC_CHNG
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
TABLES
PACKING_LIST = T_OBJPACK
OBJECT_HEADER = WA_OBJHEAD
CONTENTS_BIN = T_OBJBIN
CONTENTS_TXT = T_OBJTXT
RECEIVERS = T_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.
WRITE:/ 'Error When Sending the File', SY-SUBRC.
ELSE.
WRITE:/ 'Mail sent'.
ENDIF.
please reward me if helpful. -
Smartform to pdf conversion and send as attachment
Hi,
my requirement is i have to change the smartform to pdf and send as attachment to mail id's.
For specified smartform it is converting and sending as pdf
but in my selection screen i have to give smartform name and mail id's.
if i give any other smartform name it is going to dump.because of parameters.
every smartform is not having same parameter.
so how i can differentiate between the smartforms
it means import and export parameters are changing for every smartform.
how to solve this problem.
thanks.
venki
<MOVED BY MODERATOR TO THE CORRECT FORUM>
Edited by: Alvaro Tejada Galindo on Dec 28, 2009 2:20 PMHi Venki,
Use the below code...
Give the form name into SSF function module from the selection screen and get the import parameter FM name (smartform FM which will be unique). Give that to the next FM and get the import parameter and covert the same to pdf using the CONVERT OTF.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = P_FORMNAME
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 FM_NAME
EXPORTING
CONTROL_PARAMETERS = WA_CTRLOP
OUTPUT_OPTIONS = WA_OUTOPT
USER_SETTINGS = 'X'
IMPORTING
JOB_OUTPUT_INFO = T_OTFDATA
TABLES
T_ITAB = T_ITAB3
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.
T_OTF[] = T_OTFDATA-OTFDATA[].
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
IMPORTING
BIN_FILESIZE = W_FILESIZE
TABLES
OTF = T_OTF[]
LINES = T_PDF_TAB[]
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
OTHERS = 4.
Cheers,
Sanil
T
Code Formatted by: Alvaro Tejada Galindo on Dec 28, 2009 2:19 PM -
Smartform to pdf conversion Doubt
Dear Expert
i'm refering the below code to convert smartform to pdf in module pool program i have created two pushbuttons one for preview and one for edit, if users edit the values it will store in ztable and then they want to preview that changes in form but its not happening its showing old values only i tried to free the container and cleared the data and url values but still same this how to rectify this can some one hlep me out,
FIELD-SYMBOLS <FS_X> TYPE X.
INITIALIZATION.
LS_CONTROL_PARAM-GETOTF = 'X'.
LS_CONTROL_PARAM-NO_DIALOG = 'X'.
START-OF-SELECTION.
CALL FUNCTION '/1BCDWB/SF00000034'
EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = LS_CONTROL_PARAM
P_VBELN = P_VBELN
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
* OUTPUT_OPTIONS =
* USER_SETTINGS = 'X'
IMPORTING
* DOCUMENT_OUTPUT_INFO = L_DOCUMENT_OUTPUT_INFO
JOB_OUTPUT_INFO = L_JOB_OUTPUT_INFO
* JOB_OUTPUT_OPTIONS = L_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.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
IMPORTING
BIN_FILESIZE = PDF_FSIZE
TABLES
OTF = L_JOB_OUTPUT_INFO-OTFDATA
LINES = LT_PDF
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
OTHERS = 4.
* convert pdf to xstring string
LOOP AT LT_PDF INTO LS_PDF.
ASSIGN LS_PDF TO <FS_X> CASTING.
CONCATENATE LV_CONTENT <FS_X> INTO LV_CONTENT IN BYTE MODE.
ENDLOOP.
CALL SCREEN 100.
*& Module STATUS_0100 OUTPUT
* text
MODULE STATUS_0100 OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.
CREATE OBJECT G_HTML_CONTAINER
EXPORTING
CONTAINER_NAME = 'PDF'.
CREATE OBJECT G_HTML_CONTROL
EXPORTING
PARENT = G_HTML_CONTAINER.
* Convert xstring to binary table to pass to the LOAD_DATA method
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
EXPORTING
BUFFER = LV_CONTENT
TABLES
BINARY_TAB = LT_DATA.
* Load the HTML
CALL METHOD G_HTML_CONTROL->LOAD_DATA(
EXPORTING
TYPE = 'application'
SUBTYPE = 'pdf'
IMPORTING
ASSIGNED_URL = LV_URL
CHANGING
DATA_TABLE = LT_DATA
EXCEPTIONS
DP_INVALID_PARAMETER = 1
DP_ERROR_GENERAL = 2
CNTL_ERROR = 3
OTHERS = 4 ).
* Show it
CALL METHOD G_HTML_CONTROL->SHOW_URL( URL = LV_URL
IN_PLACE = 'X' ).
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
* text
MODULE USER_COMMAND_0100 INPUT.
ENDMODULE. " USER_COMMAND_0100 INPUT
Regards,
Thirukumaran. R
Edited by: thirukumaran rajendran on Jun 9, 2010 3:19 PMhey,,
U can use 'RSTXPDFT4' -
Automated report/ PDF conversion with AppleScript
Hello-
I am attempting to PDF a spreadsheet from Dropbox, and email it to a set list of recipients with AppleScript. Much of this I have been able to figure out, but I am having some issues with the PDF conversion. As you can see below, I am still working on sending the xls file, and have not yet been able to get AppleScript to convert a specific tab of the file to aPDF. I expect scheduling to be handled theough crontab.
Current script is as follows:
tell application "Finder"
set folderPath to folder "Macintosh HD:Users:user:Dropbox:folder:Calculated PO Sheet"
set theFile to first file in folderPath as alias
set fileName to name of theFile
end tell
set theSubject to "Current PO Report" date
set theBody to "See attached."
set theAddress to "recipient email"
set theAttachment to "CALCULATED PO SHEET.xlsx"
set theSender to "sender email"
tell application "Mail"
set theNewMessage to make new outgoing message with properties{subject:theSubject, content:theBody & return & return, visible:true}
tell theNewMessage
set visibile to true
set sender to theSender
make new to recipient at end of to recipients with properties {address:theAddress}
try
make new attachment with properties {file name:theAttachment} at after the last word ofthe last paragraph
set message_attachment to 0
on error errmess -- oops
log errmess -- log the error
set message_attachment to 1
end try
log "message_attachment = " & message_attachment
#send
end tell
end tellHi,
there is a special setup for this requirement. Please see the following support note
Reference
Oracle Reports Output For Indian Languages Like Gujarati, Marathi [ID 980554.1]
Roberto -
ALV to PDF conversion with a page break
Friends,
I have a need where I need to print ALV in PDF format with a page break. Any advice on how to do this ? Is it possible to print in PDF format in ver ECC 6.0 without using OTF conversion routine ?
I tried to create a new device type PDF got an error in the spool when tried to print ?
Thanks,
Abap PMHi,
Check the below links.
[LINK1|https://wiki.sdn.sap.com/wiki/display/Snippets/SaveReportOutputtoaPDFFile]
[LINK2|Convert ABAP Report's Output into PDF Format..;
[LINK3|https://wiki.sdn.sap.com/wiki/display/ABAP/PDF%20Downlaod%20By%20Creating%20Spool%20Request]
Thanks,
Sreekanth -
How to ask for a number of copies in Finder Print?
How to ask for a number of copies in Print Finder Items? Thanks.
iBook G3 700 Mac OS X (10.4.8) Still running a paperless office on my iBook! 120gig, 640RAM, 1440 x 900 2nd monitor! 500gig FW-HD!Here is a script that will create a "Run AppleScript" action in Automater that should do what you want. Just click on the link and hit the Run button in Script Editor.
I wanted to get this too you fast so there is no error checking on the text entered into the dialog. Let me know if you want it added.
click here to open this script in your editor<pre style="font-family: 'Monaco', 'Courier New', Courier, monospace; overflow:auto; color: #222; background: #DDD; padding: 0.2em; font-size: 10px; width:400px">
tell application "Automator"
make new workflow
-- Action 1
add Automator action "Run AppleScript" to workflow 1
set value of setting 1 of Automator action 1 of workflow 1 to "on run {input, parameters}
tell application \"Finder\"
activate
set theFiles to input
display dialog \"How many copies do you want\" default answer \"1\"
set NumberOfCopies to text returned of the result as integer
end tell
repeat with aFile in theFiles
repeat with j from 1 to NumberOfCopies
tell application \"Finder\" to display dialog \"Printing copy \" & j & return & aFile giving up after 2
tell application \"Finder\" to print aFile
end repeat
end repeat
return input
end run"
end tell</pre>
PowerBook 12" Mac OS X (10.4.8) -
Passing Number of copies / Duplex into print presets
I need to pass the servers simplex/duplex and number of copies settings into the print presets so the user doesn't have to remember each forms setting.
Can I pass these through the xfdf?No, but the simplex/duplex setting can be embedded into the form if you're using XFA forms.
-
PDF conversion with windows 2000 not working
Hello all, I have a BSP application that is up and running. When I print with an XP machine, I have no problems. When I print with a windows 2000 machine, I am looping and never getting to the PDF open screen. It just keeps looping but if I try from a XP machine, everything works.
Any help would be appreciated. i have included some of the code.
* Conversion of output format OTF into PDF format
* now convert the final document (OTF format) into PDF format
call function 'CONVERT_OTF'
exporting
format = 'PDF'
* MAX_LINEWIDTH = 132
* ARCHIVE_INDEX = ' '
* COPYNUMBER = 0
importing
bin_filesize = l_pdf_len
bin_file = l_pdf_xstring " binary file
tables
otf = ls_output_data-otfdata
lines = lt_lines
exceptions
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
err_bad_otf = 4
others = 5
if sy-subrc <> 0.
* error handling
* message id sy-msgid type sy-msgty number sy-msgno
* with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
* Fill HTTP request
response->set_header_field( name = 'content-type'
value = 'application/pdf' ).
* response->delete_header_field( name = 'pragma' ).
* response->delete_header_field( name = 'expires' ).
* response->delete_header_field( name = 'cache-control' ).
* some Browsers have caching problems when loading PDF format
response->set_header_field(
name = 'cache-control'
value = 'max-age=0' ).
* start PDF viewer either in the Browser or as a separate window
if pdf_in_browser is initial.
response->set_header_field(
name = 'content-disposition'
value = 'attachment; filename=BenConf.pdf' ).
endif.
* finally display PDF format in Browser
l_pdf_len = xstrlen( l_pdf_xstring ).
response->set_data( data = l_pdf_xstring
length = l_pdf_len ).
navigation->response_complete( ).You must remove all the no-cache headers and definitely disable GZIP compression for PDF files.
Look at <a href="https://wiki.sdn.sap.com/wiki/display/BSP">BSP Wiki</a>:
Handling Binary Data
PDF -
Hi Experts ,
I am sending an e-mail aith a PDF attachment , the attachment contains a greeting card (BIT MAP file),
When i find the mail , PDF is opening with error 'Drawing Error Occured'.
Pls find the sample code ...
CALL FUNCTION V_FORM_NAME
EXPORTING
ARCHIVE_PARAMETERS = W_ARCLOP
CONTROL_PARAMETERS = W_CTRLOP
OUTPUT_OPTIONS = W_COMPOP
USER_SETTINGS = 'X'
IMPORTING
JOB_OUTPUT_INFO = W_RETURN
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
IMPORTING
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.
CHECK NOT ( I_TLINE[] IS INITIAL ).
DATA :LV_COUNTER TYPE I.
DATA :LV_FROM TYPE I.
LOOP AT I_TLINE.
TRANSLATE I_TLINE USING ' ~' .
CONCATENATE IT_ATTACHMENT_LONG I_TLINE INTO IT_ATTACHMENT_LONG
ENDLOOP.
TRANSLATE IT_ATTACHMENT_LONG USING '~ ' .
APPEND IT_ATTACHMENT_LONG.
CLEAR : LV_COUNTER.
DO.
LV_COUNTER = STRLEN( IT_ATTACHMENT_LONG ).
IF LV_COUNTER GE 255.
IT_ATTACHMENT = IT_ATTACHMENT_LONG(255).
APPEND IT_ATTACHMENT.
SHIFT IT_ATTACHMENT_LONG BY 255 PLACES.
ELSE.
IT_ATTACHMENT = IT_ATTACHMENT_LONG(LV_COUNTER).
APPEND IT_ATTACHMENT.
EXIT.
ENDIF.
ENDDO.
*END:ADDED COMMENTS LINE BY SUHAS 27.01.2007
DESCRIBE TABLE LT_OBJTXT LINES L_TAB_LINES.
READ TABLE LT_OBJTXT INDEX L_TAB_LINES.
LE_DOC_CHNG-DOC_SIZE = ( L_TAB_LINES - 1 ) * 255
+ STRLEN( LT_OBJTXT ).
Title of the email as spool name
CONCATENATE 'Happy Birthday :' T522T-ATEXT PA0002-VORNA PA0002-NACHN
INTO TITLE SEPARATED BY SPACE.
LV_DOCUMENT_DATA-OBJ_DESCR = TITLE.
LV_DOCUMENT_DATA-SENSITIVTY = 'O'.
LV_DOCUMENT_DATA-EXPIRY_DAT = SY-DATUM + 15.
LV_DOCUMENT_DATA-DOC_SIZE = STRLEN( LT_OBJTXT ).
e-mail body
CLEAR LT_OBJPACK.
LT_OBJPACK-HEAD_START = 1.
LT_OBJPACK-HEAD_NUM = 0.
LT_OBJPACK-BODY_START = 1.
LT_OBJPACK-BODY_NUM = L_TAB_LINES.
LT_OBJPACK-DOC_TYPE = 'RAW'.
APPEND LT_OBJPACK.
*START:ADDED COMMENTS BY SUHAS 27.01.2007
For e-mail attachment
DESCRIBE TABLE IT_ATTACHMENT LINES L_ATT_LINES.
READ TABLE IT_ATTACHMENT INDEX L_ATT_LINES.
*END:ADDED COMMENTS BY SUHAS 27.01.2007
*START:ADDED COMMENTS BY SUHAS 27.01.2007
CLEAR LT_OBJPACK.
LT_OBJPACK-TRANSF_BIN = 'X'.
LT_OBJPACK-HEAD_START = 1.
LT_OBJPACK-HEAD_NUM = 1.
LT_OBJPACK-BODY_START = 1.
LT_OBJPACK-BODY_NUM = L_ATT_LINES.
LT_OBJPACK-DOC_TYPE = 'PDF'.
LT_OBJPACK-OBJ_NAME = 'email'.
LT_OBJPACK-OBJ_DESCR = LV_SPOOL_DESC.
LT_OBJPACK-DOC_SIZE = ( 255 * ( L_ATT_LINES - 1 ) ) +
STRLEN(
IT_ATTACHMENT-LINE ).
LT_OBJPACK-OBJ_NAME = 'Salary Slip'.
LT_OBJPACK-OBJ_NAME = TITLE.
WRITE SY-DATUM TO LT_OBJPACK-OBJ_DESCR.
CONCATENATE 'Bday' LT_OBJPACK-OBJ_DESCR INTO
LT_OBJPACK-OBJ_DESCR
SEPARATED BY SPACE.
CONCATENATE LT_OBJPACK-OBJ_DESCR '.PDF' INTO
LT_OBJPACK-OBJ_DESCR.
APPEND LT_OBJPACK.
*END:ADDED COMMENTS BY SUHAS 27.01.2007
LT_RECLIST-RECEIVER = PA0105-USRID_LONG.
LT_RECLIST-REC_TYPE = 'U'.
APPEND LT_RECLIST.
CLEAR LT_RECLIST.
LT_RECLIST-RECEIVER = V_RESMAIL.
LT_RECLIST-REC_TYPE = 'U'.
APPEND LT_RECLIST.
CLEAR LT_RECLIST.
*START:ADDED LINE BY SUHAS 25.01.08
SELECT SINGLE BUKRS INTO PA0001-BUKRS
FROM PA0001
WHERE PERNR EQ IT_PA0001-PERNR AND
BEGDA LE SY-DATUM AND
ENDDA GE SY-DATUM.
SELECT A~PERNR INTO CORRESPONDING FIELDS OF TABLE IT_PR
FROM ZHR_BIRTHDAY AS A INNER JOIN PA0001 AS B ON
APERNR EQ BPERNR
WHERE A~DFLAG = '' AND
B~BUKRS EQ PA0001-BUKRS AND
B~BEGDA LE SY-DATUM AND
B~ENDDA GE SY-DATUM.
LOOP AT IT_PR.
SELECT SINGLE USRID_LONG INTO PA0105-USRID_LONG
FROM PA0105
WHERE PERNR = IT_PR-PERNR AND
SUBTY = '0010' AND
BEGDA LE SY-DATUM AND
ENDDA GE SY-DATUM.
IF SY-SUBRC = 0.
LT_RECLIST-RECEIVER = PA0105-USRID_LONG.
LT_RECLIST-REC_TYPE = 'U'.
APPEND LT_RECLIST.
ENDIF.
ENDLOOP.
*END:ADDED LINE BY SUHAS 25.01.08
Provide Employee Email List Cost Centerwise.
IF IT_PA0001-KOSTL NE ''.
SELECT PERNR INTO PA0001-PERNR
FROM PA0001
WHERE KOSTL = IT_PA0001-KOSTL AND
BEGDA LE SY-DATUM AND
ENDDA GE SY-DATUM.
IF SY-SUBRC = 0.
*CHECKING EMPLOYEE ACTIVE STATUS.
CALL FUNCTION 'RP_GET_FIRE_DATE'
EXPORTING
PERSNR = PA0001-PERNR
STATUS2 = '0'
IMPORTING
FIREDATE = FIRE_DATE1.
IF FIRE_DATE1 IS NOT INITIAL.
ELSE.
SELECT SINGLE USRID_LONG INTO PA0105-USRID_LONG
FROM PA0105
WHERE PERNR = PA0001-PERNR AND
SUBTY = '0010' AND
BEGDA LE SY-DATUM AND
ENDDA GE SY-DATUM.
IF SY-SUBRC = 0.
LT_RECLIST-RECEIVER = PA0105-USRID_LONG.
LT_RECLIST-REC_TYPE = 'U'.
APPEND LT_RECLIST.
ENDIF.
ENDIF.
ENDIF.
ENDSELECT.
ENDIF.
for it department employee
SELECT SINGLE PERNR INTO PA0001-PERNR
FROM PA0001
WHERE PERNR EQ IT_PA0001-PERNR AND
KOSTL IN S_KOSTL.
IF SY-SUBRC = 0.
SELECT PERNR INTO PA0001-PERNR
FROM PA0001
WHERE PERNR IN S_RESPER AND
KOSTL IN S_KOSTL.
SELECT SINGLE USRID_LONG INTO PA0105-USRID_LONG
FROM PA0105
WHERE PERNR = PA0001-PERNR AND
SUBTY = '0010' AND
BEGDA LE SY-DATUM AND
ENDDA GE SY-DATUM.
IF SY-SUBRC = 0.
LT_RECLIST-RECEIVER = PA0105-USRID_LONG.
LT_RECLIST-REC_TYPE = 'U'.
APPEND LT_RECLIST.
ENDIF.
ENDSELECT.
ENDIF.
send mail with attachment
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = LV_DOCUMENT_DATA
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
TABLES
PACKING_LIST = LT_OBJPACK
OBJECT_HEADER = LT_OBJHEAD
CONTENTS_BIN = IT_ATTACHMENT
CONTENTS_TXT = LT_OBJTXT
RECEIVERS = LT_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.
CASE SY-SUBRC.
WHEN 0.
WRITE: / 'Many many happy returns of the day '.
LOOP AT LT_RECLIST.
IF LT_RECLIST-RETRN_CODE = 0.
WRITE '...sent successfully!!!'.
ELSE.
WRITE 'not sent'.
ENDIF.
ENDLOOP.
WHEN 1.
WHEN 2.
WRITE: / 'document could not be sent to any of the recipients!'.
WHEN 4.
WRITE: / 'no authorization to send !'.
WHEN OTHERS.
WRITE: / 'error occurred during sending !'.
ENDCASE.
REFRESH:LT_RECLIST.
CLEAR:MI_RQIDENT,LV_SPOOL_DESC,MC_VALID,
IT_ATTACHMENT_LONG,IT_ATTACHMENT,LV_DOCUMENT_DATA,MSTR_PRINT_PARMS,
LE_DOC_CHNG,LV_DOCUMENT_DATA,V_EMAIL,V_CELL,V_EXT.
REFRESH:LT_PDF,IT_ATTACHMENT_LONG,IT_ATTACHMENT,
MAIL_BODY,LT_OBJTXT,LT_OBJPACK,IT_ATTACHMENT,LT_OBJPACK,LT_RECLIST,
LT_OBJHEAD,IT_ATTACHMENT,LT_OBJTXT.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
Pls check ...Hi,
check whther that Image avilable in the system or not.
and same time check the Size of the image.
Maybe you are looking for
-
I can't connect to the music store
every time i try to connect to the music store i get an error message that says, "iTunes could not connect to the music store. An unknown error has occured (-9812). Make sure you network connection is active and try again." my network connection is f
-
This is really puzzling me .... In Catalogue Settings, I have 'Automatically write changes into XMP' NOT ticked. When I want to save, I Select All and then 'Save Metadata to File' . However, most of the time this only saves the 'Most Selected' image,
-
Problem remebering bluetooth pairing with 09 Saab (Gm blue tooth)
I have a 09 saab 9-3, and the car has built in blue tooth. The problem is when i pair the phone it works while the car stays on that whole time. The minuet i turn the car off and try to come back into the car it will not reconnect. If you go to setti
-
How to create an excel report and send it via email using a BPEL process ?
Hi Experts, I have a requirement to develop a xl report based the data in the DB table. I will have to query the list of records entered / processed during previous day, generated the xl based report and send to users via email. I talked to one the e
-
How do I get messages to display contact names instead of phone numbers?