iReport - Passa um DataSource Expression adiante

0 respostas
montano

Bom dia,

Gostaria de sabe como posso fazer para passar um Data Source Expression de um subreport para outro subreport.

Exemplo do que eu quero fazer:

Report Inicial : Cria uma Variavel que contem um Data Source e passa para o subReport_1
subReport_1 : Recebe a Variavel e repassa para o subReport_2, que esta adicionado nela.
subReport_2: Utiliza essa variavel

No momento esta assim:

Report Inicial:

<field name="infNFe" class="br.inf.portalfiscal.nfe.TNFe.InfNFe"/>
<variable name="dets" class="java.util.ArrayList" resetType="None">
	<variableExpression><![CDATA[$F{infNFe}.getDet()]]></variableExpression>
</variable>
<variable name="dtsDet" class="net.sf.jasperreports.engine.data.JRBeanCollectionDataSource" resetType="None">
	<variableExpression><![CDATA[new JRBeanCollectionDataSource($V{dets}, true)]]></variableExpression>
</variable>
<subreport isUsingCache="true">
	<reportElement key="subreport-1" x="-19" y="4" width="594" height="295"/>
	    <subreportParameter name="SUBREPORT_DIR">
	    <subreportParameterExpression><![CDATA[$P{SUBREPORT_DIR}]]></subreportParameterExpression>
	</subreportParameter>
	<dataSourceExpression><![CDATA[$V{dtsDet}]]></dataSourceExpression>
	<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR}+"RodapeInicial.jasper"]]></subreportExpression>
</subreport>

Essa variavel dtsDet que deve ser enviada para o RodapeInicial e repassada para o subReport_2.

Obrigado pela ajuda.

Criado 7 de outubro de 2010
Respostas 0
Participantes 1