Увеличьте длину макс символов в поле Integer запроса Jaspersoft Studio - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть отчет, который в настоящее время принимает целые числа в Jaspersoft Studio.Мне нужно ввести 13 символов в каждом из этих полей, а затем перебрать их.К сожалению, поле позволяет вводить только 10 символов одновременно.Я пытался изменить поле на строковый ввод, но у меня так много обращений к тем введенным полям, которые нужно было бы привести к целым числам, что мне показалось бы намного проще, если бы я мог изменить максимумдопустимые символы в этом поле - до 13.

Я хочу привести каждую введенную строку к и int, если нужно, но я очень новичок в Jaspersoft, и каждая попытка, которую я сделал до сих пор, имеетне удалось.Вот как выглядит мой запрос:

select lpad(num::text, 13, '0') value1
, num::text value1no0s
, lpad((num+ ($P{RangeEnd}-$P{RangeStart})/3)::text, 13, 
'0') value2
, (num+ ($P{RangeEnd}-$P{RangeStart})/3)::text value2no0s
, lpad(( num+ 2*($P{RangeEnd}-$P{RangeStart})/3)::text, 
13, 
'0') value3
, ( num+ 2*($P{RangeEnd}-$P{RangeStart})/3)::text value3no0s

from generate_series($P{RangeStart},($P{RangeEnd}-$P{RangeStart})/3 + $P{RangeStart} +1)  num

А вот пример типичного выражения в моем отчете:

IF(INTEGER_VALUE($F{value3}) > $P{RangeEnd}, null,IF(INTEGER_VALUE($F{value1}) >= (($P{RangeEnd}-$P{RangeStart})/3+$P{RangeStart}), null, $P{SaleName}))

Пожалуйста, дайте мне знать, если я смогу предоставить дополнительную информацию.Спасибо!

1 Ответ

0 голосов
/ 18 февраля 2019

Это следует сделать , а не , поскольку ваш номер (13 символов) выше Integer.MAX_VALUE, то есть 2147483647, вместо этого вам нужно определить свой параметр как java.lang.Long

Разработчики JasperSoft Studio фактически пытаются помочь вам, ограничив число ниже MAX_VALUE

Пример

jrxml

<?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="Blank_A4_7" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="3c26b137-f63b-46c8-8469-de9f24f291f3">
    <parameter name="Parameter1" class="java.lang.Long"/>
    <queryString>
        <![CDATA[]]>
    </queryString>
    <title>
        <band height="79" splitType="Stretch">
            <textField>
                <reportElement x="0" y="0" width="270" height="30" uuid="41fd4d98-bd1e-48c9-ac8c-d8cfae208a5d"/>
                <textFieldExpression><![CDATA[$P{Parameter1}]]></textFieldExpression>
            </textField>
        </band>
    </title>
</jasperReport>

Выход

output

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...