TOC with PDF import

Hi
Anybody any experience with importing PDF into Robohelp? We
use specific format for Headings with a color we call 'RoboBlack?'.
Like this we are able to select the desired styles when importing.
This works just well.
But why is no TOC created from the PDF? The PDF contains the
nested bookmark information! Is Robohelp not able to interprete it?
Thanks for any info on this
Christian

The difference between Acrobat and InDesign is that InDesign is trying to both fully internalize the PDF as well as create a displayable rendition for the screen and that clearly has much more overhead that what is needed to simply display and/or print it.
Nonetheless, assuming that your PDF file is indeed a valid PDF file, InDesign should be able to place it without destablizing or crashing and within a reasonable amount of time.
I suspect that you will need to submit a bug report for this assuming that you are able to let Adobe see the problematic file(s).
          - Dov

Similar Messages

  • Help! How do I create a document with an imported PDF in 300dpi using a FOGRA27 colour profile?

    I am a new Indesign user and I have been working with GIMP for the last year creating single colour print-ready PDFs. But now I need to create a document with a FOGRA27 CMYK colour profile and a resolution of at least
    How do I create a document with an imported PDF in 300dpi using a FOGRA27 colour profile?
    I can import the PDF by creating a new document and finding the PDF in places, but it's bad quality.
    The only colour profile I can find under View - Proof Setup is FOGRA39, but I need FOGRA27!
    Help help help, I need to get these files printed in two days!
    Thanks so much..
    xx

    Proof Colors doesn't change the file's color management, it just lets you see what the color values would look like if they are printed unchanged on different output devices. If you want to actually convert the color from one CMYK space to another, it's probably better to do that in Acrobat—Tools>Print Production>Convert Colors.
    There's very little difference between Fogra27 and Fogra39—Fogra27 allows more total ink 350 vs. 330.
    There's nothing you can do to improve the quality of low res images

  • A big problem of Generate report with PDF format....Urgent

    I want to generate a report with pdf format through one java file, it have two page 1)gen_report.jsp 2) report_gen.java , the compliation was failed. However, i don't what the problem is .... i hope anyone can help me as it is very argent for me ....Thanks a lot
    1)gen_report.jsp
    <table  id="AutoNumber1">
       <tr>
         <td background="images/top5movie.png">
         <p align="center"> </p>
        </td>
       </tr>
       <tr>
       <td >
          <div align="center">
            <table id="AutoNumber2" >
                  <form method="GET" action="../report_gen" name="report_gen" target="_blank" onSubmit="javascript:return checkr1(this)">
                    <tr>
                      <td ><b>Report Description:</b></td>
                      <td >This report is to show the top five popular movies in cinemix for a period </td>
                    </tr>
                    <tr>
                      <td><b>Data scope:</b></td>
                      <td >Start from
                      <input type="text" name="start" value="2003-1-1" >to
                      <input type="text" name="end" value="2006-1-1" ></td>
                     </tr>
                     <tr>
                      <td><b>Data processing:</b></td>
                      <td >Show
                        <select name="order_by">
                          <option value="desc" selected>top</option>
                          <option value="asc">bottom</option>
                        </select>
                      5 films</td>
                    </tr>
                    <tr>
                      <td> <p align="center">
                          <input type="submit" value="View_Report" name="subm">
                        </p></td>
                    </tr>
                    <input type="hidden" name="report" value="r1">
                  </form>
                  <form method="GET" action="../report_gen" name="report_gen" target="_blank" onSubmit="javascript:return checkr2(this)">
                    <input type="hidden" name="report" value="r2">
                  </form>
                </table>
         </div>
          </td>
        </tr>
      </table>Then my java code is here
    report_gen.java
    import java.io.*;
    import java.net.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.util.*;
    import java.sql.*;
    // chart and pdf out
    import java.awt.Graphics2D;
    import java.awt.geom.Rectangle2D;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import org.jfree.chart.ChartFactory;
    import org.jfree.chart.JFreeChart;
    import org.jfree.chart.plot.PlotOrientation;
    import org.jfree.data.category.DefaultCategoryDataset;
    import org.jfree.data.xy.*;
    import org.jfree.data.xy.XYBarDataset;
    import org.jfree.data.general.DefaultPieDataset;
    import org.jfree.data.statistics.SimpleHistogramDataset;
    import org.jfree.data.xy.XYSeries;
    import org.jfree.data.xy.XYSeriesCollection;
    import com.lowagie.text.Document;
    import com.lowagie.text.DocumentException;
    import com.lowagie.text.Rectangle;
    import com.lowagie.text.pdf.DefaultFontMapper;
    import com.lowagie.text.pdf.PdfContentByte;
    import com.lowagie.text.pdf.PdfTemplate;
    import com.lowagie.text.pdf.PdfWriter;
    import com.lowagie.text.*;
    import com.lowagie.text.pdf.*;
    import com.lowagie.text.pdf.PdfPCell;
    public class report_gen extends HttpServlet
       private final String titles[] = {"Top Five popular movies ",
                        "Financial cirumstance of cinemas",
                        "Distribution of time segment",
                        "Distribution of favourite movie type"
       private final String descs[] = {"This report is to show the top five  popular movies in cinemix for a period ",
                   "This report is to show the financial circumstance of each cinema site ",
                   "This report is to analysis the customer when is the most visit time ",
                   "This report is to analysis the customer which type of movie do they watch the most"
        private final String bigTitle = "Cinemix";
        private final String driver = "org.gjt.mm.mysql.Driver";
        private final String url= "jdbc:mysql://localhost:3306/cinemix";
        private final String userID = "abc";
        private final String passwd = "abc";     
        public void init(ServletConfig config) throws ServletException
          super.init(config);
       protected void doGet(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException
          final int width = 550;
         final int height = 200;
    / title font (centre and report title)
         final Font fTitle0 = FontFactory.getFont("Helvetica", 42, Font.BOLD);
         final Font fTitle1 = FontFactory.getFont("Helvetica", 30, Font.BOLD);
              // centre name:
        final String title0 = bigTitle;
       // Default category for DefaultCategoryDataset
       final String cat = "data";
       Connection conn;
      JFreeChart chart;
       String title1     = "xyz Report";
       String chartDesc = "description";
       String notes[] = new String[4];
       String chartTitle = "so bad this is title";
       String chartXTitle = "this is x";
       String chartYTitle = "this is y.";
       String report = request.getParameter("report");     
       int max=-10000;
       int min=10000;
       int j=0;          
      // do some basic checking
       if (report == null || report.equals(""))
         report = "-1";  // this course unknow report error message
         String start   = request.getParameter("start");
         String end  = request.getParameter("end");
         String order_by  = request.getParameter("order_by");  // ToDo: check invalid string
           int topN  = 5;
        String order = (order_by.equals("desc")) ? "Top" : "Last";
       String inv[] = {"08:30", "09:30", "10:30", "11:30", "12:30", "11:30", "12:30", "13:30", "14:30", "15:30", "16:30", "17:30","18:30","19:30","20:30","21:30","22:30","23:30"};
         int inv_val[] = new int[inv.length - 1];
         try
            Class.forName(driver).newInstance();
             catch(Exception e)
            printE("Cannot load mysql database driver!", response);
              e.printStackTrace();
               return;
           try
                 conn = DriverManager.getConnection(url, userID, passwd);
                  if (report.equals("r1")) {  // report 1
               DefaultCategoryDataset dataset = new DefaultCategoryDataset();
              Statement stmt = conn.createStatement();
              String sql = "select *,count(f.Name),f.Name from film f, filmDetail fd, ticket t where f.startDate > '" + start + "' and f.endDate <  '" + end + "'and fd.filmID = f.filmID and fd.filmDetailID = t.filmDetailID group by f.name order by fd.filmDetailID asc limit '" +topN+"'";
              ResultSet rs = stmt.executeQuery(sql);
            while (rs.next())
           if (rs.getInt("fd.filmDetailID") > max) max = rs.getInt("fd.filmDetailID");
         if (rs.getInt("fd.filmDetailID") < min) min = rs.getInt("fd.filmDetailID");
          j++;
           ataset.setValue(rs.getInt("fd.filmDetailID"), cat,rs.getString("f.Name"));
           title1     = titles[0];
         chartDesc  = descs[0];
         chartTitle = order + " " + topN + " popular movie";
          chartYTitle = "Box Office record";
          chartXTitle = "Film Name";
          gender = " ";
          chart = ChartFactory.createBarChart(chartTitle, chartXTitle,   chartYTitle, dataset,PlotOrientation.VERTICAL, false, true, false);
        else
              print("Error: I don't inderstand your request!", response);
         return;
           catch (SQLException e)
         printE("Cannot open database connection? <br>", response);
         // printE(e.toString);
      e.printStackTrace();
      return;
         response.setContentType("application/pdf");
         Document document = new Document(PageSize.A4, 5, 5, 5, 5);
        try
             PdfWriter writer;
         writer = PdfWriter.getInstance(document, response.getOutputStream());
        HeaderFooter footer = new HeaderFooter(new Phrase("Page: "), true);
         footer.setBorder(Rectangle.NO_BORDER);
    document.setFooter(footer);
                   footer.setAlignment(Element.ALIGN_CENTER);
                   // step 3
                   document.open();
                   document.add(getHeader(title0, title1, start, end, gender, order, topN, chartDesc));
                   document.add(printChart(chart, writer));
                   document.add(getFooter(notes));
              catch(DocumentException de)
                   de.printStackTrace();
              // step 5
              document.close();
              return;
         }// end doGet()
         /** Handles the HTTP <code>POST</code> method.
          * @param request servlet request
          * @param response servlet response
         protected void doPost(HttpServletRequest request, HttpServletResponse response)
              throws ServletException, IOException
              // processRequest(request, response);
         /** Returns a short description of the servlet.
         public String getServletInfo()
              return "Generate reports for " + bigTitle;
         /* To print en error and exit(?) */
         private void printE(Object obj, HttpServletResponse response) throws IOException
              response.setContentType("text/html");
              PrintWriter out;
              out = response.getWriter();
              out.print(obj.toString());
              out.close();
              // To-Do: how to force exiting?
         // create data chart
         private PdfPTable getHeader(String title0, String title1, String start, String end, String sex, String order, int topN, String desc)
              Font fTitle0 = FontFactory.getFont("Helvetica", 42, Font.BOLD);
              Font fTitle1 = FontFactory.getFont("Helvetica", 24, Font.BOLD);
              Font fTitle3 = FontFactory.getFont("Helvetica", 12, Font.BOLD);
              Font fValue = FontFactory.getFont("Helvetica", 12, Font.UNDERLINE);
              Paragraph parStartEnd = new Paragraph();
              parStartEnd.add(new Phrase("Data start from:                  ", fTitle3));
              parStartEnd.add(new Phrase(start, fValue));
              parStartEnd.add(new Phrase("     to     ", fTitle3));
              parStartEnd.add(new Phrase(end, fValue));
              Paragraph parGenerateDate = new Paragraph();
              parGenerateDate.add(new Phrase("Report generated at:         ", fTitle3));
              parGenerateDate.add(new Phrase(new java.util.Date().toString(), fValue));
              Paragraph parGender = new Paragraph();
              parGender.add(new Phrase("Current show gender:       ", fTitle3));
              parGender.add(new Phrase(sex, fValue));
              Paragraph parTopN = new Paragraph();
              parTopN.add(new Phrase("Now is showing                 ", fTitle3));
              parTopN.add(new Phrase(order, fValue));
              parTopN.add(new Phrase("  ", fValue));
              parTopN.add(new Phrase(new Integer(topN).toString(), fValue));
              parTopN.add(new Phrase("   record(s)", fTitle3));
              // Start main table
              PdfPTable tblMain = new PdfPTable(1);
              tblMain.getDefaultCell().setBorder(0);
              // Print title
              tblMain.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
              tblMain.addCell(new Paragraph(title0, fTitle0));
              tblMain.addCell(new Paragraph(title1, fTitle1));
              tblMain.addCell("");
              tblMain.addCell("");
              tblMain.addCell("");
              // Print headers data
              //tblMain.getDefaultCell().setHorizontalAlignment(Element.ALIGN_RIGHT);
              //tblMain.addCell(parInvoiceNum);
              //tblMain.addCell("");
              tblMain.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT);
              tblMain.addCell(parStartEnd);
              tblMain.addCell("");
              tblMain.addCell(parGenerateDate);
              tblMain.addCell("");
              if (sex != " ")
                   tblMain.addCell(parGender);
              else if(order != null && topN > 0)
                   tblMain.addCell(parTopN);
              else
                   tblMain.addCell(" \n");
              tblMain.addCell("");
              tblMain.setWidthPercentage(96);
              tblMain.addCell(new Paragraph("Description of this report:", fTitle3));
              tblMain.addCell(desc);
              tblMain.addCell("\n");
              // Finish main table
              return tblMain;
         // print a chart _directly_ to pdf and return a empty Pdftable...
         public PdfPTable printChart(JFreeChart chart, PdfWriter writer)
              PdfContentByte cb = writer.getDirectContent();
              int width = 550;
              int height = 450;
              PdfTemplate tp = cb.createTemplate(width, height);
              Graphics2D g2d = tp.createGraphics(width, height, new DefaultFontMapper());
              Rectangle2D r2d = new Rectangle2D.Double(0, 0, width, height); //->,
              chart.draw(g2d, r2d);
              g2d.dispose();
              cb.addTemplate(tp, 20, 170);
              // quick method to push down the footer text
              // the only things this method return
              PdfPTable tblDownDown = new PdfPTable(1);
              tblDownDown.getDefaultCell().setBorder(0);
              tblDownDown.addCell(" \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n");
              tblDownDown.addCell(" \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n");
              tblDownDown.addCell(" \n \n \n \n \n \n");
              return tblDownDown;
         public PdfPTable getFooter(String notes[])
              Font fNote = FontFactory.getFont("Helvetica", 14, Font.UNDERLINE);
              Font fComment = FontFactory.getFont("Helvetica", 12, Font.ITALIC);
              Font fTitle1 = FontFactory.getFont("Helvetica", 30, Font.ITALIC);
              // Start footer table
              PdfPTable tblFooter = new PdfPTable(1);
              tblFooter.getDefaultCell().setBorder(0);
              if (notes != null)
                   tblFooter.addCell(new Paragraph("Notes:", fNote));
                   tblFooter.addCell("");
                   tblFooter.addCell("");
                   tblFooter.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT);
                   for (int i=0;i<notes.length;i++)
                        if (notes[i] != null)
                             tblFooter.addCell(new Paragraph("" + (i+1) + ". " + notes[i] + "", fComment));
                             tblFooter.addCell("");
                             tblFooter.addCell("");
                        tblFooter.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
                        tblFooter.addCell(new Paragraph("- End of report -", fComment));
                        return tblFooter;
    }

    Go to the cache directory and see if you can open the report directly from here (not in IE).
    I have seen posts on problems with Acrobat Reader Plugin for IE (I believe it was version 6 of Reader).

  • Error with a PDF document in a BSP App: "File does not begin with '%PDF-'"

    Hi All,
    I have the following piece of in the layout of a BSP Application in our system.
    <%
    DATA: LV_PDFSIZE TYPE I,
                LW_PDF     TYPE TLINE,
                LV_XDATA   TYPE XSTRING.
    data: LT_PDF type ZGTIS_TAB_TLINE,
          lv_id type zgtis_http_id,
          filename type STRING.
    lv_id = session_id.
    import lt_pdf to lt_pdf from
           database zgtis_http_indx(in) id lv_id.
    RUNTIME->SERVER->RESPONSE->SET_HEADER_FIELD(
        NAME  = 'Content-Type'
        VALUE = 'application/pdf').
    if w_printall ne 'X'.
    CONCATENATE 'display; filename="invoice_' BIL_NUMBER '.pdf"'  INTO filename.
    else.
    CONCATENATE 'display; filename="invoice_' 'ALL' '.pdf"'  INTO filename.
    endif.
    RUNTIME->SERVER->RESPONSE->SET_HEADER_FIELD(
        NAME  = 'Content-Disposition'
        VALUE = filename ).
    RUNTIME->SERVER->RESPONSE->SET_HEADER_FIELD(
        NAME  = 'pragma'
        VALUE = 'no-store').
    RUNTIME->SERVER->RESPONSE->SET_HEADER_FIELD(
        NAME  = 'cache-control'
        VALUE = 'no-store').
    *     Convert to XSTRING
    FIELD-SYMBOLS <P> TYPE ANY.
    LOOP AT LT_PDF INTO LW_PDF.
      ASSIGN LW_PDF TO <P> CASTING TYPE X.
      CONCATENATE LV_XDATA <P> INTO LV_XDATA
        IN BYTE MODE.
    ENDLOOP.
    *     Set the response data
    RUNTIME->SERVER->RESPONSE->SET_DATA(
        DATA   = LV_XDATA ).
    %>
    This piece of code works fine when 'If w_printall ne 'X'.' condition is succesfull and I can see the PDF but when w_printall = 'X' I get the above error on a popup box, the error is "File does not begin with '%PDF-'" and I cant see the PDF.
    Does anyone have any suggestions!
    Kindly help.
    Regards,
    Karthik

    Check this thread
    it is a Big Discussion on that.
    In first page and second page you can see solutions.
    /thread/747643 [original link is broken]
    one with patch and other with setting in Adobe.
    Regards
    Vijay babu Dudla

  • Merging randomly-named XML data file on client-side with pdf designed in Livecycle 7.0 (and addition

    Okay, as a heads up I work for a financial institution and we are converting our legacy "jetforms" to pdf format. I have in my staff for the project, 2 code developers and myself- a form designer. We have currently spent 2 months in trial and error attempting to resolve this problem, please let us know anything you can have. All client-side (internal) machines are running Windows XP and Adobe Reader 7.0.7
    The software we use as a financial institution allows our users to export a customer's data file onto their machine which is then renamed to include the member's account number and first and last name for our staff to determine which data file they need more accurately. In legacy jetforms, we have developed a program that pushes the data from the customers file that they select, into the jetform that they want to open and the matching fields in the data file fill in the fields of the jetform. Clean and simple.
    Now, i have hit nothing but frustration when attempting to perform the same process with pdfs using a form designed in livecycle designer 7. First, i see no obvious command for opening a pdf and importing a data file using a command line, like pdfmerge or something of the sort in which an xml data file can be specified and a pdf can be specified. I saw something like it using an fdf format and attempted to do this but apparently reader cannot import the data into the pdf that was designed adobe livecycle 7. All i have been seeing is database connections and using javascript inside the form to populate fields based on these database connections, etc. etc. or doing a manual file>import data>etc. which we don't want to have our staff do. We do not have reader extensions enabled, simply because i cannot get an adobe representative to call me and discuss pricing nor see any estimated pricing chart around. I don't know if reader extensions are necessary for this or not but i'm becoming very very frustrated with it.
    We don't want a complex server-side data connection binding with dynamic input. No, we just want it where our developers can say "if this data file is selected, and this pdf form is selected run this command" which would be a simple pdfmerge type solution. Is this possible or do i need to stay with jetforms until our software the billion dollar financial institution uses does form building inside its own application? I don't want to fight about who is better, what version to use, etc. I just want the straight up honest truth. If you need to know the pricing that the reader extensions would have to go by, assume there will be 500 client computers that will need to use it.

    From your post it sounds like you are Central Pro (a product for which I am by no means an expert), but you say you want to upgrade to a newer product from your "legacy" one. Is there a reason for this? Have your requirements change so that it no longer fits them? Central is still in the current Adobe roster and as far as I know there is no plans to get rid of it any time soon, so if it does everything you want I don't see why you would want to change.
    There is no product in the LiveCycle suite that merges xml data into a form from the command line. LiveCycle (with the exception of Designer) is a suite of server products, so the closest you would come is LiveCycle Forms (merge the xml and create a fillable PDF) or LiveCycle Print (merge the xml and print the form).
    Hope this helps somewhat.
    Chris
    Adobe Enterprise Developer Support

  • Problem in sending mail with PDF attachment

    Hi all,
    Kindly check this code..
    I neeed to send the smartform as a PDF attachment..
    PDF generated form of smartform is generated successfully..
    <b>but PDF  going as attachment is showing errors in opening</b> .
    Please help me to solve this issue as soon as possible
          DESCRIBE TABLE objtxt LINES tab_lines.
          READ TABLE objtxt INDEX tab_lines.
          doc_chng-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).
         doc_chng-doc_size = tab_lines * 255.
    Creation of the entry for the compressed document
          CLEAR objpack-transf_bin.
          objpack-head_start = 1.
          objpack-head_num = 0.
          objpack-body_start = 1.
          objpack-body_num = tab_lines.
          objpack-doc_type = 'RAW'.
          APPEND objpack.
    Creation of the document attachment
          DESCRIBE TABLE objbin LINES tab_lines.
    Creation of the entry for the compressed document
          CLEAR objpack-transf_bin.
          objpack-transf_bin = 'X'.
          objpack-head_start = 1.
          objpack-head_num = 0.
          objpack-body_start = 1.
          READ TABLE objbin INDEX tab_lines.
          objpack-doc_size =  tab_lines * 255 .
          objpack-body_num = tab_lines.
          objpack-doc_type = 'PDF'.
          objpack-obj_name = 'SMART'.
          objpack-obj_descr = 'test'.
          APPEND objpack.
    Completing the recipient list
    target recipent
          CLEAR reclist.
          reclist-receiver = '[email protected]'.
          reclist-express  = 'X'.
          reclist-rec_type = 'U'.
          APPEND reclist.
    Sending the document
          CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
            EXPORTING
              document_data              = doc_chng
              put_in_outbox              = 'X'
            TABLES
              packing_list               = objpack
              object_header              = objhead
              contents_bin               = objbin
              contents_txt               = objtxt
              receivers                  = reclist
            EXCEPTIONS
              too_many_receivers         = 1
              document_not_sent          = 2
              document_type_not_exist    = 3
              operation_no_authorization = 4
              parameter_error            = 5
              x_error                    = 6
              enqueue_error              = 7
              OTHERS                     = 99.
          IF sy-subrc <> 0.
            MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
             WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          ENDIF.
    Regards,
    ajith

    Hello Ajith,
    Use this Code.
    Internal Table declarations
    DATA: i_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
    i_tline TYPE TABLE OF tline WITH HEADER LINE,
    i_receivers TYPE TABLE OF somlreci1 WITH HEADER LINE,
    i_record LIKE solisti1 OCCURS 0 WITH HEADER LINE,
    Objects to send mail.
    i_objpack LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
    i_objtxt LIKE solisti1 OCCURS 0 WITH HEADER LINE,
    i_objbin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
    i_reclist LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
    Work Area declarations
    wa_objhead TYPE soli_tab,
    w_ctrlop TYPE ssfctrlop,
    w_compop TYPE ssfcompop,
    w_return TYPE ssfcrescl,
    wa_doc_chng typE sodocchgi1,
    w_data TYPE sodocchgi1,
    wa_buffer TYPE string,"To convert from 132 to 255
    Variables declarations
    v_form_name TYPE rs38l_fnam,
    v_len_in LIKE sood-objlen,
    v_len_out LIKE sood-objlen,
    v_len_outn TYPE i,
    v_lines_txt TYPE i,
    v_lines_bin TYPE i.
    call function 'SSF_FUNCTION_MODULE_NAME'
    exporting
    formname = 'ZZZ_TEST1'
    importing
    fm_name = v_form_name
    exceptions
    no_form = 1
    no_function_module = 2
    others = 3.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    w_ctrlop-getotf = 'X'.
    w_ctrlop-no_dialog = 'X'.
    w_compop-tdnoprev = 'X'.
    CALL FUNCTION v_form_name
    EXPORTING
    control_parameters = w_ctrlop
    output_options = w_compop
    user_settings = 'X'
    IMPORTING
    job_output_info = w_return
    EXCEPTIONS
    formatting_error = 1
    internal_error = 2
    send_error = 3
    user_canceled = 4
    OTHERS = 5.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    i_otf[] = w_return-otfdata[].
    call function 'CONVERT_OTF'
    EXPORTING
    format = 'PDF'
    max_linewidth = 132
    IMPORTING
    bin_filesize = v_len_in
    TABLES
    otf = i_otf
    lines = i_tline
    EXCEPTIONS
    err_max_linewidth = 1
    err_format = 2
    err_conv_not_possible = 3
    others = 4.
    Fehlerhandling
    if sy-subrc <> 0.
    endif.
    loop at i_tline.
    translate i_tline using '~'.
    concatenate wa_buffer i_tline into wa_buffer.
    endloop.
    translate wa_buffer using '~'.
    do.
    i_record = wa_buffer.
    append i_record.
    shift wa_buffer left by 255 places.
    if wa_buffer is initial.
    exit.
    endif.
    enddo.
    Attachment
    refresh:
    i_reclist,
    i_objtxt,
    i_objbin,
    i_objpack.
    clear wa_objhead.
    i_objbin[] = i_record[].
    Create Message Body
    Title and Description
    i_objtxt = 'test with pdf-Attachment!'.
    append i_objtxt.
    describe table i_objtxt lines v_lines_txt.
    read table i_objtxt index v_lines_txt.
    wa_doc_chng-obj_name = 'smartform'.
    wa_doc_chng-expiry_dat = sy-datum + 10.
    wa_doc_chng-obj_descr = 'smartform'.
    wa_doc_chng-sensitivty = 'F'.
    wa_doc_chng-doc_size = v_lines_txt * 255.
    Main Text
    wa_doc_chng-doc_size = ( v_lines_txt - 1 ) * 255 + strlen( i_objtxt )
    clear i_objpack-transf_bin.
    i_objpack-head_start = 1.
    i_objpack-head_num = 0.
    i_objpack-body_start = 1.
    i_objpack-body_num = v_lines_txt.
    i_objpack-doc_type = 'RAW'.
    append i_objpack.
    Attachment
    (pdf-Attachment)
    i_objpack-transf_bin = 'X'.
    i_objpack-head_start = 1.
    i_objpack-head_num = 0.
    i_objpack-body_start = 1.
    Länge des Attachment ermitteln
    describe table i_objbin lines v_lines_bin.
    read table i_objbin index v_lines_bin.
    i_objpack-doc_size = v_lines_bin * 255 .
    i_objpack-body_num = v_lines_bin.
    i_objpack-doc_type = 'PDF'.
    i_objpack-obj_name = 'smart'.
    i_objpack-obj_descr = 'test'.
    append i_objpack.
    clear i_reclist.
    i_reclist-receiver = '[email protected]'.
    i_reclist-rec_type = 'U'.
    append i_reclist.
    call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'
    EXPORTING
    document_data = wa_doc_chng
    put_in_outbox = 'X'
    TABLES
    packing_list = i_objpack
    object_header = wa_objhead
    CONTENTS_BIN = i_objbin
    contents_txt = i_objtxt
    receivers = i_reclist
    EXCEPTIONS
    too_many_receivers = 1
    document_not_sent = 2
    document_type_not_exist = 3
    operation_no_authorization = 4
    parameter_error = 5
    x_error = 6
    enqueue_error = 7
    others = 8.
    if helped reward points
    Vasanth

  • Change Font Size with PDF attachment  via e--mail

    Hi experts,
    I want to send mail with PDF attachment . Now the attachment is ok but only the font size in PDF is a little small.
    Is that possible to Change the font size of PDF
    Below is my code:
    first the data comes from an internal table, then changed to an ABAP Pool.
    * Create a new spool from the data in gt_data_pdf
      new-page print on
      destination c_local               "<<== my printer
      cover text text-027               "<<== Title or Spool req. name
      list name space
      list dataset space
      immediately space                 " X means print now
      keep in spool c_checked           " X means keep spool
      new list identification c_checked
      line-size 255
      line-count 65
      no dialog .
      loop at gt_data_pdf.
        write: / gt_data_pdf-line.
      endloop.
      new-page print off.
      lv_spoolid = lv_spdel-rqident = sy-spono.
      lv_spdel-sys = sy-sysid.
    *Convert ABAP Spool to PDF
      call function 'CONVERT_ABAPSPOOLJOB_2_PDF'
        exporting
          src_spoolid   = lv_spoolid
          no_dialog     = c_checked
        importing
          pdf_bytecount = lv_pdf_fsize
        tables
          pdf           = lt_pdf_table
        exceptions
          others        = 0.
    call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'
        exporting
          document_data              = lv_doc_chng
          put_in_outbox              = space
          commit_work                = c_checked
        tables
          packing_list               = lt_objpack
          object_header              = lt_objhead
          contents_bin               = lt_objbin
          contents_txt               = lt_objtxt
          receivers                  = lt_reclist
        exceptions
          too_many_receivers         = 1
          document_not_sent          = 2
          operation_no_authorization = 4
          others                     = 99.
    Anyone could help me?
    Thanks a lot.
    Sincerely
    Julie

    Hi,
    we don´t have many options for setting the font type and size in an ABAP list. One option is that you print the output using either SmartForms or AdobeForms, where you can control font type as well as size. This one requires additional work.
    Another option is to use the instruction Print-Control:
    NEW-PAGE PRINT ON.
    PRINT-CONTROL FONT 1 SIZE 1 LPI 6 CPI 10.
    WRITE: /10   'FONT 1 size 1 LPI 6 cpi 10'.
    SKIP.
    PRINT-CONTROL FONT 1 SIZE 5 LPI 6 CPI 5.
    WRITE: /10   'FONT 1 size 5 LPI 6 cpi 5'.
    SKIP.
    PRINT-CONTROL FONT 2 SIZE 5 LPI 6 CPI 10.
    WRITE: /10   'FONT 2 size 5 LPI 6 cpi 10'.
    SKIP.
    NEW-PAGE PRINT OFF.

  • Send Mail with PDF Attachment in ABAP

    Hi Experts,
    I have a requirement where I need to convert internal table data into PDF format and send it as an E-Mail with PDF attachment to Outlook mail using ABAP.
    How do I achieve this .
    Can anyone send me example code for doing this.
    Thanks
    Kumar

    hiii
    check following code for PDF attachment and mail
    ** Check for any ATTACHMENTS...
    IF d_desired_type = 'RAW'.           " Set to RAW?
    *    PERFORM convert_to_abaplist.       " YES - convert it
      ENDIF.                               " end...
      IF d_desired_type = 'ALI'.           " Set to ALI?
        PERFORM convert_to_alilist.        " YES - convert it
      ENDIF.                               " end...
    * Check for any ATTACHMENTS...
      IF NOT t_soli[] IS INITIAL.          " attachment?
        h_real_type = d_desired_type.      " ENABLE
        h_transf_type = 'X'.               " Transfer type BINARY...
    *   Write PDF/ALI formatted data to BINARY table...
        t_con_bin[] = t_soli[].
    *   Add Packing List (attachment) for PDF...
        DESCRIBE TABLE t_con_bin LINES h_tab_cntr.
        READ TABLE t_con_bin INDEX h_tab_cntr.
        h_doc_data-doc_size = h_doc_data-doc_size
                            + ( ( h_tab_cntr - 1 )
                            * 255 + STRLEN( t_con_bin ) ).
        h_doc_data-obj_descr  = mail_subject.
        h_body_start = 1.
        h_body_num = h_tab_cntr.
    *   Write RAW data if that's what it is (adds to TEXT)...
        IF h_real_type = 'RAW'.
          DESCRIBE TABLE t_con_text LINES h_body_start.
          h_body_start = h_body_start + 1.
          h_transf_type = space.           " Transfer type TEXT...
          LOOP AT t_con_bin.               " Zip thru TEXT stuff
            t_con_text = t_con_bin.        " set TEXT table header..
            APPEND t_con_text.             " add to what's there!
          ENDLOOP.
          CLEAR: t_con_bin.                " clear BINARY header..
          REFRESH: t_con_bin.              " reset BINARY table...
        ENDIF.
        CLEAR t_pak_list.
        IF h_transf_type = 'X'.            " Binary=PDF/ALI?
          t_pak_list-transf_bin = 'X'.
          t_pak_list-head_start = 1.
          t_pak_list-head_num   = 0.
          t_pak_list-body_start = 1.
          t_pak_list-body_num   = h_tab_cntr.
          t_pak_list-doc_type   = h_real_type.
          t_pak_list-obj_name   = 'ATTACHMENT'.
          t_pak_list-obj_descr  = 'Document'(001).
          t_pak_list-doc_size   = ( h_tab_cntr - 1 )
                                * 255 + STRLEN( t_con_bin ).
        ELSE.
          DESCRIBE TABLE t_con_text LINES h_tab_cntr.
          READ TABLE t_con_text INDEX h_tab_cntr.
          t_pak_list-transf_bin = ' '.     " Binary=RAW
          t_pak_list-head_start = 1.
          t_pak_list-head_num   = 0.
          t_pak_list-body_start = h_body_start.
          t_pak_list-body_num   = h_tab_cntr.
          t_pak_list-doc_type   = h_real_type.
          t_pak_list-obj_name   = 'ATTACHMENT'(002).
          t_pak_list-obj_descr  = 'Report'(003).
          t_pak_list-doc_size   = ( h_body_num - 1 )
                                * 255 + STRLEN( t_con_text ).
        ENDIF.
        APPEND t_pak_list.
      ENDIF.
    * Send the EMAIL out with SAP function...
      CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
        EXPORTING
          document_data              = h_doc_data
          put_in_outbox              = 'X'
    *      commit_work                = 'X'
        TABLES
          packing_list               = t_pak_list
          contents_bin               = t_con_bin
          contents_txt               = t_con_text
          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.
      IF syst-subrc NE 0.
    *    RAISE send_failed.
        CALL FUNCTION 'NAST_PROTOCOL_UPDATE'
          EXPORTING
            msg_arbgb = '00'
            msg_nr    = '001'
            msg_ty    = 'E'
            msg_v1    = 'O/P Could not be issued '(001)
            msg_v2    = ' Due to No Mail ID'(002)
            msg_v3    = syst-msgv3
            msg_v4    = syst-msgv4
          EXCEPTIONS
            OTHERS    = 1.
    * Check General incompletion status of the header
        IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ELSE.
          WRITE : 'SENT'.
        ENDIF.
      ELSE.
    *    commit work.
      ENDIF.
    ENDFORM.                               " SEND_MAIL_FAX
    *&      Form  convert_otf_2_pdf
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM convert_otf_2_pdf .
      DATA: "t_line            LIKE tline OCCURS 0 WITH HEADER LINE,
            t_objcont         LIKE soli  OCCURS 0 WITH HEADER LINE,
            d_doc_size(12)    TYPE c,
            d_fle1(2)         TYPE p,
            d_fle2(2)         TYPE p,
            d_off1            TYPE p,
            d_hltlines        TYPE i,
            d_hfeld(500)      TYPE c,
            w_indx            LIKE sy-tabix.
      CLEAR: t_line, t_objcont, d_off1.
      REFRESH: t_line, t_objcont.
    * Check/set DEFAULT Desired-type attachment...
      IF d_desired_type IS INITIAL.        " Entered Desired type?
        d_desired_type = 'PDF'.            " NO  - default to PDF
      ENDIF.                               "
      CALL FUNCTION 'CONVERT_OTF'
        EXPORTING
          format                = d_desired_type
        IMPORTING
          bin_filesize          = d_doc_size
        TABLES
          otf                   = t_itcoo
          lines                 = t_line
        EXCEPTIONS
          err_max_linewidth     = 1
          err_format            = 2
          err_conv_not_possible = 3
          OTHERS                = 4.
      IF sy-subrc > 0.
        RAISE otf_convert_failed.
      ENDIF.
    ENDFORM.                               " convert_otf_2_pdf
    *&      Form  convert_otf_2_pdf_sx
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM convert_otf_2_pdf_sx .
      DATA:
        t_otf          LIKE solisti1 OCCURS 0 WITH HEADER LINE,"ENABLE
        t_pdf          LIKE tline    OCCURS 0 WITH HEADER LINE,"ENABLE
        doc_size(12)   TYPE n,
        len_out        TYPE i,
        x_real         LIKE  soodk-objtp,
        x_idx_b        LIKE sy-tabix,
        x_idx_e        LIKE sy-tabix.
      IF d_desired_type = 'PDF'.
        d_desired_type = 'OTF'.
      ENDIF.
      CALL FUNCTION 'RSPO_RETURN_SPOOLJOB'
        EXPORTING
          rqident              = d_spool_id
          desired_type         = d_desired_type
        IMPORTING
          real_type            = x_real
        TABLES
          buffer               = t_otf
          buffer_pdf           = t_pdf
        EXCEPTIONS
          no_such_job          = 1
          job_contains_no_data = 2
          selection_empty      = 3
          no_permission        = 4
          can_not_access       = 5
          read_error           = 6
          type_no_match        = 7
          OTHERS               = 8.
      IF sy-subrc <> 0.
        IF sy-subrc = 1.
          RAISE invalid_spool_id.
        ELSE.
          RAISE otf_convert_failed.
        ENDIF.
      ENDIF.
    * Check Desired-Type vs. Real-Type (if any)...
      IF d_desired_type IS INITIAL.
        IF x_real = 'OTF'.
          d_desired_type = 'PDF'.
        ELSE.
          d_desired_type = x_real.
        ENDIF.
      ELSE.
        IF ( d_desired_type = 'PDF' OR
             d_desired_type = 'OTF' ) AND
           ( x_real = 'OTF' OR
             x_real = 'PDF' ).
          d_desired_type = 'PDF'.
        ELSE.
          IF d_desired_type <> x_real.
            RAISE type_no_match.
          ENDIF.
        ENDIF.
        IF ( d_desired_type = 'ALI' OR
             d_desired_type = 'RAW' ) AND
             x_real = 'OTF'.
          RAISE type_no_match.
        ENDIF.
      ENDIF.
    * Check if ABAP-LIST and not SapScript...
      IF d_desired_type = 'ALI' OR
         d_desired_type = 'RAW'.
        t_soli[] = t_otf[].
        EXIT.
      ENDIF.
    * Load OTF data gotten from spool...
      LOOP AT t_otf.
        t_itcoo = t_otf.
        APPEND t_itcoo.
    *   if Vendor P/O (SapScript = Z_MEDRUCK) then
    *      trap INDEX for "Terms & Conditions" on BACK...
        IF t_itcoo-tdprintcom =  'IN' AND
           t_itcoo-tdprintpar =  '01EZ_MEDRUCK       BACK'.
          x_idx_b = sy-tabix.
        ENDIF.
        IF t_itcoo-tdprintcom =  'IN' AND
           t_itcoo-tdprintpar =  '01EZ_MEDRUCK       NEXT'.
          x_idx_e = ( sy-tabix - 1 ).
        ENDIF.
      ENDLOOP.
    * Drop from table if INDEX'S are set (see above)...
      IF ( x_idx_b > 0 AND
         ( x_idx_e > x_idx_b ) ) .
        DELETE t_itcoo FROM x_idx_b
                     TO x_idx_e.
      ENDIF.
      PERFORM convert_otf_2_pdf.
    ENDFORM.                               " convert_otf_2_pdf_sx
    *&      Form  CONVERSION_OF_SIZE                                       *
    * *"Converting the file to get a 255 char single line internal table   *
    * The PDF file that is generated out of the above function module     *
    * cannot be transported as it needs to be of 255 chars. Hence         *
    * converting the file to get a 255 char single line,internal table.   *
    FORM conversion_of_size .
    "Declaring Local Constants............................................
      CONSTANTS:
         cnv_hexconst_zero TYPE x VALUE '00'.
    * Internal table to hold 255 Char's Single Line.                      *
      DATA:
        lv_big_lines(268) TYPE c
                          OCCURS 0 WITH HEADER LINE.
    *"Local Work Variables.................................................
      DATA:
        lfl_flag          TYPE c,
        lv_left_t(268)    TYPE c,
        lv_left_i         TYPE i,
        tv_left_i         TYPE i,
        lv_curr_i         TYPE i.
      FIELD-SYMBOLS: <f>.
    * Get the lines into a table of 268 char as the first step to put it in
    * the pdf file of 255 chars
      CLEAR lfl_flag.
      LOOP AT t_line.
        IF lfl_flag EQ ' '.
          CLEAR lv_big_lines.
          ASSIGN lv_big_lines(134) TO <f>.
          <f> = t_line.
          lfl_flag = 'X'.
        ELSE.
          lv_big_lines+134 = t_line.
          APPEND lv_big_lines.
          CLEAR: lfl_flag.
        ENDIF.                             " If lfl_flag = ''..
      ENDLOOP.                             " Loop at t_pdf
      IF lfl_flag EQ 'X'.
        APPEND lv_big_lines.
      ENDIF.                               " If lflf_flag eq 'X'..
    * Next fill it into a 255 char table
      CLEAR: lv_left_t, lv_left_i, tv_left_i.
      lv_curr_i = 255.
      LOOP AT lv_big_lines.
        IF lv_left_i NE 0.
          IF lv_curr_i NE 0.
            wa_objcont(lv_left_i)           = lv_left_t(lv_left_i).
            wa_objcont+lv_left_i(lv_curr_i) = lv_big_lines(lv_curr_i).
          ELSE.
            wa_objcont = lv_left_t(lv_left_i).
          ENDIF.                           " IF lv_curr_i NE 0
        ELSE.
          wa_objcont = lv_big_lines(lv_curr_i).
        ENDIF.                             " IF lv_left_i NE 0
        APPEND wa_objcont TO t_objcont.
        tv_left_i = 268 - lv_curr_i.
        IF tv_left_i > 255.
          wa_objcont = lv_big_lines+lv_curr_i(255).
          APPEND wa_objcont TO t_objcont.
          lv_left_i = tv_left_i - 255.
          tv_left_i = 255 + lv_curr_i.
          lv_curr_i = 255 - lv_left_i.
          lv_left_t = lv_big_lines+tv_left_i.
        ELSE.
          lv_left_t = lv_big_lines+lv_curr_i.
          lv_left_i = 268 - lv_curr_i.
          lv_curr_i = 255 - lv_left_i.
        ENDIF.                             " IF tv_left_i > 255
      ENDLOOP.                             " LOOP AT lv_big_lines.
      CLEAR wa_objcont .
      ASSIGN wa_objcont(lv_left_i) TO <f>.
      <f> = lv_left_t(lv_left_i).
      APPEND wa_objcont TO t_objcont.
        h_transf_type = 'X'.                 " Transfer type BINARY...
      IF NOT t_objcont[] IS INITIAL.
        t_soli[]     = t_objcont[].        " SapScript doc to Objects...
      ENDIF.
    regards
    twinkal

  • How to send the mial with pdf format file

    Hi,
       I would like to write a program, I have an external file in D drive with PDF format,  So i have to attact that file and send to particual user... If any body know pls send with sample code to [email protected]
      Thanks in advance...
    Gopal

    Use FM
    <b>'CONVERT_ABAPSPOOLJOB_2_PDF'</b>
    CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
    EXPORTING
    SRC_SPOOLID = SPOOL_NR
    IMPORTING
    PDF_BYTECOUNT = FILESIZE
    TABLES
    PDF = PDF_OUTPUT.

  • Sending PO in mail attachment with pdf format

    Hello,
    We are sending PO to vendor in a pdf attachment. The configuration is in place and as soon as the PO(ME22N) is saved the pdf mail is sent to vendor external mail address.
    The requirement however is to add some text to this mail body ( in addition to the existing PDF attachment ).
    The NACE config is using SAPFM06P program with entry_neu form and a custom sap script.
    can somebody help as where is this mail functionality added in this standard program so that I may try to customize the same for the above requirement.
    All I can see is 2 FM used in this ENTRY_NEU Form. Of which I guess ME_PRINT_PO is sending the mail ( I may be wrong here ) but where ?
    I will be thankful for any kind of hint to help solve this issue.

    In general you will have to do the following:
    1) Set NAST-NACHA = 8 (Special function)
    2) Before OPEN_FORM (maybe in In enhancement spot) if NAST-NACHA = 8, then set itcpo-tdgetotf = 'X' (to get OTF back from CLOSE_FORM!)
    3) During CLOSE_FORM, if NAST-NACHA = '8', get OTF output from TABLES parameter OTFDATA
    4) Convert this OTF output to PDF using following sample code:
    data: I_PDF STRUCTURE  TLINE occurs 0,
            I_OTF i_otf LIKE itcoo OCCURS 0.
        CALL FUNCTION 'CONVERT_OTF'
             EXPORTING
                  format                = 'PDF'
                  max_linewidth         = 134
             IMPORTING
                  bin_filesize          = w_bytes
             TABLES
                  otf                   = i_otf
                  lines                 = i_pdf
             EXCEPTIONS
                  err_max_linewidth     = 1
                  err_format            = 2
                  err_conv_not_possible = 3
                  OTHERS                = 4.
    5) Send email with PDF attachment using the method(s) mentioned in one of these excellent blogs:
    /people/thomas.jung3/blog/2004/09/07/sending-e-mail-from-abap--version-46d-and-lower--api-interface
    /people/thomas.jung3/blog/2004/09/08/sending-e-mail-from-abap--version-610-and-higher--bcs-interface
    or you can follow below procedure as well:
    I suggest you make yourself very familiar with the SAP code that does this automatically. Once you understand the processing sequence SAP uses, it is much easier to add your customization and insert your enhancements. To debug it and step through the code, but a breakpoint in ENTRY_NEU, and process a PO. If you're sending your messages using a scheduled job, you'll hit the breakpoint when you process the message using RSNAST00. That's how I did it. I can tell you what I did to meet my requirements. You can change to meet your needs. It required a custom program, to use instead if ENTRY_NEU, and 3 enhancements to SAP code using the Enhancement Framework. You need to know how to use the framework. 1. configure your output type ZNE2 to to run a new program ZMRP_OUTCTRL, to run form routine ENTRY_ZNE2, to create form Z_PURCHASE_ORDER. 2. In ZMRP_OUTCTRL, call standard function modules, ME_READ_PO_FOR_PRINT and ME_PRINT_PO. 3. Drill down into ME_PRINT_PO to PREPARE_FORMULAR function module. Create new enhancement, and if NAST-KSCHL = ZNE2, then lookup the recipient's email address. Pass it as parameter to ADDR_GET_NEXT_COMM_TYPE. 4. Still in ME_PRINT_PO, PREPARE_FORMULAR, add another enhancement to set the value of itcpo-getotf to u2018Xu2019, to enable CLOSE_FORM to capture OTF data for PDF. Only set this OTF flag when the output is being run by RSNAST00, not when a user is simply previewing the printout. Sy-ucomm will be blank when RSNAST00 is running. 5. In ME_PRINT_PO, drill down to ENDE, and add an enhancement to check for NAST-KSCHL = ZNE2, and if so, call standard SAP function modules to END_FORM, START_FORM, WRITE_FORM, and END_FORM. Next call the function CLOSE_FORM, and set table parameter to capture the OTF_DATA as a table parameter OTF_DATA. 6. If OTF_DATA is found, then: If nast-kschl = 'ZNE2'. if NOT otf_data[] is initial. gs_OTF[] = otf_data[]. CALL FUNCTION 'CONVERT_OTF' EXPORTING format = 'PDF' IMPORTING bin_filesize = v_len_in TABLES otf = gs_otf lines = gt_pdf EXCEPTIONS err_max_linewidth = 1 err_format = 2 err_conv_not_possible = 3 OTHERS = 4. IF SY-SUBRC 0. p_retco = '1'. PERFORM protocol_update USING '303' 'OTF Conversion failed.' 'Output Message Cancelled.' space space. IF 1 = 2. MESSAGE S303(me) with 'OTF Conversion failed.'. ENDIF. EXIT. ENDIF. CALL FUNCTION 'QCE1_CONVERT' TABLES T_SOURCE_TAB = gt_pdf T_TARGET_TAB = outbin. IF SY-SUBRC 0. p_retco = '1'. PERFORM protocol_update USING '303' 'PDF Conversion failed.' 'Output Message Cancelled.' space space. IF 1 = 2. MESSAGE S303(me) with 'PDF Conversion failed.'. ENDIF. EXIT. ENDIF. *get email recipients (this is specific to my requirements) select single banfn ernam zuname1 into (lv_banfn, lv_ernam, lv_zuname ) from eban where ebeln = nast-objky. IF SY-SUBRC 0. p_retco = '1'. PERFORM protocol_update USING '303' 'Requisition Data not found.' 'Output Message Cancelled.' space space. IF 1 = 2. MESSAGE S303(me) with 'Requisition Data not found.'. ENDIF. EXIT. ENDIF. 8. Build your OBJPACK and OBJBIN parameters: describe table mail_content lines lin. read table mail_content index lin. mail_data-doc_size = ( lin - 1 ) * 255 + STRLEN( mail_content ). clear objpack-transf_bin. objpack-head_start = 1. objpack-head_num = 0. objpack-body_start = 1. objpack-body_num = lin. objpack-doc_type = 'TXT'. APPEND objpack. describe table outbin lines lin. read table outbin index lin. objpack-doc_size = ( lin - 1 ) * 255 + strlen( outbin ). objpack-transf_bin = 'X'. objpack-head_start = 1. objpack-head_num = 0. objpack-body_start = 1. objpack-body_num = lin. objpack-doc_type = 'PDF'. objpack-obj_name = 'ATTACHMENT'. objpack-obj_descr = l_descr. APPEND objpack. CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1' EXPORTING DOCUMENT_DATA = mail_data PUT_IN_OUTBOX = 'X' TABLES PACKING_LIST = objpack CONTENTS_BIN = outbin CONTENTS_TXT = mail_content RECEIVERS = 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. IF SY-SUBRC 0. p_retco = '1'. PERFORM protocol_update USING '303' 'Send Email function failed.' 'Output Message Cancelled.' space space. IF 1 = 2. MESSAGE S303(me) with 'Send Email function failed.'. ENDIF. EXIT. ENDIF. 9. Call function CLOSE_FORM, and end enhancement
    Edited by: Devireddy omkar on Aug 2, 2011 11:15 AM
    Edited by: Devireddy omkar on Aug 2, 2011 11:17 AM

  • PDF Import filter for PM6.5

    I'm using PM 6.5 with XP. I've installed the PDF import filter as directed. Under "Place" PDF is still not recognized nor does it show as an option when further attempts to place. It also does not show in the list of filters under CTRL-"About PageMaker" in the Help menu.
    Requirements mention Windows NT. XP is not mentioned. Has anyone been able to get this to work with XP?  If so what might I be doing wrong?

    Sounds like the PDF import filter is missing, but it will only import very early PDF versions - 1.3?
    You can install the import filter from your installation CD-ROM using the Custom installation option.
    Iechyd da! John
    10:33 08/06/2009 BST

  • Report with type Import

    Dear MDM Experts,
    I would like to use MDIS to import files. The strange problem is, that the Reports (Console/Admin/Reports) with type Import doesn't show their Reports Details. The Reports with other types work fine.
    An other tiresome working is when the port becomes blocked, and I use the Import Manager to fix the problem of the port, I have to set all the mapping, because the source file name is other (date and time of import is before its previous name), so the saved map can't recognize it.
    Please help me, if you have been met these problems!
    Thanks and regards,
    Ádá

    Hi Adam,
    one way to see it:
    set
    Verbose=0xFFFF
    as shown in chapter : MDM Import Server logging of
    HowToMonitorMDM_SP04.pdf
    from this zip file
    https://websmp203.sap-ag.de/~sapidb/011000358700000394322007E
    run your import and then check
    exception folder
    inside you will find xml files - open them and check for XSD file link inside it
    (search for this xsd file on your MDM server) and put it inside
    the folder where this xml file was placed
    now open XML once more and you should see HTML type import log
    Regards,
    michal

  • Want to create program which will trigger workflow with PDF attachement

    Hi Expert,
    I m new for work flow.
    I want to create abap program  which  trigger work flow with PDF attachment.
    Thanks in advanced.
    Regards,
    Laxman Sankhla.

    HI i have written code as per below.
    Now if i m running programe i m getting error  "Unable to create work item container
    (CL_SWF_RUN_WIM_FLOW->_IMPORT_CONTAINER) "
    CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
        EXPORTING
          BUFFER                = FP_FORMOUTPUT-PDF
        APPEND_TO_TABLE       = ' '
       IMPORTING
          OUTPUT_LENGTH         = ZVAR1
        TABLES
          BINARY_TAB            = IT_SOLIX_TAB.
      IF SY-SUBRC = 0 AND NOT IT_SOLIX_TAB[] IS INITIAL .
        SWC_SET_TABLE   CONTAINER 'IT_SOLIX_TAB'  IT_SOLIX_TAB.
        SWC_SET_ELEMENT CONTAINER 'ZVAR1' ZVAR1.
        SWC_SET_ELEMENT CONTAINER  'YBUS2012' OBJ.
        GV_INITIATOR = SY-UNAME.
        CALL FUNCTION 'SWW_WI_START_SIMPLE'
          EXPORTING
           CREATOR                            = GV_INITIATOR
          PRIORITY                           = SWFCO_NO_PRIO
            TASK                               = 'WS99900241'
           CALLED_IN_BACKGROUND               = 'X'
          TABLES
            AGENTS                             = IT_AGENTS
            WI_CONTAINER                       = CONTAINER.
        COMMIT WORK.
        IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    Thanks in advanced
    Laxman Sankhla.

  • PdfSource of InteractiveForm UI element should be populated with pdf binary

    Hey Guys...
    I need some help here...
    I have a Web Dynpro Java Application that retrieves data from R/3 and I want to (only) display that data using Adobe.  I've set the "mode" property of the UI Element as "usePdf" and I have bound the pdfSource property to a binary type in the context, but as I'm about to display the PDF I get the following exception: (the important part of it)
    Caused by: com.sap.tc.webdynpro.services.exceptions.WDRuntimeException: pdfSource of InteractiveForm UI element should be populated with pdf binary content in USE_PDF mode
    Do you have any idea of what is going on?. Is it the right scenario?
    Should I use generatePdf instead? if that's the case then get Credentials for that?. Would this have any additional cost?
    Thank you
    David.
    Edited by: duztariz on Mar 20, 2009 11:24 PM
    Edited by: duztariz on Mar 20, 2009 11:26 PM

    In your szenario you have to give the PDF as binary content into this content variable. You can do that for example by reading a PDF File as a binary stream and store it into this content variable.
    Then you can use the Interactive Form UI Element to show this PDF.
    But from what I understand, its not exactly what you want? You want to show some data that you read from R/3 and display it in an interactive form?
    What you have to do is, to edit your Interactive form, create the Bindings etc. (see tutorials) and set the mode to "modify PDF". Then the PDF will show the read data for you.

  • Autosync a folder with PDF for iPad/iPhone

    Is there a way to autosync a folder with iPad?
    We'll have a shared PDF folder in our company, and what we need is the iPad to autosync with that folder, because the PDF files can change from day to day. So far we have to choose the specific file on the iPad and delete it, and then again choose the new file, which has been updatet, that's a bit difficualt. The problem is that we are not online with the iPads, and its not possible to be so. So using DropBox or similiar is not possible.
    This solution is possible with music, cant understand why is not possible with PDF. Our PDF's are in different folder, so we need a app/solution which makes is possible to choose folders, and not files.
    Hope some can help me:-)

    Spotlight can certainly search pdf files I make. For instance, I have a file I created a couple of days ago named "AlaskaAirXmas06.pdf" and if I enter the search term "Horizon Air" that file is the top pick in Spotlight. When I select that file to open from the Spotlight results list, it opens in Preview with the first instance of "Horizon Air" highlighted, and with the drawer open listing all 5 occurrences of the phrase in the pdf. I have a file named "hanover.pdf" which I downloaded off the British Royals' web site, and when I do a search in Spotlight for the word "brunswick" that pdf pops up as the top search result, opening it has the word highlighted. So normal text based pdfs that can be opened by Preview and were created using my Mac are certainly indexed and searchable by Spotlight. The hanover.pdf file was created by QuarkXPress and encoded by Acrobat PDFWriter for Mac. I also have a file that is searched just fine by Spotlight that was also downloaded from the Royals' web site, and it was created on a Windows machine using MS Word and encoded using Acrobat Distiller for Windows.
    However, I have in fact opened all the above at one time. Whether that will make a difference or not I don't know. I can search other pdfs from a Mac that I know I have not actually opened. Whether that would be true of pdfs not opened and not created by a Mac I don't know.
    You might check your machine to make sure you have this:
    "/System/Library/Spotlight/PDF.mdimporter"
    That is necessary for Spotlight to be able to parse pdf files. If you have the importer and have tried re-indexing the folder containing the pdfs, more information about the pdf files themselves might help determine the source of your problem.
    Francine
    Francine
    Schwieder

Maybe you are looking for

  • App store and itunes suddenly wont even try to install anything?

    I went to download a song and after using touch ID to input my password, the round downloading sign just changed back to "buy" with no error message or warning. I then tried the app store, this time it did not ask for my password, presumably because

  • Distilling transparent colors from Word

    I have a color transparency in a Word document that renders in a dithered fashion when I create the corresponding PDF document. I have tried the various pre-defined settings (standard, high quality, and press quality) as well as disabling compression

  • How to refresh the JLabel

    I have created a gif animated image which i am adding to the JLabel. what happens is that the animation runs only once and next time it does not continues why ? is it necessary to refresh the image and if that so please tell me how ? Help me !

  • Every time I delete an email I get a no sender no message email that I can't get rid of can you help

    Why do I have all these email messages that I cannot erase seems whenever I read an email and put it in the trash can I get another one

  • Use condition type 'RC00' to process return sales order

    first, I copy RC00 to RC10 and change its Calculat.type = B(Fixed amount). second, I place a sales order to deliver 10 PC(RC10 = 10 USD) to customer and bill 8PC(RC10 = 8 USD) to customer. third, I place a return sales order(only return 2 PC) referen