<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5244855510013022364</id><updated>2024-11-08T08:52:52.413-08:00</updated><title type='text'>Jasper Subreporting</title><subtitle type='html'>Jasper Subreporting with dataresource for beginners</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jaspersubreport.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244855510013022364/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://jaspersubreport.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/09215605187988114828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5244855510013022364.post-8589871172019690445</id><published>2012-03-21T07:13:00.000-07:00</published><updated>2012-07-22T19:34:21.263-07:00</updated><title type='text'></title><content type='html'>This is a simple way to create a subreport in jasper reports. Most of the beginners will get the use from it. &lt;br /&gt;
My project is going to be a single page with details of a CV. It will look like below&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv461AZXv7WXn6-GzMFPxzTByZrZSbz0zrThgcKfZc99TJPGe_DJ0jgE6ans_clwZgrDTtA47zrmM1gKSObEhYF2CF8X4kbiIW7TbrSJCG_QlfmUYIVcfhin9sxWumU1cAr_P0sI6v59lE/s1600/San+Buddy+CV.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv461AZXv7WXn6-GzMFPxzTByZrZSbz0zrThgcKfZc99TJPGe_DJ0jgE6ans_clwZgrDTtA47zrmM1gKSObEhYF2CF8X4kbiIW7TbrSJCG_QlfmUYIVcfhin9sxWumU1cAr_P0sI6v59lE/s640/San+Buddy+CV.png&quot; width=&quot;594&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Before all these, the structure of data resources in parameters of the jasper report is going to be as follow &lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_L2bPk_11XPrDwbBScEtSMY5AzhR6tf02swB1EtSgO_0NZZCcEjdFbRNzBcsm8SvETA1ljglnkGCEtfdB-VakGyAY9dZF7UXO2tnlqtt6cFnDgZkAaE3FklUkqvo7UkTOIF_bZKuK8u46/s1600/chart.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;497&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_L2bPk_11XPrDwbBScEtSMY5AzhR6tf02swB1EtSgO_0NZZCcEjdFbRNzBcsm8SvETA1ljglnkGCEtfdB-VakGyAY9dZF7UXO2tnlqtt6cFnDgZkAaE3FklUkqvo7UkTOIF_bZKuK8u46/s640/chart.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;left&quot; class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;/div&gt;
&amp;nbsp;Im not using data models to pass these data, so making model classes to this will have no use. The output can be get from following java code.&lt;br /&gt;
&lt;br /&gt;
I used a main method just show how its done.&lt;br /&gt;
&lt;br /&gt;
public static void main(String[] args) {&lt;br /&gt;
try {&lt;br /&gt;
Object[] cols={&quot;Subject&quot;, &quot;Result&quot;};  &lt;br /&gt;
DefaultTableModel dtm=new DefaultTableModel(cols, 0);&lt;br /&gt;
dtm.addRow(new Object[]{&quot;Mathematics&quot;,&quot;B&quot;});&lt;br /&gt;
dtm.addRow(new Object[]{&quot;Physics&quot;,&quot;A&quot;});&lt;br /&gt;
dtm.addRow(new Object[]{&quot;Chemistry&quot;,&quot;B&quot;});&lt;br /&gt;
&lt;br /&gt;
JRTableModelDataSource jrtAL = new JRTableModelDataSource(dtm); //Add DefaultTableModel to the //JRTableModel&lt;br /&gt;
&lt;br /&gt;
Map SUB_DATA1=new HashMap(); //This will hold A/L Data&lt;br /&gt;
SUB_DATA1.put(&quot;jrtAL&quot;, jrtAL);&lt;br /&gt;
dtm=new DefaultTableModel(cols, 0);&lt;br /&gt;
dtm.addRow(new Object[]{&quot;Mathematics&quot;,&quot;B&quot;});&lt;br /&gt;
dtm.addRow(new Object[]{&quot;Physics&quot;,&quot;A&quot;});&lt;br /&gt;
dtm.addRow(new Object[]{&quot;Chemistry&quot;,&quot;B&quot;});&lt;br /&gt;
&lt;br /&gt;
JRTableModelDataSource jrtOL = new JRTableModelDataSource(dtm);&lt;br /&gt;
Map SUB_DATA2=new HashMap();&lt;br /&gt;
SUB_DATA2.put(&quot;jrtOL&quot;, jrtOL);&lt;br /&gt;
List data=new ArrayList();&lt;br /&gt;
Map dataMap=new HashMap();&lt;br /&gt;
dataMap.put(&quot;topic&quot;, &quot;Web Developing\nCertificate&quot;);&lt;br /&gt;
dataMap.put(&quot;desc&quot;, &quot;Diploma in Web Developing\n(Global Solution Technologies) &quot;);&lt;br /&gt;
data.add(dataMap);&lt;br /&gt;
dataMap=new HashMap();&lt;br /&gt;
dataMap.put(&quot;topic&quot;, &quot;Computer Certificates&quot;);&lt;br /&gt;
dataMap.put(&quot;desc&quot;, &quot;Diploma in computer Technology\n(Microtech Computer Systems) &quot;);&lt;br /&gt;
data.add(dataMap);&lt;br /&gt;
&lt;br /&gt;
JRMapCollectionDataSource subDS=new JRMapCollectionDataSource(data);&lt;br /&gt;
&lt;br /&gt;
Map SUB_DATA3=new HashMap();&lt;br /&gt;
SUB_DATA3.put(&quot;subDS&quot;, subDS);&lt;br /&gt;
&lt;br /&gt;
String repSource = &quot;./src/report/CVReport.jrxml&quot;;&lt;br /&gt;
Map&amp;lt;String, Object&amp;gt; param = new HashMap&amp;lt;String, Object&amp;gt;();&lt;br /&gt;
param.put(&quot;SUB_DATA1&quot;, SUB_DATA1);&lt;br /&gt;
param.put(&quot;SUB_DATA2&quot;, SUB_DATA2);&lt;br /&gt;
param.put(&quot;SUB_DATA3&quot;, SUB_DATA3);&lt;br /&gt;
///////////////////////////////////////////////////////&lt;br /&gt;
Map simpleMasterMap = new HashMap();&lt;br /&gt;
String name=&quot;San Buddy CV&quot;;&lt;br /&gt;
String address=&quot;No 1, Somewhere,\nSomewhere &quot;;&lt;br /&gt;
String resTel=&quot;091-1234567&quot;;&lt;br /&gt;
String phone=&quot;071-6204835&quot;;&lt;br /&gt;
String email=&quot;&lt;a href=&quot;mailto:somebody@gmail.com&quot;&gt;somebody@gmail.com&lt;/a&gt;&quot;;&lt;br /&gt;
String profile=&quot;To excel in the field of web developing relating to business and academic industry, &quot;&lt;br /&gt;
+ &quot;with highly proven leadership skills involving developing projects, managing projects and ability to&quot;&lt;br /&gt;
+ &quot; work with own initiative or and as part of team, is now seeking a profession in the field of web &quot;&lt;br /&gt;
+ &quot;application development and willing to dedicate myself strictly to adhere the employment ethics and to&quot;&lt;br /&gt;
+ &quot; thrive my best for the respective company’s success. &quot;;&lt;br /&gt;
&lt;br /&gt;
simpleMasterMap.put(&quot;name&quot;, name);&lt;br /&gt;
simpleMasterMap.put(&quot;address&quot;, address);&lt;br /&gt;
simpleMasterMap.put(&quot;resTel&quot;, resTel);&lt;br /&gt;
simpleMasterMap.put(&quot;phone&quot;, phone);&lt;br /&gt;
simpleMasterMap.put(&quot;email&quot;, email);&lt;br /&gt;
simpleMasterMap.put(&quot;profile&quot;, profile);&lt;br /&gt;
&lt;br /&gt;
List simpleMasterList = new ArrayList();&lt;br /&gt;
simpleMasterList.add(simpleMasterMap);&lt;br /&gt;
JRMapCollectionDataSource simpleDS = new JRMapCollectionDataSource(simpleMasterList);&lt;br /&gt;
&lt;br /&gt;
JasperReport jr = JasperCompileManager.compileReport(repSource);&lt;br /&gt;
JasperPrint jp = JasperFillManager.fillReport(jr, param, simpleDS);&lt;br /&gt;
JasperViewer.viewReport(jp);&lt;br /&gt;
} catch (JRException ex) {&lt;br /&gt;
JOptionPane.showMessageDialog(null, &quot;Jasper Error: \n&quot;+ex.getMessage());&lt;br /&gt;
}&lt;br /&gt;
}    &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
With this jasper report produced a report like this.. &lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwqM64y8fdNV0bw8qHKpKus2RoSjCfUDdrchFqWkUh_QqFeaW7yeeJyDauVhuPrCZEdrxIU0o7efhsFtXx2baFvS91flUcM2p4jX-PRmKjUKKpltTEa2n3lIsZFNPDKSXJu9j9Jz0baxr3/s1600/jasper.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwqM64y8fdNV0bw8qHKpKus2RoSjCfUDdrchFqWkUh_QqFeaW7yeeJyDauVhuPrCZEdrxIU0o7efhsFtXx2baFvS91flUcM2p4jX-PRmKjUKKpltTEa2n3lIsZFNPDKSXJu9j9Jz0baxr3/s640/jasper.png&quot; width=&quot;494&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Here &lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Advanced Level&lt;/li&gt;
&lt;li&gt;Ordinary Level&lt;/li&gt;
&lt;li&gt;Extra Educational Qualifications&lt;/li&gt;
&lt;/ol&gt;
were made with subreports. &lt;br /&gt;
This is how it looked like in IReport 4.5&lt;br /&gt;
&lt;u&gt; CVReport.jrxml&lt;/u&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxsS5hYRTXI7QL6ToxYi1s1MW-EEzmI56RQRd-Ga6XUPvuLuvfqVWwqnfRIsepsN2CTv6O3FGLxCqt-REC6jZlkbsZ5nwC7pAmuwKhHKx8kpQRcbscwllmIOBAPME82ZSnt3wYLaJCove4/s1600/CVMain.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxsS5hYRTXI7QL6ToxYi1s1MW-EEzmI56RQRd-Ga6XUPvuLuvfqVWwqnfRIsepsN2CTv6O3FGLxCqt-REC6jZlkbsZ5nwC7pAmuwKhHKx8kpQRcbscwllmIOBAPME82ZSnt3wYLaJCove4/s320/CVMain.png&quot; width=&quot;278&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;u&gt;CVSubOL.jrxml&lt;/u&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicnp0nttAKY5UzqKU9qBH2FH8f1Y9SPw8ngFoDD8eowljgwbbUuaxhLjQuUF2zkb6t6gmSbHSlcuKE7rahggLtkDejx5L6H7oRfHt1jxeKn69plEF-g6Jz8I4rXkJQ-422eyDPZnB8GHtY/s1600/CVSubOL.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;37&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicnp0nttAKY5UzqKU9qBH2FH8f1Y9SPw8ngFoDD8eowljgwbbUuaxhLjQuUF2zkb6t6gmSbHSlcuKE7rahggLtkDejx5L6H7oRfHt1jxeKn69plEF-g6Jz8I4rXkJQ-422eyDPZnB8GHtY/s320/CVSubOL.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;u&gt;CVSub3.jrxml&lt;/u&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp_oM1x6Wz8GpDjvZRT1GEquz1vWzQHpbvUDdz0A2Q0bbYAO5OLSLlnvpA0pRcvhw_dGcc4-XBEo1QD3R3-K-OQ47sxz5JTK9rzrsahcuL_-6iKBQl3_RPvdumWdSTkFiPt32B7v9oxMZY/s1600/CVSub3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;35&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp_oM1x6Wz8GpDjvZRT1GEquz1vWzQHpbvUDdz0A2Q0bbYAO5OLSLlnvpA0pRcvhw_dGcc4-XBEo1QD3R3-K-OQ47sxz5JTK9rzrsahcuL_-6iKBQl3_RPvdumWdSTkFiPt32B7v9oxMZY/s320/CVSub3.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;u&gt;CVExtra.jrxml&lt;/u&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5i3wVXuM5zIP32MpXLe98n7biU0NNtR4-eOYwaBrXzGUpGvUVGe7Xymip3-5NFyQOdBdXF4NIiOQi-k0pd0yVuXCNaTOzaml2E95eD_b1GPArsOyaNzTVQfcV1_s-h2TUruZFIEXiXGLV/s1600/CVExtra.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;37&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5i3wVXuM5zIP32MpXLe98n7biU0NNtR4-eOYwaBrXzGUpGvUVGe7Xymip3-5NFyQOdBdXF4NIiOQi-k0pd0yVuXCNaTOzaml2E95eD_b1GPArsOyaNzTVQfcV1_s-h2TUruZFIEXiXGLV/s320/CVExtra.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
In the &lt;u&gt;&lt;strong&gt;CVReport&lt;/strong&gt;&lt;/u&gt;, all details have fields that were passed in main method using &quot;simpleDS&quot;  JRMapCollectionDataSource.&lt;br /&gt;
You must create three parameters with SUB_DATA1, SUB_DATA2 and SUB_DATA3 each having parameter class of java.util.HashMap pass dataresources to subreports. You can edit this in Properties tab after selecting parameter created in the report inspector or can write following code in jrxml &lt;br /&gt;
&lt;br /&gt;
&amp;lt;parameter name=&quot;SUB_DATA1&quot; class=&quot;java.util.HashMap&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&quot;SUB_DATA2&quot; class=&quot;java.util.HashMap&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&quot;SUB_DATA3&quot; class=&quot;java.util.HashMap&quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
I have used three detail bands to insert subreports. You can add subreports by drag and dropping a sub report to the editing report or by editing XML. Subreport is also a normal jasper report and only difference it makes is, we use it as a sub report to a main report. &lt;br /&gt;
Here is the code of the subreport code in the main report.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;band height=&quot;85&quot; splitType=&quot;Stretch&quot;&amp;gt;&lt;br /&gt;
&amp;lt;subreport&amp;gt;&lt;br /&gt;
&amp;lt;reportElement x=&quot;0&quot; y=&quot;22&quot; width=&quot;555&quot; height=&quot;47&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;subreportParameter name=&quot;id1&quot;&amp;gt;&lt;br /&gt;
&amp;lt;subreportParameterExpression&amp;gt;&amp;lt;![CDATA[$P{SUB_DATA1}.get(&quot;jrtAL&quot;)]]&amp;gt;&amp;lt;/subreportParameterExpression&amp;gt;&lt;br /&gt;
&amp;lt;/subreportParameter&amp;gt;&lt;br /&gt;
&amp;lt;dataSourceExpression&amp;gt;&amp;lt;![CDATA[$P{SUB_DATA1}.get(&quot;jrtAL&quot;)]]&amp;gt;&amp;lt;/dataSourceExpression&amp;gt;&lt;br /&gt;
&amp;lt;subreportExpression&amp;gt;&amp;lt;![CDATA[$P{SUBREPORT_DIR} + &quot;CVSub3.jasper&quot;]]&amp;gt;&amp;lt;/subreportExpression&amp;gt;&lt;br /&gt;
&amp;lt;/subreport&amp;gt;&lt;br /&gt;
&amp;lt;staticText&amp;gt;&lt;br /&gt;
&amp;lt;reportElement x=&quot;19&quot; y=&quot;2&quot; width=&quot;163&quot; height=&quot;20&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;textElement&amp;gt;&lt;br /&gt;
&amp;lt;font fontName=&quot;Calibri&quot; size=&quot;15&quot; isBold=&quot;true&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/textElement&amp;gt;&lt;br /&gt;
&amp;lt;text&amp;gt;&amp;lt;![CDATA[Advanced Level (2011)]]&amp;gt;&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/staticText&amp;gt;&lt;br /&gt;
&amp;lt;/band&amp;gt;&lt;br /&gt;
&lt;br /&gt;
I have used SUB_DATA1 jrtAL dataresource for first CVSub3 subreport. As SUB_DATA1 is a HashMap class parameter, you can use get(String) method to get a object.&lt;br /&gt;
&lt;br /&gt;
In &lt;u&gt;&lt;strong&gt;CVSub3&lt;/strong&gt;&lt;/u&gt;, I have used two fields &quot;Subject&quot; and  &quot;Result&quot; to print the table in detail band. Simply it will do the work of  sub reporting. &lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;*&lt;b&gt;You must change the language of the main report to groovy and subreport language to java. Otherwise it will bring out a compile error. &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
Likewise you can create other two subreports and little change that I have done in SUB_DATA3 wont affect it. There, I have used a JRMapCollectionDataSource &quot;subDS&quot; and you can get details using two fields &quot;desc&quot; and &quot;topic&quot;.  &lt;br /&gt;
&lt;br /&gt;
Other two subreport declarations are below&lt;br /&gt;
&amp;lt;band height=&quot;83&quot;&amp;gt;&lt;br /&gt;
&amp;lt;subreport&amp;gt;&lt;br /&gt;
&amp;lt;reportElement x=&quot;0&quot; y=&quot;20&quot; width=&quot;555&quot; height=&quot;48&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;subreportParameter name=&quot;id2&quot;&amp;gt;&lt;br /&gt;
&amp;lt;subreportParameterExpression&amp;gt;&amp;lt;![CDATA[$P{SUB_DATA2}.get(&quot;jrtOL&quot;)]]&amp;gt;&amp;lt;/subreportParameterExpression&amp;gt;&lt;br /&gt;
&amp;lt;/subreportParameter&amp;gt;&lt;br /&gt;
&amp;lt;dataSourceExpression&amp;gt;&amp;lt;![CDATA[$P{SUB_DATA2}.get(&quot;jrtOL&quot;)]]&amp;gt;&amp;lt;/dataSourceExpression&amp;gt;&lt;br /&gt;
&amp;lt;subreportExpression&amp;gt;&amp;lt;![CDATA[$P{SUBREPORT_DIR} + &quot;CVSubOL.jasper&quot;]]&amp;gt;&amp;lt;/subreportExpression&amp;gt;&lt;br /&gt;
&amp;lt;/subreport&amp;gt;&lt;br /&gt;
&amp;lt;staticText&amp;gt;&lt;br /&gt;
&amp;lt;reportElement x=&quot;19&quot; y=&quot;0&quot; width=&quot;163&quot; height=&quot;20&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;textElement&amp;gt;&lt;br /&gt;
&amp;lt;font fontName=&quot;Calibri&quot; size=&quot;15&quot; isBold=&quot;true&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/textElement&amp;gt;&lt;br /&gt;
&amp;lt;text&amp;gt;&amp;lt;![CDATA[Ordinary Level (2008)]]&amp;gt;&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/staticText&amp;gt;&lt;br /&gt;
&amp;lt;/band&amp;gt;&lt;br /&gt;
////////////////////////////////////////////////////&lt;br /&gt;
&amp;lt;band height=&quot;86&quot;&amp;gt;&lt;br /&gt;
&amp;lt;subreport&amp;gt;&lt;br /&gt;
&amp;lt;reportElement x=&quot;0&quot; y=&quot;26&quot; width=&quot;555&quot; height=&quot;60&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;subreportParameter name=&quot;id2&quot;&amp;gt;&lt;br /&gt;
&amp;lt;subreportParameterExpression&amp;gt;&amp;lt;![CDATA[$P{SUB_DATA3}.get(&quot;subDS&quot;)]]&amp;gt;&amp;lt;/subreportParameterExpression&amp;gt;&lt;br /&gt;
&amp;lt;/subreportParameter&amp;gt;&lt;br /&gt;
&amp;lt;dataSourceExpression&amp;gt;&amp;lt;![CDATA[$P{SUB_DATA3}.get(&quot;subDS&quot;)]]&amp;gt;&amp;lt;/dataSourceExpression&amp;gt;&lt;br /&gt;
&amp;lt;subreportExpression&amp;gt;&amp;lt;![CDATA[$P{SUBREPORT_DIR} + &quot;CVExtra.jasper&quot;]]&amp;gt;&amp;lt;/subreportExpression&amp;gt;&lt;br /&gt;
&amp;lt;/subreport&amp;gt;&lt;br /&gt;
&amp;lt;staticText&amp;gt;&lt;br /&gt;
&amp;lt;reportElement x=&quot;19&quot; y=&quot;0&quot; width=&quot;276&quot; height=&quot;26&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;textElement&amp;gt;&lt;br /&gt;
&amp;lt;font fontName=&quot;Calibri&quot; size=&quot;15&quot; isBold=&quot;true&quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/textElement&amp;gt;&lt;br /&gt;
&amp;lt;text&amp;gt;&amp;lt;![CDATA[Extra Educational Qualifications]]&amp;gt;&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/staticText&amp;gt;&lt;br /&gt;
&amp;lt;/band&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaspersubreport.blogspot.com/feeds/8589871172019690445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jaspersubreport.blogspot.com/2012/03/this-is-simple-way-to-create-subreport.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244855510013022364/posts/default/8589871172019690445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244855510013022364/posts/default/8589871172019690445'/><link rel='alternate' type='text/html' href='http://jaspersubreport.blogspot.com/2012/03/this-is-simple-way-to-create-subreport.html' title=''/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/09215605187988114828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv461AZXv7WXn6-GzMFPxzTByZrZSbz0zrThgcKfZc99TJPGe_DJ0jgE6ans_clwZgrDTtA47zrmM1gKSObEhYF2CF8X4kbiIW7TbrSJCG_QlfmUYIVcfhin9sxWumU1cAr_P0sI6v59lE/s72-c/San+Buddy+CV.png" height="72" width="72"/><thr:total>3</thr:total></entry></feed>