2012-08-06 64 views
2

我是新来的CR,需要一个公式,可以给我一个日期字段的月底a。 如果日期是628/2012或2012年7月12日无论该字段显示月份的哪一天,我都需要该公式作为月末。当然,我们知道不是每个月都会在30或31和2月29日或30日结束。因此,我可以用什么公式来做到这一点水晶报告日期公式,使其月月底

实例字段名{} table.end_date

任何帮助是极大的赞赏。

在此先感谢。

回答

4

创建一个公式字段来计算月末:

//{@EndOfMonth} 
// find the first day of the month, add a month to it, then subtract a day 
DateAdd("m", 1, DateTime(Year({table.dateField}), Month({table.dateField}), 1, 0,0,0)) - 1 

创建第二个公式,将生成一个文本表示:

//{@TextRepresentation} 
If Isnull({table.end_date}) Then 
    Space(8) 
Else 
    ToText({@EndOfMonth}, "YYYYMMDD") 
+0

所以我尝试过,但总是收到一个布尔值误差与我试图添加到它的公式的其余部分。如果totext({table,end_date})<>“” then totext({table,end_date},“MMddyyyy”) else totext(“”) and DateAdd(“m”,1,DateTime table,end_date}), Month({table,end_date}),1,0,0,0)) - 1你认为这可能是导致错误还是我会错误的方式。再次感谢您的帮助 – Dagz200 2012-08-07 00:37:20

+0

'end_date'是'DATE'字段吗?你为什么试图将它转换为一个空间? – craig 2012-08-07 12:07:27

+0

是的结束日期是一个日期字段,我将它转换为8个空格字符,如果没有日期字段中要保存8个空格的文本导出我正在用报告 – Dagz200 2012-08-07 13:10:20