2012-04-12 28 views
1

Jasper Reports를 처음 사용합니다. 나는 두 그룹으로 구성된 보고서를 가지고있다. 쿼리에 따라 여러 페이지가 인쇄됩니다.Jasper Reports : 한 페이지에 여러 페이지를 인쇄하는 방법

1 그룹 높이 - 95 포인트, 2 그룹 높이 - 144 포인트

나는이 한 장에 여러 페이지 (내가 페이지에서 5 페이지를 통합 할)에 인쇄하고자합니다. 각 페이지 높이는 239 포인트입니다. (페이지의 내용이 239 점보다 적을지라도 남은 부분을 공란으로 남겨두고 239 점 후에 다음 페이지를 시작하고 싶습니다.) 나는 보고서 작성을 시도하고 위의 보고서를 하위 보고서로 포함 시켰고 주 보고서의 높이를 1195 (239 * 5) 점으로 설정했습니다. 아직도, 이들은 다른 페이지에서 인쇄되고 있습니다.

수출의 결과는 다음과 같습니다 Report looks like this when it is printed

주요 보고서 디자인은 다음과 같습니다 Main Report - This is including 2 subreports

첫 번째 하위 보고서 디자인은 다음과 같습니다 First SubReport

두 번째 하위 보고서 디자인 is : Second SubReport
도와주세요.

+0

당신은 당신의 스크린 샷을 게시 할 수 iReport의 보고서 디자인? –

+0

@Alex, 이미지를 추가 할 수 없었습니다. 보고서 디자인 _http : //www.flickr.com/photos/[email protected]에 대한 링크를 찾으십시오. – charishb4u

답변

0

사양을 기반으로 테스트를했으며 잘 작동하는 것 같습니다. 여기에 몇 가지 조언을 해줄 수 있습니다.

  1. 기본 보고서 디자인에서 하위 보고서 요소의 높이는 기본 밴드와 동일하면 중요하지 않습니다. 하위 보고서 요소가 더 짧으면 차이가 결과에 나타납니다.
  2. 하위 보고서의 페이지 높이는 중요하지 않으며 밴드의 전체 높이입니다.
  3. 작성한 그룹에서 "새 페이지에서 시작"옵션을 선택하지 않았는지 확인하십시오. 이것이 가장 큰 문제입니다.

상위 3 명이 문제를 해결하지 못한 경우 아래 샘플을 살펴보고 차이점을 비교하십시오.

는 MainReport :

<?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="MainReport1" language="groovy" pageWidth="595" pageHeight="1195" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="0" bottomMargin="0"> 
    <property name="ireport.zoom" value="1.0"/> 
    <property name="ireport.x" value="0"/> 
    <property name="ireport.y" value="0"/> 
    <parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false"> 
     <defaultValueExpression><![CDATA["C:\\Users\\Bizz\\Documents\\JasperReports\\"]]></defaultValueExpression> 
    </parameter> 
    <queryString> 
     <![CDATA[SELECT 
    PRODUCT."ID" AS PRODUCT_ID, 
    PRODUCT."NAME" AS PRODUCT_NAME, 
    PRODUCT."COST" AS PRODUCT_COST 
FROM 
    "PUBLIC"."PRODUCT" PRODUCT]]> 
    </queryString> 
    <field name="PRODUCT_ID" class="java.lang.Integer"/> 
    <field name="PRODUCT_NAME" class="java.lang.String"/> 
    <field name="PRODUCT_COST" class="java.math.BigDecimal"/> 
    <group name="Group1"> 
     <groupExpression><![CDATA[$F{PRODUCT_ID}]]></groupExpression> 
     <groupHeader> 
      <band height="50"> 
       <subreport> 
        <reportElement x="0" y="0" width="200" height="50"/> 
        <subreportParameter name="ProductID"> 
         <subreportParameterExpression><![CDATA[$F{PRODUCT_ID}]]></subreportParameterExpression> 
        </subreportParameter> 
        <connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression> 
        <subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "MainReport1_subreport2.jasper"]]></subreportExpression> 
       </subreport> 
      </band> 
     </groupHeader> 
    </group> 
    <group name="Group2"> 
     <groupExpression><![CDATA["2"]]></groupExpression> 
     <groupHeader> 
      <band height="50"> 
       <subreport> 
        <reportElement x="0" y="0" width="200" height="50"/> 
        <subreportParameter name="ProductID"> 
         <subreportParameterExpression><![CDATA[$F{PRODUCT_ID}]]></subreportParameterExpression> 
        </subreportParameter> 
        <connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression> 
        <subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "MainReport1_subreport1.jasper"]]></subreportExpression> 
       </subreport> 
      </band> 
     </groupHeader> 
    </group> 
    <background> 
     <band splitType="Stretch"/> 
    </background> 
    <title> 
     <band splitType="Stretch"/> 
    </title> 
    <pageHeader> 
     <band splitType="Stretch"/> 
    </pageHeader> 
    <columnHeader> 
     <band splitType="Stretch"/> 
    </columnHeader> 
    <detail> 
     <band splitType="Stretch"/> 
    </detail> 
    <columnFooter> 
     <band splitType="Stretch"/> 
    </columnFooter> 
    <pageFooter> 
     <band splitType="Stretch"/> 
    </pageFooter> 
    <summary> 
     <band splitType="Stretch"/> 
    </summary> 
</jasperReport> 

Subreport1 :

