BIRT Report Tool

◇◆丶佛笑我妖孽 提交于 2019-12-12 04:58:02

问题


I created a Report using BIRT Report Design in Eclipse Java EE IDE(Juno Release). In that Report, For the single row it have multiple values for the corresponding one column(I used LISTAGG() oracle function to map that).

(i.e.) Result column have multiple values in the below database table output :

No    Name    Result     Mark 
-----------------------------------
1     John          X                  32
               XX
              XXX
2     Joe            X                   56

              XX
              XX

              XXX
3    Andrew                          34

             XXX
             XX

             XXXX

… It have both NULL and NOT NULL values in it.

"If the NULL values are in the middle means its showing the results properly in the Report"

Sample Result am getting in Report output for Joe (.pdf form)

No    Name    Result     Mark 
-----------------------------------
2     Joe            X                   56

              XX
              XX

              XXX

Here the problem is, “If First record has a NULL means it is not showing properly in the Report, instead of that NOT NULL value will print in the front and so on…”

Sample Result am getting in Report output for Andrew (.pdf form)

No    Name    Result     Mark 
-----------------------------------
3    Andrew      XXX            34
                 XX

                XXXX

But we have TWO NULL values present in the Front of Result column for Andrew (As you see sample oracle table output above)…

Is there any option to show blank in the first row(if it is a null) for the particular row in the birt report tool ?

Kindly Help me to Solve this issue… Thank you!


回答1:


While I did not try to understand exactly what your issue is, in general when null values in the data are causing problems with a BIRT report. Use one of these two solutions.

  1. Use the data base function to convert the NULL to something else. In SQL I use the command ISNULL

  2. Use a computed column in the BIRT 'Data Set' to create a new column, write whatever you need in JS. In the example below I need to make a decision on a date field that is sometimes null, in comparison to an input parameter.

    if (row["START_TIME"] == null){ "F" } else if (row["END_TIME"] == null){ "T" }else if (row["START_TIME"].getTime() >= params["WeekOf"].getTime() ){ "T" }else if(row["END_TIME"].getTime() <= params["WeekOf"].getTime() ){ "F" }else if(row["END_TIME"].getTime() >= params["WeekOf"].getTime() ){ "T" }else{ "F"}



来源:https://stackoverflow.com/questions/25199800/birt-report-tool

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!