使用水晶选择一年的公式

时间:2018-03-27 14:07:40

标签: crystal-reports

我创建了一个Crystal Report,它使用Running Totals计算中的公式。

    {OINV.DocDate} in DateTime (2018, 01, 01, 00, 00, 00) to DateTime (2018, 01, 
31, 00, 00, 00)

但是,我已经在水晶语法中包含了这一年,现在报告仅与2018相关。我努力创建第1个公式,将由用户输入(例如:2017年)或2018)并用于记录选择标准

年度公式:year ({OINV.DocDate})

接下来,我创建了一个输入参数供用户输入报告"年"并且只提取等于输入年份的记录。

1st - 我将OINV.DocDate转换为字符串。

公式ToText ({OINV.DocDate}) 公式名称:"年份为字符串"

接下来,由于年份是前4个职位,我创建了下一个仅拉动年份的公式。

公式Left ({@year to string}, 4) 公式名称:"年份为字符串2"

在记录选择标准中,公式仅提取输入的年份记录:

{@year to string 2} = {?Year} 

主要问题是,如何编辑运行总计公式,用定义所选年份的新公式替换硬编码年份。

提前感谢您的任何建议。

1 个答案:

答案 0 :(得分:0)

试试这个:

    {OINV.DocDate} in DateTime (ToNumber({?Year}), 01, 01, 00, 00, 00) to DateTime
 (ToNumber({?Year}), 01, 31, 00, 00, 00)

这里有一个建议,而不是参数作为字符串参数Integer,这将使你的逻辑更加简单