- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们正在使用 iReport 5.0.1,并已成功转换我们的许多 Crystal Reports 包。
我正在处理混合了整数和 double 据类型的数据,并且在详细信息部分的变量字段内执行计算。
然后我有 3 个变量对详细数据求和。第一个变量是它上面的细节变量的直接和。第二个根据 IF..THEN..ELSE 语句添加一个参数或第二个参数,第三个根据类似的 IF..THEN..ELSE 语句减去完全相同的参数值。
我需要对组页脚中的 3 个变量字段进行舍入,因此我将 Math.round(variable_name) 应用于这 3 个变量中的每一个。原始的和最后一个(减去参数)都工作得很好。中间变量(添加参数)抛出错误,“错误评估表达式:Math.round(variable_name)”。如果我去掉格式,它运行正常。
我复制并粘贴了工作变量,将其重命名为正确的名称,以确保我没有遗漏最初设置它们的方式,但无济于事。当我使用空数据源运行它时,它运行了,但当然没有数据。
这会让我相信数据有问题,但我已经检查过了,数据对数据源都是有效的,没有 NULL、空白或字符数据。
此时我很困惑。该报表在 Crystal Reports 中编译和运行得很好,使用的函数非常接近。
如果有人有任何建议,我很乐意倾听,我将在下面发布报告的 XML。
提前感谢您提供的任何帮助。
米。斯奈德
<?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="MarginRequirement" language="groovy" pageWidth="612" pageHeight="792" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="70f7c2ab-dba2-420a-98b9- dc041beb65a7">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<property name="ireport.jasperserver.reportUnit" value="/reports/Risk_Management/MarginRequirement"/>
<property name="ireport.jasperserver.url" value="http://reports.beefnw.com/jasperserver/services/repository"/>
<parameter name="LCF" class="java.lang.Float">
<defaultValueExpression><![CDATA[0.0]]></defaultValueExpression>
</parameter>
<parameter name="LCO" class="java.lang.Float">
<defaultValueExpression><![CDATA[0.0]]></defaultValueExpression>
</parameter>
<parameter name="FCF" class="java.lang.Float">
<defaultValueExpression><![CDATA[0.00]]></defaultValueExpression>
</parameter>
<parameter name="FCO" class="java.lang.Float">
<defaultValueExpression><![CDATA[0.0]]></defaultValueExpression>
</parameter>
<parameter name="GF" class="java.lang.Float">
<defaultValueExpression><![CDATA[0.0]]></defaultValueExpression>
</parameter>
<parameter name="GO" class="java.lang.Float">
<defaultValueExpression><![CDATA[0.0]]></defaultValueExpression>
</parameter>
<queryString>
<![CDATA[select *,
if (mid(symbol,-3,1) in("F", "G", "H", "J", "K", "M", "N", "Q", "U", "V", "X", "Z"), "Future", "Option") AS type from margin_requirements
order by location, clearing_house
]]>
</queryString>
<field name="open_price" class="java.lang.Float">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="equity" class="java.lang.Float">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="close_price" class="java.lang.Float">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="open_total_value" class="java.lang.Float">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="close_total_value" class="java.lang.Float">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="liquidating_value" class="java.lang.Float">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="commission" class="java.lang.Float">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="account_id" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="position_id" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="id" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="contract_weight" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="contracts" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="account_name" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="account_number" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="location" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="clearing_house" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="type" class="java.lang.String"/>
<field name="group" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="symbol" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="fill_date" class="java.sql.Date">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="updated_at" class="java.sql.Timestamp">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="created_at" class="java.sql.Timestamp">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<variable name="loc_clHouse" class="java.lang.String" resetType="None">
<variableExpression><![CDATA[$F{location} + " - " + $F{clearing_house}]]></variableExpression>
</variable>
<variable name="LC_Orig" class="java.lang.Float" resetType="None">
<variableExpression><![CDATA[$F{group}=="LIVE_CATTLE"?((($F{contracts}*$F{contract_weight}*$F{open_price})/100)*-1) + (($F{contracts}*$F{contract_weight}*$F{close_price})/100):0.0]]></variableExpression>
</variable>
<variable name="LCOrig_Total" class="java.lang.Float" resetType="Group" resetGroup="ClearingHouse" calculation="Sum">
<variableExpression><![CDATA[Math.round($V{LC_Orig})]]></variableExpression>
</variable>
<variable name="Suppression" class="java.lang.String" resetType="None">
<variableExpression><![CDATA["NO"]]></variableExpression>
</variable>
<variable name="LCUpPrice" class="java.lang.Float" resetType="None">
<variableExpression><![CDATA[$F{type}=="Future"?$F{close_price}+$P{LCF}:$F{close_price}+$P{LCO}]]></variableExpression>
</variable>
<variable name="LCDownPrice" class="java.lang.Float" resetType="None">
<variableExpression><![CDATA[$F{type}=="Future"?$F{close_price}-$P{LCF}:$P{LCO} > $F{close_price}?0.0:$F{close_price}-$P{LCO}]]></variableExpression>
</variable>
<variable name="LC_Decrease" class="java.lang.Float" resetType="None">
<variableExpression><![CDATA[$F{group}=="LIVE_CATTLE"?((($F{contracts}*$F{contract_weight}*$F{open_price})/100)*-1)+(($F{contracts}*$F{contract_weight}*$V{LCDownPrice})/100):0.0]]></variableExpression>
</variable>
<variable name="LCDecr_Total" class="java.lang.Float" resetType="Group" resetGroup="ClearingHouse" calculation="Sum">
<variableExpression><![CDATA[Math.round($V{LC_Decrease})]]></variableExpression>
</variable>
<variable name="LCIncr_Total" class="java.lang.Float" resetType="Group" resetGroup="ClearingHouse" calculation="Sum">
<variableExpression><![CDATA[Math.round($V{LC_Increase})]]></variableExpression>
</variable>
<variable name="LC_Increase" class="java.lang.Float" resetType="None">
<variableExpression><![CDATA[$F{group}=="LIVE_CATTLE"?((($F{contracts}*$F{contract_weight}*$F{open_price})/100)*-1)+(($F{contracts}*$F{contract_weight}*$V{LCUpPrice})/100):0.0]]></variableExpression>
</variable>
<group name="ClearingHouse">
<groupExpression><![CDATA[$V{loc_clHouse}]]></groupExpression>
<groupHeader>
<band height="25">
<printWhenExpression><![CDATA[$V{Suppression}=="YES"]]></printWhenExpression>
<textField>
<reportElement uuid="51b78c4d-3747-4282-8b9f-17be6f84feea" x="0" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$V{loc_clHouse}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="ad970881-452b-42aa-bb9f-a19e735643c5" x="179" y="5" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$V{Suppression}]]></textFieldExpression>
</textField>
</band>
</groupHeader>
<groupFooter>
<band height="116">
<textField>
<reportElement uuid="79587964-7211-4761-9221-0c063a1aebf0" x="0" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$V{loc_clHouse}]]></textFieldExpression>
</textField>
<textField pattern="¤ #,##0.00">
<reportElement uuid="3bd9ce71-5cf4-4ae3-b678-8f3942fc9e7a" x="100" y="0" width="100" height="20"/>
<textElement textAlignment="Right"/>
<textFieldExpression><![CDATA[$V{LCOrig_Total}]]></textFieldExpression>
</textField>
<textField pattern="¤ #,##0.00">
<reportElement uuid="20ef4729-88b0-4ab2-a5a6-56594bb716d5" x="100" y="40" width="100" height="20"/>
<textElement textAlignment="Right"/>
<textFieldExpression><![CDATA[$V{LCDecr_Total}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="16a8b6f9-5e24-4ee6-9e84-e2730d78dea1" x="100" y="20" width="100" height="20"/>
<textElement textAlignment="Right"/>
<textFieldExpression><![CDATA[$V{LCIncr_Total}]]></textFieldExpression>
</textField>
</band>
</groupFooter>
</group>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch"/>
</title>
<pageHeader>
<band height="142" splitType="Stretch">
<image>
<reportElement uuid="eef5e5ab-7b5d-4f86-a20f-5dd51bbd56bd" x="5" y="4" width="310" height="93"/>
<imageExpression><![CDATA["/home/marlin/bnw_logo_trans.gif"]]></imageExpression>
</image>
<rectangle>
<reportElement uuid="957ac037-7238-46e1-809c-4ded5f76b72b" x="0" y="102" width="572" height="38" forecolor="#E6D8AB" backcolor="#E6D8AB"/>
</rectangle>
<staticText>
<reportElement uuid="3b2925af-f556-4c0c-84bb-e5b5b021128e" x="126" y="110" width="341" height="30"/>
<textElement textAlignment="Center">
<font size="18" isBold="true"/>
</textElement>
<text><![CDATA[MARGIN REQUIREMENT REPORT]]></text>
</staticText>
</band>
</pageHeader>
<columnHeader>
<band height="27" splitType="Stretch">
<rectangle>
<reportElement uuid="a2f2bf6a-6f14-48e5-9d19-5f153caed5a5" x="0" y="0" width="572" height="27" forecolor="#E6D8AB" backcolor="#E6D8AB"/>
</rectangle>
</band>
</columnHeader>
<detail>
<band height="96" splitType="Stretch">
<printWhenExpression><![CDATA[$V{Suppression}=="NO"]]></printWhenExpression>
<textField>
<reportElement uuid="ed06c6f7-7b44-4033-8c4a-9364d9c22e13" x="100" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$V{LC_Orig}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="55b4791f-dfe7-415c-89d5-ebd937c6a329" x="0" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$V{Suppression}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="aba93e69-1ab0-476a-81e0-c65d8f482233" x="100" y="40" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$V{LC_Decrease}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="6f9026a6-abf5-4017-974c-9e972bed8181" x="0" y="20" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$P{LCF}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="ff53c29d-4006-4b99-8b77-295717483c79" x="0" y="40" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$P{LCO}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="e305cdbe-e93c-47bb-aedd-f2fc1478e33d" x="100" y="20" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$V{LC_Increase}]]></textFieldExpression>
</textField>
</band>
</detail>
<columnFooter>
<band splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
</jasperReport>
最佳答案
感谢 iReport/Jasper 论坛的回答:
http://community.jaspersoft.com/questions/803533/ireport-error-evaluating-expression#comment-802119
米。斯奈德
关于java - iReport 计算表达式时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14991969/
SQLite、Content provider 和 Shared Preference 之间的所有已知区别。 但我想知道什么时候需要根据情况使用 SQLite 或 Content Provider 或
警告:我正在使用一个我无法完全控制的后端,所以我正在努力解决 Backbone 中的一些注意事项,这些注意事项可能在其他地方更好地解决......不幸的是,我别无选择,只能在这里处理它们! 所以,我的
我一整天都在挣扎。我的预输入搜索表达式与远程 json 数据完美配合。但是当我尝试使用相同的 json 数据作为预取数据时,建议为空。点击第一个标志后,我收到预定义消息“无法找到任何内容...”,结果
我正在制作一个模拟 NHL 选秀彩票的程序,其中屏幕右侧应该有一个 JTextField,并且在左侧绘制弹跳的选秀球。我创建了一个名为 Ball 的类,它实现了 Runnable,并在我的主 Draf
这个问题已经有答案了: How can I calculate a time span in Java and format the output? (18 个回答) 已关闭 9 年前。 这是我的代码
我有一个 ASP.NET Web API 应用程序在我的本地 IIS 实例上运行。 Web 应用程序配置有 CORS。我调用的 Web API 方法类似于: [POST("/API/{foo}/{ba
我将用户输入的时间和日期作为: DatePicker dp = (DatePicker) findViewById(R.id.datePicker); TimePicker tp = (TimePic
放宽“邻居”的标准是否足够,或者是否有其他标准行动可以采取? 最佳答案 如果所有相邻解决方案都是 Tabu,则听起来您的 Tabu 列表的大小太长或您的释放策略太严格。一个好的 Tabu 列表长度是
我正在阅读来自 cppreference 的代码示例: #include #include #include #include template void print_queue(T& q)
我快疯了,我试图理解工具提示的行为,但没有成功。 1. 第一个问题是当我尝试通过插件(按钮 1)在点击事件中使用它时 -> 如果您转到 Fiddle,您会在“内容”内看到该函数' 每次点击都会调用该属
我在功能组件中有以下代码: const [ folder, setFolder ] = useState([]); const folderData = useContext(FolderContex
我在使用预签名网址和 AFNetworking 3.0 从 S3 获取图像时遇到问题。我可以使用 NSMutableURLRequest 和 NSURLSession 获取图像,但是当我使用 AFHT
我正在使用 Oracle ojdbc 12 和 Java 8 处理 Oracle UCP 管理器的问题。当 UCP 池启动失败时,我希望关闭它创建的连接。 当池初始化期间遇到 ORA-02391:超过
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 9 年前。 Improve
引用这个plunker: https://plnkr.co/edit/GWsbdDWVvBYNMqyxzlLY?p=preview 我在 styles.css 文件和 src/app.ts 文件中指定
为什么我的条形这么细?我尝试将宽度设置为 1,它们变得非常厚。我不知道还能尝试什么。默认厚度为 0.8,这是应该的样子吗? import matplotlib.pyplot as plt import
当我编写时,查询按预期执行: SELECT id, day2.count - day1.count AS diff FROM day1 NATURAL JOIN day2; 但我真正想要的是右连接。当
我有以下时间数据: 0 08/01/16 13:07:46,335437 1 18/02/16 08:40:40,565575 2 14/01/16 22:2
一些背景知识 -我的 NodeJS 服务器在端口 3001 上运行,我的 React 应用程序在端口 3000 上运行。我在 React 应用程序 package.json 中设置了一个代理来代理对端
我面临着一个愚蠢的问题。我试图在我的 Angular 应用程序中延迟加载我的图像,我已经尝试过这个2: 但是他们都设置了 src attr 而不是 data-src,我在这里遗漏了什么吗?保留 d
我是一名优秀的程序员,十分优秀!