Index: /trunk/grails-app/controllers/ReportController.groovy
===================================================================
--- /trunk/grails-app/controllers/ReportController.groovy	(revision 544)
+++ /trunk/grails-app/controllers/ReportController.groovy	(revision 545)
@@ -1,3 +1,4 @@
 import org.codehaus.groovy.grails.plugins.springsecurity.Secured
+import org.codehaus.groovy.grails.commons.ConfigurationHolder
 import org.springframework.web.servlet.support.RequestContextUtils as RCU
 
@@ -14,32 +15,69 @@
 
     def templatePortrait = {
-        params.max = Math.min( params.max ? params.max.toInteger() : 10,  100)
+
+        params.startDate = new Date()
+        params.endDate = new Date()
 
         params.reportTitle = "Template Report (Portrait)"
+        params.logoUrl = grailsApplication.mainContext.getResource('images/logo.png').getURL()
         params.currentUser = authService.currentUser
+        params.startDateString = g.formatDate(format: "EEE, dd-MMM-yyyy", date: params.startDate)
+        params.endDateString = g.formatDate(format: "EEE, dd-MMM-yyyy", date: params.endDate)
+
         def dataModel = createTemplateData()
 
-        chain(controller:'jasper', action:'index', model:[data: dataModel], params:params)
-    }
+        // Jasper plugin controller expects data to be a Collection.
+        chain(controller:'jasper', action:'index', model:[data: [dataModel]], params:params)
+
+    } // templatePortrait
 
     def templateLandscape = {
-        params.max = Math.min( params.max ? params.max.toInteger() : 10,  100)
+
+        params.startDate = new Date()
+        params.endDate = new Date()
 
         params.reportTitle = "Template Report (Landscape)"
+        params.logoUrl = grailsApplication.mainContext.getResource('images/logo.png').getURL()
         params.currentUser = authService.currentUser
+        params.startDateString = g.formatDate(format: "EEE, dd-MMM-yyyy", date: params.startDate)
+        params.endDateString = g.formatDate(format: "EEE, dd-MMM-yyyy", date: params.endDate)
+
         def dataModel = createTemplateData()
 
-        chain(controller:'jasper', action:'index', model:[data: dataModel], params:params)
-    }
+        // Jasper plugin controller expects data to be a Collection.
+        chain(controller:'jasper', action:'index', model:[data: [dataModel]], params:params)
+
+    } // templateLandscape
 
     private createTemplateData() {
-        def dataModel = []
+
+        def result = [:]
+        result.summaryOfCalculationMethod = "Summary string of the calculations performed."
+        result.dataList = []
         for(i in 1..5) {
-            def data = [:]
-            data.description = "Data description " + i.toString()
-            dataModel.add(data)
+            def dataDetails = [:]
+            dataDetails.description = "Data description " + i.toString()
+            result.dataList << dataDetails
         }
-        return dataModel
-    }
+
+        // Success.
+        return result
+
+    } // createTemplateData
+
+    def downloadTemplate = {
+
+        // params.fileName is not used directly to negate any security issues..
+        def fileName = (params.fileName == 'templateLandscape.jrxml') ? 'templateLandscape.jrxml' : 'templatePortrait.jrxml'
+        def f = grailsApplication.mainContext.getResource("reports/${fileName}").getFile()
+        if(f.isFile()) {
+            response.contentType = ConfigurationHolder.config.grails.mime.types["text"]
+            response.setHeader("Content-disposition", "attachment; filename=${fileName}")
+            render f.text
+        }
+        else
+            render(status:404, text: "File Not Found: ${f}")
+
+    } // downLoadTemplate
 
     def reactiveRatio = {
@@ -51,8 +89,10 @@
         params.endDateString = g.formatDate(format: "EEE, dd-MMM-yyyy", date: params.endDate)
 
-        def dataModel = [taskReportService.getReactiveRatio(params, RCU.getLocale(request))]
+        def dataModel = taskReportService.getReactiveRatio(params, RCU.getLocale(request))
 
-        chain(controller:'jasper', action:'index', model:[data: dataModel], params:params)
-    }
+        // Jasper plugin controller expects data to be a Collection.
+        chain(controller:'jasper', action:'index', model:[data: [dataModel]], params:params)
+
+    } // reactiveRatio
 
     def immediateCallouts = {
@@ -64,10 +104,10 @@
         params.endDateString = g.formatDate(format: "EEE, dd-MMM-yyyy", date: params.endDate)
 
-        def dataModel = [taskReportService.getImmediateCallouts(params, RCU.getLocale(request))]
+        def dataModel = taskReportService.getImmediateCallouts(params, RCU.getLocale(request))
 
-//         render dataModel
-        chain(controller:'jasper', action:'index', model:[data: dataModel], params:params)
+        // Jasper plugin controller expects data to be a Collection.
+        chain(controller:'jasper', action:'index', model:[data: [dataModel]], params:params)
 
-    }
+    } // immediateCallouts
 
 } // end of class.
