Crystal Reports:根据字段值显示日期范围(月份,月份的第一天,每年的月份,最后一天,年份)

时间:2018-06-13 20:40:25

标签: crystal-reports date-range

我需要根据字段中日期的前一个月显示日期范围。例如,如果日期值(DOCDATE)6/6/18,我希望显示的范围为:

5/1/18 to 5/31/18

我能够使用LASTFULLMONTH最小和最大约束,并且它适用于当月的记录,但我需要使用DOCDATE作为控件。

1 个答案:

答案 0 :(得分:2)

您可以使用以下公式实现此目的。
注意公式名称,因为它们部分地相互依赖。

<强> {@ prevMonth}
通过从{@DOCDATE}

减去一个月来获取上个月
DateAdd("m", -1, {@DOCDATE})

<强> {@的startDate}
通过从{@prevMonth}和日1的年份和月份创建新日期来获取开始日期(上个月的第一天)。

Date(Year({@prevMonth}), Month({@prevMonth}), 1)

<强> {@ endDate}结束
通过创建{@DOCDATE}年和1年的新日期减去一天来获取结束日期(上个月的最后一天)

Date(DateAdd("d", -1, Date(Year({@DOCDATE}), Month({@DOCDATE}), 1)))

<强> {@ displayRange}
显示范围。

CStr({@startDate}) & " to " & CStr({@endDate})