Send PDF output directly to a printer
Hi,
I want to send a PDF Oracle Reports directly to a printer.
I found a plugin (pdfprint) on http://www.oracle.com/technology/products/reports/pluginxchange/index.html but it doesn't work.
REP-50159: Executed successfully but there were some errors when distribute the output REP-80003: PDFPrint : Error while generating PDF !!!
I'am working on AS 10Gr2 running on Win2003 server.
Is it possible to make it running on windows? Or is there another solution?
Thanks,
Patrick
Hello,
In the java code of the plugin :
m_proc = Runtime.getRuntime().exec(stmt);
int i = m_proc.waitFor();
if(i != 0)
throw Utility.newRWException(80003, "Error while generating PDF !!!", "REP");
Have you set the execName as described in the documentation :
<property name="execName" value="/usr/bin/pdftops -level1 -q"/>
Have you tested this exec "manually" ? Does it work ?
Regards
Similar Messages
-
Send a report output directly to client printer in 10G
I want to send my report output to client printer instead of report server printer without view report on screen.
I am using RUN_REPORT_OBJECT built-in, but when I set REPORT_DESTYPE = PRINTER, it send report output to report server printer, I want it on local printer.
regards
Rehan MirzaHello,
<p>Here is a solution by Casey Bowden.</p>
Francois -
Print PDF file directly to store printer
Hi Gurus,
Having not found a solution, we think we need help from you. We have searched forums and google but have not found adequate solutions.
We are a retailer having different stores. Our main office is using SAP. Each store has its printer and defined in our SAP system. We want to print PDF files directly to store printer using SAP . How should we do that ? We think there are 2 steps:
1) Upload PDF files from network directory into SAP (We done it, no problem)
2) Having now PDF files in internal tables, how should we proceed to print PDF files using store printers?
Please note that we do not want to use CL_GUI_PDFVIEWER since we do not want to display the PDF and having the obligation to choose the print option from dialog and also we do not want to call Adobe OLE object to print
Any answer would be appreciated
Thank you very muchHi,
It is really late to give response this post. But still who ever refering to this post for the same issue this solution is useful for achieving same in background:
Even same can be used in smartforms, for getting spool request in PDF format as well which will decrease the size of file when printing in SAP printer.
ct_tline is PDF output:
DATA: lv_pdfsource TYPE xstring.
FIELD-SYMBOLS:<p> TYPE x. " <p> type any.
LOOP AT ct_tline INTO cs_tline.
ASSIGN cs_tline TO <p> CASTING TYPE x.
CONCATENATE lv_pdfsource <p> INTO lv_pdfsource IN BYTE MODE.
ENDLOOP.
* ->Create spool request in PDF format
CALL FUNCTION 'ADS_CREATE_PDF_SPOOLJOB'
EXPORTING
printer = 'LOCL' "Printer name supporting PDF device type
* DEST =
pages = 1
pdf_data = lv_pdfsource "XSTRING internal table
* NAME =
* SUFFIX1 =
* SUFFIX2 =
* COPIES =
* PRIO =
IMMEDIATE_PRINT = 'X'
* AUTO_DELETE =
* TITLELINE =
* RECEIVER =
* DIVISION =
* AUTHORITY =
* LIFETIME = '0'
* IMPORTING
* SPOOLID =
* EXCEPTIONS
* NO_DATA = 1
* NOT_PDF = 2
* WRONG_DEVTYPE = 3
* OPERATION_FAILED = 4
* CANNOT_WRITE_FILE = 5
* DEVICE_MISSING = 6
* NO_SUCH_DEVICE = 7
* OTHERS = 8
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF. -
When send the report directly to the printer from Oracle IDS 9i
Hi.....
I m using Oracle IDS 9i, Oracle AS 9i and Database 9i for my new project.But i m facing a problem when i m trying to show a report from oracle IDS 9i.When i send the report directly to the printer without showing it,then the printer connected to the application server is working.But the printer connected to with PC(From where a send the command) is not working but printer connected with AS is working,but not that one which one i m wanting.....Why this problem is happening?Can anyone help me?
KSINote:It is always better to have network based printers rather then PC shared printers. What that means is your printer is not connected to a PC. It has a direct connection to the network via NIC. You would then setup the printer on your AS in the printers setup. If the AS is rebooted you do not need to authenticate the printer shares again with a network based printer.
If I understand you correctly, you have a printer connected to your AS(application server) and a printer connected to your PC. You can submit a report direct to the printer connected to the AS but cannot send a report direct to your printer connected to your PC.
From the symptoms you described, the problem is usually associated with the AS not being able to see the printer shared on your PC. You either have the address to your printer address defined wrong or your AS is trying to direct a job to your printer but doesn't have rights to do it.
First, Try to print a notepad job to your printer attached to your PC from the AS. This will tell you if you have access to do so or not.
- If it can't, you need to figure out why? This has nothing to do with oracle.
Second, thing to check is your Oracle "Report Queue Manager" on the AS. Make sure that you can submit a report manually from the Report Queue Manager. If it fails the "Report Queue Manager" will give you useful errors as to why it failed. This will help you isolate the problem.
Third, Once you can submit a job from the reports queue manager manually to your shared printer you should be able to submit from your application direct. If it still does not work your address to the printer is incorrect. Try submitting manually through the reports queue manager again. When selecting printer you will be given a list of accessible printers from the AS. Select the one connected to your PC. Once selected the full network address will appear. Copy and use this as the printer location in your job submission through your application.
That's it... Where using this right now and it works great. Hope this helps.
Eric. -
'Send Print Request' button can send paystub output to R/3 print spool:
Hi
Portal Experts
Current state of the SAP environment on ECC 5.0 and EP 6 SP17
'Send Print Request' button can send paystub output to R/3 print spool:
When I clicked on send print request, I expected a printout to my default printer but didnt get one. If the dialog user has the 'print immediate' option turned off, their paystub will spool up in R/3. When a user clicks on the printer ICON within Adobe, they get to choose their printer and know that it will go straight to the printer. This could be confusing to R/3 dialog users.
Any solution,How to change the option from spool to print immediate.
Thanks
VanteruFacing the same problem.
Please let me know if you have found a solution. -
Sending oracle report direct to a printer
Hi guys, am using run_report_object to call my report, meanwhile I set report destination parameter(on the report i created on forms that calls the report itself) to printer, but its not printing. please I will highly appreciate any useful code
thanks
jideoforol**** wrote:
Hi guys, am using run_report_object to call my report, meanwhile I set report destination parameter(on the report i created on forms that calls the report itself) to printer, but its not printing. please I will highly appreciate any useful code
thanks
jideoforwhat is your form version ? and show your code ..
Check this link.. Re: How can I Send report output to 3 different printer programatically -
How to send a report DIRECTLY to the printer (Linux App. Svr.)?
Here is the problem:
-- We have Windows clients / Linux App Server / Forms 10g R2.
-- Printers are attached to the Windows clients.
-- When we want to send DIRECTLY to the printer, we have to write data into a text file (using TEXT_IO) &
-- print the same using command HOST('lp -d '||<printer IP of logged in user>t||' '||<file name>,NO_SCREEN).
-- Our normal reports are displayed as PDFs.
Is there a way to directly send the PDF to the printer without having to re-write the report to a text file?? Then we can just use the PDF output and don't have to do any code changes (i.e. redo every report).
Edited by: user12240205 on May 16, 2011 5:59 AM
Edited by: user12240205 on May 16, 2011 5:59 AMInoL wrote:
Use destype=printer.
The printer on the Windows client has to be defined as a network printer and be known on the Linux server.
Other options:
- use the orarrp utility
- if you call your Reports from Forms, you can use a Java bean
http://forms.pjc.bean.over-blog.com/article-6621538.html
Thank you for the quick response. Can u please tell us how to make the printer "known" as a Linux server?? Will a normal network admin know how to do this or is it an Oracle developer's task? -
Sending PDF output attachment in e-mail to external users from BSP
Hi All,
Please gothrough the below requirement details :
Requirement Details:
Need to achieve the functionality of sending a PDF attachment of invoice to an external
e-mail address from the BSP Application.
Implementation Details:
The Print out Output determination is already done in the system. We are using SAP R/3 4.7 (620)
In the Transaction VF03 in the initial screen there is a menubar "Billing document" and underneath that menu there is a menu item called "Issue". If we click the "Issue" menu item all the output that are already proposed will be visible and we can select the printout Output determination and can issue a printout.
I had created a FM to call from BSP and that function module will take the Invoice number as input and will call the "VF03" transaction using BDC and will trigger the Sapscript Printout . I see the the sapscript in the spool after I call the Function module .
But I don't know how I can get the Spool request number for that Function module call from BSP page ????
I got struck in this approach...
If I know the Spool number after calling the function module the it's very easy to call the following FM's for sending a e-mail with the Invoice PDF attachment.
CONVERT_OTFSPOOLJOB_2_PDF
QCE1_CONVERT
SO_NEW_DOCUMENT_ATT_SEND_API1
Please let me know if anyone can help me in this ...
Please reply ASAP.
Thanks,
GreetsonCheck out these weblogs.
/people/sap.user72/blog/2004/11/10/bsphowto-generate-pdf-output-from-a-bsp
/people/thomas.jung3/blog/2004/09/08/sending-e-mail-from-abap--version-610-and-higher--bcs-interface
Regards
Raja -
How I can send a report directly to the printer "EPSON TMU 220" from form11
Dear,
I have a problem with Oracle Forms11g, I need send a report to the printer EPSON TMU-220 (Pos of sale printer) in the client machine.
Please, help.
Thanks
JCDear,
The problem is:
I need to send the report directly to printer. All other reports work fine with other printers in the network.
But the EPSON TMU-220, (I changed the card connection from COM to USB, and nothing)
Please, help me.
JC -
Report OutPut directly to the printer by selecting in the selection screen
Hi Guys,
Can any one help,
How to give Report output (ALV report ) directly to the printer by selecting the printer name in the selection screen .
Sap Version is ECC 6.0.
Thanks In advance
praveen khi,
u can do it using submit statement.
SUBMIT TO SAP-SPOOL
Basic form
SUBMIT rep ... TO SAP-SPOOL.
Extras:
1.... DESTINATION dest ... COPIES cop
... LIST NAME name
... LIST DATASET dsn
... COVER TEXT text
... LIST AUTHORITY auth
... IMMEDIATELY flag
... KEEP IN SPOOL flag
... NEW LIST IDENTIFICATION flag
... DATASET EXPIRATION days
... LINE-COUNT lin
... LINE-SIZE col
... LAYOUT layout
... SAP COVER PAGE mode
... COVER PAGE flag
... RECEIVER rec
... DEPARTMENT dep
... ARCHIVE MODE armode
... ARCHIVE PARAMETERS arparams
... WITHOUT SPOOL DYNPRO
2. ... SPOOL PARAMETERS params
... ARCHIVE PARAMETERS arparams
... WITHOUT SPOOL DYNPRO
3. ... Further parameters (for passing variants)
are described in the documentation for SUBMIT
The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See Missing print parameters with SUBMIT.
Effect
Calls the report rep with list output to the SAP spool database.
Additions
... DESTINATION dest(output device)
... COPIES cop(number of copies)
... LIST NAME name(name of list)
... LIST DATASET dsn(name of spool dataset)
... COVER TEXT text(title of spool request)
... LIST AUTHORITY auth(authorization for display)
... IMMEDIATELY flag(print immediately ?)
... KEEP IN SPOOL flag(keep list after print ?)
... NEW LIST IDENTIFICATION flag(new spool request ?)
... DATASET EXPIRATION days(number of days list
retained)
... LINE-COUNT lin ( lin lines per page)
... LINE-SIZE col(col columns per line)
... LAYOUT layout(print format)
... SAP COVER PAGE mode(SAP cover sheet ?)
... COVER PAGE flag(selection cover sheet ?)
... RECEIVER rec(SAP user name of
recipient)
... DEPARTMENT dep(name of department)
... ARCHIVE MODE armode(archiving mode)
... ARCHIVE PARAMETERS arparams(structure with archiving
parameters)
... WITHOUT SPOOL DYNPRO(skip print control screen)
With the parameters IMMEDIATELY, KEEP IN SPOOL, NEW LIST IDENTIFICATION and COVER TEXT, flag must be a literal or character field with the length 1. If flag is blank, the parameter is switched off, but any other character switches the parameter on. You can also omit any of the sub-options of PRINT ON. mode with SAP COVER PAGE can accept the values ' ', 'X' and 'D'. These values have the following meaning:
' ' : Do not output cover sheet
'X' : Output cover sheet
'D' : Cover sheet output according to printer setting
armode with ARCHIVE MODE can accept the values '1', '2' and '3'. These values have the following meaning:
'1' : Print only
'2' : Archive only
'3' : Print and archive
arparams with ARCHIVE PARAMETERS must have the same structure as ARC_PARAMS. This parameter should only be processed with the function module GET_PRINT_PARAMETERS.
Effect
Output is to the SAP spool database with the specified parameters. If you omit one of the parameters, the system uses a default value. Before output to the spool, you normally see a screen where you can enter and/or modify the spool parameters. However, you can suppress this screen with the following statement:
... TO SAP-SPOOL WITHOUT SPOOL DYNPRO
You could use this option if all the spool parameters have already been set!
reward points if hlpful.
Note
When specifying the LINE-SIZE, you should not give any value > 132 because most printers cannot print wider lists.
Addition 2
... SPOOL PARAMETERS params(structure with print
parameters)
... ARCHIVE PARAMETERS arparams(Structure with archive
parameters)
... WITHOUT SPOOL DYNPRO(skip print parameters
screen)
Effect
Output is to the SAP spool database with the specified parameters. The print parameters are passed by the field string params which must have the structure of PRI_PARAMS. The field string can be filled and modified with the function module GET_PRINT_PARAMETERS. The specification arparams with ARCHIVE PARAMETERS must have the structure of ARC_PARAMS. This parameter should only be processed with the function module GET_PRINT_PARAMETERS. Before output to the spool, you normally see a screen where you can enter and/or modify the spool parameters. However, you can suppress this screen with the following statement:
... WITHOUT SPOOL DYNPRO
Example
Without archiving
DATA: PARAMS LIKE PRI_PARAMS,
DAYS(1) TYPE N VALUE 2,
COUNT(3) TYPE N VALUE 1,
VALID TYPE C.
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING DESTINATION = 'LT50'
COPIES = COUNT
LIST_NAME = 'TEST'
LIST_TEXT = 'SUBMIT ... TO SAP-SPOOL'
IMMEDIATELY = 'X'
RELEASE = 'X'
NEW_LIST_ID = 'X'
EXPIRATION = DAYS
LINE_SIZE = 79
LINE_COUNT = 23
LAYOUT = 'X_PAPER'
SAP_COVER_PAGE = 'X'
COVER_PAGE = 'X'
RECEIVER = 'SAP*'
DEPARTMENT = 'System'
NO_DIALOG = ' '
IMPORTING OUT_PARAMETERS = PARAMS
VALID = VALID.
IF VALID <> SPACE.
SUBMIT RSTEST00 TO SAP-SPOOL
SPOOL PARAMETERS PARAMS
WITHOUT SPOOL DYNPRO.
ENDIF.
Example
With archiving
DATA: PARAMS LIKE PRI_PARAMS,
ARPARAMS LIKE ARC_PARAMS,
DAYS(1) TYPE N VALUE 2,
COUNT(3) TYPE N VALUE 1,
VALID TYPE C.
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING DESTINATION = 'LT50'
COPIES = COUNT
LIST_NAME = 'TEST'
LIST_TEXT = 'SUBMIT ... TO SAP-SPOOL'
IMMEDIATELY = 'X'
RELEASE = 'X'
NEW_LIST_ID = 'X'
EXPIRATION = DAYS
LINE_SIZE = 79
LINE_COUNT = 23
LAYOUT = 'X_PAPER'
SAP_COVER_PAGE = 'X'
COVER_PAGE = 'X'
RECEIVER = 'SAP*'
DEPARTMENT = 'System'
SAP_OBJECT = 'RS'
AR_OBJECT = 'TEST'
ARCHIVE_ID = 'XX'
ARCHIVE_INFO = 'III'
ARCHIVE_TEXT = 'Description'
NO_DIALOG = ' '
IMPORTING OUT_PARAMETERS = PARAMS
OUT_ARCHIVE_PARAMETERS = ARPARAMS
VALID = VALID.
IF VALID <> SPACE.
SUBMIT RSTEST00 TO SAP-SPOOL
SPOOL PARAMETERS PARAMS
ARCHIVE PARAMETERS ARPARAMS
WITHOUT SPOOL DYNPRO.
ENDIF. -
How to print pdf's direct to default printer by command line
I want to direct print pdf's to the default printer by command line.
this work's with:
C:\Programme\Adobe\Reader 11.0\Reader\AcroRd32.exe /n /s /h /t test.pdf
But at the end, when printing was done. Adobe does not close automatically.
Is there an opportunity to automatically close adobe after printing?No, Adobe stopped that happening many releases ago, for reasons that I don't understand but they will not change.
-
Sending PDF form directly to email
Is it possible to send filled PDF form directly from Acrobat Pro or Reader to requested email by clicking the SEND button? Or does it always go via senders email application?
What should be done to get it going directly?Is it possible to send filled PDF form directly from Acrobat Pro or Reader to requested email by clicking the SEND button? Or does it always go via senders email application?
Answer: To bypass client-side email software the form needs to submit to a server side script such as PHP or ASP.net.
What should be done to get it going directly?
Answer: You will need an SMTP account, a web server and server-side programming knowledge. The script would need take the inbound submission stream and pass it to the outbound SMTP message, and return a FDF response message or redirect to a URL. If you are using ASP.net, you can use iTextSharp or FDFToolkit.net to parse the submission, and inject the values directly into the message TO, CC, BCC, subject and body.
For online examples please visit the following website: www.pdfemail.net/examples/ -
Send PDF file directly to printer
Hi,
I have a requirement. I need to send a PDF file to a printer directly for printing. Printer name will be fetched dynamically based on a parameter of report.
Please let me know how can we do it.
Regards,
GuddanHI,
Try this in your program. It may be useful to you.
Declare this for printing options**
DATA : ioptions LIKE itcpo .
ioptions-tddest = 'YOUR_PRINTER_NAME'.
ioptions-tdimmed = 'X'.
ioptions-tdnoprev = 'X'.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
application = 'TX'
form = 'formname'
OPTIONS = ioptions
dialog = ' X '
when you run the program directly it goes to the printer.
Thanks,
S.Kalaivani. -
Send report output directly to printer
How can I do that using HTMLDB
tks in advance.From HTML DB, I don't believe you can. Some work around's are discussed on the HTML DB forum - see HTML DB Report printing with printing options for a starting point.
You can of cause run a SQL statement using the SQL Command line, and spool the output of that to a printer. How you do it differs based on which platform you are on. -
Email sending: "sending report output directly to the body of the email"
Hi
I got one requirement.this is the enhancement to already exisitng report.when user clicks on send email check box,report has to be display and this report output has to be send to email of the particular vendor. it has be seen directly in the body of the mail.not as attachement.Report output is in ALV format.Data is stored in internal table t_data.can anyone suggest what is the procedure for this.Hi i have tried the same thing and it works very fine,
i will share my code, you just follow exactly, hopefully you can solve the issue..
you refer clearly the body of the mail,
it should solve your issue/
FORM send_email .
DATA lt_message TYPE bcsy_text.
DATA lv_mail_title TYPE so_obj_des.
DATA document TYPE REF TO cl_document_bcs.
DATA recipient TYPE REF TO if_recipient_bcs.
DATA send_request TYPE REF TO cl_bcs.
DATA sent_to_all TYPE os_boolean.
DATA bcs_execption TYPE REF TO cx_bcs.
DATA wf_string(200) TYPE c.
* DATA wf_string TYPE string.
DATA doc_execption TYPE REF TO cx_document_bcs.
DATA lv_status(20) TYPE c.
DATA lv_count_email TYPE i.
DATA lv_temp_stepcount TYPE c.
LOOP AT wt_email INTO wa_email.
TRY.
CLEAR send_request.
send_request = cl_bcs=>create_persistent( ).
*Create Title
lv_mail_title = 'Report Title'.
*Create Message(EMAIL Body)
REFRESH lt_message.
APPEND '<p><b>Dear Sir/Madam,</b></p>' TO lt_message.
APPEND '<p>The following report shows the status of </p>' TO lt_message.
APPEND '<br>' TO lt_message.
APPEND '<table border= "1" color = 2>' TO lt_message.
CLEAR wf_string.
CONCATENATE '<th><tr>'
'<td>Vendor </td>'
'<td>Vendor Name</td>'
'<td>Coloun 1</td>'
'<td>Coloum 2</td>'
'</tr></th>' INTO wf_string.
APPEND wf_string TO lt_message.
LOOP AT wt_itbl INTO wa_itbl WHERE vendor = wa_email-vendor. "-> Define your Condition here wt_email( should contains vendor and its respective email id)
CLEAR wf_string.
CONCATENATE '<tr><td>' wa_itbl-vendor '</td>' INTO wf_string.
APPEND wf_string TO lt_message.
CONCATENATE '<td>' wa_itbl-Vendor_name '</td>' INTO wf_string.
APPEND wf_string TO lt_message.
CONCATENATE '<td>' wa_itbl-COL2 '</td></tr>' INTO wf_string.
APPEND wf_string TO lt_message.
CONCATENATE '<td>' wa_itbl-COL3 '</td></tr>' INTO wf_string.
APPEND wf_string TO lt_message.
ENDLOOP.
APPEND '</table>' TO lt_message.
APPEND '<br>' TO lt_message.
APPEND '<p><b>Thank You</b></p>' TO lt_message.
*Create Document
CLEAR document.
TRY.
CALL METHOD cl_document_bcs=>create_from_text
EXPORTING
i_text = lt_message
i_documenttype = 'HTM'
i_subject = lv_mail_title
RECEIVING
result = document.
CATCH cx_document_bcs INTO doc_execption.
ENDTRY.
*Add document to email
send_request->set_document( document ).
*Add recipients to send request
IF wa_email-smtp_addr IS NOT INITIAL.
recipient = cl_cam_address_bcs=>create_internet_address(
i_address_string = wa_email-smtp_addr ).
send_request->add_recipient( i_recipient = recipient ).
ENDIF.
*Send Email
CALL METHOD send_request->send
RECEIVING
result = sent_to_all.
COMMIT WORK.
IF sent_to_all EQ 'X'.
lv_count_email = lv_count_email + 1.
ENDIF.
CATCH cx_bcs INTO bcs_execption.
ENDTRY.
ENDLOOP.
IF sent_to_all = 'X'.
SKIP 2.
FORMAT COLOR COL_GROUP INTENSIFIED ON.
ULINE /(10).
WRITE: / 'Remark : '.
ULINE /(10).
FORMAT RESET.
WRITE: / 'Email Message Sent Succesfully'.
RETURN.
ENDIF.
ENDFORM.
Maybe you are looking for
-
PDF Export Problem on BI 7 Web App Template
Hi Friends, We have a web template with button group. One of the button in the button group got assigned the 'EXPORT' command. The 'Export' command properties are as below - Export Format = PDF (PDF) - Scaling Factor = FIT_HORIZONTAL -
-
Conversion of NUMBER(2) to SMALLINT
One of our Oracle tables has some columns that are defined as NUMBER(2). When added to synchronisation, these field definitions appear as SMALLINT on the oracle lite database and allow a value of up to 32767, therefore breaking the Big Oracle column
-
How to convert a string to date and then compare it with todays date???
Hello. I want to set a format first for my dates DateFormate df = new SimpleDateFormate("yyyy-mm-dd"); once this is done then I want to convert any string to date object in the above formate String str="2001-07-19"; Date d = null; try{ d = df.parse(s
-
Hi Gurus, We have a situation where we have multiple content servers in use in DMS. Currently when you check in a Document you have to select which Content Server you want to check the document into. Considering one of these severs is in Chile and on
-
Displaying Filter Content in defined order
Hi all, I have a Filter component and would like to display the content as user-defined way...Any idea? Thx. Eddy.