Crystal Report ver 9:其余文本似乎不是公式的一部分

时间:2014-04-17 15:25:36

标签: sql sql-server crystal-reports

这是我们在Crystal ver 9上的报告。它包括用于选择用户ID的参数以及扫描部件的日期,并提供扫描每个部件的时间。我希望它添加另一列来计算扫描之间的间隔时间。请求是将第一个时间戳留空,但剩余时间计算间隔时间。

http://i59.tinypic.com/bjbtl1.jpg

这是我在TOAD中提出的SQL模型,但我无法将其转换为Crystal。

with temptab as ( select 1 key, sysdate as dt from dual union select 1 key, sysdate + interval '1' minute as dt from dual union select 1 key, sysdate + interval '2' minute as dt from dual union select 1 key, sysdate + interval '6' minute as dt from dual union select 1 key, sysdate + interval '7' minute as dt from dual ) select t.key, t.dt, lag(t.dt) over (partition by t.key order by t.dt asc) prev_row_dt, (t.dt - lag(t.dt) over (partition by t.key order by t.dt asc))*24*60*60 diff_in_seconds from temptab t;


以下是randon用户的CR ihave。请记住,有一些参数设置为选择用户和日期:

SELECT "LOCN_HDR"."LOCN_BRCD", "ITEM_MASTER"."SKU_BRCD", "USER_MASTER"."LOGIN_USER_ID", "PROD_TRKG_TRAN"."MOD_DATE_TIME", "PROD_TRKG_TRAN"."TRAN_TYPE", "PROD_TRKG_TRAN"."TRAN_CODE", "PROD_TRKG_TRAN"."USER_ID", "USER_MASTER"."USER_NAME", "PROD_TRKG_TRAN"."NBR_UNITS", "PROD_TRKG_TRAN"."SKU_ID" FROM "PKMS"."LOCN_HDR" "LOCN_HDR", "PKMS"."USER_MASTER" "USER_MASTER", "PKMS"."PROD_TRKG_TRAN" "PROD_TRKG_TRAN", "PKMS"."ITEM_MASTER" "ITEM_MASTER" WHERE ("USER_MASTER"."LOGIN_USER_ID"="PROD_TRKG_TRAN"."USER_ID") AND ("LOCN_HDR"."LOCN_ID"="PROD_TRKG_TRAN"."TO_LOCN") AND ("PROD_TRKG_TRAN"."SKU_ID"="ITEM_MASTER"."SKU_ID") AND ("PROD_TRKG_TRAN"."TRAN_CODE"='001' OR "PROD_TRKG_TRAN"."TRAN_CODE"='005') AND ("PROD_TRKG_TRAN"."TRAN_TYPE"='200' OR "PROD_TRKG_TRAN"."TRAN_TYPE"='300') AND ("PROD_TRKG_TRAN"."MOD_DATE_TIME">={ts '2014-04-16 00:00:00'} AND "PROD_TRKG_TRAN"."MOD_DATE_TIME"<{ts '2014-04-17 00:00:00'}) AND "PROD_TRKG_TRAN"."USER_ID"='4517' ORDER BY "PROD_TRKG_TRAN"."MOD_DATE_TIME", "USER_MASTER"."LOGIN_USER_ID", "PROD_TRKG_TRAN"."TRAN_TYPE

1 个答案:

答案 0 :(得分:0)

任何过滤器类型信息都会进入报告 - &gt;选择公式 - &gt;记录

然后在详细信息部分中,您将放置一个公式字段来查找您要查找的差异,它看起来像这样

datediff("s",date(totext({Calibration.C2301}&' '&{Calibration.C2333})),{Calibration.C2335})

我不确定滞后(t.dt)是什么,但上面是日期的基本语法(totext({Calibration.C2301}&amp;&#39;&#39;&amp; {Calibration .C2333}))是一个日期字段和时间字段连接使这个工作。