Hitachi Vantara Pentaho Community Forums

View Poll Results: Would you use the new "Pentaho Reporting Output" step for Kettle?

Voters
29. You may not vote on this poll
  • Yes!

    29 100.00%
  • No!

    0 0%
  • Where's my BIRT step?

    2 6.90%
  • Where's my Jaspersoft step?

    1 3.45%
  • Where's my Business Objects step?

    1 3.45%
  • Where's my Cognos Step?

    2 6.90%
  • Stop bothering us, stay on the Kettle forum Matt!

    1 3.45%
Multiple Choice Poll.
Results 1 to 42 of 42

Thread: Announcing: Pentaho Reporting Output step for PDI

  1. #1
    Join Date
    Nov 1999
    Posts
    9,729

    Lightbulb Announcing: Pentaho Reporting Output step for PDI

    A simple but effective PDI (Kettle) step to render a PRPT to an output file in your desired output format.

    Screenshot


    Binary
    http://kettle4.s3.amazonaws.com/PentahoReporting.zip

    Installation
    Download PDI 4.1.0-RC1 from sourceforge (tested that one) or a recent trunk CI build.
    Unzip PentahoReporting.zip to the plugins/ folder (no subdirectory, see http://jira.pentaho.com/browse/PDI-4842)

    Source
    http://source.pentaho.org/svnkettler...gPlugin/trunk/
    The old code for PDI 2.4.0 (3 years old) was branched.
    revision 14271 or later.

    Comments
    If you patch 4.0.0 and later with recent libbase-TRUNK and libformula-TRUNK you probably could get it to run on those too.

    TODO
    - Add produced files to transformation result files list. Since the output file is input for the step I suppose it's not that urgent.
    - Add word (RTF) and XLS2007 output options.


    Video by osbi_fr




    Feedback is welcome!.

    Matt
    Last edited by MattCasters; 04-14-2011 at 03:21 PM.

  2. #2

    Default

    That is a feature I really needed, thanks so much!
    I just tested it, it works well with PDF, but when generating an HTML report I can't see the charts. I assumed they would be generated as image files, but I don't see them generated either. Did I miss something?
    Thanks a lot!
    Nicolas Raoul

  3. #3
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    Thanks for testing Nicolas. There seems to be some problem with the Paged (or Directory) HTML option.
    I created a JIRA case to mention this to my colleagues and I hope that this issue will be fixed shortly.

    http://jira.pentaho.com/browse/PRD-3066

    But in any case the idea is indeed that images get created too.

    Take care,
    Matt

  4. #4

    Lightbulb

    I just wrote how to use this step to automatically send reports to a data warehouse's shops.
    Not a major piece of literature, but well, feedback is welcome :-)
    Hope this can help someone,
    Nicolas Raoul

  5. #5
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    Thanks Nicolas!

  6. #6
    Join Date
    Aug 2007
    Posts
    12

    Default

    Name:  reporting.jpg
