What (ISO?) document completely specifies the PDF file format?

Is there ONE (ISO?) document that FULLY specifies the format of a PDF file format? Where to obtain it?
I need it so I can write a program that will perform some processes on PDF files.
Thanks

For all practical purposes there's no file size limit in the ISO PDF specification, however the bit length of internal references means there will be problems at around 10GB. There's also a limit of 2 billion pages (the page count attribute is a 32-bit int).
Distiller won't output more than 32767 pages at a time, but I know cases of archivists working with 100,000-page text files (created by appending thousands of documents, but not in Acrobat).
Having said that, the Acrobat Family is 32-bit code, so can only allocate 2GB of process memory. This means you can't perform tasks where an asset larger than the allocated free space has to be retained in RAM, and that includes the save operation. The Acrobat X Family will open an existing file >2GB, and Acrobat X will assemble PDF Portfolios >2GB, but can't save them.
Given that creating >2GB files is a very rare scenario, there are no announced plans to implement x64 flavors of Acrobat or Distiller.

Similar Messages

  • How can u get the matching percentage whenever compare the pdf files(compare the strings)

    Actually I want matching percentage whenever compare the pdf files.First I had completed 
    read the pdf files content into string
    my code like as
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.IO;
    using iTextSharp.text;
    using iTextSharp.text.pdf;
    using iTextSharp.text.pdf.parser;
    namespace WindowsFormsApplication1
    public partial class Form1 : Form
    string str1;
    string filename;
    string path;
    string str2;
    public Form1()
    InitializeComponent();
    private void button1_Click(object sender, EventArgs e)
    OpenFileDialog openFileDialog = new OpenFileDialog();
    openFileDialog.CheckFileExists = true;
    openFileDialog.AddExtension = true;
    openFileDialog.Filter = "PDF files (*.pdf)|*.pdf";
    DialogResult result = openFileDialog.ShowDialog();
    if (result == DialogResult.OK)
    filename = Path.GetFileName(openFileDialog.FileName);
    path = Path.GetDirectoryName(openFileDialog.FileName);
    textBox1.Text = path + "\\" + filename;
    private void button2_Click(object sender, EventArgs e)
    OpenFileDialog openFileDialog = new OpenFileDialog();
    openFileDialog.CheckFileExists = true;
    openFileDialog.AddExtension = true;
    openFileDialog.Filter = "PDF files (*.pdf)|*.pdf";
    DialogResult result = openFileDialog.ShowDialog();
    if (result == DialogResult.OK)
    filename = Path.GetFileName(openFileDialog.FileName);
    path = Path.GetDirectoryName(openFileDialog.FileName);
    textBox2.Text = path + "\\" + filename;
    public static string ExtractTextFromPdf(string filename)
    using (PdfReader r = new PdfReader(filename))
    StringBuilder text = new StringBuilder();
    for (int i = 1; i <= r.NumberOfPages; i++)
    text.Append(PdfTextExtractor.GetTextFromPage(r, i));
    string result = text.ToString();
    return result;
    public static string Extract(string filename)
    using (PdfReader r = new PdfReader(filename))
    StringBuilder text = new StringBuilder();
    for (int i = 1; i <= r.NumberOfPages; i++)
    text.Append(PdfTextExtractor.GetTextFromPage(r, i));
    string result1 = text.ToString();
    return result1;
    private void button3_Click(object sender, EventArgs e)
    str1 = Form1.ExtractTextFromPdf(textBox1.Text);
    str2 = Form1.Extract(textBox2.Text);
    }Finally how can u get the matching percentage whenever compare the pdf files(compare the strings)please help me.thank u

    Hi,
    Based on your code, I see your code related to
    iTextSharp Pdf.
    iText is a third party library to create PDF originally written for java. iTextSharp is
    the C# adaptation of that library.
    Question regarding iText are better asked on the iText forum, rather than the Microsoft Forum:
    http://itextpdf.com/support
    Thanks for your understanding.
    Best regards,
    Kristin
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • "  Displaying the Report in PDF file Format "

    Hai Friend's,
    I have Developed a Report in Web-Intelligence .My Report is having 50 Collums and 600 Rows. The Report is too big Report. when the Save the Report in PDF File format, The PDF file Format Report is Consisting of 10 Pages, The Report Output is not coming in One Page. But my user want the Report  all the Field's :: Collumms,Rows in one Page.can Anybody let me know the solution.

    Hi Ashok,
    You can change the page size and orientation in the web.xml in the following folder.
    Web Intelligence default Page size Modification u2013 Follow these steps:
    1. Open the defaultconfig.xml file found in the following directory:
    servername\Program Files\Business Objects\Tomcat\webapps\businessobjects\enterprise115\desktoplaunch\webiApplet\AppletConfig
    2. Look for the following code near the top of the page:
    <KEY VALUE="page*default">
    <FORMAT NAME="A4" ORIENTATION="portrait" />
    </KEY>
    3. Change this to:
    <KEY VALUE="page*default">
    <FORMAT NAME="LETTER" ORIENTATION="portrait" />
    </KEY>
    4. Save the file.
    All the Best,
    Madhu...

  • Just converted a PDF document to Word, none of the graphics from the PDF file show up in the Word document?

    Just converted a PDF document to Word, none of the graphics from the PDF file show up in the Word document?
    What do I need to do to bring the graphics and exhibits from the PDF file to the Word file?

    Hi jackp52432917,
    How was that PDF file created? Please see  Will Adobe ExportPDF convert both text and form... | Adobe Community
    It could be that the PDF file you're converting was created using a third-party application, and it doesn't contain all the information necessary to ensure a clean conversion. Have you had similar troubles converting other PDF files?
    Best,
    Sara

  • I tried opening a pdf file and I set it to use always and firefox which did not work, I was wondering how to undo that and what I should use to open pdf files in the future?

    I was attempting to open a document from a frequently used site, I had never been on, on my new mac however. I attempted to open the pdf file and was given the option of which program to use to open it, I mistakenly clicked use always and firefox as the program with which to open pdf files. I do not know how to undo this or what I should do in the future to access the pdf files.

    Hi Melfour-
    Here is a Support article detailing how to work with your Firefox PDF preferences:
    [[Opening PDF files within Firefox]]
    Hope that helps.

  • What is the default file format for saving in MS Office 2013? Is it still the transitional OOXML or the ISO/IEC 29500 strict format?

    As I have read, MS Office 2013 is able to read and write the ISO/IEC 29500 strict (standardized Office Open XML) file format. MS Office 2010 was only able to read the strict format and MS Office 2007 could neither read nor write the strict format. The
    .docx, .xlsx and .pptx saved by Office 2007 and 2010 were only complying to the OOXML transitional, as far as I understood.
    My main question is what the default file format for saving in MS Office 2013 actually is? Is it still the transitional OOXML or the ISO/IEC 29500 strict format?
    In case, MS Office still saves in the transitional standard by default, is it possible to set the strict standard in the settings? Is this recommended (I assume that OOXML strict is the future) to do this?
    Thanks.

    Yes, the Transitional is still the default file format for saving in Office 2013, and we can modify this setting in Word Options, Save:
    As Alex Brown covers in his
    blog post, "Transitional is intended to preserve the fidelity of existing binary documents being migrated to ISO/IEC 29500, and includes many legacy features for compatibility with existing documents. Strict is a subset of Transitional that does not
    include legacy features – this makes it theoretically easier for a new implementer to support (since it has a smaller technical footprint, so to speak), but also makes it less able to preserve the fidelity of existing documents."
    Max Meng
    TechNet Community Support

  • How to show the pdf file into the UIWebView from iphone documents directory?

    Hi ,
         I am working on web services right now I am getting string into base64 format. After decoding that string into NSData i am saving that data as a pdf into Document directory of iphone. Now the problem is that when I want to show the pdf into UIwebView then it is showing blank page. But when I am checking into /Users/pareshkarnawat/Library/Application Support/iPhone Simulator/4.3.2/Applications/ the pdf file is correctly generated and working fine when I ope it.
       How to show that pdf file into UIwebview ? or is there any alernative for this.
    Any ideas on how I can go about this? I have looked at a few posts and still can't seem to figure it out.
    Any idea's appreciated, thanks

    The result is a UIWebView that displays a blank page. No errors occur in the UIWebView delegate method. The thing is that data has the correct length, in bytes, for the PDF I am trying to display, and I also get the pdf file in Library/Application Support/iPhone Simulator/4.3.2/Applications/ Does anyone have an idea as to what might be going wrong here or how I can better debug this problem?

  • Copy and pasting a page in an existing document? Copy and paste functions are greyed out? Also tried extracting the page to copy but am alerted that an incorrect structure was found in the PDF file?

    copy and pasting a page in an existing document? Copy and paste functions are greyed out? Also tried extracting the page to copy but am alerted that an incorrect structure was found in the PDF file?

    What do you mean by "copy and paste a page"? What tool have you selected? Or are you just assuming you can select stuff and copy/paste as in Word?

  • Not moving the .pdf files from Drop Off Library to my custom document library in sharepoint 2013

    Hi Team,
    I am trying to move the .pdf files from drop-off library to custom library.
    For the above requirement i am writing content organizer rule condition like (On Group: Document content types & Type: Document)
    Property: Name
    Operator: Ends with
    value: .pdf
    and Setting value in target location like
    /sites/MS/ProductGuides
    How to solve the issue
    If help appriciated
    Regards,
    Dhaya

    Hi Dhaya,
    I created a Content Organizer rule like this:
    When uploading a .pdf file to the Drop Off library, it is moved to the destination library immediately:
    I suggest you create a similar rule as above for another test to see if the issue still persists.
    Thanks 
    Patrick Liang
    TechNet Community Support
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
    [email protected]

  • HT4075 when i drag the pdf file over other (in previewer) to merge it does not show green circle with plus one. what to do?

    when i drag the pdf file over other (in previewer) to merge it does not show green circle with plus one. what to do?

    Hello djensen1x,
    Could you please let me know what version of Acrobat are you using.
    Also, tell me your workflow of combining those PDF files?
    Please share the screenshot of the error message that you get.
    Hope to get your response.
    Regards,
    Anubha

  • In documents I can open pdf files but none of the others

    When I go to documents I can open pdf files but nothing else. Same on downloads. I have lots of info I've downloaded over time and I often use it. Can I just go back and use internet explorer for that and if so how?

    Opening in the side bar is the default for bookmarks that are created via a link or button on a website.<br />
    You can check the Properties of a bookmark via the right-click context menu in the side bar (Ctrl+B; Cmd+B on Mac).<br />
    In the Bookmarks Manager (Bookmarks > Show All Bookmarks) you can click the More button in the Details pane at the bottom right.<br />
    Make sure that "Load this bookmark in the side bar" is not selected.<br />

  • How to get the image into the PDF File, Cut the image into the PDF What acrobat product help to do that?

    I need to cut some image into the PDF file, what Adobe product can help me with it?

    Hi Hugo,
    Please elaborate your issue. What exactly do you want to achieve?
    Regards,
    Rahul

  • K1- How to copy the *.pdf file to K1 , and what dir to copy to ???

    I did not install SD card into my K1 .
    When I connected K1 to my PC (window XP) I saw the directories:
    - Alarms.
    - capture.
    I had some book in *.pdf file format. I like to copy those pdf file to K1 so I can read under Adobe reader. What DIRECTORY I should copy to ?????
    Best Regards.

    You can put the PDF files anywhere you want, as long as you remember where you put them. Just as you'd do on a desktop operating system, like Windows or OS X, open a file manager app on your K1, and use the file manager app to navigate to your PDF file. Tap on the PDF file and Android will ask you which program (like Adobe Reader) you want to use to open it. For file managers, I like this one: https://market.android.com/details?id=com.rhmsoft.fm.hd It's ad-supported though, so there'll be a little advertisement in the corner. Or use the file manager app that is preinstalled on the K1.

  • While converting spool to PDF, no data is coming in the PDF file.

    Hi All,
    I am submitting a z program ZPR022_INNCOMETAX_REPORT_COPY1 (which has some output display) from Z_ITSLIP_MAIL.  I am creating a job, submitting the above program via JOB  to SAP-SPOOL.
    In program ZPR022_INNCOMETAX_REPORT_COPY1 , I am getting the run time job information and from there I am getting the spool id.  Now I am converting the spool id to a PDF.  This PDF should contain the output of the program ZPR022_INNCOMETAX_REPORT_COPY1.  This output is normal output using Write statement only.  But once the program is executed, I could find no data in the PDF file.  When I check in SM37 and SP02, both the JOB and the SPOOL are created.  What I feel is the program is not picking the spool id at the run time.  Could any one help me in this regard how to proceed.
    Please find the code below.
    Program 1.
    LOOP AT pernr.
      CLEAR p_job.
      p_stim = p_stim + 120.
      CONCATENATE'ITSlip' pernr-low p_job sy-datum INTO p_job SEPARATED BY
    space.
      CALL FUNCTION 'JOB_OPEN'
        EXPORTING
          jobname   = p_job
          sdlstrtdt = p_sdat
          sdlstrttm = p_stim
        IMPORTING
          jobcount  = l_jobcount.
      SUBMIT ZPR022_INNCOMETAX_REPORT_COPY1
        WITH pnptimr6 = 'X'
        WITH pnpbegda = period-low
        WITH pnpendda = period-high
        WITH pnppernr-low = pernr-low
        WITH pnpabkrs-low = 'IN'
           VIA JOB     p_job
            NUMBER  l_jobcount
           TO SAP-SPOOL WITHOUT SPOOL DYNPRO
               SPOOL PARAMETERS ls_params
               WITH immediately = 'X'
              KEEP IN SPOOL = 'X'
                  AND RETURN.
      CALL FUNCTION 'JOB_CLOSE'
        EXPORTING
          jobcount  = l_jobcount
          jobname   = p_job
          strtimmed = 'X'
         PRDMINS = 2.
          sdlstrtdt = p_sdat
          sdlstrttm = p_stim.
    ENDLOOP.
    Program 2.
      IF sy-batch EQ 'X'.
        LOOP  AT pnppernr.
          SELECT SINGLE * FROM pa0105
            WHERE pernr EQ pnppernr-low
              AND subty EQ '0010'
              AND endda EQ '99991231'.
          p_email1 = pa0105-usrid_long..
          PERFORM get_job_details.
          PERFORM obtain_spool_id.
          PERFORM convert_spool_to_pdf.
          PERFORM process_email.
         IF sy-sysid = c_dev.
            WAIT UP TO 5 SECONDS.
            SUBMIT rsconn01 WITH mode   = 'INT'
                            WITH output = 'X'
                            AND RETURN.
         ENDIF.
        ENDLOOP.
      ELSE.
        SKIP.
        WRITE:/ 'Program must be executed in background in-order for spool'
                'request to be created.'.
       EXPORT gd_spool_nr TO MEMORY ID 'SPOOLTOPDF'.
      ENDIF.
    ENDFORM.                    " SEND_MAIL
    *&      Form  get_job_details
          text
    -->  p1        text
    <--  p2        text
    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.                    " get_job_details
    *&      Form  obtain_spool_id
          text
    -->  p1        text
    <--  p2        text
    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.                    " obtain_spool_id
    *&      Form  convert_spool_to_pdf
          text
    -->  p1        text
    <--  p2        text
    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.                    " convert_spool_to_pdf
    *&      Form  process_email
          text
    -->  p1        text
    <--  p2        text
    FORM process_email .
      DESCRIBE TABLE it_mess_att LINES gd_recsize.
      CHECK gd_recsize > 0.
      PERFORM send_email USING p_email1.
    ENDFORM.                    "process_email
    FORM send_email USING p_email.
      CHECK NOT ( p_email IS INITIAL ).
      REFRESH it_mess_bod.
    Default subject matter
      gd_subject         = 'Subject'.
      gd_attachment_desc = 'IT Declaration'.
      CONCATENATE 'ITSLIP' ' ' INTO gd_attachment_name.
      it_mess_bod        = 'IT FORM for this month'.
      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_email1
                                          'MindTree Payroll team'
                                          'PDF'
                                          gd_attachment_name
                                          gd_attachment_desc
                                          p_sender
                                          gd_sender_type
                                 CHANGING gd_error
                                          gd_reciever.
    ENDFORM.                    " process_email
    *&      Form  send_file_as_email_attachment
          text
         -->P_IT_MESS_BOD  text
         -->P_IT_MESS_ATT  text
         -->P_P_EMAIL  text
         -->P_4422   text
         -->P_4423   text
         -->P_GD_ATTACHMENT_NAME  text
         -->P_GD_ATTACHMENT_DESC  text
         -->P_P_SENDER  text
         -->P_GD_SENDER_TYPE  text
         <--P_GD_ERROR  text
         <--P_GD_RECIEVER  text
    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               = 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.                    "send_file_as_email_attachment
    Points will be rewarded.
    Regards,
    Balaji

    Hi,
    I think you are retrieving the spool before the entire spool is generated.
    Put the following logic to retrieve spool iD
    CHECK WHETHER STATUS OF JOB IS COMPLETED OR CANCELLED
      WHILE 1 = 1.
    GET THE JOB STEPLIST WHICH HAS THE SPOOL NUMBER
        CALL FUNCTION 'BP_JOB_READ'
          EXPORTING
            job_read_jobcount           = w_jobcount
            job_read_jobname            = w_jobname
            job_read_opcode             = '35'
      JOB_STEP_NUMBER             =
         IMPORTING
           job_read_jobhead            = wa_jobhead
         TABLES
           job_read_steplist           = i_jobsteplist
    CHANGING
      RET                         =
       EXCEPTIONS
         invalid_opcode              = 1
         job_doesnt_exist            = 2
         job_doesnt_have_steps       = 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.
    BEGIN OF INSERTION U179942 E1BK928781
    IF STATUS OF JOB IS COMPLETED(F) OR CANCELLED(A)
    READ THE JOBSTEPLIST & GET THE SPOOL NUMBER
        IF wa_jobhead-status =  c_a OR wa_jobhead-status = c_f.
          READ TABLE i_jobsteplist INTO wa_jobsteplist INDEX 1.
          CHECK wa_jobsteplist-listident <> space.
          w_spool_number = wa_jobsteplist-listident.
          EXIT.
        ENDIF.
      ENDWHILE.
    Best regards,
    Prashant

  • InsertPage RaiseError: An incorrect structure was found in the PDF file

    Hi,
    I am trying to build a button script that will create a new document, copy (insert) from the first page of the open document, save it, then close it.  I believe the part where it gets tricky -- and possibly not doable -- is that the original (source) document uses a template; full of form fields to possibly be spawned off as new pages. 
    Given the above, ideally the user of the form can click on the "save new page" button: it creates anj Inserted copy of the first form page, cleared of content if any has been entered, and not including any other pages that may have been spawned. 
    With the code I am using, it currently creates the copy of the page and it inserts it as the zeroeth page (ahead of a blank page I intend to add code later to delete) and saves it.  However, there are a couple of problems that come up with this.  First is the error code that opens in the debugger:
    RaiseError: An incorrect structure was found in the PDF file
    Doc.insertPages:29:AcroForm:Save New Form:Annot1:MouseUp:Action1
    ===> An incorrect structure was found in the PDF file
    Despite the error it does still save the page (form copy) as mentioned above.  However, if you try to start working with it, it lets you know that there are no form fields on the document (even though they are all there and seemingly functional).   When I look to edit the fields, it will then ask you if you want to try to recognize the fields.  If I click on "yes", it says it was unable to, but then the form opens up with all of the field names perfectly matching the original.  If I click on "no" it just opens the page with all of the fields perfectly matching again.  So I feel like I am close to being able to do this!
    I am using the following code to produce my results:
    (In the JavaScript "app" folder, I have the following trusted functions:)
    myTrustedMenu = app.trustedFunction(function(name)
        app.beginPriv();
        app.execMenuItem(name);
        app.endPriv();
    myTrustedSaveAs = app.trustedFunction(function(doc, namePath)
        app.beginPriv();
        doc.saveAs(namePath);
        app.endPriv();
    myTrustedNewDoc = app.trustedFunction(function()
        app.beginPriv();
        var doc = app.newDoc();
        app.endPriv();
        return doc;
    myTrustedInsertPage = app.trustedFunction(function(doc, namePath)
        app.beginPriv();
        doc.insertPages ({
            nPage: -1,
            cPath: namePath,
            nStart: 0
        app.endPriv();
    (On the "Save New Form" button, the following code is activated:)
    // First split document path into an array
    var aPathComps = this.path.split("/");
    // Get File Name off end of array
    var myFileName = aPathComps.pop();
    var pathway = aPathComps.join("/");
    var myDoc = myTrustedNewDoc();
    myTrustedSaveAs(myDoc, pathway + "/test.pdf");
    myTrustedInsertPage(myDoc, this.path);
    //myDoc.resetForm();
    //myDoc.closeDoc(true);
    I apologize for the long post and I appreciate anyone who takes the time to look into this issue for me.
    Thanks,
    Mike

    MikeIs2C wrote:
    You nailed it TSN!  Deleting the tags did the trick.  Thank you so much for your help!  Just an FYI for any of you fellow "noobs" that might be referencing this discussion, to open the "Tabs" view (in Adobe Acrobat Pro XI in my case) go to View > Show/Hide > Navigation Panels > Tags.  I looked all over the place for that until I found a document that mentioned how to open it.
    Thanks for pointing out specifically how to get here. Thanks to the all for this post!
    I also encountered this error, "An incorrect structure was found in the PDF file" from my published MadCap Flare user guide. I am attempting to find a way to build a bridge between Flare and Google documents for corporate-wide collaboration. Thus far, it's a crazy challenge finding a way to produce gdocs from Flare output. Neither product makes this easy. The closest I can get is by publishing the Flare doc as a PDF... but then I must break that document down into 2mb chucks...which led me to this problem, after attempting to use the Adobe Acrobat splitting tool.
    Question:
    What is the root cause of these bad tags. There are a LOT of them! Is this a fault in the way MadCap Flare creates a PDF document?
    Yes, deleting some of the tags will allow me to finally split a PDF document. Unfortunately, this error occurs in all my published PDF documents, thus preventing me from automating (scripting) this split and then conversion to Google Docs!
    Thank you

Maybe you are looking for

  • I upgraded the ios my Ipod touch 4th gen from 4.2.1 to 5.1.1.

    I accidently switched on the wifi sync. Since then, neither my itunes nor my windows 7 pc has been able to detect my ipod. It only charges when i connect it with the cable. Ive tried everything given on the apple website. Please help

  • Mac Mini login not displayed after screensaver

    I have a Mac Mini that routinely (several times a week) will not display the login screen after the screensaver has kicked in. The screensaver is running find (e.g. changing which pictures are displayed) but when you move the mouse to stop the screen

  • Disk image backup freez

    I like to make a disk image of the partition with the operating system on it from time to time as a backup to an external hard drive. Works fine with my Powerbook G4 but the last couple of times I've tried to use disk utility to make such a disk imag

  • Need Permission for Firefox Update?!

    More permissions problems in Leopard. I've been trying to install the latest version of Firefox (2.0.1.14 or something to that effect) only to have it tell me at start-up that the update can't be installed because I do not have sufficient permission

  • Web server log not show byte transfer for php

    I added php module to iWS 6.0 it work fine but access log not show byte transfer information for php. How can I do?