0

好的,所以当我在iReport中运行报告时,我只会得到一行作为输出

100 100 -   BA  -   7294    -   1   -   3

但是当我从服务器日志中复制报告创建的查询并运行它时,我得到 80 行作为输出

100 100 -   BA  -   7294    -   1   -   3
100 101 -   BA  -   7294    -   1   -   3
100 102 -   BA  -   7294    -   1   -   3
100 103 -   BA  -   7294    -   1   -   3
100 104 -   BA  -   7294    -   1   -   3
100 106 -   BA  -   7294    -   1   -   3
100 107 -   BA  -   7294    -   1   -   3
100 108 -   BA  -   7294    -   1   -   3
100 109 -   BA  -   7294    -   1   -   3
100 110 -   BA  -   7294    -   1   -   3
etc...

我已经做了一百次这样的报告,这从未发生过,我似乎无法找到解决方案

丢失数据的原因可能是什么?

这是我从日志中复制的查询(这是一个简单的查询,没什么特别的)

select 
`quallev_qualificationlevel`.`quallev_fieldofstudy` as 
`quallev_qualificationlevel_quallev_fieldofstudy`,
`qde_qualificationdescription`.`qde_shortdescription` as `qde_qualificationdescription_qde_shortdescription`,
`qde_qualificationdescription`.`qde_namepurpose_cd_id` as `qde_qualificationdescription_qde_namepurpose_cd_id`,
`cn_campusname`.`cn_campusid` as `cn_campusname_cn_campusid`,
`qde_qualificationdescription`.`qde_langauge_id` as `qde_qualificationdescription_qde_langauge_id`,
`fv_factorvalue_ft`.`fv_1` as `fv_factorvalue_ft_fv_1`,
`fv_factorvalue_ft`.`fv_2` as `fv_factorvalue_ft_fv_2`,
`fv_factorvalue_ft`.`fv_3` as `fv_factorvalue_ft_fv_3`,
`fosfte_fieldofstudyftefactor`.`fosfte_factor_cd_id` as `fosfte_fieldofstudyftefactor_fosfte_factor_cd_id`,
`fv_factorvalue_ft`.`fv_4` as `fv_factorvalue_ft_fv_4`,
`fv_factorvalue_ft`.`fv_5` as `fv_factorvalue_ft_fv_5`,
`fv_factorvalue_ft`.`fv_6` as `fv_factorvalue_ft_fv_6`,
`fv_factorvalue_ft`.`fv_7` as `fv_factorvalue_ft_fv_7`,
`fv_factorvalue_ft`.`fv_8` as `fv_factorvalue_ft_fv_8`,
`fv_factorvalue_ft`.`fv_9` as `fv_factorvalue_ft_fv_9`,
`fos_fieldofstudy`.`fos_code` as `fos_fieldofstudy_fos_code`,
`fosfte_fieldofstudyftefactor`.`fosfte_ftefactorvalue` as `fosfte_fieldofstudyftefactor_fosfte_ftefactorvalue`,
`qual_qualification`.`qual_code` as `qual_qualification_qual_code`,
`oun_organisationunitname`.`oun_ou_id` as `oun_organisationunitname_oun_ou_id`,
`fos_fieldofstudy`.`fos_startdate` as `fos_fieldofstudy_fos_startdate`,
`qh_qualificationhemis`.`qh_weight` as `qh_qualificationhemis_qh_weight`
from `qo_qualificationorganisation`
inner join `quallev_qualificationlevel` on (`qo_qualificationorganisation`.`qo_quallev_id` = `quallev_qualificationlevel`.`quallev_id`)
inner join `org_organisation` on (`org_organisation`.`org_be_id` = `qo_qualificationorganisation`.`qo_org_be_id`)
inner join `oun_organisationunitname` on (`oun_organisationunitname`.`oun_ou_id` = `org_organisation`.`org_ou_id`)
inner join `cn_campusname` on (`org_organisation`.`org_campusid` = `cn_campusname`.`cn_campusid`)
inner join `fos_fieldofstudy` on (`quallev_qualificationlevel`.`quallev_fos_id` = `fos_fieldofstudy`.`fos_id`)
inner join `qual_qualification` on (`quallev_qualificationlevel`.`quallev_qual_id` =     `qual_qualification`.`qual_id`)
inner join `qh_qualificationhemis` on (`qh_qualificationhemis`.`qh_qual_id` = `qual_qualification`.`qual_id`)
inner join `fosfte_fieldofstudyftefactor` on (`fosfte_fieldofstudyftefactor`.`fosfte_fos_id` = `fos_fieldofstudy`.`fos_id`)
inner join `qde_qualificationdescription` on (`qde_qualificationdescription`.`qde_qual_id`     = `qual_qualification`.`qual_id`)
inner join `fv_factorvalue_ft` on (`fos_fieldofstudy`.`fos_id` = `fv_factorvalue_ft`.`fv_fos_id`)
where `qde_qualificationdescription`.`qde_langauge_id` = 3 
and `fos_fieldofstudy`.`fos_startdate` <= '2013-11-08' 
and `qde_qualificationdescription`.`qde_namepurpose_cd_id` = 7294 
and `cn_campusname`.`cn_campusid` = '1' 
and `oun_organisationunitname`.`oun_ou_id` = '11' 
and `fosfte_fieldofstudyftefactor`.`fosfte_factor_cd_id` = 7699
group by `quallev_qualificationlevel`.`quallev_fieldofstudy`

注意:我在Tomcat 7上为JasperReports Server 5.0.1使用Win7 Pro 64 位上的iReport 5.0.0

4

1 回答 1

0

好的,所以我终于找到了解决方案

问题是 jasperserver 的默认行限制设置为 200,000

我将上限提高到 2,000,000 并且 BOOOM !!! 它现在可以工作了:)

于 2013-11-08T13:45:43.100 回答