How to run multiple BIRT reports from a single request page or from another report at run time.

syallos
edited February 11, 2022 in Analytics #1
I would like to run more than one BIRT report from a single request page. For example: I have a request page with dropdown parameter that has multiple options such as: employee, manager, facility. Also let's say I have three separate reports such as: employee.rptdesign,manager.rptdesign, facility.rptdesign. What I would like to accomplish is if I select more than one option from dropdown in the request page (say: employee and manager), I would like to see employee and manager reports are being displayed as two separate reports in two separate Report Viewer.

Also, I was wondering if there is a way to run/display another report
dynamically from the first running report if certain condition has been
met while the report is running. In other words, what is the method or
line of code(s) that I need to implement to run another report upon
meeting certain condition in the first report?

My Eclipse version is: 3.4.2 and BIRT version is: 2.3.2

Thanks for your cooperation in advance.

Comments

  • micajblock
    edited August 13, 2011 #2
    Two quick questions:<br />
    <ul class='bbcol decimal'><li>How are you deploying your reports?</li><li>How is this related to Maximo?</li></ul>
  • syallos
    edited December 31, 1969 #3
    <blockquote class='ipsBlockquote' data-author="'mblock'" data-cid="81525" data-time="1313222770" data-date="13 August 2011 - 01:06 AM"><p>
    Two quick questions:<br />
    <ul class='bbcol decimal'><li>How are you deploying your reports?</li><li>How is this related to Maximo?</li></ul></p></blockquote>
    <br />
    Thanks for your reply.<br />
    <br />
    The reason I posted this question under Maximo section because we are writing reports to be used/called from Maximo application. But I believe, my question could be applicable in Maximo or any other application.<br />
    <br />
    We are posting the report.rptdesgin file to the Maximo server and the report gets called from the request page in Maximo. (not sure if that answers your question).<br />
    <br />
    Thanks,<br />
    Syallos
  • micajblock
    edited December 31, 1969 #4
    <blockquote class='ipsBlockquote' data-author="'syallos'" data-cid="81819" data-time="1314123205" data-date="23 August 2011 - 11:13 AM"><p>
    The reason I posted this question under Maximo section because we are writing reports to be used/called from Maximo application. But I believe, my question could be applicable in Maximo or any other application.<br />
    <br />
    We are posting the report.rptdesgin file to the Maximo server and the report gets called from the request page in Maximo. (not sure if that answers your question).<br /></p></blockquote>
    <br />
    In general one can call multiple reports from a single requester page. However Maximo (as far as I know) does not provide access to modifying the requester to call the reports and only one report can be executed at a time. Outside of Maximo this would be trivial.
  • @micajblock said:
    The reason I posted this question under Maximo section because we are writing reports to be used/called from Maximo application. But I believe, my question could be applicable in Maximo or any other application.

    We are posting the report.rptdesgin file to the Maximo server and the report gets called from the request page in Maximo. (not sure if that answers your question).

    In general one can call multiple reports from a single requester page. However Maximo (as far as I know) does not provide access to modifying the requester to call the reports and only one report can be executed at a time. Outside of Maximo this would be trivial.

    ¿And how do you do this in BIRT, call multiple reports from a single requester page?

    Hope we can get this topic in discussion again, I can't be the only one wanting to do this.

  • Is this for Maximo?

  • Jayjaybzzzt
    edited September 6, 2018 #7

    No. I want to do in BIRT the same thing Syallos wanted:

    "I would like to run more than one BIRT report from a single request page."

    I need a way to download multiple RPTDESIGNs with one run, lets say with a master RPTDESIGN or I don't know. This to save time, rather than running 9 reports one by one. Each report uses the same parameters.

    Thanks for your response.

  • Sorry I need more clarifications - Is this pure OS BIRT or commercial BIRT with iHub or iServer? If the former where are these rptdesigns being downloaded from and how are you executing them? If the later which version?

  • Pure OS BIRT.

    I run the report as XLSM in BIRT with the View Report button. Thanks again.

    Kind regards,
    Jason

  • I'm assuming you're using the sample viewer web app to generate your reports as opposed to leveraging the Report Engine API.

    Just to be clear, there isn’t a pre-built way to do this. There are a myriad of ways this can be done, but all approaches will require some form of code. Keep in mind that HTTP is a request-response protocol and prevents you from having multiple responses to a single request. Therefore, you must make multiple requests if you want multiple report output files or viewers.

    The simplest approach would likely be to use iFrames. You would use JavaScript DOM manipulation to create iFrame elements (and any other container elements to help with layout if needed) based on the reports that are required. Each iFrame has a src attribute which will initiate an HTTP request.

    A more elegant solution would be to use the RE API server-side and have a servlet that accepts an array of the names of the reports to generate and returns a .zip containing the results.