使用iReport中的sql连接生成表格报告

时间:2015-07-27 08:11:16

标签: jasper-reports

SELECT a.CIVIL_ID,a.PAT_NAME,a.SEX,a.PAT_NAT_CD,a.BIRTH_DT,a.ADDR,a.MOBILE_NO,b.FILE_NO,b.CREATED_DATE
    FROM PAT_MST a
    JOIN PATIENT_FILE b ON (a.PATIENT_ID = b.PATIENT_ID)
    AND( b.HOSP_DEPT_SEC_SERIAL = $P{P_HOSP_DEPT_SEC_CD})
    AND a.SEX = DECODE($P{P_GENDER},'ALL',a.SEX,$P{P_GENDER})
    AND TRUNC(B.CREATED_DATE)>=  TO_DATE($P{P_FILE_CR_DT_FROM},'DD/MM/RRRR') AND TRUNC(B.CREATED_DATE) <= TO_DATE($P{P_FILE_CR_DT_TO},'DD/MM/RRRR') 

我正在使用此查询在iReport(5.6.0)中生成表格报告,但出于某种原因,我只获取列标题,但此查询在我运行toad时返回记录。

请告诉我哪里错了..

1 个答案:

答案 0 :(得分:1)

您使用的是Table报表元素吗?如果是这样,您使用的不是主数据集,而是使用其他一些子数据集。您应该将参数值从主数据集传输到您的表格#34; feed&#34;。

  1. 在主数据集中使用的每个参数的参数中添加一个参数。
  2. 右键单击表格编辑表格dtasource - >选择参数标签 - >点击添加
  3. 添加/修改参数窗口中,在上方菜单中选择子数据集参数。在下方菜单中选择它们的值(来自主数据集的对应参数)。为每个参数执行此操作。