我创建了一个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}
主要问题是,如何编辑运行总计公式,用定义所选年份的新公式替换硬编码年份。
提前感谢您的任何建议。
答案 0 :(得分:0)
试试这个:
{OINV.DocDate} in DateTime (ToNumber({?Year}), 01, 01, 00, 00, 00) to DateTime
(ToNumber({?Year}), 01, 31, 00, 00, 00)
这里有一个建议,而不是参数作为字符串参数Integer
,这将使你的逻辑更加简单