Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
Subreports with Scripted Dataset using Handiler class
Pandiyan
Hi Friends,<br />
I need help from any BIRT experts in subreport on Scripted Data Source.<br />
<br />
The requirement likes to show the Employee information and employee additional information. <br />
The Employee has many transactions like leave information, Daily Task Information and much other addition information. All addition transaction information is stored in separate tables. The report can show 5000 records for each addition information for an employee.<br />
<br />
The report output like, <br />
1. Employee details<br />
a. If leave flag is ?Yes? then needs to show leave information otherwise no needs to show.<br />
b. If Daily Task flag is ?Yes? then the daily activity needs to show otherwise no need to show.<br />
<strong class='bbc'>The Implementation:</strong><br />
Points 1: <br />
I have created multiple data sets like 1. Employee_DS, 2. Emp_Leave_DS 3. Emp_Task_DS and so... and I have created Hander java class for each DS and implemented beforeOpen(), Open and fetch() methods.<br />
1. beforeOpen():get Input Parameter Value and assign to local property.<br />
2. Open(): fetching the data from DB as based on employee Id and assign to global variable<br />
3. Fetch(): a. reading the global variable data b. setting row data<br />
<br />
Point 2:<br />
My rpt design are like, using many details rows for each additional information.<br />
1. First details row, display employee details<br />
2. Second detail row, Leave information and the visibility condition if (leave_flag ==?Y?) {false;}else{true;}<br />
3. Third and fourth detail row used for other additional info and the 2?nd step is continued for all other additional information.<br />
<strong class='bbc'>The Problem is:</strong><br />
The report is get generated with employee details which is data from Employee_DS? the additiona DS handler classes all methods are get called but the additional information are not display on report. <br />
<br />
<span class='bbc_underline'>Note:</span> I can?t use single data set because the requirement to show 5000 additional information for each employee .<br />
<br />
please help me to correct my code and I don?r know why the additional information are not display even the rows are setting .
Find more posts tagged with
Comments
kclark
Can you post your rptdesign for me to look at please?
Pandiyan
Thanks Kclark,<br />
<br />
I have posted the sample rpt design file. The handler class I have open() and fetch() methods are overridden from ScriptedDataSetEventAdapter.Java.<br />
<br />
Open method: fetch data from DB and added to global variable <br />
Fetch Method: read the global variable data and set row value.<br />
<br />
<br />
<span class='bbc_underline'><strong class='bbc'>RPT File</strong></span><br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<report xmlns="<a class='bbc_url' href='
http://www.eclipse.org/birt/2005/design'>http://www.eclipse.org/birt/2005/design"</a>
; version="3.2.23" id="1"><br />
<property name="createdBy">Eclipse BIRT Designer Version 4.2.0.v20120611 Build <4.2.0.v20120612-1721></property><br />
<property name="units">in</property><br />
<property name="iconFile">/templates/blank_report.gif</property><br />
<property name="bidiLayoutOrientation">ltr</property><br />
<property name="imageDPI">96</property><br />
<data-sources><br />
<script-data-source name="sampleSDS" id="7"/><br />
</data-sources><br />
<data-sets><br />
<script-data-set name="EmpDs" id="8"><br />
<property name="eventHandlerClass">com.testbirtjavapro.handler.EmpHandler</property><br />
<list-property name="resultSetHints"><br />
<structure><br />
<property name="position">1</property><br />
<property name="name">EMP_ID</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">2</property><br />
<property name="name">EMP_NAME</property><br />
<property name="dataType">string</property><br />
</structure><br />
<structure><br />
<property name="position">3</property><br />
<property name="name">SALARY</property><br />
<property name="dataType">decimal</property><br />
</structure><br />
<structure><br />
<property name="position">4</property><br />
<property name="name">DEPT_ID</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">5</property><br />
<property name="name">JOB_DESC</property><br />
<property name="dataType">string</property><br />
</structure><br />
<structure><br />
<property name="position">6</property><br />
<property name="name">Leave_SW</property><br />
<property name="dataType">string</property><br />
</structure><br />
</list-property><br />
<list-property name="columnHints"><br />
<structure><br />
<property name="columnName">EMP_ID</property><br />
<text-property name="displayName">EMP_ID</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">EMP_NAME</property><br />
<text-property name="displayName">EMP_NAME</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">SALARY</property><br />
<text-property name="displayName">SALARY</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">DEPT_ID</property><br />
<text-property name="displayName">DEPT_ID</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">JOB_DESC</property><br />
<text-property name="displayName">JOB_DESC</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">Leave_SW</property><br />
<text-property name="displayName">Leave_SW</text-property><br />
</structure><br />
</list-property><br />
<structure name="cachedMetaData"><br />
<list-property name="resultSet"><br />
<structure><br />
<property name="position">1</property><br />
<property name="name">EMP_ID</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">2</property><br />
<property name="name">EMP_NAME</property><br />
<property name="dataType">string</property><br />
</structure><br />
<structure><br />
<property name="position">3</property><br />
<property name="name">SALARY</property><br />
<property name="dataType">decimal</property><br />
</structure><br />
<structure><br />
<property name="position">4</property><br />
<property name="name">DEPT_ID</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">5</property><br />
<property name="name">JOB_DESC</property><br />
<property name="dataType">string</property><br />
</structure><br />
<structure><br />
<property name="position">6</property><br />
<property name="name">Leave_SW</property><br />
<property name="dataType">string</property><br />
</structure><br />
</list-property><br />
</structure><br />
<property name="dataSource">sampleSDS</property><br />
</script-data-set><br />
<script-data-set name="LeaveDs" id="9"><br />
<property name="eventHandlerClass">com.testbirtjavapro.handler.LeaveHandler</property><br />
<list-property name="resultSetHints"><br />
<structure><br />
<property name="position">1</property><br />
<property name="name">Tot_Leave</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">2</property><br />
<property name="name">Leave_Balance</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">3</property><br />
<property name="name">From_Date</property><br />
<property name="dataType">date</property><br />
</structure><br />
<structure><br />
<property name="position">4</property><br />
<property name="name">To_Date</property><br />
<property name="dataType">date</property><br />
</structure><br />
<structure><br />
<property name="position">5</property><br />
<property name="name">Leave_Desc</property><br />
<property name="dataType">string</property><br />
</structure><br />
</list-property><br />
<list-property name="columnHints"><br />
<structure><br />
<property name="columnName">Tot_Leave</property><br />
<text-property name="displayName">Tot_Leave</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">Leave_Balance</property><br />
<text-property name="displayName">Leave_Balance</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">From_Date</property><br />
<text-property name="displayName">From_Date</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">To_Date</property><br />
<text-property name="displayName">To_Date</text-property><br />
</structure><br />
<structure><br />
<property name="columnName">Leave_Desc</property><br />
<text-property name="displayName">Leave_Desc</text-property><br />
</structure><br />
</list-property><br />
<list-property name="parameters"><br />
<structure><br />
<property name="name">Emp_Id</property><br />
<property name="dataType">integer</property><br />
<property name="position">1</property><br />
<expression name="defaultValue" type="javascript">null</expression><br />
<property name="isInput">true</property><br />
<property name="isOutput">false</property><br />
</structure><br />
<structure><br />
<property name="name">Dept_id</property><br />
<property name="dataType">integer</property><br />
<property name="position">2</property><br />
<expression name="defaultValue" type="javascript">null</expression><br />
<property name="isInput">true</property><br />
<property name="isOutput">false</property><br />
</structure><br />
</list-property><br />
<structure name="cachedMetaData"><br />
<list-property name="resultSet"><br />
<structure><br />
<property name="position">1</property><br />
<property name="name">Tot_Leave</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">2</property><br />
<property name="name">Leave_Balance</property><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="position">3</property><br />
<property name="name">From_Date</property><br />
<property name="dataType">date</property><br />
</structure><br />
<structure><br />
<property name="position">4</property><br />
<property name="name">To_Date</property><br />
<property name="dataType">date</property><br />
</structure><br />
<structure><br />
<property name="position">5</property><br />
<property name="name">Leave_Desc</property><br />
<property name="dataType">string</property><br />
</structure><br />
</list-property><br />
</structure><br />
<property name="dataSource">sampleSDS</property><br />
</script-data-set><br />
</data-sets><br />
<styles><br />
<style name="report" id="4"><br />
<property name="fontFamily">sans-serif</property><br />
<property name="fontSize">10pt</property><br />
</style><br />
<style name="crosstab-cell" id="5"><br />
<property name="borderBottomColor">#CCCCCC</property><br />
<property name="borderBottomStyle">solid</property><br />
<property name="borderBottomWidth">1pt</property><br />
<property name="borderLeftColor">#CCCCCC</property><br />
<property name="borderLeftStyle">solid</property><br />
<property name="borderLeftWidth">1pt</property><br />
<property name="borderRightColor">#CCCCCC</property><br />
<property name="borderRightStyle">solid</property><br />
<property name="borderRightWidth">1pt</property><br />
<property name="borderTopColor">#CCCCCC</property><br />
<property name="borderTopStyle">solid</property><br />
<property name="borderTopWidth">1pt</property><br />
</style><br />
<style name="crosstab" id="6"><br />
<property name="borderBottomColor">#CCCCCC</property><br />
<property name="borderBottomStyle">solid</property><br />
<property name="borderBottomWidth">1pt</property><br />
<property name="borderLeftColor">#CCCCCC</property><br />
<property name="borderLeftStyle">solid</property><br />
<property name="borderLeftWidth">1pt</property><br />
<property name="borderRightColor">#CCCCCC</property><br />
<property name="borderRightStyle">solid</property><br />
<property name="borderRightWidth">1pt</property><br />
<property name="borderTopColor">#CCCCCC</property><br />
<property name="borderTopStyle">solid</property><br />
<property name="borderTopWidth">1pt</property><br />
</style><br />
</styles><br />
<page-setup><br />
<simple-master-page name="Simple MasterPage" id="2"><br />
<page-footer><br />
<text id="3"><br />
<property name="contentType">html</property><br />
<text-property name="content"><![CDATA[<value-of>new Date()</value-of>]]></text-property><br />
</text><br />
</page-footer><br />
</simple-master-page><br />
</page-setup><br />
<body><br />
<table id="10"><br />
<property name="width">7.947916666666667in</property><br />
<property name="dataSet">EmpDs</property><br />
<list-property name="boundDataColumns"><br />
<structure><br />
<property name="name">EMP_ID</property><br />
<text-property name="displayName">EMP_ID</text-property><br />
<expression name="expression" type="javascript">dataSetRow["EMP_ID"]</expression><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="name">EMP_NAME</property><br />
<text-property name="displayName">EMP_NAME</text-property><br />
<expression name="expression" type="javascript">dataSetRow["EMP_NAME"]</expression><br />
<property name="dataType">string</property><br />
</structure><br />
<structure><br />
<property name="name">SALARY</property><br />
<text-property name="displayName">SALARY</text-property><br />
<expression name="expression" type="javascript">dataSetRow["SALARY"]</expression><br />
<property name="dataType">decimal</property><br />
</structure><br />
<structure><br />
<property name="name">DEPT_ID</property><br />
<text-property name="displayName">DEPT_ID</text-property><br />
<expression name="expression" type="javascript">dataSetRow["DEPT_ID"]</expression><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="name">JOB_DESC</property><br />
<text-property name="displayName">JOB_DESC</text-property><br />
<expression name="expression" type="javascript">dataSetRow["JOB_DESC"]</expression><br />
<property name="dataType">string</property><br />
</structure><br />
</list-property><br />
<column id="39"><br />
<property name="width">1.59375in</property><br />
</column><br />
<column id="40"><br />
<property name="width">2.6875in</property><br />
</column><br />
<column id="41"><br />
<property name="width">1.1041666666666667in</property><br />
</column><br />
<column id="42"><br />
<property name="width">0.9791666666666666in</property><br />
</column><br />
<column id="43"><br />
<property name="width">1.5833333333333333in</property><br />
</column><br />
<header><br />
<row id="11"><br />
<cell id="12"/><br />
<cell id="14"/><br />
<cell id="16"/><br />
<cell id="18"/><br />
<cell id="20"/><br />
</row><br />
</header><br />
<group id="78"><br />
<property name="groupName">EMP_Name</property><br />
<expression name="keyExpr" type="javascript">row["EMP_NAME"]</expression><br />
<structure name="toc"><br />
<expression name="expressionValue" type="javascript">row["EMP_NAME"]</expression><br />
</structure><br />
<property name="hideDetail">false</property><br />
<header><br />
<row id="79"><br />
<cell id="80"/><br />
<cell id="81"/><br />
<cell id="82"/><br />
<cell id="83"/><br />
<cell id="84"/><br />
</row><br />
<row id="92"><br />
<cell id="93"><br />
<label id="13"><br />
<text-property name="text">EMP_ID</text-property><br />
</label><br />
</cell><br />
<cell id="94"><br />
<label id="15"><br />
<text-property name="text">EMP_NAME</text-property><br />
</label><br />
</cell><br />
<cell id="95"><br />
<label id="17"><br />
<text-property name="text">SALARY</text-property><br />
</label><br />
</cell><br />
<cell id="96"><br />
<label id="19"><br />
<text-property name="text">DEPT_ID</text-property><br />
</label><br />
</cell><br />
<cell id="97"><br />
<label id="21"><br />
<text-property name="text">JOB_DESC</text-property><br />
</label><br />
</cell><br />
</row><br />
</header><br />
<footer><br />
<row id="85"><br />
<cell id="86"/><br />
<cell id="87"/><br />
<cell id="88"/><br />
<cell id="89"/><br />
<cell id="90"/><br />
</row><br />
</footer><br />
</group><br />
<detail><br />
<row id="22"><br />
<property name="height">0.96875in</property><br />
<cell id="23"><br />
<data id="24"><br />
<property name="resultSetColumn">EMP_ID</property><br />
</data><br />
</cell><br />
<cell id="25"><br />
<data id="26"><br />
<property name="resultSetColumn">EMP_NAME</property><br />
</data><br />
<table id="98"><br />
<property name="dataSet">LeaveDs</property><br />
<list-property name="paramBindings"><br />
<structure><br />
<property name="paramName">Emp_Id</property><br />
<simple-property-list name="expression"><br />
<value type="javascript">row["EMP_ID"]</value><br />
</simple-property-list><br />
</structure><br />
<structure><br />
<property name="paramName">Dept_id</property><br />
<simple-property-list name="expression"><br />
<value type="javascript">row["DEPT_ID"]</value><br />
</simple-property-list><br />
</structure><br />
</list-property><br />
<list-property name="boundDataColumns"><br />
<structure><br />
<property name="name">Tot_Leave</property><br />
<text-property name="displayName">Tot_Leave</text-property><br />
<expression name="expression" type="javascript">dataSetRow["Tot_Leave"]</expression><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="name">Leave_Balance</property><br />
<text-property name="displayName">Leave_Balance</text-property><br />
<expression name="expression" type="javascript">dataSetRow["Leave_Balance"]</expression><br />
<property name="dataType">integer</property><br />
</structure><br />
<structure><br />
<property name="name">From_Date</property><br />
<text-property name="displayName">From_Date</text-property><br />
<expression name="expression" type="javascript">dataSetRow["From_Date"]</expression><br />
<property name="dataType">date</property><br />
</structure><br />
<structure><br />
<property name="name">To_Date</property><br />
<text-property name="displayName">To_Date</text-property><br />
<expression name="expression" type="javascript">dataSetRow["To_Date"]</expression><br />
<property name="dataType">date</property><br />
</structure><br />
<structure><br />
<property name="name">Leave_Desc</property><br />
<text-property name="displayName">Leave_Desc</text-property><br />
<expression name="expression" type="javascript">dataSetRow["Leave_Desc"]</expression><br />
<property name="dataType">string</property><br />
</structure><br />
</list-property><br />
<column id="127"/><br />
<column id="128"/><br />
<column id="129"/><br />
<column id="130"/><br />
<column id="131"/><br />
<group id="132"><br />
<property name="groupName">LEAVE_DESC_GROUP</property><br />
<expression name="keyExpr" type="javascript">row["Leave_Desc"]</expression><br />
<structure name="toc"><br />
<expression name="expressionValue" type="javascript">row["Leave_Desc"]</expression><br />
</structure><br />
<property name="hideDetail">false</property><br />
<header><br />
<row id="146"><br />
<cell id="147"><br />
<label id="101"><br />
<text-property name="text">Tot_Leave</text-property><br />
</label><br />
</cell><br />
<cell id="148"><br />
<label id="103"><br />
<text-property name="text">Leave_Balance</text-property><br />
</label><br />
</cell><br />
<cell id="149"><br />
<label id="105"><br />
<text-property name="text">From_Date</text-property><br />
</label><br />
</cell><br />
<cell id="150"><br />
<label id="107"><br />
<text-property name="text">To_Date</text-property><br />
</label><br />
</cell><br />
<cell id="151"><br />
<label id="109"><br />
<text-property name="text">Leave_Desc</text-property><br />
</label><br />
</cell><br />
</row><br />
</header><br />
<footer><br />
<row id="139"><br />
<cell id="140"/><br />
<cell id="141"/><br />
<cell id="142"/><br />
<cell id="143"/><br />
<cell id="144"/><br />
</row><br />
</footer><br />
</group><br />
<detail><br />
<row id="110"><br />
<cell id="111"><br />
<data id="112"><br />
<property name="resultSetColumn">Tot_Leave</property><br />
</data><br />
</cell><br />
<cell id="113"><br />
<data id="114"><br />
<property name="resultSetColumn">Leave_Balance</property><br />
</data><br />
</cell><br />
<cell id="115"><br />
<data id="116"><br />
<property name="resultSetColumn">From_Date</property><br />
</data><br />
</cell><br />
<cell id="117"><br />
<data id="118"><br />
<property name="resultSetColumn">To_Date</property><br />
</data><br />
</cell><br />
<cell id="119"><br />
<data id="120"><br />
<property name="resultSetColumn">Leave_Desc</property><br />
</data><br />
</cell><br />
</row><br />
</detail><br />
<footer><br />
<row id="121"><br />
<cell id="122"/><br />
<cell id="123"/><br />
<cell id="124"/><br />
<cell id="125"/><br />
<cell id="126"/><br />
</row><br />
</footer><br />
</table><br />
</cell><br />
<cell id="27"><br />
<data id="28"><br />
<property name="resultSetColumn">SALARY</property><br />
</data><br />
</cell><br />
<cell id="29"><br />
<data id="30"><br />
<property name="resultSetColumn">DEPT_ID</property><br />
</data><br />
</cell><br />
<cell id="31"><br />
<data id="32"><br />
<property name="resultSetColumn">JOB_DESC</property><br />
</data><br />
</cell><br />
</row><br />
</detail><br />
<footer><br />
<row id="33"><br />
<cell id="34"/><br />
<cell id="35"/><br />
<cell id="36"/><br />
<cell id="37"/><br />
<cell id="38"/><br />
</row><br />
</footer><br />
</table><br />
</body><br />
</report><br />
<br />
<span class='bbc_underline'><strong class='bbc'>The Sample Handler Class:</strong></span><br />
/**<br />
* <br />
*/<br />
package com.testbirtjavapro.handler;<br />
<br />
import java.sql.ResultSet;<br />
import java.sql.SQLException;<br />
<br />
import org.eclipse.birt.report.engine.api.script.IReportContext;<br />
import org.eclipse.birt.report.engine.api.script.IUpdatableDataSetRow;<br />
import org.eclipse.birt.report.engine.api.script.ScriptException;<br />
import org.eclipse.birt.report.engine.api.script.eventadapter.ScriptedDataSetEventAdapter;<br />
import org.eclipse.birt.report.engine.api.script.instance.IDataSetInstance;<br />
<br />
public class EmpHandler extends ScriptedDataSetEventAdapter {<br />
IReportContext context;<br />
/**<br />
* Sample Code<br />
*/<br />
@Override<
;br />
public boolean fetch(IDataSetInstance dataSet, IUpdatableDataSetRow row){<br />
ResultSet empRs = (ResultSet)context.getGlobalVariable("empRs");<br />
try {<br />
if (null != empRs || empRs.next()){<br />
return false;<br />
}<br />
row.setColumnValue("EMP_ID", empRs.getLong(1));<br />
row.setColumnValue("EMP_NAME", empRs.getString(2));<br />
row.setColumnValue("SALARY", empRs.getLong(1));<br />
row.setColumnValue("DEPT_ID", empRs.getLong(1));<br />
row.setColumnValue("JOB_DESC", empRs.getString(1));<br />
} catch (SQLException e) {<br />
e.printStackTrace();<br />
}catch (Exception e) {<br />
e.printStackTrace();<br />
}<br />
return true;<br />
}<br />
<br />
@Override<
;br />
public void open(IDataSetInstance dataSet) throws ScriptException{<br />
ResultSet empRs = new EmpDAO().fetchAllEmp();<br />
context.setGlobalVariable("empRs", empRs);<br />
}<br />
<br />
@Override<
;br />
public void beforeOpen(IDataSetInstance dataSet, IReportContext context){<br />
this.context = context; <br />
}<br />
<br />
/**<br />
*
@param
args<br />
*/<br />
public static void main(String[] args) {<br />
<br />
}<br />
<br />
}<br />
<br />
/**<br />
* <br />
*/<br />
package com.testbirtjavapro.handler;<br />
<br />
import java.sql.ResultSet;<br />
import java.sql.SQLException;<br />
<br />
import org.eclipse.birt.report.engine.api.script.IReportContext;<br />
import org.eclipse.birt.report.engine.api.script.IUpdatableDataSetRow;<br />
import org.eclipse.birt.report.engine.api.script.ScriptException;<br />
import org.eclipse.birt.report.engine.api.script.eventadapter.ScriptedDataSetEventAdapter;<br />
import org.eclipse.birt.report.engine.api.script.instance.IDataSetInstance;<br />
<br />
public class LeaveHandler extends ScriptedDataSetEventAdapter {<br />
IReportContext context;<br />
/**<br />
* All Code are sample<br />
*/<br />
@Override<
;br />
public boolean fetch(IDataSetInstance dataSet, IUpdatableDataSetRow row){<br />
ResultSet empRs = (ResultSet)context.getGlobalVariable("leaveRs");<br />
try {<br />
if (null != empRs || empRs.next()){<br />
return false;<br />
}<br />
row.setColumnValue("Tot_Leave", empRs.getLong(1));<br />
row.setColumnValue("Leave_Balance", empRs.getString(2));<br />
row.setColumnValue("To_Date", empRs.getDate(3));<br />
row.setColumnValue("To_Date", empRs.getDate(4));<br />
row.setColumnValue("Leave_Desc", empRs.getString(5));<br />
} catch (SQLException e) {<br />
e.printStackTrace();<br />
}catch (Exception e) {<br />
e.printStackTrace();<br />
}<br />
return true;<br />
}<br />
<br />
@Override<
;br />
public void open(IDataSetInstance dataSet) throws ScriptException{<br />
Integer empId = (Integer)dataSet.getInputParameterValue("EMP_ID");<br />
Integer deptId = (Integer)dataSet.getInputParameterValue("DEPT_ID");<br />
ResultSet empRs = new LeaveDAO().fetchLeaveDetails(empId,deptId);<br />
context.setGlobalVariable("leaveRs", empRs);<br />
}<br />
<br />
@Override<
;br />
public void beforeOpen(IDataSetInstance dataSet, IReportContext context){<br />
this.context = context; <br />
}<br />
<br />
/**<br />
*
@param
args<br />
*/<br />
public static void main(String[] args) {<br />
<br />
}<br />
}
kclark
Can you build a simple sample report with data that I can use to test it please?
Pandiyan
Thanks Kclark,<br />
<br />
I have posted sample rptdesign file and 2 handler class.<br />
<br />
The sample rpt file has 2 dataset actually the original requirement has 6 more data set with 6 tables. The EmpDs has main table and all other are inside EmpDs table. The report is getting generated with one subreport, but other subreport data are not displayed on output of the pdf file.<br />
<br />
Note: The data are fetch from DB at runtime in beforeOpen() method if you wants to generate sample code then we can use with ArrayList instead of ResultSet.<br />
<br />
<br />
<br />
<blockquote class='ipsBlockquote' data-author="'kclark'" data-cid="112832" data-time="1356723660" data-date="28 December 2012 - 12:41 PM"><p>
Can you build a simple sample report with data that I can use to test it please?<br /></p></blockquote>