我的查詢是
當用戶選擇的語言爲德語,數量應該顯示在格式 - 千位分隔符應, 小數點分隔符應。更改數字格式爲每個參數傳中碧玉報告
當選擇的語言是英語時,數字應該以格式 - 千分隔符應該顯示。 (標準) 小數點分隔符應該是(標準)
我們可以根據參數變化來更改數字格式嗎?
我的查詢是
當用戶選擇的語言爲德語,數量應該顯示在格式 - 千位分隔符應, 小數點分隔符應。更改數字格式爲每個參數傳中碧玉報告
當選擇的語言是英語時,數字應該以格式 - 千分隔符應該顯示。 (標準) 小數點分隔符應該是(標準)
我們可以根據參數變化來更改數字格式嗎?
只需更改iReport中特定字段的屬性設置即可完成,或者您可以直接在xml文件中更改。
你可以從下面的代碼refrance。
<?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="format_as_current" pageWidth="595" pageHeight="842"
whenNoDataType="AllSectionsNoDetail" columnWidth="555" leftMargin="20"
rightMargin="20" topMargin="20" bottomMargin="20">
<parameter name="intParam" class="java.lang.Integer">
<defaultValueExpression><![CDATA[12345678]]></defaultValueExpression>
</parameter>
<parameter name="strParam" class="java.lang.String">
<defaultValueExpression><![CDATA["12345678.95"]]></defaultValueExpression>
</parameter>
<title>
<band height="79" splitType="Stretch">
<textField>
<reportElement x="137" y="18" width="291" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[new java.text.DecimalFormat("$ #,##0.00").format($P{intParam})]]></textFieldExpression>
</textField>
<textField>
<reportElement x="137" y="48" width="291" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[new java.text.DecimalFormat("$ #,##0.00").format(Double.valueOf($P{strParam} != null && $P{strParam}.length() > 0 ? Double.valueOf($P{strParam}) : 0))]]></textFieldExpression>
</textField>
</band>
</title>
heyy Deepesh,但它不適用於一種語言,數字格式將根據語言運行 – spruha
對不起,但它唯一可能的,如果你可以寫在Java或任何其他語言的邏輯和插件碧玉。 –
對於任何報告,有一個參數名爲$ P {} REPORT_LOCALE您 可以使用此參數來定義數字格式。使用第三個參數,可以將其稱爲$ P {Number_format},您可以根據區域設置來定義此格式。
如果您使用iReport工具來設計碧玉。那麼有格式化數字,日期等選項 –
爲什麼PLSQL標籤爲此? –