PDF File Generation in LabWindows/CVI

Hi,
I'm looking for ideas on how to automatically generate multiple-page PDF documents in LabWindows/CVI.
The pages consist of images of panels that have automatically updated some graphs.
Any ideas?
Thanks,
Kirk

Howdy Kirk,
Great question. You might try one of these four options:
Install a "PDF Printer" in Windows. This is essentially a virtual Windows printer that we can print to in CVI using functions like PrintPanel, PrintTextFile, etc.
Find a commandline PDF creator and call the commandline application from CVI. (See the launchexe.cws example located in the Example Finder under Comm w/External Apps » OS)
Find a DLL you can call to create a PDF. (See the examples located in the Example Finder under Comm w/External Apps » Using External Code)
Install a PDF creator and communicate with it through ActiveX if it has an ActiveX server.
Sorry I can't provide a specific recommendation for PDF software for these suggestions, but I hope it gets you going in the right direction!
Message Edited by pBerg on 02-05-2010 10:00 AM
Warm regards,
pBerg

Similar Messages

  • Writing a Compressed AVI File in NI LabWindows/CVI with the IMAQ Vision Acquisition

    I'm still facing some problems when I try to save pictures from a GigE Vision camera into a compressed avi-file in a LabWindows/CVI application on Windows7.
    The task is to grab images from the camera with 30 fps to monitor a process, evaluate the grabbed pictures to find certain characteristics of the monitored process and save them in an avi-file to have the possibility to load and evaluate them once again Offline if necessary.
    My questions: which compression filters can I get with the NI-Imaq Vision Acquisition and Vision Development Runtime 2012 SP1? Is a mpeg4 codec available to compress quickly and effective? Can I use a third party codec or only the ones delivered with NI-Vision?
    I posted the problem two times already, but there is little response up to now. Thanks

    The encoding algorithm, or codec, that's used for compression needs to present on your system. When I had done some research on this sometime back, I found that if your custom codec could align with the DirectShow architecture, then your codec would work with IMAQ AVI functions.The codecs that are available may vary from system to system, depending on what software is currently installed. Be sure to check out this article:
    Writing a Compressed AVI File with the IMAQ Vision Acquisition Software
    Adnan Zafar
    Certified LabVIEW Architect
    Coleman Technologies

  • FOP Serializer, PDF File generation

    In attempting to generate PDF files from XSQL: Any ideas which jar files from the Apache FOP-0.20.5 release need to be included in the classpath of the XSQL servlet (XDK 9.2.0.2.0) to make the emptablefo.xsl demo function? Are there other jar files required (other than xsqlserializers.jar)? The docs seem to want w3c.jar, which doesn't come with that release. Where does one find it, if needed?
    I keep turning up with
    XSQL-017: Unexpected Error Occurred
    java.lang.NoSuchMethodError
    at oracle.xml.xsql.serializers.XSQLFOPSerializer.serialize(XSQLFOPSerializer.java:19)
    Is my Adobe plugin meant to fire up if this works correctly?
    Cheers

    Hi All,
    I got the latest FOR version and have all the orther jars in my class path. I am using XSQL and with the previous version of FOP, my PDF display was fine.
    With the new version of FOP i am having the problems mentined on this forum.
    As 12... suggested, i got the XSQLFORSerializer , compiled and added it in the jar(xsqlserializers.jar) and added the jar in my class path, added the other mentioned jar(except xercesImpl-2.2.1.jar since xerces1-2.3.jar is in the class path and adding xercesImpl-2.2.1.jar causes JRun not to start with some kind of weird Null TLD string "--" cannot be in the comments error).
    Everything looks fine ,just that the pdf does not show and the message is
    07/01 10:47:23 user CacheFilesServlet: Processing XSQLRequest...
    [INFO] java.lang.NullPointerExceptionbuilding formatting object tree
    at org.apache.fop.pdf.PDFDocument.outputHeader(PDFDocument.java:1321)
    at org.apache.fop.render.pdf.PDFRenderer.startRenderer(PDFRenderer.java:
    237)
    at org.apache.fop.apps.StreamRenderer.startRenderer(StreamRenderer.java:
    188)
    at org.apache.fop.fo.FOTreeBuilder.startDocument(FOTreeBuilder.java:240)
    at org.apache.fop.tools.DocumentReader.parse(DocumentReader.java:454)
    at org.apache.fop.apps.Driver.render(Driver.java:498)
    at org.apache.fop.apps.Driver.render(Driver.java:518)
    at oracle.xml.xsql.serializers.XSQLFOPSerializer.serialize(XSQLFOPSerial
    izer.java:38)
    at oracle.xml.xsql.XSQLPageProcessor.process(XSQLPageProcessor.java:257)
    at oracle.xml.xsql.XSQLRequest.process(XSQLRequest.java:304)
    at oracle.xml.xsql.XSQLRequest.process(XSQLRequest.java:198)
    at com.cleverdevices.util.CacheFilesServlet.generateReport(CacheFilesSer
    vlet.java:1045)
    at com.cleverdevices.util.CacheFilesServlet.doGet(CacheFilesServlet.java
    :372)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
    at jrun.servlet.security.StandardSecurityFilter.doFilter(StandardSecurit
    yFilter.java:102)
    at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
    at jrun.servlet.FilterChain.service(FilterChain.java:101)
    at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
    at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
    at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:
    241)
    at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:
    527)
    at jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
    at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPoo
    l.java:348)
    at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.j
    ava:451)
    at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.
    java:294)07/01 10:48:04 user CacheFilesServlet: output length = 0
    at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
    com.cleverdevices.util.ReportGenerationException: No output from XSQL
    at com.cleverdevices.util.CacheFilesServlet.generateReport(CacheFilesSer
    vlet.java:1065)
    at com.cleverdevices.util.CacheFilesServlet.doGet(CacheFilesServlet.java
    :372)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
    at jrun.servlet.security.StandardSecurityFilter.doFilter(StandardSecurit
    yFilter.java:102)
    at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
    at jrun.servlet.FilterChain.service(FilterChain.java:101)
    at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
    at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
    at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:
    241)
    at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:
    527)
    at jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
    at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPoo
    l.java:348)07/01 10:48:04 user CacheFilesServlet: Deleting bad cache file: C:\JR
    un4\servers\default\tatools\main\reports\cache\whc_kneel_bu
    at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.j
    ava:451)
    at jrunx.scheduler.ThreadPool$UpstreamMetrsdepot_dd_1,,_20040630.pdf
    ics.invokeRunnable(ThreadPool.java:294)
    at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
    com.cleverdevices.util.ReportGenerationException: IO Error: com.cleverdevices.ut
    il.ReportGenerationException: No output from XSQL
    at com.cleverdevices.util.CacheFilesServlet.generateReport(CacheFilesSer
    vlet.java:1076)
    at com.cleverdevices.util.CacheFilesServlet.doGet(CacheFilesServlet.java
    :372)
    Any pointers will help.
    I am using XSQL and JRun server.
    Thanks

  • Input stream to pdf file generation in WDJ

    Hi Experts,
    I want to create a pdf file from some inputstream or string content in Webdynpro Java code.
    Can anyone please provide me some code snippet related to this.
    I tried below code:
    public class test {
         public static void main(String[] args) {
                   String strFilePath = "C://demo.pdf";
                   try {
                             FileOutputStream fos = new FileOutputStream(strFilePath);
                             String strContent =
                                       "Write File using Java FileOutputStream example !";
                             fos.write(strContent.getBytes());
                             fos.close();
                   } catch (FileNotFoundException ex) {
                             System.out.println("FileNotFoundException : " + ex);
                   } catch (IOException ioe) {
                             System.out.println("IOException : " + ioe);
    It is creating a pdf file in my local system but while opening the file it is saying "Corrupted file".-
    Any kind of help will be highly appreciated.
    Regards,
    Sambarn

    You have to use WDResource and related classes for reading/writing the files on portal app server.
    For getting some Idea, look at this wiki.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00062266-3aa9-2910-d485-f1088c3a4d71?quicklink=index&overridelayout=true
    -Yugandhar Reddy

  • PDF File Generation in SAP-ByD

    Dear All,
    How to generate PDF file based  reports in SAP-ByD
    Best Regards,
    Harish.Y

    Hi Harish,
    What do you mean by PDF file based reports?
    In ByD, typically you can generate PDF for various use-cases like preview (read only PDF), Send To (Read / write PDF) e.g. Sales order as PDF, etc. There is  a concept of Form Template maintenance, where you can view/edit the existing template and even create your own variant.
    Please describe your requirement if this doesnot answer your question fully.
    Regards,
    Damandeep
    Edited by: Damandeep Thakur on Mar 6, 2012 7:05 AM

  • Individual pdf file generation

    Hi all,
    I want to genrate pdf file after execution of my report in such a way that I give it a parameter name cust_id = 9092 and occurance in second text box is 5...it means loop started from 9092 and create 9092,9093,9094,9095,9096 files in specific folder and stop.it is not necessary that cust_id is in sequence.
    Following in my code:
    DECLARE
         v_SAM_CUST_ID       NUMBER(22);
           --v_ACCT_CUST_ID     NUMBER(22);
         v_rid               NUMBER;
         --v_p_cust_id         NUMBER(22);
         v_start_from        number(10):= :START_FROM;
         v_to_next           number(10):= :to_next;
         v_trid          number;
    CURSOR C1 IS  SELECT A.RID,SAM_CUST_ID      FROM (SELECT ROWNUM RID,SAM_CUST_ID
                                  FROM SAM ,DE_ADDR
                                  WHERE SAM.SAM_CUST_ID=DE_ADDR.DE_CUST_ID
                                  AND SAM.SAM_CUST_ID >= 1
                                  AND SAM.SAM_FREQUENCY IN ('DAILY','MONTHLY','Quarterly','Half yearly','Yearly')) A
                                  WHERE A.RID <= 10;
    BEGIN
         v_start_from      := :START_FROM;
         v_to_next     := :to_next;
         v_rid:=0;
         v_p_cust_id:=0;
         if :TEXT_BOX1='S' then
         message('Firing IF..');
           OPEN C1;
           LOOP
                FETCH C1 INTO v_trid,v_SAM_CUST_ID;
                EXIT WHEN C1%NOTFOUND;
                message('generating rport...');
                host('rwclient server=reptest report=c:\cust_print1.rdf p_1='||v_SAM_CUST_ID||' userid=wh1/wh1@dwh desformat=pdf destype=file desname=c:/temp/'||v_SAM_CUST_ID||'.pdf');
              END LOOP;
           CLOSE C1;     
              END LOOP;
      ELSE
    message('ELSE.....');
      END IF;
      END; 
      Any help would be appriciated.

    You are almost there ...
    Assuming that SAM.SAM_CUST_ID holds the customer ids (9092...)
    - change the cursor
    - to accept the input parameter of "p_cust_id"
    - modify the where clause selecting als customer_id >= p_cust_id
    - implement an order by clause ORDER BY SAM.CUST_ID
    - change the OPEN C1 statement to OPEN C1(p_cust_id);
    - declare a counter variable v_records_fetched NUMBER := 0;
    - EXIT WHEN C1%NOTFOUND OR v_records_fetched >= 5;
    - after the EXIT WHEN statement insert row :
    v_records_fetched := v_records_fetched +1;
    Your code should look like this
    DECLARE
         v_SAM_CUST_ID       NUMBER(22);
           --v_ACCT_CUST_ID     NUMBER(22);
         v_rid               NUMBER;
         v_p_cust_id         NUMBER(22);
         v_start_from        number(10):= :START_FROM;
         v_to_next           number(10):= :to_next;
         v_trid          number;
                    v_records_fetched NUMBER := 0;
    CURSOR C1(p_cust_id    NUMBER)
    IS  SELECT A.RID,SAM_CUST_ID      FROM (SELECT ROWNUM RID,SAM_CUST_ID
                                  FROM SAM ,DE_ADDR
                                  WHERE SAM.SAM_CUST_ID=DE_ADDR.DE_CUST_ID
                                  AND SAM.SAM_CUST_ID >= p_cust_id
                                  AND SAM.SAM_FREQUENCY IN ('DAILY','MONTHLY','Quarterly','Half yearly','Yearly')) A
                                  WHERE A.RID <= 10 ORDER BY SAM.CUST_ID;
    BEGIN
         v_start_from      := :START_FROM;
         v_to_next     := :to_next;
         v_rid:=0;
         v_p_cust_id:=9092;
                   v_records_fetched := 0;
         if :TEXT_BOX1='S' then
         message('Firing IF..');
           OPEN C1(v_p_cust_id);
           LOOP
                FETCH C1 INTO v_trid,v_SAM_CUST_ID;
                EXIT WHEN C1%NOTFOUND OR v_records_fetched >=5;
                                    v_records_fetched := v_records_fetched +1;
                message('generating rport...');
                host('rwclient server=reptest report=c:\cust_print1.rdf p_1='||v_SAM_CUST_ID||' userid=wh1/wh1@dwh desformat=pdf destype=file desname=c:/temp/'||v_SAM_CUST_ID||'.pdf');
              END LOOP;
           CLOSE C1;     
              END LOOP;
      ELSE
    message('ELSE.....');
      END IF;
      END; 
      Message was edited by:
    user434854

  • PDF file generation

    I am unable to generate a pdf file of a report that I generated. I get Rep-03335 error. I can use all the help I can get

    Be sure you have a default printer
    assigned. Check the permissions on
    the machine as well. Try installing a
    later version of acrobat too.

  • RS-422 PPS Generation in LabWindows/CVI

    I'm trying to generate a RS-422 PPS signal using the PXI-8431/8 PXI board, LabWindows/CVI and the standard CVI library functions but I can't find a way of producing a signal that remains HI persistently for X number of ms.  I realize that using the PXI-6602 would be an ideal solution but for my case I'm relying on the RT OS to maintain determinism.  Do you know of a white paper or discussion thread that might describe a reliable way of doing this with the CVI functions and serial boards I have?

    What is a "PPS signal"?
    Since you are asking about LabWindows/CVI, you might have better luck asking your question in the LabWindows forum rather than the LabVIEW forum.

  • I'm hoping someone can kindly help with me with an error message that is causing PDF file generation failure when using InDesign CS6 for Windows and Acrobat Distiller 8.0

    <PDFX ISO="15930-1:2001" COMPLIANT="true">
    PDF/X Compliance Report
    1.  Summary
       Warnings: The total found in this document was 0.
       Violations: The total found in this document was 0.
       No problems were found in the document.
       This document passes PDF/X-1a:2001 compliance checks.
    </PDFX>

    @Jack – this is no error message, just a log, that all was running ok.
    See detailed answer here:
    Re: I am getting some errors while distilling the post script file.
    Uwe

  • AIX-based printing and PDF file generation

    Greetings,
    looking to find a best practices approach to scheduled printing of pdf BOXI reports hosted by in an AIX environment to a Windows AD secured network printer. 
    Looking at three possible approaches:
    1. AIX-based printing: lpr queue with some ghostscript translation to postscript
    2. Windows-based printing via SAMBA: AIX based printing using samba services
    3. Windows-based printing via  FTP: transfer the file out from the AIX server and script the printing using Control-M
    Leaning towards #3 presently.  Expert guidance would be greatly appreciated.
    Martin

    Hi Martin,
    I faced a similar situation at a client site and after actually trying out Option 1, then considering the cost of Option 2 (resources, skill sets and long-term maintenance), we decided to go for Option 3.
    With Option 1, we used the lpr queue commands to send the reports to particular printers (print queues) on the that were registered on the AIX box. We faced two major problems with this approach.
    (1) We had what we called the 'default' printer problem, where, may be based on the volume of pages we were printing or the performance issues on the server itself, print jobs would go the default print queue on the AIX server. As you can imagine, that was not good. Jobs that were intended for one department were ending up in another, and the default location had to start parsing through the print outs and create piles. Operational nightware.
    (2) Cover sheets... We had 1 report (basically a form) that needed to be printed with data for different departments (six depts). So a developer wrote a little java app that called BusinessObjects and passed in the report parameters - and ID, and the printer name. The problem that we faced was that the print jobs would come out the other end, each with its own cover sheet. Even though we passed in the AIX command to suppress the  cover sheet, they came out. I don't remember whether specifying the switch in the CMC worked or not - but we didn't have that luxury - we had to do programmatically because the printing was so dynamic.
    So we opted for a rather simple situation, which was made possible also because the customer's license allowed it. We installed the report job servers (no CMS) on a windows servers, assigned them to the CMS pool on the AIX server, installed the printers we needed on the Win server. Then we created a Server group that included just the Windows servers (report processing servers), and locked the report in question to only be processed by servers in that group. So the report would only be processed by the Windows servers with the necessary printers.
    The solution has been in operation for over 12 months and working great. We can manage all the servers from the CMC and with auditing turned on, we have great visibly on the performance of the system. Because this printing system is so critical, the process is being enhanced by throwing the stats on an Xcelsius dashboard for real-time monitoring by the operations folks.
    Hope this helps. I'll be glad to share more if you're interested.
    Will

  • Need to install LabWindows​/CVI PID Control Toolkit (Part Number 320794A-01​)

    Hello -
    I have a customer with a very old application who needs to upgrade their system to Win7 64-bit. The app references the old PID functions (manual here: http://www.ni.com/pdf/manuals/320794a.pdf) but no matter what I have searched for, I cannot find an installation for that toolkit. I have never had a need to use the current PID toolkit so I am not versed with it, and the difference in the functions do not seem to be a 1 to 1 change. Additionally, the customer is not paying for a code change - just assistance with the upgrade and reinstall. I would greatly appreciate if someone could point me to that download. 
    If such a download is not in existence any longer, I will need to request some assistance with modifying the source to use the current PID functions. I could attach the pertinent code if need be (there are not a great deal of references).
    Thank you.

    Hi CVIBri,
    The installation files for the LabWindows/CVI PID Control Toolkit 2.1 are located at the URL below.  I realize these are only officially compatible with versions of Windows up to Vista, however this is the most recent version of the toolkit that exists.  I've also provided a link to the Evaluation License Files.  That being said, LabWindows/CVI 2013 SP2 now includes the PID Control Toolkit as part of its Base and Full versions, and it is fully licensed with the same serial number used to activate the LabWindows/CVI development environement. The Readme linked below should provide more information.
    PID Control Toolkit: http://www.ni.com/download/labwindowscvi-pid-contr​ol-toolset-2.1/1037/en/
    PID Control Tookit Evaluation License Files: http://www.ni.com/download/labwindowscvi-pid-contr​ol-toolset-2.1/1038/en/
    LabWindows/CVI 2013 SP2 Readme: http://www.ni.com/pdf/manuals/374674a.html
    Thanks,
    Myriam

  • Providing security to the PDF file using apache FOP in java

    I am working on PDF file generation using Apache FOP, I have security concerns which are
    1. PDF file will be placed in a folder after generation and that should not be copied to other locations.
    2. PDF file should only have an option print nothing else. The save/save as options should never be enabled.
    3. PDF expiry date is required, so that PDF file will get expire after duration.

    HI,
    I did that too, with too much experiments.
    Code snippet for reference.
    PdfReader reader = new PdfReader(getOutputFilePath());
    PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("my-new-file.pdf"));
    stamper.setDuration(1,1);
    int permissions = PdfWriter.HideMenubar & PdfWriter.HideToolbar & PdfWriter.HideWindowUI & ~( PdfWriter.AllowCopy | PdfWriter.AllowModifyAnnotations | PdfWriter.AllowFillIn | PdfWriter.AllowAssembly | PdfWriter.AllowModifyContents | PdfWriter.AllowScreenReaders);
    stamper.setEncryption(null, null,
    permissions, PdfWriter.STRENGTH40BITS);
    stamper.setFormFlattening(true);
    System.out.println(stamper.getMoreInfo());
    stamper.close();
    I am able to disable the save button, but I am unable to disable the save as option.
    It would be great help, if you can give some inputs on this.

  • R/3 spool on pdf file

    Hi forum,
    is it possibile in R/3 to generate a pdf file for each spool into a particular file system ? I would to create a pdf file in directory for each delivery spool output.
    Regards.
    Ganimede Dignan.

    Hi,
    Actually for manual PDF file generation there is a program called RSTXPDFT2. You need to make an ABAP program to make it "automatic" conversion for particular spools. Technically, if you need it for every spool, then we need to little workaround:
    1. Install SAPGUI to a PC, to have SAPLPD on it installed in the correct way.
    2. Create a printer on the PC and the result should be a PDF file. It is something like "print to PDF file". You may need a third party program.
    3. Create a printer type 'U' on SAP, pointing to the PC host and the "print to PDF file" printer.
    4. The spools that need to be converted to PDF should have this output device as the destination.
    Bare in mind that SAPLPD on the PC host must be active.
    Regards,
    Agoes

  • LabWindows/CVI 2013 SP2 stops working when I try to open a file using the project file menu.

    I have windows 7 on my system and sometime late last year I starrted getting a Windows dialog telling me that LabWindows/CVI has stopped working when I try to open a file from the project file menu.  I also get an error when I run a project debug mode and use a selectFilePopup in the code.  The error says, "The program has suspended execution at address 0x75D5025E.  No source line information is available."  I've tried removing and reinstalling CVI to no avail.  Any suggestions?

    Constantin,
    Thank you for your response.  I've attached screnshots showing the version details for kernal32.dll and ntdll.dll.  I also looked at the updates to see which might have been installed when the problem started.  Unfortunately there are 15-20 updates every month.  I didn't take note of when the error started to occur.  At first it only affected my ability to open files from within the project (i.e. file->open->Source, etc).  Then I went back to modify a project that had a SelectFilePopup and found that that wouldn't work either. 
    Attachments:
    ntdll.dll version.jpg ‏15 KB

  • Content generation error. [Error: Failed to Export the PDF file.]

    Hi;
    Everytime i try to update an article within a folio in DPS folio builder i get this error :
    Content generation error.
    [Error: Failed to Export the PDF file.]
    My colleague next to me is running exactly the same set up and doesnt get the error. in fact his update anf sideloading is fast as lightning.
    the ONLY difference is that im running v28 tools and he is on v27, however wehave another colleague running v28 and his updates work perfectly.
    Any ideas lovely community?
    Scott

    Hi Bob;
    Have tried that one. And again on your suggestion....no luck.
    Scott

Maybe you are looking for