Statt print - pdf per mail
hallo
ich möchte gerne aus Anwendungen heraus statt zu drucken eine pdf erstellen und per mail versenden (möglichst ohne zu sehen, dass andere Programme aufgerufen werden!).
kann ich den "pdf-printer" so einstellen, dass Dokumente nicht modifiziert werden können?
hat schon jemand sowas realisiert?
Wolfgang
--------------45582BD7F812F6191C9F6926
Content-Type: text/plain; charset=iso-8859-1; x-mac-type="54455854"; x-mac-creator="4D4F5353"
Content-Transfer-Encoding: 8bit
Hallo Wolfgang,
du bist etwas ungenau in der Beschreibung der Anwendung und, und, und .....
aaaaaber hier ist vielleicht was für Dich: http://www.pdfmailer.com/cgi-bin/main/main.cgi?file=index
Grüße Holger
Burghardt Allmedia GmbH
An der Wakhegge 51
49088 Osnabrück
fon 05 41 . 7 70 70 70
fax 05 41 . 7 70 70 77
[email protected]
www.bacos.de
lsbremen schrieb:
> hallo
>
> ich möchte gerne aus Anwendungen heraus statt zu drucken eine pdf erstellen und per mail versenden (möglichst ohne zu sehen, dass andere Programme aufgerufen werden!).
>
> kann ich den "pdf-printer" so einstellen, dass Dokumente nicht modifiziert werden können?
>
> hat schon jemand sowas realisiert?
>
> Wolfgang
--------------45582BD7F812F6191C9F6926
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
Hallo Wolfgang,
<p>du bist etwas ungenau in der Beschreibung der Anwendung und, und, und
<br>aaaaaber hier ist vielleicht was für Dich: <a href="http://www.pdfmailer.com/cgi-bin/main/main.cgi?file=index">http://www.pdfmailer.com /cgi-bin/main/main.cgi?file=index</a>
<p>Grüße Holger
<p>------------------------------------
<p>Burghardt Allmedia GmbH
<br>An der Wakhegge 51
<br>49088 Osnabrück
<br>fon 05 41 . 7 70 70 70
<br>fax 05 41 . 7 70 70 77
<br><a href="mailto:[email protected]">[email protected]</a>
<br><a href="http://www.bacos.de">www.bacos.de</a>
<p>------------------------------------
<br>
<br>
<p>lsbremen schrieb:
<blockquote TYPE=CITE><HTML>hallo
<p>ich möchte gerne aus Anwendungen heraus statt zu drucken eine pdf
erstellen und per mail versenden (möglichst ohne zu sehen, dass andere
Programme aufgerufen werden!).
<p>kann ich den "pdf-printer" so einstellen, dass Dokumente nicht modifiziert
werden können?
<p>hat schon jemand sowas realisiert?
<p>Wolfgang</HTML></blockquote>
--------------45582BD7F812F6191C9F6926--
Similar Messages
-
7610 takes 14 minutes to print pdf per page
Taking 15 minutes per page to print pdf.
WHY???????Hi,
How long does it take to send file to the printer (called Flattering) ? Yesterday I created an one page PDF file using Adobe Acrobat 10, the file size is only 21Kb (yes 21Kb) and it took 17mins to send that file to my printers. They are all networked, big laser printers. The output did not come out, the printers display memory full (all of them - note: I can walk to any printer with my access card to det my output). These printers can print 400 pages PDF document no longer than 10mins. I will send it to another printer later when working at other building.
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. -
Send printer friendly page per mail
Hello everybody.
I'm very new with APEX and I couldn't find an answer to solve my problem:
I have a printer friendly page with several text elements and a report so that it nearly looks like a letter in the end.
Now I want to send this page as a "pdf-attachment" per mail when pressing a button.
I already noticed the "add_attachment"-procedure in the APEX_MAIL package, but how do i get my actual printer friendly page stored in a BLOB-column in my DB to use this procedure?
Thanks in advance
CarstenCarsten,
There are several different version of the get_print_document function, e.g there's this one:
APEX_UTIL.GET_PRINT_DOCUMENT (
p_report_data IN CLOB,
p_report_layout IN CLOB,
p_report_layout_type IN VARCHAR2 default 'xsl-fo',
p_document_format IN VARCHAR2 default 'pdf',
p_print_server IN VARCHAR2 default NULL
) RETURN BLOB;
So you could store both the XML and XSL in a CLOB. But it might be easier to get started referencing actual report queries and report layouts, which you store under shared components and then use this API:
APEX_UTIL.GET_PRINT_DOCUMENT (
p_application_id IN NUMBER,
p_report_layout_name IN VARCHAR2,
p_report_query_name IN VARCHAR2,
p_report_layout_name IN VARCHAR2 default null,
p_report_layout_type IN VARCHAR2 default 'xsl-fo',
p_document_format IN VARCHAR2 default 'pdf',
p_print_server IN VARCHAR2 default null
) RETURN BLOB;
Using pre-defined report queries and layouts ensures that you don't run into issues with your custom XML and XSL data.
The error message "500 Internal Server Error" is a standard Java error message that doesn't tell you anything. Maybe you could find more info in one of your log files. Are you using BI Publisher? Apache FOP? Or some other rendering engine?
Regards,
Marc -
Conversion SAPSCRIPT to PDF and send per mail
Hi all,
I would like to send a sapscript per mail as PDF attachment. I checked on the forum and followed some threads for that, but I still have a problem :
- I'm using the open_form function with ITCPO-TDGETOTF = 'X'
- in the CLOSE_FORM i get the OTF data in the internal table it_otf
CALL FUNCTION 'CLOSE_FORM'
TABLES
OTFDATA = it_otf
- than I'm using the function: (it_otf as input it_pdf as output table):
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
PDF_DELETE_OTFTAB = 'X'
IMPORTING
BIN_FILESIZE = W_bin_filesize
BIN_FILE = g_binfile
TABLES
OTF = it_otf
LINES = it_pdf
this function dumps with the message : "*255" nicht als Zahl interpretierbar
what' wrong ?
thank you in advance for your help.Hi Fred,
I'm with this issue and doing exactly what you said, but it is not working.
Below my code. Is it missing something?
1 - tb_otf is retrieving the correct values.
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT = RESULT
tables
otfdata = tb_otf.
2 - c_binfile is populated correctly but nothing happens with table lt_otf
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
PDF_DELETE_OTFTAB = ' '
IMPORTING
BIN_FILESIZE = L_SIZE
BIN_FILE = c_binfile
TABLES
OTF = tb_otf
LINES = lt_otf.
3 - lt_solix is populated correctly
DATA : BEGIN OF lt_solix OCCURS 0,
line TYPE x LENGTH 255,
END OF lt_solix.
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
EXPORTING
buffer = c_binfile
TABLES
binary_tab = lt_solix.
4 - data packing all right
* E-mail body
CLEAR lt_packing_list.
REFRESH lt_packing_list.
lt_packing_list-transf_bin = ''.
lt_packing_list-head_start = 1.
lt_packing_list-head_num = 0.
lt_packing_list-body_start = 1.
lt_packing_list-body_num = l_numbytes.
lt_packing_list-doc_type = 'RAW'.
lt_packing_list-obj_name = 'BODY'.
lt_packing_list-obj_descr = 'CORPO'.
lt_packing_list-doc_size = l_numbytes.
APPEND lt_packing_list.
* E-mail attachment
lt_packing_list-transf_bin = 'X'.
lt_packing_list-head_start = 1.
lt_packing_list-head_num = 0.
lt_packing_list-body_start = 1.
lt_packing_list-body_num = l_numbytes.
lt_packing_list-doc_type = 'PDF'.
lt_packing_list-obj_descr = nast-objky.
lt_packing_list-obj_name = 'PICTURE'.
lt_packing_list-doc_size = l_numbytes.
APPEND lt_packing_list.
5 - send e-mail
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = wa_document_data
put_in_outbox = 'X'
commit_work = 'X'
TABLES
packing_list = lt_packing_list
object_header = lt_object_header
* contents_bin = lt_objbin
contents_HEX = lt_solix
contents_txt = lt_contents_txt
receivers = lt_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
When I check SOST transaction I see the e-mail but the body content I cant see and the attachment I cant open.
The same logic was working in version 5.0 (now we're in 6.0). But it was using content_bin parameter which is obsolete now, from now we need to use to content_hex parameter.
Please, could you help me?
Thanks -
Printing multiple pdfs per page
How do I print multiple pages of pdfs on on single page? Usually there is an option to print multiple per page but I cannot find it.
There's an "Auto Rotate" checkbox under the "Preview" section of the printing dialog, because tha'ts obviously a logical title for it...
-
PDF-Formular per Mail versenden und Betreff anpassen
Hallo,
ich suche eine Möglichkeit wie ich ein PDF-Dokument per Mail als Anhang versenden kann
und dazu noch die Betreffzeile in der erstellten Mail anpasse.
Ich habe dazu in dem auszufüllenden Formular Felder, die ich entsprechend im Betreff benötige.
Gibt es dazu eine Möglichkeit ?
Gruß, CarstenSicher geht es mit JavaScript, die Werte der Felder abzurufen und daraus dann die entsprechenden Parameter für den mailto:-Handler zu kneten. Ist ja letzten einfaches Zusammenführen verschiedener Strings...
Mylenium -
Formular als Serienbrief per PDF als Mail verschicken
Hallo zusammen, vielleicht kann mir einer ein bißchen "Starthilfe" geben. Ich habe ein Formular erstellt, das an diverse Kunden verschickt werden soll (bis hierhin hat alles geklappt) nun die entscheidende Frage, besteht die Möglichkeit einen Serienbrief zu erstellen und diesen dann als PDF-Formular per Mail zu versenden?? Maßgebend ist, dass das Formular "personalisiert" sein soll, heißt die Anrede soll für jeden einzeln persönlich sein und damit verbunden dann ja auch die E-Mail-Adresse. Unter Word geht dies alles als Serienbrief und dann Serienbrief als E-Mail verbinden!?! Gibst so was im PDF auch??
Soweit ich weiß, mußt du in Life Cycle Designer Felder anlegen, die du an deine MS Access/ MS Office oder sonstige Addressdatenbank anbindest. Dann kannst du den Distributionsvorgang anhand dieser Kriterien steuern und es werden individuelle PDFs generiert und versand. Hab's aber selber noch nie gemacht, daher kann ich dir da nicht wirklich weiterhelfen...
Mylenium -
I have adobe reader X. Is there no way to save, print or e-mail changes to a secured pdf? I've inputted changes and have digitally signed, but none of my edits seem to save?
By what kind of security I meant what is allowed and what is not allowed under the security tab that I mentioned in my last post?
You can look at that and see if it restricts what you are trying to do. If it does then yes, you need a version of Acrobat (and the password of course) to change it. -
Report output to convert to pdf and mail it to recepient
Hi
I'm using the below coding for converting the output of the program to pdf and then mail it to the recepient.The coding works for background processsing only can i do the same for online.In the write statement i'm using the sy-repid my program name and when i get the pdf mail i'm getting the name of the program but instead i need to get the output of my program.Can any one help me in correcting the coding to get the output in pdf format.I know where i'm going wrong but this is the first time i'm working with this so new to this....It would be better if i could run the program and get the convertions into pdf through mail instead of background processing.....Please change the coding below to get the same.....
DATA: gd_recsize TYPE i.
Spool IDs
TYPES: BEGIN OF t_tbtcp.
INCLUDE STRUCTURE tbtcp.
TYPES: END OF t_tbtcp.
DATA: it_tbtcp TYPE STANDARD TABLE OF t_tbtcp INITIAL SIZE 0,
wa_tbtcp TYPE t_tbtcp.
Job Runtime Parameters
DATA: gd_eventid LIKE tbtcm-eventid,
gd_eventparm LIKE tbtcm-eventparm,
gd_external_program_active LIKE tbtcm-xpgactive,
gd_jobcount LIKE tbtcm-jobcount,
gd_jobname LIKE tbtcm-jobname,
gd_stepcount LIKE tbtcm-stepcount,
gd_error TYPE sy-subrc,
gd_reciever TYPE sy-subrc.
DATA: w_recsize TYPE i.
DATA: gd_subject LIKE sodocchgi1-obj_descr,
it_mess_bod LIKE solisti1 OCCURS 0 WITH HEADER LINE,
it_mess_att LIKE solisti1 OCCURS 0 WITH HEADER LINE,
gd_sender_type LIKE soextreci1-adr_typ,
gd_attachment_desc TYPE so_obj_nam,
gd_attachment_name TYPE so_obj_des.
Spool to PDF conversions
DATA: gd_spool_nr LIKE tsp01-rqident,
gd_destination LIKE rlgrap-filename,
gd_bytecount LIKE tst01-dsize,
gd_buffer TYPE string.
Binary store for PDF
DATA: BEGIN OF it_pdf_output OCCURS 0.
INCLUDE STRUCTURE tline.
DATA: END OF it_pdf_output.
CONSTANTS: c_dev LIKE sy-sysid VALUE 'DEV',
c_no(1) TYPE c VALUE ' ',
c_device(4) TYPE c VALUE 'LOCL'.
*START-OF-SELECTION.
START-OF-SELECTION.
Write statement to represent report output. Spool request is created
if write statement is executed in background. This could also be an
ALV grid which would be converted to PDF without any extra effort
WRITE sy-repid.
new-page.
commit work.
new-page print off.
IF sy-batch EQ 'X'.
PERFORM get_job_details.
PERFORM obtain_spool_id.
Alternative way could be to submit another program and store spool
id into memory, will be stored in sy-spono.
*submit ZSPOOLTOPDF2
to sap-spool
spool parameters %_print
archive parameters %_print
without spool dynpro
and return.
Get spool id from program called above
IMPORT w_spool_nr FROM MEMORY ID 'SPOOLTOPDF'.
PERFORM convert_spool_to_pdf.
PERFORM process_email.
if p_delspl EQ 'X'.
PERFORM delete_spool.
endif.
IF sy-sysid = c_dev.
wait up to 5 seconds.
SUBMIT rsconn01 WITH mode = 'INT'
WITH output = 'X'
AND RETURN.
ENDIF.
ELSE.
SKIP.
WRITE:/ 'Program must be executed in background in-order for spool'
'request to be created.'.
ENDIF.
FORM obtain_spool_id *
FORM obtain_spool_id.
CHECK NOT ( gd_jobname IS INITIAL ).
CHECK NOT ( gd_jobcount IS INITIAL ).
SELECT * FROM tbtcp
INTO TABLE it_tbtcp
WHERE jobname = gd_jobname
AND jobcount = gd_jobcount
AND stepcount = gd_stepcount
AND listident <> '0000000000'
ORDER BY jobname
jobcount
stepcount.
READ TABLE it_tbtcp INTO wa_tbtcp INDEX 1.
IF sy-subrc = 0.
message s004(zdd) with gd_spool_nr.
gd_spool_nr = wa_tbtcp-listident.
MESSAGE s004(zdd) WITH gd_spool_nr.
ELSE.
MESSAGE s005(zdd).
ENDIF.
ENDFORM.
FORM get_job_details *
FORM get_job_details.
Get current job details
CALL FUNCTION 'GET_JOB_RUNTIME_INFO'
IMPORTING
eventid = gd_eventid
eventparm = gd_eventparm
external_program_active = gd_external_program_active
jobcount = gd_jobcount
jobname = gd_jobname
stepcount = gd_stepcount
EXCEPTIONS
no_runtime_info = 1
OTHERS = 2.
ENDFORM.
FORM convert_spool_to_pdf *
FORM convert_spool_to_pdf.
CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = gd_spool_nr
no_dialog = c_no
dst_device = c_device
IMPORTING
pdf_bytecount = gd_bytecount
TABLES
pdf = it_pdf_output
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.
CHECK sy-subrc = 0.
Transfer the 132-long strings to 255-long strings
LOOP AT it_pdf_output.
TRANSLATE it_pdf_output USING ' ~'.
CONCATENATE gd_buffer it_pdf_output INTO gd_buffer.
ENDLOOP.
TRANSLATE gd_buffer USING '~ '.
DO.
it_mess_att = gd_buffer.
APPEND it_mess_att.
SHIFT gd_buffer LEFT BY 255 PLACES.
IF gd_buffer IS INITIAL.
EXIT.
ENDIF.
ENDDO.
ENDFORM.
FORM process_email *
FORM process_email.
DESCRIBE TABLE it_mess_att LINES gd_recsize.
CHECK gd_recsize > 0.
PERFORM send_email USING p_email1.
perform send_email using p_email2.
ENDFORM.
FORM send_email *
--> p_email *
FORM send_email USING p_email.
CHECK NOT ( p_email IS INITIAL ).
REFRESH it_mess_bod.
Default subject matter
gd_subject = 'Branch Revenue'.
gd_attachment_desc = 'Branch Revenue'.
CONCATENATE 'attach_name' ' ' INTO gd_attachment_name.
it_mess_bod = 'Branch Revenue,Profit and Commissions'.
APPEND it_mess_bod.
it_mess_bod = 'Message Body text, line 2...'.
APPEND it_mess_bod.
If no sender specified - default blank
IF p_sender EQ space.
gd_sender_type = space.
ELSE.
gd_sender_type = 'INT'.
ENDIF.
Send file by email as .xls speadsheet
PERFORM send_file_as_email_attachment
tables it_mess_bod
it_mess_att
using p_email
'Branch Revenue'
'PDF'
gd_attachment_name
gd_attachment_desc
p_sender
gd_sender_type
changing gd_error
gd_reciever.
ENDFORM.
FORM delete_spool *
FORM delete_spool.
DATA: ld_spool_nr TYPE tsp01_sp0r-rqid_char.
ld_spool_nr = gd_spool_nr.
CHECK p_delspl <> c_no.
CALL FUNCTION 'RSPO_R_RDELETE_SPOOLREQ'
EXPORTING
spoolid = ld_spool_nr.
ENDFORM.
*& Form SEND_FILE_AS_EMAIL_ATTACHMENT
Send email
FORM send_file_as_email_attachment tables it_message
it_attach
using p_email
p_mtitle
p_format
p_filename
p_attdescription
p_sender_address
p_sender_addres_type
changing p_error
p_reciever.
DATA: ld_error TYPE sy-subrc,
ld_reciever TYPE sy-subrc,
ld_mtitle LIKE sodocchgi1-obj_descr,
ld_email LIKE somlreci1-receiver,
ld_format TYPE so_obj_tp ,
ld_attdescription TYPE so_obj_nam ,
ld_attfilename TYPE so_obj_des ,
ld_sender_address LIKE soextreci1-receiver,
ld_sender_address_type LIKE soextreci1-adr_typ,
ld_receiver LIKE sy-subrc.
data: t_packing_list like sopcklsti1 occurs 0 with header line,
t_contents like solisti1 occurs 0 with header line,
t_receivers like somlreci1 occurs 0 with header line,
t_attachment like solisti1 occurs 0 with header line,
t_object_header like solisti1 occurs 0 with header line,
w_cnt type i,
w_sent_all(1) type c,
w_doc_data like sodocchgi1.
ld_email = p_email.
ld_mtitle = p_mtitle.
ld_format = p_format.
ld_attdescription = p_attdescription.
ld_attfilename = p_filename.
ld_sender_address = p_sender_address.
ld_sender_address_type = p_sender_addres_type.
Fill the document data.
w_doc_data-doc_size = 1.
Populate the subject/generic message attributes
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
Fill the document data and get size of attachment
CLEAR w_doc_data.
READ TABLE it_attach INDEX w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
CLEAR t_attachment.
REFRESH t_attachment.
t_attachment[] = it_attach[].
Describe the body of the message
CLEAR t_packing_list.
REFRESH t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
DESCRIBE TABLE it_message LINES t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
APPEND t_packing_list.
Create attachment notification
t_packing_list-transf_bin = 'X'.
t_packing_list-head_start = 1.
t_packing_list-head_num = 1.
t_packing_list-body_start = 1.
DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
t_packing_list-doc_type = ld_format.
t_packing_list-obj_descr = ld_attdescription.
t_packing_list-obj_name = ld_attfilename.
t_packing_list-doc_size = t_packing_list-body_num * 255.
APPEND t_packing_list.
Add the recipients email address
CLEAR t_receivers.
REFRESH t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
APPEND t_receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
IMPORTING
sent_to_all = w_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = it_message
receivers = t_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
Populate zerror return code
ld_error = sy-subrc.
Populate zreceiver return code
LOOP AT t_receivers.
ld_receiver = t_receivers-retrn_code.
ENDLOOP.
ENDFORM.
Thanks in advance.....Hi
Below is the code I was used to convert the sap script( Sales Order) to convert to PDf and send as an attachment.
Dev/UDD Id : EUR-770416 *
Author : M.Sreeram Kumar *
Date : 08-Apr-07 *
Request : DU1K933766
Description: Send an order confirmation to the multiple user in a *
PDF format via Email. *
Change Log *
Author : *
Date : *
Description : *
Request : *
Print of an order confirmation by SAPscript
REPORT zrep_email LINE-COUNT 100 MESSAGE-ID vn.
TABLES: komk, "Communicationarea for conditions
komp, "Communicationarea for conditions
komvd, "Communicationarea for conditions
vbco3, "Communicationarea for view
vbdka, "Headerview
vbdpa, "Itemview
vbdpau, "Subitemnumbers
conf_out, "Configuration data
sadr, "Addresses
tvag, "Reason for rejection
vedka, "Servicecontract head data
vedpa, "Servicecontract position data
vedkn, "Servicecontract head notice data
vedpn, "Servicecontract pos. notice data
vbpa, "Sales Document: Partner
kna1, "General Data in Customer Master
riserls, "Serialnumbers
komser, "Serialnumbers for print
tvbur, "Sales office
tvko, "Sales organisation
adrs, "Communicationarea for Address
fpltdr. "billing schedules
INCLUDE zrep_rvadtabl.
*INCLUDE yzrvadtabl.
*INCLUDE RVADTABL.
INCLUDE zrep_rvdirekt.
*INCLUDE yzrvdirekt.
*INCLUDE RVDIREKT.
INCLUDE zrep_vedadata.
*INCLUDE yzvedadata.
*INCLUDE VEDADATA.
DATA: retcode LIKE sy-subrc. "Returncode
DATA: repeat(1) TYPE c.
DATA: xscreen(1) TYPE c. "Output on printer or screen
DATA: BEGIN OF steu, "Controldata for output
vdkex(1) TYPE c,
vdpex(1) TYPE c,
kbkex(1) TYPE c,
kbpex(1) TYPE c,
END OF steu.
DATA: BEGIN OF tvbdpa OCCURS 0. "Internal table for items
INCLUDE STRUCTURE vbdpa.
DATA: END OF tvbdpa.
DATA: BEGIN OF tkomv OCCURS 50.
INCLUDE STRUCTURE komv.
DATA: END OF tkomv.
DATA: BEGIN OF tkomvd OCCURS 50.
INCLUDE STRUCTURE komvd.
DATA: END OF tkomvd.
DATA: BEGIN OF tvbdpau OCCURS 5.
INCLUDE STRUCTURE vbdpau.
DATA: END OF tvbdpau.
DATA: BEGIN OF tkomcon OCCURS 50.
INCLUDE STRUCTURE conf_out.
DATA: END OF tkomcon.
DATA: BEGIN OF tkomservh OCCURS 1.
INCLUDE STRUCTURE vedka.
DATA: END OF tkomservh.
DATA: BEGIN OF tkomservp OCCURS 5.
INCLUDE STRUCTURE vedpa.
DATA: END OF tkomservp.
DATA: BEGIN OF tkomservhn OCCURS 5.
INCLUDE STRUCTURE vedkn.
DATA: END OF tkomservhn.
DATA: BEGIN OF tkomservpn OCCURS 5.
INCLUDE STRUCTURE vedpn.
DATA: END OF tkomservpn.
DATA: BEGIN OF tkomser OCCURS 5.
INCLUDE STRUCTURE riserls.
DATA: END OF tkomser.
DATA: BEGIN OF tkomser_print OCCURS 5.
INCLUDE STRUCTURE komser.
DATA: END OF tkomser_print.
DATA: BEGIN OF tfpltdr OCCURS 5.
INCLUDE STRUCTURE fpltdr.
DATA: END OF tfpltdr.
DATA: pr_kappl(01) TYPE c VALUE 'V'. "Application for pricing
DATA: BEGIN OF char_val OCCURS 0,
atnam LIKE cabn-atnam,
atwrt LIKE ausp-atwrt,
END OF char_val.
FORM entry USING return_code us_screen.
CLEAR retcode.
xscreen = us_screen.
PERFORM processing.
IF retcode NE 0.
return_code = 1.
ELSE.
return_code = 0.
ENDIF.
ENDFORM. "ENTRY
FORM PROCESSING *
FORM processing.
PERFORM get_data.
CHECK retcode = 0.
PERFORM form_open USING xscreen vbdka-land1.
CHECK retcode = 0.
PERFORM logo_selection.
PERFORM form_title_print.
CHECK retcode = 0.
PERFORM write_header_info.
PERFORM validity_print.
CHECK retcode = 0.
PERFORM header_data_print.
CHECK retcode = 0.
PERFORM header_serv_print.
CHECK retcode = 0.
PERFORM header_notice_print.
CHECK retcode = 0.
PERFORM header_inter_print.
CHECK retcode = 0.
PERFORM header_text_print.
CHECK retcode = 0.
PERFORM item_print.
CHECK retcode = 0.
PERFORM end_print.
CHECK retcode = 0.
PERFORM form_close.
CHECK retcode = 0.
PERFORM zemail_process.
ENDFORM. "PROCESSING
S U B R O U T I N E S *
FORM ALTERNATIVE_ITEM *
A text is printed, if the item is an alternative item. *
FORM alternative_item.
CHECK vbdpa-grpos CN '0'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ALTERNATIVE_ITEM'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "ALTERNATIVE_ITEM
FORM CHECK_REPEAT *
A text is printed, if it is a repeat print for the document. *
FORM check_repeat.
CLEAR repeat.
SELECT * INTO *nast FROM nast WHERE kappl = nast-kappl
AND objky = nast-objky
AND kschl = nast-kschl
AND spras = nast-spras
AND parnr = nast-parnr
AND parvw = nast-parvw
AND nacha BETWEEN '1' AND '4'.
CHECK *nast-vstat = '1'.
repeat = 'X'.
EXIT.
ENDSELECT.
ENDFORM. "CHECK_REPEAT
FORM DELIVERY_DATE *
If the delivery date in the item is different to the header *
date and there are no scheduled quantities, the delivery date *
is printed in the item block. *
FORM delivery_date.
IF vbdka-lfdat = space AND
vbdpa-lfdat NE space AND
vbdpa-etenr_da = space.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_DELIVERY_DATE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDFORM. "DELIVERY_DATE
FORM DIFFERENT_CONSIGNEE *
If the consignee in the item is different to the header con- *
signee, it is printed by this routine. *
FORM different_consignee.
CHECK vbdka-name1_we NE vbdpa-name1_we
OR vbdka-name2_we NE vbdpa-name2_we
OR vbdka-name3_we NE vbdpa-name3_we
OR vbdka-name4_we NE vbdpa-name4_we.
CHECK vbdpa-name1_we NE space
OR vbdpa-name2_we NE space
OR vbdpa-name3_we NE space
OR vbdpa-name4_we NE space.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_CONSIGNEE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "DIFFERENT_CONSIGNEE
FORM DIFFERENT_REFERENCE_NO *
If the reference number in the item is different to the header*
reference number, it is printed by this routine. *
FORM different_reference_no.
CHECK vbdpa-vbeln_vang NE vbdka-vbeln_vang
OR vbdpa-vbtyp_vang NE vbdka-vbtyp_vang.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_REFERENCE_NO'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "DIFFERENT_REFERENCE_NO
FORM DIFFERENT_TERMS *
If the terms in the item are different to the header terms, *
they are printed by this routine. *
FORM different_terms.
DATA: us_vposn LIKE vedpa-vposn.
DATA: us_text(1) TYPE c. "Flag for Noticetext was printed
IF vbdpa-zterm NE vbdka-zterm AND
vbdpa-zterm NE space.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_TERMS_OF_PAYMENT'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
IF vbdpa-inco1 NE space.
IF vbdpa-inco1 NE vbdka-inco1 OR
vbdpa-inco2 NE vbdka-inco2.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_TERMS_OF_DELIVERY'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDIF.
Print different validity-data for the position
READ TABLE tkomservp WITH KEY vbdpa-posnr.
IF sy-subrc EQ 0.
vedpa = tkomservp.
IF vedpa-vbegdat NE space AND
vedpa-venddat NE space AND
NOT vedpa-vbegdat IS INITIAL AND
NOT vedpa-venddat IS INITIAL.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_TERMS_OF_SERV1'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ELSEIF vedpa-vbegdat NE space AND
NOT vedpa-vbegdat IS INITIAL.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_TERMS_OF_SERV2'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ELSE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_TERMS_OF_SERV3'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDIF.
Notice-rules for the positions.
MOVE vbdpa-posnr TO us_vposn.
CLEAR us_text.
LOOP AT tkomservpn WHERE vposn = us_vposn.
vedpn = tkomservpn.
IF us_text IS INITIAL.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_TERMS_OF_NOTTXT'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
us_text = charx.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_TERMS_OF_NOTICE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDLOOP.
IF NOT us_text IS INITIAL.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'EMPTY_LINE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDFORM. "DIFFERENT_TERMS
FORM END_PRINT *
FORM end_print.
PERFORM get_header_prices.
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
command = 'PROTECT'.
PERFORM header_price_print.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'END_VALUES'.
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
command = 'ENDPROTECT'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'SUPPLEMENT_TEXT'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "END_PRINT
FORM FORM_CLOSE *
End of printing the form *
FORM form_close.
CALL FUNCTION 'CLOSE_FORM'
EXCEPTIONS
OTHERS = 1.
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
otfdata = t_otfdata
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 4
CODEPAGE = 5
OTHERS = 1.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF sy-subrc NE 0.
PERFORM protocol_update.
retcode = 1.
ENDIF.
SET COUNTRY space.
ENDFORM. "FORM_CLOSE
FORM FORM_OPEN *
Start of printing the form *
--> US_SCREEN Output on screen *
' ' = printer *
'X' = screen *
--> US_COUNTRY County for telecommunication and SET COUNTRY *
FORM form_open USING us_screen us_country.
INCLUDE zrep_rvadopfo.
INCLUDE yzrvadopfo.
INCLUDE RVADOPFO.
ENDFORM. "FORM_OPEN
FORM FORM_TITLE_PRINT *
Printing of the form title depending of the field VBTYP *
FORM form_title_print.
CASE vbdka-vbtyp.
WHEN 'A'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_A'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'B'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_B'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'C'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_C'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'E'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_E'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'F'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_F'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'G'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_F'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'H'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_H'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'K'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_K'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN 'L'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_L'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
WHEN OTHERS.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TITLE_OTHERS'
window = 'TITLE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDCASE.
IF repeat NE space.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'REPEAT'
window = 'REPEAT'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDFORM. "FORM_TITLE_PRINT
FORM GET_DATA *
General provision of data for the form *
FORM get_data.
DATA: us_veda_vbeln LIKE veda-vbeln.
DATA: us_veda_posnr_low LIKE veda-vposn.
CALL FUNCTION 'RV_PRICE_PRINT_REFRESH'
TABLES
tkomv = tkomv.
CLEAR komk.
CLEAR komp.
vbco3-mandt = sy-mandt.
vbco3-spras = nast-spras.
vbco3-vbeln = nast-objky.
vbco3-kunde = nast-parnr.
vbco3-parvw = nast-parvw.
CALL FUNCTION 'RV_DOCUMENT_PRINT_VIEW'
EXPORTING
comwa = vbco3
IMPORTING
kopf = vbdka
TABLES
pos = tvbdpa.
Fetch servicecontract-data and notice-data for head and position.
us_veda_vbeln = vbdka-vbeln.
us_veda_posnr_low = posnr_low.
CALL FUNCTION 'SD_VEDA_GET_PRINT_DATA'
EXPORTING
i_document_number = us_veda_vbeln
i_language = sy-langu
i_posnr_low = us_veda_posnr_low
TABLES
print_data_pos = tkomservp
print_data_head = tkomservh
print_notice_pos = tkomservpn
print_notice_head = tkomservhn.
PERFORM get_controll_data.
PERFORM sender.
PERFORM check_repeat.
PERFORM tvbdpau_create.
ENDFORM. "GET_DATA
FORM GET_ITEM_BILLING_SCHEDULES *
In this routine the billing schedules are fetched from the *
database. *
FORM get_item_billing_schedules.
REFRESH tfpltdr.
CHECK NOT vbdpa-fplnr IS INITIAL.
CALL FUNCTION 'BILLING_SCHED_PRINTVIEW_READ'
EXPORTING
i_fplnr = vbdpa-fplnr
i_language = nast-spras
TABLES
zfpltdr = tfpltdr.
ENDFORM. "GET_ITEM_BILLING_SCHEDULES
*& Form ITEM_BILLING_SCHEDULES_PRINT
This routine prints the billing shedules of a salesdocument *
position. *
FORM item_billing_schedules_print.
DATA: first_line(1) TYPE c.
first_line = charx.
LOOP AT tfpltdr.
fpltdr = tfpltdr.
Output of the following printlines
IF NOT fpltdr-perio IS INITIAL.
periodische Fakturen
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_BILLING_SCHEDULE_PERIODIC'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
bei periodischen nur eine Zeile
EXIT.
ELSEIF fpltdr-fareg CA '14'.
prozentuale Teilfakturierung
IF NOT first_line IS INITIAL.
CLEAR first_line.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_BILLING_SCHEDULE_PERCENT_HEADER'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ELSE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_BILLING_SCHEDULE_PERCENT'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ELSEIF fpltdr-fareg CA '235'.
wertmäßige Teilfakturierung
IF NOT first_line IS INITIAL.
CLEAR first_line.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_BILLING_SCHEDULE_VALUE_HEADER'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ELSE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_BILLING_SCHEDULE_VALUE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ELSEIF fpltdr-fareg CA '3'.
Schlußrechnung
ENDIF.
ENDLOOP.
ENDFORM. "ITEM_BILLING_SCHEDULES_PRINT
*eject
FORM GET_ITEM_CHARACTERISTICS *
In this routine the configuration data item is fetched from *
the database. *
FORM get_item_characteristics.
REFRESH tkomcon.
CHECK NOT vbdpa-cuobj IS INITIAL.
CALL FUNCTION 'CUD0_GET_CONFIGURATION' "#EC EXISTS
EXPORTING
instance = vbdpa-cuobj
language = nast-spras
TABLES
configuration = tkomcon
EXCEPTIONS
OTHERS = 4.
ENDFORM. "GET_ITEM_CHARACTERISTICS
FORM GET_ITEM_PRICES *
In this routine the price data for the item is fetched from *
the database. *
FORM get_item_prices.
CLEAR: komp,
tkomv.
IF komk-knumv NE vbdka-knumv.
CLEAR komk.
komk-mandt = sy-mandt.
komk-kalsm = vbdka-kalsm.
komk-kappl = pr_kappl.
komk-waerk = vbdka-waerk.
komk-knumv = vbdka-knumv.
komk-vbtyp = vbdka-vbtyp.
ENDIF.
komp-kposn = vbdpa-posnr.
CALL FUNCTION 'RV_PRICE_PRINT_ITEM'
EXPORTING
comm_head_i = komk
comm_item_i = komp
language = nast-spras
IMPORTING
comm_head_e = komk
comm_item_e = komp
TABLES
tkomv = tkomv
tkomvd = tkomvd.
ENDFORM. "GET_ITEM_PRICES
FORM GET_HEADER_PRICES *
In this routine the price data for the header is fetched from *
the database. *
FORM get_header_prices.
CALL FUNCTION 'RV_PRICE_PRINT_HEAD'
EXPORTING
comm_head_i = komk
language = nast-spras
IMPORTING
comm_head_e = komk
TABLES
tkomv = tkomv
tkomvd = tkomvd.
ENDFORM. "GET_HEADER_PRICES
*& Form HEADER_DATA_PRINT
Printing of header data like terms, weights .... *
FORM header_data_print.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'HEADER_DATA'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. " HEADER_DATA_PRINT
FORM HEADER_PRICE_PRINT *
Printout of the header prices *
FORM header_price_print.
LOOP AT tkomvd.
AT FIRST.
IF komk-supos NE 0.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_SUM'.
ELSE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'UNDER_LINE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDAT.
komvd = tkomvd.
IF komvd-koaid = 'D'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TAX_LINE'.
ELSE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'SUM_LINE'.
ENDIF.
ENDLOOP.
DESCRIBE TABLE tkomvd LINES sy-tfill.
IF sy-tfill = 0.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'UNDER_LINE'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDFORM. "HEADER_PRICE_PRINT
FORM HEADER_TEXT_PRINT *
Printout of the headertexts *
FORM header_text_print.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'HEADER_TEXT'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "HEADER_TEXT_PRINT
FORM ITEM_CHARACERISTICS_PRINT *
Printout of the item characteristics -> configuration *
FORM item_characteristics_print.
LOOP AT tkomcon.
conf_out = tkomcon.
IF sy-tabix = 1.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_LINE_CONFIGURATION_HEADER'
EXCEPTIONS
OTHERS = 1.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ELSE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_LINE_CONFIGURATION'
EXCEPTIONS
OTHERS = 1.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. "ITEM_CHARACTERISTICS_PRINT
FORM ITEM_DELIVERY_CONFIRMATION *
If the delivery date is not confirmed, a text is printed *
FORM item_delivery_confirmation.
CHECK vbdpa-lfdat = space.
CHECK vbdpa-kwmeng NE 0.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_DELIVERY_CONFIRMATION'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "ITEM_DELIVERY_CONFIRMATION
FORM ITEM_PRICE_PRINT *
Printout of the item prices *
FORM item_price_print.
LOOP AT tkomvd.
komvd = tkomvd.
IF sy-tabix = 1.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_LINE_PRICE_QUANTITY'.
ELSE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_LINE_PRICE_TEXT'.
ENDIF.
ENDLOOP.
ENDFORM. "ITEM_PRICE_PRINT
FORM ITEM_PRINT *
Printout of the items *
FORM item_print.
DATA: da_subrc LIKE sy-subrc,
da_dragr LIKE tvag-dragr.
CALL FUNCTION 'WRITE_FORM' "First header
EXPORTING element = 'ITEM_HEADER'
EXCEPTIONS OTHERS = 1.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
CALL FUNCTION 'WRITE_FORM' "Activate header
EXPORTING element = 'ITEM_HEADER'
type = 'TOP'
EXCEPTIONS OTHERS = 1.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
LOOP AT tvbdpa.
vbdpa = tvbdpa.
TVAG lesen um festzustellen ob abgesagte Positionen gedruckt werden
sollen
PERFORM tvag_select(sapmv45a) USING vbdpa-abgru
da_dragr
space
da_subrc.
IF da_dragr EQ space. "Print rejected item?
IF vbdpa-posnr_neu NE space. "Item
PERFORM get_item_serials.
PERFORM get_item_characteristics.
PERFORM get_item_billing_schedules.
PERFORM get_item_prices.
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
command = 'ENDPROTECT'.
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
command = 'PROTECT'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_LINE'.
PERFORM item_rejected.
PERFORM item_price_print.
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
command = 'ENDPROTECT'.
PERFORM item_text_print.
PERFORM item_serials_print.
PERFORM item_characteristics_print.
PERFORM alternative_item.
PERFORM delivery_date.
PERFORM item_delivery_confirmation.
PERFORM item_billing_schedules_print.
PERFORM different_reference_no.
PERFORM different_terms.
PERFORM different_consignee.
PERFORM schedule_header.
PERFORM main_item.
ELSE.
PERFORM schedule_print.
ENDIF.
ENDIF.
ENDLOOP.
CALL FUNCTION 'WRITE_FORM' "Deactivate Header
EXPORTING element = 'ITEM_HEADER'
function = 'DELETE'
type = 'TOP'
EXCEPTIONS OTHERS = 1.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "ITEM_PRINT
FORM ITEM_REJECTED *
A text is printed, if the item is rejected *
FORM item_rejected.
CHECK NOT vbdpa-abgru IS INITIAL.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ITEM_REJECTED'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. "ITEM_REJECTED
FORM MAIN_ITEM *
A text is printed, if the item is a main item * -
I can no longer print PDF files that were scanned with the very same MX479 on Windows XP, SP3
I can no longer print PDF files that were scanned with the very same MX479 All-in-One.
I have an (obsolete) Windows XP, SP3 computer. Obviously, no updates from Microsoft
have occurred that might have impacted my Canon Pixma MX479.
When I attempt to send 1 or more pages from a PDF file to the printer, I don't even get the
Canon PIXMA popup that would allow me to cancel the print job.
Yet the Print Queue icon appears in the lower right corner of my monitor.
If I view the Print Queue, the print queue shows "spooling" and does nothing more.
If I attempt to CANCEL the print job in the Print Queue, it simply changes to "deleting -
spooling".
I cannot cancel the print job that shows NOT RESPONDING via Task Manager, either.
In fact, the only way the Print Queue icon disappears is if I totally reboot my computer!
"Luckily", I can still print e-mails, Word documents, and even my downloaded PDF of my
bank statement.
So, I was thinking that it was *only* PIXMA'S OWN SCANNED PDFS that could not be
printed ON THE SAME PIXMA 479.
However, I have since realized that I also cannot print USPS Signature Proof of Delivery
PDFs that I received from USPS via e-mail.
So why can I print *some* PDF files, but not *all* PDF files, like I previously could do?
THESE SCANS ARE OF LEGAL DOCUMENTS, SO I WILL LIKELY HAVE TO E-MAIL
THE REQUISITE, PREVIOUSLY SCANNED PDFS TO FEDEX TO PAY FOR *THEM*
TO PRINT THEM.
NOTE: I *have* tried turning the PIXMA off, unplugging it, rebooting the computer, plugging
the PIXM in and restarting the PIXMA - still no ability to print PIXMA-scanned PDFs.
And, I find it very strange that e-mails, Word documents, and some other PDFs print with
no problem "around" "NOT RESPONDING" PIXMA print jobs.
I have owned Canon printers for years, including the MX420, and the MX340.There may be some security issues related to the USPS PDFs.
http://www.certified-mail-envelopes.com/signatures-usps-certified-mail-return-receipt-requested
I can't help with the scan/print problem. You seem to have done everything I would try.
I don't know if maybe using a registry cleaner would help.
John Hoffman
Conway, NH
1D Mark IV, Rebel T5i, Pixma PRO-100, MX472 -
How do I print hundreds of mail messages at once?
I would like to print a huge archive of mail messages. Is there a way to do this without going through it one at a time?
I have tried this a few times as I wanted to archive some mail to a PDF file. I select a group on mail message and then select print. It only shows one of the messages being ready to print. Because it only showed one file, I presumed that it would only prin the one file.
Based on your response, I went ahead and tried the print to PDF. It created a separate PDF file for each mail item. I then selected all of the PDF files, opened them with preview and did a second print which comned them all into one file.
Thanks for your comment. As you say, it does print groups of mail items. It is just not obvious that it is going to do it. -
JRE Crash with 1.5.0_13 related to printing & PDF export
Hi,
I'm having a problem : JRE 1.5.0 (updates 6, 10 and 13 tried) crashes under my software. The problem is encountered with printing / PDF exporting functionality through JFreeReport. Issue is encountered only with dualcore computers. Fortunately the issue isn't encountered with 1.6.0 anymore but I'd still be interested to find some workaround to make the software run with 1.5.0 also (It would be nice not to require users to have 1.6.0) Problem has been detected with both Win XP SP 2 and Vista.
First I was suspicious because we are using one JNI library but removing that didn't help so that shouldn't be the case.
After some searching I found a couple of JVM bugs that were marked as duplicates for http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6186524 . Those were related to 2D things and hence printing, fonts, exporting and with some cases dualcore computers were mentioned. However, that bug should be fixed in 1.5.0_10 but upgrading to 1.5.0_10 (or 1.5.0_13) didn't help so it can't be the actual bug.
Error log, if somebody can make up something: (This error log was got when running through Eclipse with JRE set to 1.5.0_13 but error has been encountered also when running straight with just one JRE (1.5.0_XX) installed to computer.)
# An unexpected error has been detected by HotSpot Virtual Machine:
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x762369e6, pid=5312, tid=5188
# Java VM: Java HotSpot(TM) Client VM (1.5.0_13-b05 mixed mode)
# Problematic frame:
# C [MSCTF.dll+0x69e6]
--------------- T H R E A D ---------------
Current thread (0x0b3f61d8): JavaThread "AWT-Windows" daemon [_thread_in_native, id=5188]
siginfo: ExceptionCode=0xc0000005, reading address 0x580e0e0e
Registers:
EAX=0x580e0e0e, EBX=0x00129f40, ECX=0x0b53f288, EDX=0x01300311
ESP=0x0b53f24c, EBP=0x0b53f250, ESI=0x0b53f288, EDI=0x00123970
EIP=0x762369e6, EFLAGS=0x00010202
Top of Stack: (sp=0x0b53f24c)
0x0b53f24c: 80004005 0b53f28c 76239ae4 580e0e0e
0x0b53f25c: 00152fe0 00123970 76236704 00140d70
0x0b53f26c: 013003f1 00000000 00000000 762367c8
0x0b53f27c: 001ba198 0b8400ec 00000000 580e0e0e
0x0b53f28c: 0b53f2d0 762391cd 00153118 00000000
0x0b53f29c: 00129f40 00123970 764d37c0 0b53f6b8
0x0b53f2ac: 764c5ac9 764d8f11 fffffffe 764d37c0
0x0b53f2bc: 762367f0 0b8400e4 0b53f2d8 7623689f
Instructions: (pc=0x762369e6)
0x762369d6: ff 55 8b ec 8b 45 08 85 c0 56 8b f1 89 06 74 06
0x762369e6: 8b 08 50 ff 51 04 8b c6 5e 5d c2 04 00 90 90 90
Stack: [0x0b500000,0x0b540000), sp=0x0b53f24c, free space=252k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [MSCTF.dll+0x69e6]
C [MSCTF.dll+0x9ae4]
C [MSCTF.dll+0x91cd]
C [MSCTF.dll+0x9bec]
C [MSCTF.dll+0x8e6f]
C [IMM32.DLL+0x3472]
C [USER32.dll+0x199cd]
C [USER32.dll+0x18e4c]
C [USER32.dll+0x18de1]
C [USER32.dll+0x19132]
C [USER32.dll+0x21a10]
C [USER32.dll+0x21ae8]
C [USER32.dll+0x21c03]
C [USER32.dll+0x23656]
C [ntdll.dll+0x60e6e]
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j sun.awt.windows.WToolkit.eventLoop()V+0
j sun.awt.windows.WToolkit.run()V+69
j java.lang.Thread.run()V+11
v ~StubRoutines::call_stub
--------------- P R O C E S S ---------------
Java Threads: ( => current thread )
0x0c077b28 JavaThread "export-worker--0" daemon [_thread_in_native, id=6032]
0x0c0779a0 JavaThread "Repagination-Worker" daemon [_thread_blocked, id=6016]
0x0c077818 JavaThread "Thread-20" [_thread_blocked, id=4740]
0x0bf45428 JavaThread "Timer-0" daemon [_thread_blocked, id=4456]
0x0bfee410 JavaThread "GC Daemon" daemon [_thread_blocked, id=4368]
0x0bfee288 JavaThread "RMI RenewClean-[192.168.1.155:49177]" daemon [_thread_blocked, id=5460]
0x00f718a0 JavaThread "DestroyJavaVM" [_thread_blocked, id=5212]
0x0bfcba50 JavaThread "TimerQueue" daemon [_thread_blocked, id=4704]
0x0b49d470 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=2696]
0x0b4a6288 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=632]
=>0x0b3f61d8 JavaThread "AWT-Windows" daemon [_thread_in_native, id=5188]
0x0b3f6050 JavaThread "AWT-Shutdown" [_thread_blocked, id=3368]
0x0103ef78 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=416]
0x0103e338 JavaThread "CompilerThread0" daemon [_thread_blocked, id=1216]
0x0103d9b0 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=5592]
0x010333e8 JavaThread "Finalizer" daemon [_thread_blocked, id=4820]
0x01030e10 JavaThread "Reference Handler" daemon [_thread_blocked, id=4144]
Other Threads:
0x0102be10 VMThread [id=936]
0x00fd8ba8 WatcherThread [id=1316]
VM state:not at safepoint (normal execution)
VM Mutex/Monitor currently owned by a thread: None
Heap
def new generation total 2304K, used 1239K [0x03100000, 0x03370000, 0x035e0000)
eden space 2112K, 49% used [0x03100000, 0x03205da8, 0x03310000)
from space 192K, 100% used [0x03340000, 0x03370000, 0x03370000)
to space 192K, 0% used [0x03310000, 0x03310000, 0x03340000)
tenured generation total 29228K, used 24017K [0x035e0000, 0x0526b000, 0x07100000)
the space 29228K, 82% used [0x035e0000, 0x04d544d0, 0x04d54600, 0x0526b000)
compacting perm gen total 15616K, used 15552K [0x07100000, 0x08040000, 0x0b100000)
the space 15616K, 99% used [0x07100000, 0x08030000, 0x08030000, 0x08040000)
No shared spaces configured.
Dynamic libraries:
0x00400000 - 0x0040d000 C:\Program Files\Java\jre1.5.0_13\bin\javaw.exe
0x776b0000 - 0x777ce000 C:\Windows\system32\ntdll.dll
0x764b0000 - 0x76588000 C:\Windows\system32\kernel32.dll
0x76660000 - 0x7671f000 C:\Windows\system32\ADVAPI32.dll
0x777f0000 - 0x778b3000 C:\Windows\system32\RPCRT4.dll
0x76980000 - 0x76a1e000 C:\Windows\system32\USER32.dll
0x76b90000 - 0x76bdb000 C:\Windows\system32\GDI32.dll
0x76360000 - 0x7640a000 C:\Windows\system32\MSVCRT.dll
0x76b70000 - 0x76b8e000 C:\Windows\system32\IMM32.DLL
0x76230000 - 0x762f7000 C:\Windows\system32\MSCTF.dll
0x764a0000 - 0x764a9000 C:\Windows\system32\LPK.DLL
0x76720000 - 0x7679d000 C:\Windows\system32\USP10.dll
0x10000000 - 0x10017000 C:\Windows\system32\APSHook.dll
0x6d640000 - 0x6d7dd000 C:\Program Files\Java\jre1.5.0_13\bin\client\jvm.dll
0x752d0000 - 0x75303000 C:\Windows\system32\WINMM.dll
0x76a20000 - 0x76b64000 C:\Windows\system32\ole32.dll
0x76170000 - 0x761fc000 C:\Windows\system32\OLEAUT32.dll
0x75290000 - 0x752c8000 C:\Windows\system32\OLEACC.dll
0x75da0000 - 0x75dcc000 C:\Windows\system32\apphelp.dll
0x6d290000 - 0x6d298000 C:\Program Files\Java\jre1.5.0_13\bin\hpi.dll
0x75f60000 - 0x75f67000 C:\Windows\system32\PSAPI.DLL
0x6d610000 - 0x6d61c000 C:\Program Files\Java\jre1.5.0_13\bin\verify.dll
0x6d310000 - 0x6d32d000 C:\Program Files\Java\jre1.5.0_13\bin\java.dll
0x6d630000 - 0x6d63f000 C:\Program Files\Java\jre1.5.0_13\bin\zip.dll
0x6d000000 - 0x6d16a000 C:\Program Files\Java\jre1.5.0_13\bin\awt.dll
0x734b0000 - 0x734f1000 C:\Windows\system32\WINSPOOL.DRV
0x74b80000 - 0x74bbf000 C:\Windows\system32\uxtheme.dll
0x003e0000 - 0x003f8000 C:\Program Files\Hewlett-Packard\IAM\bin\ItClient.dll
0x76300000 - 0x76355000 C:\Windows\system32\SHLWAPI.dll
0x74f50000 - 0x750e4000 C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.6000.16386_none_5d07289e07e1d100\comctl32.dll
0x74ec0000 - 0x74f46000 C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.6000.16386_none_87e0cb09378714f1\Comctl32.dll
0x71cb0000 - 0x71cbc000 C:\Windows\system32\dwmapi.dll
0x76be0000 - 0x776ae000 C:\Windows\system32\shell32.dll
0x6d240000 - 0x6d290000 C:\Program Files\Java\jre1.5.0_13\bin\fontmanager.dll
0x6d4d0000 - 0x6d4e3000 C:\Program Files\Java\jre1.5.0_13\bin\net.dll
0x76200000 - 0x7622d000 C:\Windows\system32\WS2_32.dll
0x777e0000 - 0x777e6000 C:\Windows\system32\NSI.dll
0x755e0000 - 0x7561b000 C:\Windows\system32\mswsock.dll
0x75640000 - 0x75646000 C:\Windows\System32\wship6.dll
0x6d4f0000 - 0x6d4f9000 C:\Program Files\Java\jre1.5.0_13\bin\nio.dll
0x6d3d0000 - 0x6d3ef000 C:\Program Files\Java\jre1.5.0_13\bin\jpeg.dll
0x75360000 - 0x75398000 C:\Windows\system32\rsaenh.dll
0x75e20000 - 0x75e3e000 C:\Windows\system32\USERENV.dll
0x75e00000 - 0x75e14000 C:\Windows\system32\Secur32.dll
0x74a70000 - 0x74a7f000 C:\Windows\system32\NLAapi.dll
0x75800000 - 0x75819000 C:\Windows\system32\IPHLPAPI.DLL
0x757c0000 - 0x757f5000 C:\Windows\system32\dhcpcsvc.DLL
0x75ac0000 - 0x75aeb000 C:\Windows\system32\DNSAPI.dll
0x757b0000 - 0x757b7000 C:\Windows\system32\WINNSI.DLL
0x75790000 - 0x757b0000 C:\Windows\system32\dhcpcsvc6.DLL
0x727e0000 - 0x727e8000 C:\Windows\System32\winrnr.dll
0x76930000 - 0x76979000 C:\Windows\system32\WLDAP32.dll
0x727d0000 - 0x727df000 C:\Windows\system32\napinsp.dll
0x72070000 - 0x72082000 C:\Windows\system32\pnrpnsp.dll
0x727c0000 - 0x727cc000 C:\Windows\system32\wshbth.dll
0x767a0000 - 0x76928000 C:\Windows\system32\SETUPAPI.dll
0x75220000 - 0x75226000 C:\Windows\System32\wshtcpip.dll
0x728d0000 - 0x728d6000 C:\Windows\system32\rasadhlp.dll
0x6d1c0000 - 0x6d1e3000 C:\Program Files\Java\jre1.5.0_13\bin\dcpr.dll
0x6d5f0000 - 0x6d5f6000 C:\Program Files\Java\jre1.5.0_13\bin\rmi.dll
0x0b990000 - 0x0b9a1000 C:\Eclipse workspace\fenix\lib\ICE_JNIRegistry.dll
0x760f0000 - 0x76164000 C:\Windows\system32\COMDLG32.DLL
0x71610000 - 0x71617000 C:\Windows\system32\spool\DRIVERS\W32X86\3\SDNT5UI.DLL
0x0bac0000 - 0x0bad2000 C:\Windows\system32\spool\DRIVERS\W32X86\3\SDDM32.DLL
0x71130000 - 0x71145000 C:\Windows\system32\spool\DRIVERS\W32X86\3\ZSPOOL.dll
0x710e0000 - 0x710ea000 C:\Windows\system32\spool\DRIVERS\W32X86\3\ZGDI32.dll
0x70810000 - 0x70821000 C:\Windows\system32\MSVCRT40.dll
0x715d0000 - 0x715da000 C:\Windows\system32\spool\DRIVERS\W32X86\3\ZTAG32.dll
0x75650000 - 0x75658000 C:\Windows\system32\VERSION.dll
0x71060000 - 0x71080000 C:\Windows\system32\spool\DRIVERS\W32X86\3\SDDMUI.DLL
0x0bae0000 - 0x0bae7000 C:\Windows\system32\spool\DRIVERS\W32X86\3\ZLANG.dll
0x0bbc0000 - 0x0bbe4000 C:\Windows\system32\spool\DRIVERS\W32X86\3\SR32.dll
0x0bb70000 - 0x0bb7d000 C:\Windows\system32\spool\DRIVERS\W32X86\3\IMFNT5.DLL
0x71600000 - 0x71608000 C:\Windows\system32\spool\DRIVERS\W32X86\3\Imf32.dll
0x76410000 - 0x76494000 C:\Windows\system32\CLBCatQ.DLL
0x6de10000 - 0x6e033000 C:\Windows\system32\NetworkExplorer.dll
0x742c0000 - 0x74377000 C:\Windows\system32\PROPSYS.dll
0x76590000 - 0x7665f000 C:\Windows\system32\WININET.dll
0x777d0000 - 0x777d3000 C:\Windows\system32\Normaliz.dll
0x75f70000 - 0x75fb5000 C:\Windows\system32\iertutil.dll
0x759a0000 - 0x759b4000 C:\Windows\system32\MPR.dll
0x71940000 - 0x71952000 C:\Windows\System32\ntlanman.dll
0x75a50000 - 0x75aba000 C:\Windows\System32\NETAPI32.dll
0x71a00000 - 0x71a08000 C:\Windows\System32\drprov.dll
0x719d0000 - 0x719df000 C:\Windows\System32\davclnt.dll
0x734a0000 - 0x734aa000 C:\Windows\system32\cscapi.dll
0x707e0000 - 0x707e9000 C:\Windows\system32\LINKINFO.dll
0x6c460000 - 0x6c519000 C:\Windows\system32\spool\DRIVERS\W32X86\3\unidrvui.dll
0x6bdd0000 - 0x6be8b000 C:\Windows\system32\spool\DRIVERS\W32X86\3\mxdwdrv.dll
0x6c350000 - 0x6c365000 C:\Windows\system32\FontSub.dll
VM Arguments:
jvm_args: -Djava.library.path=c:/Eclipse workspace/fenix/lib -Xbootclasspath/a:C:\Eclipse workspace\fenix\rsrc\images\buttons;C:\Eclipse workspace\fenix\rsrc\images\buttons\general;C:\Eclipse workspace\fenix\rsrc\images\buttons\report
java_command: XXX
Launcher Type: SUN_STANDARD
Environment Variables:
PATH=C:\Program Files\Java\jre1.6.0_03\bin\client;C:\Program Files\Java\jre1.6.0_03\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;c:\Program Files\ATI Technologies\ATI.ACE\Core-Static;c:\Program Files\Microsoft SQL Server\90\Tools\binn\;c:\Program Files\Common Files\Roxio Shared\DLLShared\;c:\Program Files\Common Files\Roxio Shared\DLLShared\;c:\Program Files\Common Files\Roxio Shared\9.0\DLLShared\;C:\Program Files\Hewlett-Packard\IAM\bin
USERNAME=XXX
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 15 Model 72 Stepping 2, AuthenticAMD
--------------- S Y S T E M ---------------
OS: Windows Vista Build 6000
CPU:total 2 (cores per cpu 2, threads per core 1) family 15 model 72 stepping 2, cmov, cx8, fxsr, mmx, sse, sse2, sse3, mmxext, 3dnowext, 3dnow
Memory: 4k page, physical 1964736k(863916k free), swap 4159556k(2569432k free)
vm_info: Java HotSpot(TM) Client VM (1.5.0_13-b05) for windows-x86, built on Sep 25 2007 19:11:52 by "java_re" with MS VC++ 6.0This looks like [bug 6754141|http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6754141] in the just-in-time compiler. If you have a support contract you can escalate this to get a fix in a jdk1.5.0 update. Alternatively, there do not seem to be any reports of this in jdk6, so you could try a recent jdk6 update (e.g., jdk6 update 17).
-
Brother printer will no longer print PDF document--"no pages selected" although I did specify pages. Have reviewed and tried Adobe trouble shooting, not helpful. Cannot print page as image. Brother says to contact Adobe
There may be some security issues related to the USPS PDFs.
http://www.certified-mail-envelopes.com/signatures-usps-certified-mail-return-receipt-requested
I can't help with the scan/print problem. You seem to have done everything I would try.
I don't know if maybe using a registry cleaner would help.
John Hoffman
Conway, NH
1D Mark IV, Rebel T5i, Pixma PRO-100, MX472 -
Convert Spool to PDF and mail for the jobs not run in background.
Dear All,
I need to convert the spool job into pdf and mail as attachment for job not run in background.
I am printing the bills using the program SD70AV3A to print the bills in a batch using the SUBMIT.
But i am not using the spool options since its going to into waiting state in spool...and i need to change the printer properties to G
to get the printer to print the reports as these jobs run in backgroud....but this solution is not acceptable solution.
SUBMIT SD70AV3A
WITH RG_KSCHL-LOW = 'ZRR'
WITH RG_NACHA-LOW = '1'
WITH PM_VERMO = '2'
WITH PM_NSORT = '1'
WITH RG_VBELN IN range.
* TO SAP-SPOOL
* SPOOL PARAMETERS print_parameters
* WITHOUT SPOOL DYNPRO
* VIA JOB name NUMBER number
* AND RETURN.
so how do i get the spool number from the above after the job is submitted....and then convert into pdf and mail
please suggest some solution. I have searched on net but most the solutions are say to run the job as background job...
i have also looked into the program RSTXPDFT4 but it asks for the spool id ....how can i get spool id for the job that has been completed.
please suggest some solution.
Thanks
Bhargava.Hi,
Spool to PDF : FM 'CONVERT_ABAPSOOLJOB_2_PDF'
Table TSP01 to get spool number
You ,may need to convert OTF to PDF: FM CONVERT_OTF
and the to binary : FM 'SMCS_XSTRING_TO_BINARY'
To send mail use class: cl_document _bcs.
Regards,
Maria João Rocha -
Print PDF Pages quality not high enough
I'm pretty happy with using Aperture to design relatively simple photo books. Its great to stay in one tool. But I'm not happy with how it exports JPGs from the book I designed. Don't think its a problem with my automator workflow file either. I'm using a custom 10x10" theme and sending JPG's to Black River Imaging for book publishing, I'm not using Apple's books, so I have to get my designed book into JPGs, somewhow. So I modified the print pdf to jpg folder automator script to bump to 300 dpi, RGB, using the sRGB color space and a "best" quality. The pixel counts are coming out correct, ditto for color space, but the file size is too small and the sharpness just isn't there in the files.
I did an experiment where I exported the individual JPG images for a book page and brought them into Photoshop. Resized the images based on where they went into the page layout and re-implemented the page layout in Photoshop, saving as JPG-12 optimized. Results?
Aperture - 733 KB for a 10x10 300 dpi page
Photosho - 2.1MB, and yes, viewed at 100% obvious differences to detail.
Its a bummer. Making the photo books within Aperture is much, much easier. But I'm not happy with the "print PDF to JPG pages" flow.
Do I have any way of fixing this?Screen capture of my Automator script. Notice I'm asking for 300 dpi. I'm getting 72. However, instead of 10" as I expect, I get 42.3", and this still equals the correct 3,000 pixels per side, so that is good. But why? And if that is messing up can I be sure I can trust the compression setting?
Image file at http://mercphoto.exposuremanager.com/scripts/expman.pl?rm=view_photo&photo_id=jp g-automator_13_2&dir=galleries/13/2&file=jpg-automator_full.jpg
Maybe you are looking for
-
How to get file count in variable?
dear all, how to get file count in variable? regards Naseer
-
Problem with MS-Access as Back-End Database
We are using MS-Acess as a back-end Database when we are inserting some rows into that table all rows are inserting but the last inserting row statement , is not inserting into that table please the following code import java.sql.*; public class inse
-
Hi,, We wants to clear out the stock in SAP because they are the old stock and actually there are no stocks for the materials in physical warehouse. It is just in the system showing those materials have stocks; 62 pcs. So we wants to clear those 62 p
-
Blackberry Desktop Software for Mac not updating 9900
Hi, please could someone assist me in this. I have a mac running the latest Blackberry Desktop Software for Mac. And a Bold 9900 on 7.0 bundle 1465. The Blackberry Desktop Software says new update available 7.0.0.1672. So i proceed to update the bla
-
How to open .ppt or .pot or .doc files in safari for mac?
HI Guys I stuck in problem.Actually i want to open .ppt or .doc or .pot file in safari Browser for mac version. I am using js to open file using window.open method.But it is not opening but in mozilla it is showing a popup window to open or save file