Index: /trunk/grails-app/services/TaskReportService.groovy
===================================================================
--- /trunk/grails-app/services/TaskReportService.groovy	(revision 544)
+++ /trunk/grails-app/services/TaskReportService.groovy	(revision 545)
@@ -1,3 +1,2 @@
-import grails.orm.PagedResultList
 
 /**
@@ -10,5 +9,4 @@
     def authService
     def dateUtilService
-    def sessionFactory
 //     def messageSource
 
Index: /trunk/grails-app/views/appCore/start.gsp
===================================================================
--- /trunk/grails-app/views/appCore/start.gsp	(revision 544)
+++ /trunk/grails-app/views/appCore/start.gsp	(revision 545)
@@ -127,4 +127,7 @@
                                                                             name="Template (Portrait)"
                                                                             format="PDF, XLS"/>
+                                            <g:link controller="report" action="downloadTemplate" params="[fileName: 'templatePortrait.jrxml']">
+                                                Download
+                                            </g:link>
                                             <br />
                                             <g:jasperReport controller="report"
@@ -133,4 +136,7 @@
                                                                             name="Template (Landscape)"
                                                                             format="PDF, XLS"/>
+                                            <g:link controller="report" action="downloadTemplate" params="[fileName: 'templateLandscape.jrxml']">
+                                                Download
+                                            </g:link>
                                             <br />
                                         </td>
Index: /trunk/web-app/reports/immediateCallouts.jrxml
===================================================================
--- /trunk/web-app/reports/immediateCallouts.jrxml	(revision 544)
+++ /trunk/web-app/reports/immediateCallouts.jrxml	(revision 545)
@@ -80,5 +80,5 @@
 	<parameter name="startDateString" class="java.lang.String"/>
 	<parameter name="endDateString" class="java.lang.String"/>
-	<queryString language="hql">
+	<queryString language="SQL">
 		<![CDATA[]]>
 	</queryString>
Index: /trunk/web-app/reports/templateLandscape.jrxml
===================================================================
--- /trunk/web-app/reports/templateLandscape.jrxml	(revision 544)
+++ /trunk/web-app/reports/templateLandscape.jrxml	(revision 545)
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="name" language="groovy" pageWidth="842" pageHeight="595" orientation="Landscape" whenNoDataType="NoDataSection" columnWidth="782" leftMargin="30" rightMargin="30" topMargin="20" bottomMargin="20">
+<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="reportName" language="groovy" pageWidth="842" pageHeight="595" orientation="Landscape" whenNoDataType="NoDataSection" columnWidth="782" leftMargin="30" rightMargin="30" topMargin="20" bottomMargin="20" isSummaryNewPage="true" isSummaryWithPageHeaderAndFooter="true">
 	<property name="ireport.scriptlethandling" value="0"/>
 	<property name="ireport.encoding" value="UTF-8"/>
@@ -6,77 +6,120 @@
 	<property name="ireport.x" value="0"/>
 	<property name="ireport.y" value="0"/>
+	<import value="net.sf.jasperreports.engine.*"/>
 	<import value="java.util.*"/>
-	<import value="net.sf.jasperreports.engine.*"/>
 	<import value="net.sf.jasperreports.engine.data.*"/>
-	<style name="table" isDefault="false">
-		<box>
+	<style name="Crosstab Data Text" isDefault="false" hAlign="Center"/>
+	<style name="table" isDefault="false" fill="Solid" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="0.0" lineColor="#000000"/>
+			<topPen lineWidth="0.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="0.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<style name="table_TH" isDefault="false" mode="Opaque" backcolor="#C7C7C7" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
 			<pen lineWidth="1.0" lineColor="#000000"/>
-		</box>
-	</style>
-	<style name="table_TH" isDefault="false" mode="Opaque" backcolor="#F0F8FF">
-		<box>
-			<pen lineWidth="0.5" lineColor="#000000"/>
-		</box>
-	</style>
-	<style name="table_CH" isDefault="false" mode="Opaque" backcolor="#BFE1FF">
-		<box>
-			<pen lineWidth="0.5" lineColor="#000000"/>
-		</box>
-	</style>
-	<style name="table_TD" isDefault="false" mode="Opaque" backcolor="#FFFFFF">
-		<box>
-			<pen lineWidth="0.5" lineColor="#000000"/>
-		</box>
-	</style>
-	<subDataset name="dataset1"/>
-	<subDataset name="Table Dataset 1"/>
+			<topPen lineWidth="1.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<style name="table_CH" isDefault="false" mode="Opaque" backcolor="#FFFFFF" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="1.0" lineColor="#000000"/>
+			<topPen lineWidth="0.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<style name="table_TD" isDefault="false" mode="Opaque" backcolor="#FFFFFF" fontSize="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="1.0" lineColor="#000000"/>
+			<topPen lineWidth="1.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+		<conditionalStyle>
+			<conditionExpression><![CDATA[new Boolean($V{REPORT_COUNT}.intValue()%2==0)]]></conditionExpression>
+			<style isDefault="false" style="table_TD" backcolor="#F7F7F7"/>
+		</conditionalStyle>
+	</style>
+	<style name="table_CF" isDefault="false" mode="Opaque" backcolor="#EDEDED" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="1.0"/>
+			<topPen lineWidth="1.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<subDataset name="dataset1">
+		<field name="description" class="java.lang.String"/>
+	</subDataset>
 	<parameter name="reportTitle" class="java.lang.String"/>
 	<parameter name="currentUser" class="java.lang.String"/>
-	<field name="description" class="java.lang.String"/>
+	<parameter name="logoUrl" class="java.lang.String"/>
+	<parameter name="startDateString" class="java.lang.String"/>
+	<parameter name="endDateString" class="java.lang.String"/>
+	<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
+		<defaultValueExpression><![CDATA["C:\\Documents and Settings\\kromhoutg\\My Documents\\reports\\"]]></defaultValueExpression>
+	</parameter>
+	<queryString language="SQL">
+		<![CDATA[]]>
+	</queryString>
+	<field name="summaryOfCalculationMethod" class="java.lang.String"/>
+	<field name="dataList" class="java.util.List"/>
 	<background>
 		<band splitType="Stretch"/>
 	</background>
 	<pageHeader>
-		<band height="35" splitType="Stretch">
-			<textField>
-				<reportElement key="staticText-1" x="0" y="0" width="782" height="35"/>
-				<textElement textAlignment="Center" markup="none">
+		<band height="121" splitType="Stretch">
+			<textField>
+				<reportElement key="staticText-1" x="0" y="57" width="340" height="30"/>
+				<textElement textAlignment="Center" verticalAlignment="Top" markup="none">
 					<font size="20"/>
 				</textElement>
 				<textFieldExpression class="java.lang.String"><![CDATA[$P{reportTitle}]]></textFieldExpression>
+			</textField>
+			<image>
+				<reportElement x="0" y="0" width="340" height="57"/>
+				<imageExpression class="java.net.URL"><![CDATA[new URL($P{logoUrl})]]></imageExpression>
+			</image>
+			<textField pattern="dd-MMM-yyyy" isBlankWhenNull="true">
+				<reportElement x="0" y="87" width="340" height="20"/>
+				<textElement textAlignment="Center" verticalAlignment="Middle" markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA[$P{startDateString}+" to "+$P{endDateString}]]></textFieldExpression>
 			</textField>
 		</band>
 	</pageHeader>
 	<columnHeader>
-		<band height="28" splitType="Stretch">
-			<textField>
-				<reportElement x="341" y="0" width="100" height="20"/>
-				<textElement textAlignment="Center"/>
-				<textFieldExpression class="java.lang.String"><![CDATA["Column Header"]]></textFieldExpression>
-			</textField>
-		</band>
+		<band splitType="Stretch"/>
 	</columnHeader>
 	<detail>
-		<band height="113" splitType="Stretch">
-			<textField>
-				<reportElement x="100" y="0" width="182" height="20"/>
-				<textElement/>
-				<textFieldExpression class="java.lang.String"><![CDATA[$F{description}]]></textFieldExpression>
-			</textField>
-			<textField>
-				<reportElement x="0" y="0" width="100" height="20"/>
-				<textElement markup="none"/>
-				<textFieldExpression class="java.lang.String"><![CDATA["Description: "]]></textFieldExpression>
-			</textField>
+		<band height="268" splitType="Stretch">
+			<componentElement>
+				<reportElement x="0" y="0" width="662" height="26"/>
+				<jr:list xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" printOrder="Vertical">
+					<datasetRun subDataset="dataset1">
+						<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{dataList})]]></dataSourceExpression>
+					</datasetRun>
+					<jr:listContents height="26" width="662">
+						<textField>
+							<reportElement x="0" y="0" width="400" height="20"/>
+							<textElement/>
+							<textFieldExpression class="java.lang.String"><![CDATA[$F{description}]]></textFieldExpression>
+						</textField>
+					</jr:listContents>
+				</jr:list>
+			</componentElement>
 		</band>
 	</detail>
 	<columnFooter>
-		<band height="27" splitType="Stretch">
-			<textField>
-				<reportElement x="341" y="7" width="100" height="20"/>
-				<textElement textAlignment="Center"/>
-				<textFieldExpression class="java.lang.String"><![CDATA["Column Footer"]]></textFieldExpression>
-			</textField>
-		</band>
+		<band splitType="Stretch"/>
 	</columnFooter>
 	<pageFooter>
@@ -88,10 +131,10 @@
 			</textField>
 			<textField>
-				<reportElement x="662" y="0" width="80" height="20"/>
+				<reportElement x="662" y="20" width="80" height="20"/>
 				<textElement textAlignment="Right"/>
 				<textFieldExpression class="java.lang.String"><![CDATA["Page "+$V{PAGE_NUMBER}+" of"]]></textFieldExpression>
 			</textField>
 			<textField evaluationTime="Report">
-				<reportElement x="742" y="0" width="40" height="20"/>
+				<reportElement x="742" y="20" width="40" height="20"/>
 				<textElement/>
 				<textFieldExpression class="java.lang.String"><![CDATA[" " + $V{PAGE_NUMBER}]]></textFieldExpression>
@@ -114,4 +157,54 @@
 		</band>
 	</pageFooter>
+	<lastPageFooter>
+		<band height="40">
+			<textField evaluationTime="Report">
+				<reportElement x="742" y="20" width="40" height="20"/>
+				<textElement/>
+				<textFieldExpression class="java.lang.String"><![CDATA[" " + $V{PAGE_NUMBER}]]></textFieldExpression>
+			</textField>
+			<textField pattern="dd-MMM-yyyy">
+				<reportElement x="82" y="0" width="200" height="20"/>
+				<textElement/>
+				<textFieldExpression class="java.util.Date"><![CDATA[new java.util.Date()]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="0" y="0" width="82" height="20"/>
+				<textElement markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA["Generated: "]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="0" y="20" width="82" height="20"/>
+				<textElement markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA["By: "]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="82" y="20" width="200" height="20"/>
+				<textElement markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA[$P{currentUser}]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="662" y="20" width="80" height="20"/>
+				<textElement textAlignment="Right"/>
+				<textFieldExpression class="java.lang.String"><![CDATA["Page "+$V{PAGE_NUMBER}+" of"]]></textFieldExpression>
+			</textField>
+		</band>
+	</lastPageFooter>
+	<summary>
+		<band height="369">
+			<textField>
+				<reportElement key="staticText-1" x="221" y="12" width="340" height="30"/>
+				<textElement textAlignment="Center" verticalAlignment="Top" markup="none">
+					<font size="20"/>
+				</textElement>
+				<textFieldExpression class="java.lang.String"><![CDATA["Summary of Calculation Method"]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="0" y="50" width="782" height="311"/>
+				<textElement/>
+				<textFieldExpression class="java.lang.String"><![CDATA[$F{summaryOfCalculationMethod}]]></textFieldExpression>
+			</textField>
+		</band>
+	</summary>
 	<noData>
 		<band height="85" splitType="Stretch">
Index: /trunk/web-app/reports/templatePortrait.jrxml
===================================================================
--- /trunk/web-app/reports/templatePortrait.jrxml	(revision 544)
+++ /trunk/web-app/reports/templatePortrait.jrxml	(revision 545)
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="name" language="groovy" pageWidth="842" pageHeight="595" orientation="Landscape" whenNoDataType="NoDataSection" columnWidth="782" leftMargin="30" rightMargin="30" topMargin="20" bottomMargin="20">
+<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="reportName" language="groovy" pageWidth="595" pageHeight="842" whenNoDataType="NoDataSection" columnWidth="535" leftMargin="30" rightMargin="30" topMargin="20" bottomMargin="20" isSummaryNewPage="true" isSummaryWithPageHeaderAndFooter="true">
 	<property name="ireport.scriptlethandling" value="0"/>
 	<property name="ireport.encoding" value="UTF-8"/>
@@ -6,77 +6,120 @@
 	<property name="ireport.x" value="0"/>
 	<property name="ireport.y" value="0"/>
+	<import value="net.sf.jasperreports.engine.*"/>
 	<import value="java.util.*"/>
-	<import value="net.sf.jasperreports.engine.*"/>
 	<import value="net.sf.jasperreports.engine.data.*"/>
-	<style name="table" isDefault="false">
-		<box>
+	<style name="Crosstab Data Text" isDefault="false" hAlign="Center"/>
+	<style name="table" isDefault="false" fill="Solid" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="0.0" lineColor="#000000"/>
+			<topPen lineWidth="0.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="0.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<style name="table_TH" isDefault="false" mode="Opaque" backcolor="#C7C7C7" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
 			<pen lineWidth="1.0" lineColor="#000000"/>
-		</box>
-	</style>
-	<style name="table_TH" isDefault="false" mode="Opaque" backcolor="#F0F8FF">
-		<box>
-			<pen lineWidth="0.5" lineColor="#000000"/>
-		</box>
-	</style>
-	<style name="table_CH" isDefault="false" mode="Opaque" backcolor="#BFE1FF">
-		<box>
-			<pen lineWidth="0.5" lineColor="#000000"/>
-		</box>
-	</style>
-	<style name="table_TD" isDefault="false" mode="Opaque" backcolor="#FFFFFF">
-		<box>
-			<pen lineWidth="0.5" lineColor="#000000"/>
-		</box>
-	</style>
-	<subDataset name="dataset1"/>
-	<subDataset name="Table Dataset 1"/>
+			<topPen lineWidth="1.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<style name="table_CH" isDefault="false" mode="Opaque" backcolor="#FFFFFF" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="1.0" lineColor="#000000"/>
+			<topPen lineWidth="0.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<style name="table_TD" isDefault="false" mode="Opaque" backcolor="#FFFFFF" fontSize="10" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="1.0" lineColor="#000000"/>
+			<topPen lineWidth="1.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+		<conditionalStyle>
+			<conditionExpression><![CDATA[new Boolean($V{REPORT_COUNT}.intValue()%2==0)]]></conditionExpression>
+			<style isDefault="false" style="table_TD" backcolor="#F7F7F7"/>
+		</conditionalStyle>
+	</style>
+	<style name="table_CF" isDefault="false" mode="Opaque" backcolor="#EDEDED" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false">
+		<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
+			<pen lineWidth="1.0"/>
+			<topPen lineWidth="1.0"/>
+			<leftPen lineWidth="0.0"/>
+			<bottomPen lineWidth="1.0"/>
+			<rightPen lineWidth="0.0"/>
+		</box>
+	</style>
+	<subDataset name="dataset1">
+		<field name="description" class="java.lang.String"/>
+	</subDataset>
 	<parameter name="reportTitle" class="java.lang.String"/>
 	<parameter name="currentUser" class="java.lang.String"/>
-	<field name="description" class="java.lang.String"/>
+	<parameter name="logoUrl" class="java.lang.String"/>
+	<parameter name="startDateString" class="java.lang.String"/>
+	<parameter name="endDateString" class="java.lang.String"/>
+	<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
+		<defaultValueExpression><![CDATA["C:\\Documents and Settings\\kromhoutg\\My Documents\\reports\\"]]></defaultValueExpression>
+	</parameter>
+	<queryString language="SQL">
+		<![CDATA[]]>
+	</queryString>
+	<field name="summaryOfCalculationMethod" class="java.lang.String"/>
+	<field name="dataList" class="java.util.List"/>
 	<background>
 		<band splitType="Stretch"/>
 	</background>
 	<pageHeader>
-		<band height="35" splitType="Stretch">
-			<textField>
-				<reportElement key="staticText-1" x="0" y="0" width="782" height="35"/>
-				<textElement textAlignment="Center" markup="none">
+		<band height="121" splitType="Stretch">
+			<textField>
+				<reportElement key="staticText-1" x="0" y="57" width="340" height="30"/>
+				<textElement textAlignment="Center" verticalAlignment="Top" markup="none">
 					<font size="20"/>
 				</textElement>
 				<textFieldExpression class="java.lang.String"><![CDATA[$P{reportTitle}]]></textFieldExpression>
+			</textField>
+			<image>
+				<reportElement x="0" y="0" width="340" height="57"/>
+				<imageExpression class="java.net.URL"><![CDATA[new URL($P{logoUrl})]]></imageExpression>
+			</image>
+			<textField pattern="dd-MMM-yyyy" isBlankWhenNull="true">
+				<reportElement x="0" y="87" width="340" height="20"/>
+				<textElement textAlignment="Center" verticalAlignment="Middle" markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA[$P{startDateString}+" to "+$P{endDateString}]]></textFieldExpression>
 			</textField>
 		</band>
 	</pageHeader>
 	<columnHeader>
-		<band height="28" splitType="Stretch">
-			<textField>
-				<reportElement x="341" y="0" width="100" height="20"/>
-				<textElement textAlignment="Center"/>
-				<textFieldExpression class="java.lang.String"><![CDATA["Column Header"]]></textFieldExpression>
-			</textField>
-		</band>
+		<band splitType="Stretch"/>
 	</columnHeader>
 	<detail>
-		<band height="113" splitType="Stretch">
-			<textField>
-				<reportElement x="100" y="0" width="182" height="20"/>
-				<textElement/>
-				<textFieldExpression class="java.lang.String"><![CDATA[$F{description}]]></textFieldExpression>
-			</textField>
-			<textField>
-				<reportElement x="0" y="0" width="100" height="20"/>
-				<textElement markup="none"/>
-				<textFieldExpression class="java.lang.String"><![CDATA["Description: "]]></textFieldExpression>
-			</textField>
+		<band height="268" splitType="Stretch">
+			<componentElement>
+				<reportElement x="0" y="0" width="535" height="26"/>
+				<jr:list xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" printOrder="Vertical">
+					<datasetRun subDataset="dataset1">
+						<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{dataList})]]></dataSourceExpression>
+					</datasetRun>
+					<jr:listContents height="26" width="535">
+						<textField>
+							<reportElement x="0" y="0" width="400" height="20"/>
+							<textElement/>
+							<textFieldExpression class="java.lang.String"><![CDATA[$F{description}]]></textFieldExpression>
+						</textField>
+					</jr:listContents>
+				</jr:list>
+			</componentElement>
 		</band>
 	</detail>
 	<columnFooter>
-		<band height="27" splitType="Stretch">
-			<textField>
-				<reportElement x="341" y="7" width="100" height="20"/>
-				<textElement textAlignment="Center"/>
-				<textFieldExpression class="java.lang.String"><![CDATA["Column Footer"]]></textFieldExpression>
-			</textField>
-		</band>
+		<band splitType="Stretch"/>
 	</columnFooter>
 	<pageFooter>
@@ -88,10 +131,10 @@
 			</textField>
 			<textField>
-				<reportElement x="662" y="0" width="80" height="20"/>
+				<reportElement x="415" y="20" width="80" height="20"/>
 				<textElement textAlignment="Right"/>
 				<textFieldExpression class="java.lang.String"><![CDATA["Page "+$V{PAGE_NUMBER}+" of"]]></textFieldExpression>
 			</textField>
 			<textField evaluationTime="Report">
-				<reportElement x="742" y="0" width="40" height="20"/>
+				<reportElement x="495" y="20" width="40" height="20"/>
 				<textElement/>
 				<textFieldExpression class="java.lang.String"><![CDATA[" " + $V{PAGE_NUMBER}]]></textFieldExpression>
@@ -114,8 +157,58 @@
 		</band>
 	</pageFooter>
+	<lastPageFooter>
+		<band height="40">
+			<textField evaluationTime="Report">
+				<reportElement x="495" y="20" width="40" height="20"/>
+				<textElement/>
+				<textFieldExpression class="java.lang.String"><![CDATA[" " + $V{PAGE_NUMBER}]]></textFieldExpression>
+			</textField>
+			<textField pattern="dd-MMM-yyyy">
+				<reportElement x="82" y="0" width="200" height="20"/>
+				<textElement/>
+				<textFieldExpression class="java.util.Date"><![CDATA[new java.util.Date()]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="0" y="0" width="82" height="20"/>
+				<textElement markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA["Generated: "]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="0" y="20" width="82" height="20"/>
+				<textElement markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA["By: "]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="82" y="20" width="200" height="20"/>
+				<textElement markup="none"/>
+				<textFieldExpression class="java.lang.String"><![CDATA[$P{currentUser}]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="415" y="20" width="80" height="20"/>
+				<textElement textAlignment="Right"/>
+				<textFieldExpression class="java.lang.String"><![CDATA["Page "+$V{PAGE_NUMBER}+" of"]]></textFieldExpression>
+			</textField>
+		</band>
+	</lastPageFooter>
+	<summary>
+		<band height="369">
+			<textField>
+				<reportElement key="staticText-1" x="97" y="11" width="340" height="30"/>
+				<textElement textAlignment="Center" verticalAlignment="Top" markup="none">
+					<font size="20"/>
+				</textElement>
+				<textFieldExpression class="java.lang.String"><![CDATA["Summary of Calculation Method"]]></textFieldExpression>
+			</textField>
+			<textField>
+				<reportElement x="0" y="50" width="535" height="311"/>
+				<textElement/>
+				<textFieldExpression class="java.lang.String"><![CDATA[$F{summaryOfCalculationMethod}]]></textFieldExpression>
+			</textField>
+		</band>
+	</summary>
 	<noData>
 		<band height="85" splitType="Stretch">
 			<textField>
-				<reportElement x="0" y="35" width="782" height="50"/>
+				<reportElement x="0" y="35" width="535" height="50"/>
 				<textElement textAlignment="Center" markup="none">
 					<font size="14" isBold="true"/>
@@ -125,5 +218,5 @@
 			</textField>
 			<textField>
-				<reportElement key="staticText-1" x="0" y="0" width="782" height="35"/>
+				<reportElement key="staticText-1" x="0" y="0" width="535" height="35"/>
 				<textElement textAlignment="Center" markup="none">
 					<font size="20"/>
