Recover iReport template

From IMSMA Wiki
Jump to: navigation, search
IReport list.png

This page describes how to solve the scenario:

  1. the iReport template file has been lost
  2. the template has been published inside IMSMANG so it is stored in the database.

Follow the steps below to recover the iReport template.

  1. In case the report has subreports and those need to be changed, it is important to also locate the subreports.
  2. The following query checks if the report contains subreports (enter the correct report name in the WHERE clause of this query)
    "Parent"."name" AS "Parent name",
    "Parent".filename AS "Parent file",
    "Parent".jrxml AS "Parent JRXML",
    "Child"."name" AS "Child name",
    "Child".filename AS "Child file",
    "Child".jrxml AS "Child JRXML"
    "public".reporttemplate AS "Parent"
    INNER JOIN "public".reporttemplate AS "Child" ON "Parent".guid = "Child".parent_guid
    "Parent"."name" = 'Statistics - Land with Ordnance Details'
    Recover ireport.png

  3. In Navicat or pgAdmin3, open the table reporttemplate and identify which iReport is the one for which the file is missing. Reports can be identified by their name.
  4. Copy the contents of the column jrxml of the parent and/or child/subreport report to a new text file using e.g. NotePad++.
  5. Delete the double quotes at the very beginning and end of the file.
  6. Save it as a .jrxml file
    Click Save as.
    Enter the old file name with the extension .jrxml
    Select All types (*.*) in the Save as type field).
    Save the file in the folder C:\IMSMAng\iReport\Templates.
  7. Repeat step 3 - 5 for each iReport that needs to be recovered.
  8. Open the saved file(s) in iReport and make the required changes.
  9. Note.jpg If there are subreports, the report will not run inside iReport, as it will not find the subreports(s) - unless all the subreports are also saved as .jrxml files and the references from the main to the subreports are updated. Contact your GICHD IM advisorin case of questions on this.
  10. Re-import the changed iReport template into IMSMANG.