水晶报告:记录选择大于等于日期和时间且小于日期和时间

问题描述 投票:0回答:4

水晶报表记录选择中,如何选择日期和时间之间的记录。

该表具有单独的日期和时间字段。

例如:
从 2015 年 7 月 24 日晚上 9:00 开始
截至 2015 年 7 月 25 日上午 9:00

所以我想选择从7月24日晚上9:00开始到7月25日上午9:00的记录

我该怎么做?

date crystal-reports crystal-reports-2008 crystal-reports-2010 crystal-reports-8.5
4个回答
0
投票

您可以为日期和时间创建单个参数..


0
投票

我能想到2个解决方案..

  1. 创建一个结合数据库日期和时间字段的视图并创建单个列。使用报告中的视图并为该日期时间字段应用记录选择公式,例如

    databaseview.datetime>='24-July-2015 9:00 PM' and databaseview.datetime<'25-July-2015 9:00 AM
    '

  2. 在记录选择中使用日期作为

    database.date>='24-July-2015' and database.date<'25-July-2015'

现在在报告中的每个字段中按时应用条件并显示报告..如下所示。

If (database.time>='9:00 PM' and database.time<'9:00 AM')
then yourdisplayfield

0
投票

然后

1.创建一个公式以将日期和时间添加为单个字段..okkk

公式:日期时间(日期,时间)

2.创建静态参数类型为 DateTime 并在值选项中选择允许值范围为 true..

3.在选择导出中选择您创建的公式和参数。

它会起作用..

-Ankur


0
投票

我终于能够做到了。这是如何

在记录选择中:

{@EndDate} in {?FromDate} to {?ToDate} and
{@StartDate} in {?FromDate} to {?ToDate} and
(if ({@StartDate} in {?FromDate} to {?FromDate}) then CTime({@StartTime}) >= CTime(ToText({?StartTime})) else if ({@EndDate} in {?ToDate} to {?ToDate}) then CTime({@EndTime}) <= CTime(ToText({?EndTime})) else true)

感谢@Ankur 的帮助:)

© www.soinside.com 2019 - 2024. All rights reserved.