在Crystal Report DateTime字段中仅提取年份值

时间:2014-03-14 09:57:21

标签: datetime crystal-reports formula

我正在使用Crystal Report,现在我正处于一个场景中,我必须从datetiem字段中提取Year值, 例如, 如果值为: 01/03/2014 10:20:01 AM

我只需提取 2014

我做的是什么,我改变了该字段的DataFormat是dd / mm / yyyyy

现在我已经开始使用配方。

Formula = Right(CStr ({report;1.FirstYearDate}),4)

显示 01AM

请帮助我

4 个答案:

答案 0 :(得分:7)

我这样做了, 我的字符串是" 01/02/2012 10:45:22Am"

使用此公式后:

Formula = ToText({report_;1.FirstYearDate}, "yyyy")

我有这个值: 2012

答案 1 :(得分:4)

试试这种方式

Year(Cdatetime(<<your date time value here>>));

答案 2 :(得分:2)

试试这个

Year (DateValue ({Orders.Order Date}))

此处例如,日期字段为Orders表中的Order date

答案 3 :(得分:1)

谢谢。我的报告场景有- {Orders.POST_DATE}中的minimum(YearToDate)maximum(LastFullMonth)

在新的一年运行之前,它一直运行良好。然后,Crystal读取日期为上个月的最后一天和新年的第一天。

在这里看到解决方案之后。我以这种方式修改了代码,可以正常工作:

{Orders.POST_DATE}DateSerial(Year (minimum(LastFullMonth)), 1,1)中的

maximum(LastFullMonth),现在将1/1 / yyyy设置为与LastFullMonth中的年份相同。