<?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="MainReport1_subreport1" language="groovy" pageWidth="555" pageHeight="95" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0"> 
    <property name="ireport.zoom" value="1.0"/> 
    <property name="ireport.x" value="0"/> 
    <property name="ireport.y" value="0"/> 
    <parameter name="ProductID" class="java.lang.Integer"/> 
    <queryString> 
     <![CDATA[SELECT 
    PRODUCT."ID" AS PRODUCT_ID, 
    PRODUCT."NAME" AS PRODUCT_NAME, 
    PRODUCT."COST" AS PRODUCT_COST 
FROM 
    "PUBLIC"."PRODUCT" PRODUCT 
where 
    product_id = $P{ProductID}]]> 
    </queryString> 
    <field name="PRODUCT_ID" class="java.lang.Integer"/> 
    <field name="PRODUCT_NAME" class="java.lang.String"/> 
    <field name="PRODUCT_COST" class="java.math.BigDecimal"/> 
    <background> 
     <band splitType="Stretch"/> 
    </background> 
    <title> 
     <band splitType="Stretch"/> 
    </title> 
    <pageHeader> 
     <band splitType="Stretch"/> 
    </pageHeader> 
    <columnHeader> 
     <band splitType="Stretch"/> 
    </columnHeader> 
    <detail> 
     <band height="95" splitType="Stretch"> 
      <staticText> 
       <reportElement x="0" y="0" width="100" height="20"/> 
       <textElement/> 
       <text><![CDATA[PRODUCT_ID]]></text> 
      </staticText> 
      <textField> 
       <reportElement x="100" y="0" width="100" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[$F{PRODUCT_ID}]]></textFieldExpression> 
      </textField> 
      <staticText> 
       <reportElement x="0" y="20" width="100" height="20"/> 
       <textElement/> 
       <text><![CDATA[PRODUCT_NAME]]></text> 
      </staticText> 
      <textField> 
       <reportElement x="100" y="20" width="100" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[$F{PRODUCT_NAME}]]></textFieldExpression> 
      </textField> 
      <staticText> 
       <reportElement x="0" y="40" width="100" height="20"/> 
       <textElement/> 
       <text><![CDATA[PRODUCT_COST]]></text> 
      </staticText> 
      <textField> 
       <reportElement x="100" y="40" width="100" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[$F{PRODUCT_COST}]]></textFieldExpression> 
      </textField> 
      <componentElement> 
       <reportElement x="0" y="60" width="200" height="35"/> 
       <jr:barbecue xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" type="3of9" drawText="false" checksumRequired="false"> 
        <jr:codeExpression><![CDATA[$F{PRODUCT_ID}]]></jr:codeExpression> 
       </jr:barbecue> 
      </componentElement> 
     </band> 
    </detail> 
    <columnFooter> 
     <band splitType="Stretch"/> 
    </columnFooter> 
    <pageFooter> 
     <band splitType="Stretch"/> 
    </pageFooter> 
    <summary> 
     <band splitType="Stretch"/> 
    </summary> 
</jasperReport> 

Subreport2 :

<?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="MainReport1_subreport2" language="groovy" pageWidth="555" pageHeight="888" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0"> 
    <property name="ireport.zoom" value="1.0"/> 
    <property name="ireport.x" value="0"/> 
    <property name="ireport.y" value="0"/> 
    <parameter name="ProductID" class="java.lang.Integer"/> 
    <queryString> 
     <![CDATA[SELECT 
    PRODUCT."ID" AS PRODUCT_ID, 
    PRODUCT."NAME" AS PRODUCT_NAME, 
    PRODUCT."COST" AS PRODUCT_COST 
FROM 
    "PUBLIC"."PRODUCT" PRODUCT 
where 
    product_id = $P{ProductID}]]> 
    </queryString> 
    <field name="PRODUCT_ID" class="java.lang.Integer"/> 
    <field name="PRODUCT_NAME" class="java.lang.String"/> 
    <field name="PRODUCT_COST" class="java.math.BigDecimal"/> 
    <background> 
     <band splitType="Stretch"/> 
    </background> 
    <title> 
     <band splitType="Stretch"/> 
    </title> 
    <pageHeader> 
     <band splitType="Stretch"/> 
    </pageHeader> 
    <columnHeader> 
     <band splitType="Stretch"/> 
    </columnHeader> 
    <detail> 
     <band height="144" splitType="Stretch"> 
      <staticText> 
       <reportElement x="0" y="0" width="100" height="20"/> 
       <textElement/> 
       <text><![CDATA[PRODUCT_ID]]></text> 
      </staticText> 
      <textField> 
       <reportElement x="100" y="0" width="100" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[$F{PRODUCT_ID}]]></textFieldExpression> 
      </textField> 
      <staticText> 
       <reportElement x="0" y="20" width="100" height="20"/> 
       <textElement/> 
       <text><![CDATA[PRODUCT_NAME]]></text> 
      </staticText> 
      <textField> 
       <reportElement x="100" y="20" width="100" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[$F{PRODUCT_NAME}]]></textFieldExpression> 
      </textField> 
      <staticText> 
       <reportElement x="0" y="40" width="100" height="20"/> 
       <textElement/> 
       <text><![CDATA[PRODUCT_COST]]></text> 
      </staticText> 
      <textField> 
       <reportElement x="100" y="40" width="100" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[$F{PRODUCT_COST}]]></textFieldExpression> 
      </textField> 
      <componentElement> 
       <reportElement x="0" y="60" width="302" height="84"/> 
       <jr:barbecue xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" type="3of9" drawText="false" checksumRequired="false"> 
        <jr:codeExpression><![CDATA[$F{PRODUCT_ID}]]></jr:codeExpression> 
       </jr:barbecue> 
      </componentElement> 
     </band> 
    </detail> 
    <columnFooter> 
     <band splitType="Stretch"/> 
    </columnFooter> 
    <pageFooter> 
     <band splitType="Stretch"/> 
    </pageFooter> 
    <summary> 
     <band splitType="Stretch"/> 
    </summary> 
</jasperReport> 
관련 문제