子报表:
<variable name="rota" class="java.lang.String" resetType="None"/>
<title>
<band height="41">
<textField isBlankWhenNull="false">
<reportElement x="0" y="6" width="100" height="30" uuid="e7e71af8-3694-4255-9b94-0587f377f7d4"/>
<textElement markup="html">
<font size="18"/>
</textElement>
<textFieldExpression><![CDATA[$V{rota}]]></textFieldExpression>
</textField>
</band>
</title>
<detail>
<band height="282">
<printWhenExpression><![CDATA[$V{REPORT_COUNT} == 1]]></printWhenExpression>
<subreport>
<reportElement x="-10" y="0" width="560" height="200" isPrintInFirstWholeBand="true" uuid="4bd58f02-975c-430f-87ad-41a55bd422ea">
<printWhenExpression><![CDATA[$V{PAGE_COUNT} == 1]]></printWhenExpression>
</reportElement>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<returnValue subreportVariable="rota" toVariable="rota"/>
<subreportExpression><![CDATA["C:/Users/Pedro Fernandes/JaspersoftWorkspace/MyReports/ticketspartidasubreport.jasper"]]></subreportExpression>
</subreport>
</band>
</detail>
主要报告:
import collections
lt = [ (1,2) , (2,3) , (2,3) , (4,5) , (1,2)]
counter = collections.Counter()
counter.update(lt)
print(dict(counter))
主报表上的变量$ F {rota}始终为NULL。我知道这个主题已经发布,但没有一个解决方案适合我。 有人能帮我吗? THKS!
答案 0 :(得分:0)
您的问题似乎是子报表出现在打印变量$ V {rota}下方的一个带上。在子报表返回值之前,不会检索变量,因此您必须在子报表元素之后的某个波段上打印/使用该变量。尝试切换乐队的顺序。希望这有帮助
答案 1 :(得分:0)
问题是我想在最后使用的变量必须具有计算类型 SYSTEM 。这样做,问题就解决了。