Views: 673
Size:  27.8 KB

    Hi All,

    I have tried the reporting plugin inside PDI 4.01GA/4.10RC1 but it does not seem to be working. I have set all the necessary parameters but no PDF file is generated. pls see the attached image. Also, I noticed that I cannot save a transformation that contained reporting plugin step more than once and will get the following error :

    Unable to save step info to the repository for id_transformation=3
    Unable to save step information to the repository for id_step=9
    Error inserting/updating row
    ORA-00001: unique constraint (TEST1.IDX_STEP_ATTRIBUTE_LOOKUP) violated

    pls advise me.

  7. #7

    Default

    Hi chenkeongyap!

    Stupid question but your report works fine in PRD, right?
    Could you please post your .ktr file so that I can have a look?
    I have no idea about the saving problem though.

    Cheers!
    Nicolas Raoul

  8. #8
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    I figured out what the repository saving problem was, I'll fix it in a few hours.

  9. #9
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    Fixed it (revision 14376), updated the download.

  10. #10
    Join Date
    Aug 2007
    Posts
    12

    Default

    Hi Matt,

    Thanks for the quick response. I've tested revision 14376 using mysql as etl repository and it works perfectly fine. However, if I run the similar transformation inside Oracle 11G and the following errors came out, pls advise me.

    java.lang.reflect.InvocationTargetException: Error saving transformation: org.pentaho.di.core.exception.KettleException:
    Unable to save step info to the repository for id_transformation=73
    Unable to save step information to the repository for id_step=36342
    Error inserting/updating row
    ORA-00001: unique constraint (KETTLE1.IDX_STEP_ATTRIBUTE_LOOKUP) violated


    at org.pentaho.di.ui.spoon.dialog.SaveProgressDialog$1.run(SaveProgressDialog.java:77)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)
    Caused by: org.pentaho.di.core.exception.KettleException:
    Unable to save step info to the repository for id_transformation=73
    Unable to save step information to the repository for id_step=36342
    Error inserting/updating row
    ORA-00001: unique constraint (KETTLE1.IDX_STEP_ATTRIBUTE_LOOKUP) violated


    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryStepDelegate.saveStepMeta(KettleDatabaseRepositoryStepDelegate.java:187)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryTransDelegate.saveTransformation(KettleDatabaseRepositoryTransDelegate.java:207)
    at org.pentaho.di.repository.kdr.KettleDatabaseRepository.save(KettleDatabaseRepository.java:327)
    at org.pentaho.di.repository.kdr.KettleDatabaseRepository.save(KettleDatabaseRepository.java:308)
    at org.pentaho.di.ui.spoon.dialog.SaveProgressDialog$1.run(SaveProgressDialog.java:73)
    ... 1 more
    Caused by: org.pentaho.di.core.exception.KettleException:
    Unable to save step information to the repository for id_step=36342
    Error inserting/updating row
    ORA-00001: unique constraint (KETTLE1.IDX_STEP_ATTRIBUTE_LOOKUP) violated

    at org.pentaho.reporting.plugin.PentahoReportingOutputMeta.saveRep(Unknown Source)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryStepDelegate.saveStepMeta(KettleDatabaseRepositoryStepDelegate.java:179)
    ... 5 more
    Caused by: org.pentaho.di.core.exception.KettleDatabaseException:
    Error inserting/updating row
    ORA-00001: unique constraint (KETTLE1.IDX_STEP_ATTRIBUTE_LOOKUP) violated

    at org.pentaho.di.core.database.Database.insertRow(Database.java:1390)
    at org.pentaho.di.core.database.Database.insertRow(Database.java:1304)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryConnectionDelegate.insertStepAttribute(KettleDatabaseRepositoryConnectionDelegate.java:1247)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryConnectionDelegate.saveStepAttribute(KettleDatabaseRepositoryConnectionDelegate.java:679)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryConnectionDelegate.saveStepAttribute(KettleDatabaseRepositoryConnectionDelegate.java:667)
    at org.pentaho.di.repository.kdr.KettleDatabaseRepository.saveStepAttribute(KettleDatabaseRepository.java:1523)
    ... 7 more
    Caused by: java.sql.SQLException: ORA-00001: unique constraint (KETTLE1.IDX_STEP_ATTRIBUTE_LOOKUP) violated
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
    at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3400)
    at org.pentaho.di.core.database.Database.insertRow(Database.java:1339)
    ... 12 more

  11. #11

    Default

    This is a huge +1 on the idea. One of the challenges for quick/adhoc reporting of data with the Pentaho stack was the need to tie Kettle and and Jfreereport (doh, showing my age, PDI and PRD). This moves forward with the 'agile' concept quite a bit!

  12. #12
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    chenkeongyap, perhaps you didn't update the other PDI installation? Or perhaps you tried to save into the repository before with the faulty step and it is possible some junk is left in there. If the last is the case you need to clean that up first. The rows in R_STEP_ATTRIBUTE with the given transformation and step id can be removed from the repository.

  13. #13
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    OK, so nobody requested this yet in the poll, but here is a Jaspersoft reporting step.

    I'm sure the BIRT variant wouldn't be too exotic or different in nature.

    Just as a reminder to you all: both BIRT Reports and JasperReports can be run and integrated on the Pentaho BI server (CE).

  14. #14

    Default

    As a test for this step, I had PDI generate the same report 1000 times.
    The report just shows a single value, computed by a complex MDX query.
    The first report took 10 seconds to generate, which is OK.

    PROBLEM: To my surprise, the subsequent reports also all took 10 seconds (so about 3 hours in total).
    Why is Mondrian not caching the result value of the first query?

    Is it because the report generation process is not given sufficient memory?
    I am starting Spoon with -Xmx1000m -XX:MaxPermSize=1600m
    When I have a production server, I will be able to change those values to 15G, but will it solve the problem?

    Thanks in advance!
    Nicolas Raoul

  15. #15
    Join Date
    Aug 2007
    Posts
    12

    Default

    Hi Matt,

    Thanks for the advice. I have cleaned up the problematic records from backend and it's working now.However, I have one question with regards to subtransformation clustering. Do you suggest me to open a new thread since this problem cannot be resolved easily.

  16. #16
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    Nicolas: This is most likely not a problem for the reporting step but for Mondrian. Giving Kettle more memory will not help. Try to post a follow-up question in the Mondrian forum.

    Chenkeong: yes, open a new thread in the Kettle forum.

  17. #17

    Default

    Quote Originally Posted by MattCasters View Post
    OK, so nobody requested this yet in the poll, but here is a Jaspersoft reporting step.
    That's because I chose "YES!!" but I (and probably many other people) think that the JasperReports step would be a nice addition.

    Just as a reminder to you all: both BIRT Reports and JasperReports can be run and integrated on the Pentaho BI server (CE).
    The JasperReports version in the BI server usually lags behind the current upstream version by a year or so.

  18. #18

    Default

    Could it be the case that if this step generates 1000 reports, it opens and closes the Mondrian connection 1000 times?
    That would explain why Mondrian does not cache.
    If it could open the connection, then create the 1000 reports, then close, that would be faster by orders of magnitude.
    Or am I mistaken?

  19. #19
    Join Date
    Mar 2003
    Posts
    8,085

    Default

    Mondrian should cache independently of the connection. But: Mondrian is a evil thing when it comes to caching the schema and the actual data inside Mondrian: It requires that the datasource object is exactly the same instance as before (pointer to the same object, instead of *.equals() sameness) and that you always access the same *.mondrian.xml file with the same path. For non-JNDI connections, Pentaho Reporting has a cache inside to ensure that, but for JNDI datasources we rely on the JNDI provider to do the same (which works great both inside the platform and when used with Simple-JNDI in PRD).

    Our caching relies on the singleton pattern with an object bound to a static context (like everyone else implements it), and thus is bound to the classloader that was used to load the reporting-engine code. If there are several independent classloaders each with a independent static context, then you will have independent caches.
    Get the latest news and tips and tricks for Pentaho Reporting at the Pentaho Reporting Blog.

  20. #20

    Default

    Thanks Taqua for this information!
    (I am actually using JDBC everywhere, I have not tried with JNDI)

  21. #21

    Smile Modifying this plugin

    Building this plugin from source is very easy, because all libraries are included:

    Code:
    svn checkout svn://source.pentaho.org/svnkettleroot/plugins/ReportingPlugin/trunk/
    
    ant zip
    The most interesting class is src/org/pentaho/reporting/plugin/PentahoReportingOutput.java and it is very readable.

    Nicolas Raoul

  22. #22

    Question Empty reports with JNDI data connection

    Hello all!

    I modified my report to use a JNDI data source.
    Problem: generated reports are all empty files (file size is zero).

    Even though they are generated correctly when I use the PRD GUI. Is it a known bug?

    I am not familiar with JNDI in Pentaho, so I will describe what I did, if I am mistaken somewhere please tell me:

    1. In my initial report, I had created a data connection by clicking on the "+" with tooltip "Add a new connection" in the Data Source edition dialog.
    2. Add a paragraph with the properties of the data connection in file ~/.pentaho/simple-jndi/default.properties (result).
    3. Restart the BI server and PRD.
    4. This new data connection now appears in PRD. Switch to it simply by clicking it in the Data Source edition dialog.
    5. Save, that's all.

  23. #23
    Join Date
    Mar 2003
    Posts
    8,085

    Default

    The BI-Server does not use the simple-jndi configuration. After all, in most cases you do not run the server on the same box as PRD. (Your server admin may be unhappy when he see you. There are things worse than death-penalty, and you will find out about it when you tamper with the server ).

    For server-side connections, define the connection in the Admin-console. Alternatively, you could create a JNDI connection in your J2EE container, but personally I think that is just painful.
    Get the latest news and tips and tricks for Pentaho Reporting at the Pentaho Reporting Blog.

  24. #24
    Join Date
    Mar 2010
    Posts
    3

    Default

    I´ve tested the plugin with success running from spoon, but when I try running it with pan.sh I get an error:

    ./pan.sh -file=/somepath/send_report.ktr
    ...
    org.pentaho.reporting.engine.classic.core.ReportParameterValidationException: The parameters provided for this report are not valid.

    I experience the same behavior on my MacBook and a linux server.

    Is it a bug? (or is it just me)
    Håkon Torjus Bommen

  25. #25
    Join Date
    Mar 2003
    Posts
    8,085

    Default

    Your report asks for mandatory parameter and validates parameters.

    Make sure that your parameter types match the values you actually give in. So if you declare your parameter as Integer, but give in Double and you will get trouble. If you dont care about the numeric subtype, always declare your parameter as "Number" (or for dates as "Date"). And there is no implicit conversion of parameter - give a string and expect it to be matched against a integer and you will get an error. Text is not a number.
    Get the latest news and tips and tricks for Pentaho Reporting at the Pentaho Reporting Blog.

  26. #26

    Question

    Using the Administration Console only, I was getting a NamingException. So, as I was told here, I specified the same data source via both simple-jndi and the Administration Console.

    Same result: Reports are empty (even though they work fine under the PRD GUI).
    Such messages appear on the console:
    Code:
    java.sql.SQLException: Failed to access the JNDI system
        at org.pentaho.reporting.engine.classic.extensions.datasources.mondrian.JndiDataSourceProvider.findDataSource(JndiDataSourceProvider.java:162)
        at org.pentaho.reporting.engine.classic.extensions.datasources.mondrian.JndiDataSourceProvider.getDataSource(JndiDataSourceProvider.java:86)
        at org.pentaho.reporting.engine.classic.extensions.datasources.mondrian.AbstractMDXDataFactory.performQuery(AbstractMDXDataFactory.java:342)
        at org.pentaho.reporting.engine.classic.extensions.datasources.mondrian.AbstractNamedMDXDataFactory.performQuery(AbstractNamedMDXDataFactory.java:81)
        at org.pentaho.reporting.engine.classic.extensions.datasources.mondrian.BandedMDXDataFactory.queryData(BandedMDXDataFactory.java:54)
        at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.queryData(CompoundDataFactory.java:88)
        at org.pentaho.reporting.engine.classic.core.states.CachingDataFactory.queryInternal(CachingDataFactory.java:168)
        at org.pentaho.reporting.engine.classic.core.states.CachingDataFactory.queryData(CachingDataFactory.java:143)
        at org.pentaho.reporting.engine.classic.core.states.CascadingDataFactory.queryData(CascadingDataFactory.java:81)
        at org.pentaho.reporting.engine.classic.core.states.datarow.ReportDataRow.createDataRow(ReportDataRow.java:97)
        at org.pentaho.reporting.engine.classic.core.states.datarow.DefaultFlowController.performQuery(DefaultFlowController.java:186)
        at org.pentaho.reporting.engine.classic.core.states.process.ProcessState.<init>(ProcessState.java:279)
        at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.prepareReportProcessing(AbstractReportProcessor.java:460)
        at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.processReport(AbstractReportProcessor.java:1371)
        at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:122)
        at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:70)
        at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:154)
        at org.pentaho.reporting.plugin.PentahoReportingOutput.processReport(PentahoReportingOutput.java:219)
        at org.pentaho.reporting.plugin.PentahoReportingOutput.processRow(PentahoReportingOutput.java:108)

  27. #27
    Join Date
    Mar 2010
    Posts
    3

    Default

    Quote Originally Posted by Taqua View Post
    Your report asks for mandatory parameter and validates parameters.

    Make sure that your parameter types match the values you actually give in. So if you declare your parameter as Integer, but give in Double and you will get trouble. If you dont care about the numeric subtype, always declare your parameter as "Number" (or for dates as "Date"). And there is no implicit conversion of parameter - give a string and expect it to be matched against a integer and you will get an error. Text is not a number.
    Yes, that´s what it seems like, but shouldn´t the report fail when run through spoon. The play button and 'preview' both generate the reports without any problems.

    This might be a report issue though. I had similar problems passing the parameters to the report through an xaction. That´s why I tried to use this step in the first place.

  28. #28

    Question

    OK, I fixed the NamingException by defining the data source in pdi/simple-jndi/jdbc.properties too :-)

    So now, I am sure PDI, PRD and the BI server are configured to use the same JNDI data source. And... it is still not caching MDX requests results (generating the same MDX-heavy report 1000 times takes 1000 times what it takes for generating once).

    To summarize, here is where I defined the data source that is used in my report and sub-reports:
    1) In ~/.pentaho/simple-jndi/default.properties as:
    Code:
    bijndi/type=javax.sql.DataSource
    bijndi/driver=com.mysql.jdbc.Driver
    bijndi/user=root
    bijndi/password=
    bijndi/url=jdbc:mysql://localhost:5029/xyzbi
    2) In pdi/simple-jndi/jdbc.properties same as above.
    3) In the Administration Console with the same values.

    So I would expect all MDX requests to be processed by the BI server, thus using only a single Mondrian cache. Obviously that is not the case. Any idea what could be going wrong?

  29. #29
    Join Date
    Mar 2003
    Posts
    8,085

    Default

    No, Mondrian is a embedded library and not a server. Kettle and PRD do not connect to a BI-Server to execute Mondrian queries.

    The only hint I can give regarding how it behaves in Kettle is: Mondrian is extremely picky when it comes to its cache. If you work with JNDI your JNDI provider *must* cache the datasource-instance it returns so that the same access to that datasource returns the same instance. The SimpleJNDI version we use in PRD does that out of the box, so unless Kettle uses a older version of that library, I cannot see why it should not work. PRD uses SimpleJNDI 0.11.3.

    It may also be a good idea to delete any plugin-local copy of Simple-JNDI so that only one instance of that library is used. Otherwise, if kettle creates multiple Classloaders, then each Classloader runs with its own static context, which makes caching useless.
    It might also be a good idea to
    Get the latest news and tips and tricks for Pentaho Reporting at the Pentaho Reporting Blog.

  30. #30
    Join Date
    Mar 2010
    Posts
    3

    Default

    Quote Originally Posted by hakonb View Post
    Yes, that´s what it seems like, but shouldn´t the report fail when run through spoon. The play button and 'preview' both generate the reports without any problems.

    This might be a report issue though. I had similar problems passing the parameters to the report through an xaction. That´s why I tried to use this step in the first place.

    Hurra!

    I downloaded the latest pdi-4.1-stable, and now pan.sh generated my reports without problems.

  31. #31
    Join Date
    Aug 2008
    Posts
    563

    Default Problems on 4.1.0 stable

    I tried using this plugin on Kettle 4.1.0 stable and get following error:
    Code:
    2010/12/22 14:52:10 - Pentaho Reporting Output.0 - ERROR (version 4.1.0-stable, build 14410 from 2010-11-16 16.43.28 by buildguy) : Unexpected error : 
    2010/12/22 14:52:10 - Pentaho Reporting Output.0 - ERROR (version 4.1.0-stable, build 14410 from 2010-11-16 16.43.28 by buildguy) : java.lang.NoClassDefFoundError: org/pentaho/reporting/engine/classic/core/ClassicEngineBoot
    2010/12/22 14:52:10 - Pentaho Reporting Output.0 - ERROR (version 4.1.0-stable, build 14410 from 2010-11-16 16.43.28 by buildguy) : org.pentaho.reporting.plugin.PentahoReportingOutput.performPentahoReportingBoot(Unknown Source)
    2010/12/22 14:52:10 - Pentaho Reporting Output.0 - ERROR (version 4.1.0-stable, build 14410 from 2010-11-16 16.43.28 by buildguy) : org.pentaho.reporting.plugin.PentahoReportingOutput.processRow(Unknown Source)
    2010/12/22 14:52:10 - Pentaho Reporting Output.0 - ERROR (version 4.1.0-stable, build 14410 from 2010-11-16 16.43.28 by buildguy) : org.pentaho.di.trans.step.RunThread.run(RunThread.java:40)
    2010/12/22 14:52:10 - Pentaho Reporting Output.0 - ERROR (version 4.1.0-stable, build 14410 from 2010-11-16 16.43.28 by buildguy) : java.lang.Thread.run(Thread.java:662)
    I double checked my paths and they are correct. Also, my report is functional.
    Any ideas why this is not working?
    Thanks!

  32. #32
    Join Date
    Aug 2008
    Posts
    563

    Default

    ok, I got it working ... reinstalled the plugin.

  33. #33
    Join Date
    Aug 2007
    Posts
    12

    Default

    Hi All,

    I was trying to run ETL reporting plugin to generate PDF and iam using oracle 11gr2 and solaris 10. Iam getting the following error.
    Pls advise what is the missing package for solaris that is causing "Unable to lookup the font family: Calibri". I had enabled embeded font inside prpt but does not seem to be working.
    WARN 29-12 17:38:57,856 - Warning: Data-Set does not contain a column with name 'TotalAmtInternet'
    WARN 29-12 17:38:57,860 - Warning: Data-Set does not contain a column with name 'TotalAmtInternet'
    WARN 29-12 17:38:57,865 - Warning: Data-Set does not contain a column with name 'TotalAmtSMS'
    WARN 29-12 17:38:57,871 - Warning: Data-Set does not contain a column with name 'TotalAmtSMS'
    WARN 29-12 17:38:57,875 - Warning: Data-Set does not contain a column with name 'TotalAmtCallOutgoing'
    WARN 29-12 17:38:57,883 - Warning: Data-Set does not contain a column with name 'TotalAmtCallOutgoing'
    WARN 29-12 17:38:57,888 - Warning: Data-Set does not contain a column with name 'TotalAmtCallIncoming'
    WARN 29-12 17:38:57,894 - Warning: Data-Set does not contain a column with name 'TotalAmtCallIncoming'
    WARN 29-12 17:38:58,294 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,621 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,752 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,757 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,763 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,779 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,869 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,937 - Unable to lookup the font family: Calibri
    WARN 29-12 17:38:58,981 - Unable to lookup the font family: Calibri
    WARN 29-12 17:39:00,824 - Warning: Data-Set does not contain a column with name 'TotalAmtContract'
    WARN 29-12 17:39:00,824 - Warning: Data-Set does not contain a column with name 'TotalAmtTax'
    WARN 29-12 17:39:00,824 - Warning: Data-Set does not contain a column with name 'TotalAmtOcc'
    WARN 29-12 17:39:00,927 - Unable to lookup the font family: Calibri
    WARN 29-12 17:39:00,931 - Unable to lookup the font family: Calibri

  34. #34
    Join Date
    Oct 2010
    Posts
    13

    Default

    Hello,
    I also have problems with the Reporting tool.
    The strange thing is; my colleague has the same installed and he gets a well formed pdf generated out of this. When I run the same job + transformations and report I get this error. An error also appears when changing the format to CSV. Does anyone have a suggestion?
    INFO 04-01 08:59:47,568 - Join Rows (cartesian product) - Finished processing (I=0, O=0, R=4, W=1, U=0, E=0)
    ERROR 04-01 08:59:50,678 - Writing PDF failed.
    java.lang.AbstractMethodError: javax.xml.parsers.DocumentBuilderFactory.setFeature(Ljava/lang/String;Z)V
    at org.pentaho.di.core.xml.XMLHandler.loadXMLString(XMLHandler.java:663)
    at org.pentaho.di.core.xml.XMLHandler.loadXMLString(XMLHandler.java:643)
    at org.pentaho.pms.schema.concept.types.aggregation.ConceptPropertyAggregationList.fromXML(ConceptPropertyAggregationList.java:95)
    at org.pentaho.metadata.util.XmiParser.parseXmi(XmiParser.java:1497)
    at org.pentaho.reporting.engine.classic.extensions.datasources.pmd.PmdConnectionProvider.getMetadataDomainRepository(PmdConnectionProvider.java:81)
    at org.pentaho.reporting.engine.classic.extensions.datasources.pmd.PmdDataFactory.open(PmdDataFactory.java:426)
    at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.open(CompoundDataFactory.java:159)
    at org.pentaho.reporting.engine.classic.core.states.CachingDataFactory.open(CachingDataFactory.java:97)
    at org.pentaho.reporting.engine.classic.core.parameters.DefaultParameterContext.open(DefaultParameterContext.java:131)
    at org.pentaho.reporting.engine.classic.core.states.process.ProcessState.<init>(ProcessState.java:204)
    at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.prepareReportProcessing(AbstractReportProcessor.java:463)
    at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.processReport(AbstractReportProcessor.java:1412)
    at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:122)
    at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:70)
    at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:154)
    at org.pentaho.reporting.plugin.PentahoReportingOutput.processReport(Unknown Source)
    at org.pentaho.reporting.plugin.PentahoReportingOutput.processRow(Unknown Source)
    at org.pentaho.di.trans.step.RunThread.run(RunThread.java:40)
    at java.lang.Thread.run(Thread.java:636)
    INFO 04-01 08:59:50,699 - Pentaho Reporting Output - Finished processing (I=0, O=0, R=1, W=1, U=0, E=0)

  35. #35
    Join Date
    Mar 2003
    Posts
    8,085

    Default

    You have a invalid xml parser on your classpath. Remove all references to jars that have "xml-api" in their name. Also check and double check your $JRE/lib/ext directory for evil jars.
    Get the latest news and tips and tricks for Pentaho Reporting at the Pentaho Reporting Blog.

  36. #36
    Join Date
    Dec 2010
    Posts
    1

    Default

    Hey,
    thank you for this perfect Step. I love it..
    But I've got one question, are you going to release an update with the version 3.7 of the reporting engine?
    It would be perfect
    Best Regards
    funny
    Last edited by funny; 01-05-2011 at 07:35 AM.

  37. #37
    Join Date
    Oct 2010
    Posts
    13

    Default

    Quote Originally Posted by Taqua View Post
    You have a invalid xml parser on your classpath. Remove all references to jars that have "xml-api" in their name. Also check and double check your $JRE/lib/ext directory for evil jars.
    Thank you for your remark. It seems I have made a mess of where what jar files where copied to. My guess is there where some duplicates.
    I removed my local kettle installation and reinstalled it. The exceptions are gone.

  38. #38

    Default here is a jasper report plugin download (svn source)

    svn://pentahochina.com/kettle/plugins/jasperreport

    manual : http://pdi.itpub.net/post/37422/485384
    Jason chu
    Beijing Aofei BI Consulting.
    Web: http://www.pentahochina.com
    Email: jianjunchu@gmail.com

  39. #39

    Default

    here is a jasper report output

    manual:
    http://pdi.itpub.net/post/37422/485384

    svn://pentahochina.com/kettle/plugins/jasperreport
    Jason chu
    Beijing Aofei BI Consulting.
    Web: http://www.pentahochina.com
    Email: jianjunchu@gmail.com

  40. #40
    Join Date
    Nov 1999
    Posts
    9,729

    Default

    The "Pentaho Reporting Output" step is now part of vanilla Pentaho Data Integration starting from version 4.2-M1 (to be released next week somewhere).
    The plugin was also updated to the recently released Pentaho Reporting version 3.8.0.
    A binary version can be downloaded here: http://kettle4.s3.amazonaws.com/Pent...orting-3.8.zip

    Have fun with it!

    Matt

  41. #41

    Default

    I'm a bit confused as to why this isn't working for me. I created a report inside of Pentaho Report Designer, tested it using Preview and exported it to PDF - my chart has all the appropriate data. I followed the video to save the file in the same directory as the rest of my Spoon Jobs/Transformations as the .prpt file. I created a new transformation as part of an existing job, added the data grid with Report and output as Strings, with the data containing the location to the file c:\kettlerepo\piechart.prpt with the output of c:\piechart.pdf, then connected it to a Pentaho Reporting Output using Report and output, to a PDF.

    When I run the transformation it does create the pdf, but all it has is the Title on top of a box that has CHART.USER_NO_DATA_AVAILABLE in the middle of it. Do I need to configure the db connection again in Spoon / Kettle? Or is it contained in the prpt file, I'm not sure how this works.

    Is there something else I need to do here?

    Thanks,

    Deepak

  42. #42

    Default I have add one custom font called "Calibri" WARN - Unable to lookup the font family

    Quote Originally Posted by Taqua View Post
    You have a invalid xml parser on your classpath. Remove all references to jars that have "xml-api" in their name. Also check and double check your $JRE/lib/ext directory for evil jars.
    Warning in the console as follows

    WARN - org.pentaho.reporting.engine.classic.core.layout.output.AbstractOutputProcessorMetaData - Unable to lookup the font family: Calibri

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Privacy Policy | Legal Notices | Safe Harbor Privacy Policy

Copyright © 2005 - 2019 Hitachi Vantara Corporation. All Rights Reserved.