Jump to content
We've recently updated our Privacy Statement, available here ×

contentengineer

Members
  • Posts

    56
  • Joined

  • Last visited

 Content Type 

Profiles

Forum

Events

Featured Visualizations

Knowledge Base

Documentation (PDF Downloads)

Blog

Documentation (Test Area)

Documentation

Dr. Jaspersoft Webinar Series

Downloads

Posts posted by contentengineer

  1.  This is the code we use for piping in a list of document references as a parameter in SQL:

    1. $P{list} - this is the original field i.e. "INV100000,INV100001,INV100123"

     

    2. $P{listparsed} - the parsed list with default value expression:

    $P{list}.replace(",","','")

     

    3. In query:

    select * from <table> where docid in ('$P!{listparsed}')

     

    Works a dream on about seven reports we run thro' Jasperserver and iReport

     

  2. In iReport, when exporting as CSV file; empty spacer columns are not shown in the raw file output

    If run in Java using JasperReports, additional commas appear presumably from the spacer columns 

    In JRXlsAbstractExporter there is the capability to set IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS property

    There does not appear the same in JRCsvExporter method

    --

    I have removed pagination prior to running fillManager, but additional spaces still appear.

    Is there an undocumented property that can remove spaces in CSV?

    Does iReport use the JRXls rather than JRCsv exporter?

    --

  3.  

    We have created a report (designed for CSV) that will then be used as basis for EDI messaging. When designed in iReport 2.0.2 and run-out we get the correct comma separated file.

    When we  run the report through Java, using Jasper Reports library; additional comma's appear between fields that do not appear in IDE version.

     - iReport 2.0.2 -> CSV Builder with "notepad.exe" as viewer to see raw file CORRECT

     - Jasperreports JRCsvExporter 

     - No pixel gaps between fields

     

    ---

    Code snippet from Java:

    JasperPrint jprint=JasperFillManager.fillReport(report,parameters,con);

          /* Need to catch blank reports! */

          if (!jprint.getPages().isEmpty()) {

            JRCsvExporter exporter = new JRCsvExporter();

            File destFile = new File(reportfilename);

    exporter.setParameter(JRExporterParameter.JASPER_PRINT,jprint);

    exporter.setParameter(JRCsvExporterParameter.OUTPUT_FILE_NAME,destFile.toString());

    exporter.exportReport();

     

  4. We are finding that on IE7 browsers, PDF documents are incomplete - i.e. in our example the graph components are missing the data (legends/axes are OK); but there are no errors on Jasperserver, the browser or other logs.

     

    (1) Reports are OK on IE6, Firefox and Safari

     

    (2) Errors are repeatable across machines

     

    (3) PDF files appear complete when saved from browser... correct PDF header/footer

     

    Any views?

     

    Guess this is either a bug in IE7 ActiveX (Mshtml.dll, shdocvw.dll) or something else [cookies]?

     

    Anybody else experiencing the issue?

  5. Forget that approach.... this is far simpler:

     

     

    SELECT a FROM b where c in ('$P!{paramName}');

     

    Then setup two parameters:

     

    name: paramInput type: String

    default to: "X,Y,Z"

     

    name: paramName type: String

    default to: $P{paramInput}.replace(",","','")

     

    produces a beautifully parsed query when paramInput is set as a single entry value (type: String)...

     

    Forget $X !!!

  6. We have created a report using the $X{IN,colName,paramName} notation.

     

    (1) iReport does not parse this notation correctly; "Unrecognized SQL escape 'IN' "

     

    AND

     

    (2) Non of the input controls enable a user to enter a comma separated list of variables. We get Java exceptions if we choose "single value" before the parameters is displayed in the workflow.

     

    iReport2.0.2 JasperServer2.0

  7. To solve this we've coded some Java using the Jasperreports classes, with some additional tables to run reports as batches in a two stage process: (1) generate reports and hold in repository; (2) email reports held in repository; (3) option to resend reports held in repository.
  8. Lucian

     

    Excellent lateral thinking! I'm thinking as a short term fix to write a script in PHP/Java, to call the webservice, create a report PDF, and email using SMTP.

     

    Since we might be adding 1000 jobs in the future, I need some way of creating a "batch/sequential" type function... rather than overloading Quartz. It may be that I need a generic job in Quartz, that calls a "master job" which runs all the individual report units.

     

    Thoughts?

     

    Rob

  9. We're looking for methods to add 100+ jobs to scheduler based on a csv file. For example we want to send a bespoke report to 100+ customers by email based on existing data; and are trying to avoid having to go through the traditional web interface to execute.

     

    It does not appear easy (nor practical) to add the raw data to the Quartz tables in a coordinated fashion using a MySQL import; due to the binary JOB_DATA (Map); plus TRIGGER_NAME and JOB_NAME.

     

    Tables: qrtz_cron_triggers, qrtz_job_details, qrtz_simple_triggers, qrtz_triggers

     

    Are there any other APIs to achieve this? It is not possible to drive a report generation from an existing table; as the email address has to come from Quartz.

  10. IMHO Upgrade process from 1.2.0 -> 2.0.0 requires further testing before being used in anger.

     

    Have had to backout from upgrade, even after running 2.0.0 in development for a while.

     

    - Have to modify all report entries [input controls]

    - Have to manually hack db if space character at end of label or name; otherwise export/import fails

    - Parameter passing

    - Extraneous errors in log files

  11. Contrary to feature understanding, a mandatory input control set on an input control; does NOT force the input control dialog pop-up or page to appear.

     

    Exported existing data

    Upgrade JS 1.2.0 -> 2.0.0

    Imported new reports

     

    Infact no input control data is passed to the report, so treats as null???

  12. Additional notes:

     

    When updating report to always prompt, receive the following message:

     

    WARN ProxyWarnLog,http-8080-Processor24:581 - Narrowing proxy to class com.jaspersoft.jasperserver.api.metadata.jasperreports.domain.impl.datasource.RepoJdbcDataSource - this operation breaks

  13. Recently had to backout from migration from 1.2.0 -> 2.0.0 using documented import/export routines for following reasons:

     

    - Blank reports with parameterised reports - they had always worked in iREPORT 1.2, 2.0; plus Jasperserver 1.2.0

     

    - When manually editting input controls to always prompt; OR using iREPORT to modify the repository, receive the following message:

     

    ERROR ManagementService,http-8080-Processor24:189 - Encapsulation DIME? : false

     

    No migration.

    No new features.

    No cigar!

  14. On further analysis...found that some names and labels of resources had a "space" Char(32) after each name.

     

    Hacked the database jiresource and jiresourcefolder entries to remove spaces from end of offending names. Also updated the jireportjob table.

     

    Not worried too much about the repository cache table(s); as when the new name is used, it creates a new entry anyway.

  15. Running ji-export.bat in attempt to migrate production system from 1.2.0 to 2.0.0.

     

    It fails when creating the second folder of reportJobs xml files. [but this is NOT the first reportJob folder].

     

    The routine has already created:

     

    <install-dir>scriptsjs-1.2-catalogreportJobsCustomerReporting

     

    Is there an error in the data or report name - for example there appear to be a an additional space after the folder name?

     

    ji-export.bat --everything --output-dir js-1.2-catalog

     

    11:25:17,721 ERROR FileSystemOutput,main:90 - java.io.FileNotFoundException: js-1.2-catalogreportJobsFranchiseReportsNETsalesPD 61.xml (The system cannot find the path specified)

    ...

    at java.io.FileOutputStream.open(Native Method)

    at java.io.FileOutputStream.<init>(FileOutputStream.java:179)

    at java.io.FileOutputStream.<init>(FileOutputStream.java:131)

    at com.jaspersoft.jasperserver.export.io.FileSystemOutput.getFileOutputStream(FileSystemOutput.java:87)

    at com.jaspersoft.jasperserver.export.io.BaseExportOutput.getFileOutputStream(BaseExportOutput.java:43)

    ....

  16. v2.0.0

     

    We have a simple job to translate data from MS SQL to MySQL.

     

    1. Delete existing rows (MySQL)

    2. Input rows (MS SQL)

    3. Output rows (MySQL)

     

    Using following:

     

    tMysqlRow_1 with run before

    tMSSqlInput_1

    tMysqlOutput_1

     

    Latter two have tested OK on their own.

     

    When run with tMysqlRow_1 and following query; the deletion does not appear to execute (i.e. rows do not disappear!)

     

    DELETE from reportboss;

     

    This command executes fine on MySQL Query browser using same userid.

     

    Have tried adding: "START TRANSACTION; DELETE from reportboss ; COMMIT;" as part of query but this does not execute.

  17. Why not just use a running total? Create a new variable that sum's on a field within each detail line iteration (math equiv $V{total}=$V{total}+$F{detail_line} ). This variable can then be used in the column header or column footer bands. For example:

     

    Brought forward xxxx.xx

     

    Detail line

    Detail line

    .

    .

    .

    Detail line

     

    Carried forward xxxx.xx

     

    Rob

  18. Has anyone got around the lack of event handlers for group footers?

     

    I need to set a variable on a page if a particular group footer has appeared or not; to use as a "Print when expression" (in fact NOT when expression); and then reset this variable for the next page.

  19. The in built functions:

     

    Print when group changes

    Print when detail overflows

     

    ...do not appear to be a solution to this. Any other ideas on how this can be solved?

     

    The report produces a single PDF of one or more invoices. An invoice can be one or more pages. If invoice is more than one page long, need to print "carried forward + value" in footer.

     

    Current Grouping:

    Invoice

    Invoicegroup (used as column header/footer)

    Shipment [grouped by shipment]

    Detail [invoice line]

     

    Not using page headers.

    Using page footers for repeated legal information and the carried forward figure.

×
×
  • Create New...