iReport: Comment masquer ligne avec les champs de texte sans ligne de données contient des données différentes
J'ai null objets textfield (il contient la chaîne ou bigdecimal valeur) mettre sur une seule ligne tirée de mon rapport qui affiche une ligne vide.
Afin de supprimer la ligne vide qui a la valeur null lignes, j'ai utilisé la propriété isRemoveLineWhenBlank
pour le rapport les éléments sur cette ligne. Mais cela ne fonctionne pas.
Quelqu'un peut-il m'aider, s'il vous plaît?
clin d'oeil:
sortie de magnétisme:
jrxml :
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Created with iReport - A designer for JasperReports -->
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport
name="WEB_PREVIEW"
columnCount="1"
printOrder="Horizontal"
orientation="Portrait"
pageWidth="595"
pageHeight="900"
columnWidth="535"
columnSpacing="0"
leftMargin="30"
rightMargin="30"
topMargin="20"
bottomMargin="20"
whenNoDataType="NoPages"
isTitleNewPage="false"
isSummaryNewPage="false">
<property name="ireport.scriptlethandling" value="0" />
<property name="ireport.encoding" value="UTF-8" />
<import value="java.util.*" />
<import value="net.sf.jasperreports.engine.*" />
<import value="net.sf.jasperreports.engine.data.*" />
<parameter name="GROSS_RENTAL_INCOME_SQPA_LABEL" isForPrompting="false" class="java.lang.String"/>
<parameter name="GROSS_RENTAL_INCOME_SQPA" isForPrompting="false" class="java.math.BigDecimal"/>
<defaultValueExpression ><![CDATA["C:\\Development_New\\Cyprus\\Cyprus\\WebRoot\\report\\"]]></defaultValueExpression>
</parameter>
<background>
<band height="0" isSplitAllowed="true" >
</band>
</background>
<title>
<band height="0" isSplitAllowed="true" >
</band>
</title>
<pageHeader>
<band height="32" isSplitAllowed="true" >
<textField isStretchWithOverflow="true" isBlankWhenNull="true" evaluationTime="Now" hyperlinkType="None" hyperlinkTarget="Self" >
<reportElement
x="367"
y="105"
width="96"
height="12"
key="textField"
positionType="Float"
isRemoveLineWhenBlank="true">
<printWhenExpression><![CDATA[new Boolean($P{GROSS_RENTAL_INCOME_SQPA}!=null)]]></printWhenExpression>
</reportElement>
<box></box>
<textElement>
<font pdfFontName="Helvetica-Bold" size="8" isBold="true"/>
</textElement>
<textFieldExpression class="java.lang.String"><![CDATA[$P{GROSS_RENTAL_INCOME_SQPA_LABEL}]]></textFieldExpression>
</textField>
<textField isStretchWithOverflow="true" pattern="###,##0.00" isBlankWhenNull="true" evaluationTime="Now" hyperlinkType="None" hyperlinkTarget="Self" >
<reportElement
x="472"
y="105"
width="48"
height="12"
key="textField"
positionType="Float"
isRemoveLineWhenBlank="true">
<printWhenExpression><![CDATA[new Boolean($P{GROSS_RENTAL_INCOME_SQPA}!=null)]]></printWhenExpression>
</reportElement>
<box></box>
<textElement>
<font size="8"/>
</textElement>
<textFieldExpression class="java.math.BigDecimal"><![CDATA[$P{GROSS_RENTAL_INCOME_SQPA}]]></textFieldExpression>
</textField>
</band>
</detail>
<columnFooter>
<band height="0" isSplitAllowed="true" >
</band>
</columnFooter>
<pageFooter>
<band height="0" isSplitAllowed="true" >
</band>
</pageFooter>
<summary>
<band height="0" isSplitAllowed="true" >
</band>
</summary>
</jasperReport>
Vous pouvez poster la capture d'écran qui montre ce que vous voulez?
pls vérifier capture d'écran comme ci-dessus
Vous pouvez poster la capture d'écran de la conception de rapports dans iReport (et non pas le résultat de l'exportation) et l'extrait de fichier jrxml?
Salut Alex, je peux faire de même avec l'aide de différentes version à la place ?Comme j'ai trouvé la cause principale est, j'en avais mis plus d'éléments, comme l'image,le cadre, etc. à côté de la textfields que je veux tronquée lors de la vierge.
Salut! Oui, vous le pouvez.
pls vérifier capture d'écran comme ci-dessus
Vous pouvez poster la capture d'écran de la conception de rapports dans iReport (et non pas le résultat de l'exportation) et l'extrait de fichier jrxml?
Salut Alex, je peux faire de même avec l'aide de différentes version à la place ?Comme j'ai trouvé la cause principale est, j'en avais mis plus d'éléments, comme l'image,le cadre, etc. à côté de la textfields que je veux tronquée lors de la vierge.
Salut! Oui, vous le pouvez.
OriginalL'auteur Sweety | 2012-04-12
Vous devez vous connecter pour publier un commentaire.
Vous pouvez lire l'exemple ci-dessous pour obtenir le résultat que vous souhaitez.
Il montre comment masquer la ligne avec deux textField éléments (deux colonnes), avec l'aide de cadre éléments (bien sûr, en coopération avec l'aide de isRemoveLineWhenBlank bien comme dit dans la question).
La jrxml fichier de code:
La conception de l'état dans iReport:
Le résultat pour cacher l'ensemble de la ligne:
Le résultat pour cacher le seul domaine dans la première colonne, première ligne:
Pourquoi il ne fonctionne pas? Avez-vous essayé d'utiliser des images de ce bloc?
OriginalL'auteur Alex K
la solution ne sont pas les frames.
Ajouter un printWhenExpression à la textfield:
exemple:
OriginalL'auteur Alexander Apel