我如何在Crosstab报告CR 2013中动态创建计算列

2020-09-22 18:22发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我已经在Crystal Report 2013中准备了交叉表报表,如下所示,并使用"计算列"字段获取年份差异。 但是当我更改输入参数并选择其他年份时,年份差异未出现。 我需要帮助来动态创建计算列。

报告条件

报告输出

rptoutp.jpg

我曾经在计算列中的下面代码中显示年差异

黑白15和16

如果GetColumnPathIndexOf({?Year} -3)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -3),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year} -2),CurrentSummaryIndex))

黑白15和17

如果GetColumnPathIndexOf({?Year} -3)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -3),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year} -1),CurrentSummaryIndex))

黑白15和18

如果GetColumnPathIndexOf({?Year} -3)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -3),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year}),CurrentSummaryIndex))

黑白16和17

如果GetColumnPathIndexOf({?Year} -2)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -2),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year} -1),CurrentSummaryIndex))

黑白16和18

如果GetColumnPathIndexOf({?Year} -2)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -2),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year}),CurrentSummaryIndex))

黑白17和18

如果GetColumnPathIndexOf({?Year} -1)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -1),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year}),CurrentSummaryIndex))

非常感谢您的任何提示,非常感谢。

最好的问候

rptcriteria.jpg (17.1 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我已经在Crystal Report 2013中准备了交叉表报表,如下所示,并使用"计算列"字段获取年份差异。 但是当我更改输入参数并选择其他年份时,年份差异未出现。 我需要帮助来动态创建计算列。

报告条件

报告输出

rptoutp.jpg

我曾经在计算列中的下面代码中显示年差异

黑白15和16

如果GetColumnPathIndexOf({?Year} -3)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -3),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year} -2),CurrentSummaryIndex))

黑白15和17

如果GetColumnPathIndexOf({?Year} -3)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -3),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year} -1),CurrentSummaryIndex))

黑白15和18

如果GetColumnPathIndexOf({?Year} -3)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -3),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year}),CurrentSummaryIndex))

黑白16和17

如果GetColumnPathIndexOf({?Year} -2)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -2),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year} -1),CurrentSummaryIndex))

黑白16和18

如果GetColumnPathIndexOf({?Year} -2)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -2),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year}),CurrentSummaryIndex))

黑白17和18

如果GetColumnPathIndexOf({?Year} -1)=-1,则为0,否则,如果{?Year}> 0,则-(GridValueAt(CurrentRowIndex,GetColumnPathIndexOf({?Year} -1),CurrentSummaryIndex)-GridValueAt(CurrentRowIndex, GetColumnPathIndexOf({?Year}),CurrentSummaryIndex))

非常感谢您的任何提示,非常感谢。

最好的问候

rptcriteria.jpg (17.1 kB)
付费偷看设置
发送
3条回答
lukcy2020
1楼-- · 2020-09-22 18:56

安瓦尔,你好

右键单击计算列的标题单元格>选择计算成员>编辑插入公式>使用此代码:

GetColumnGroupIndexOf(CurrentColumnIndex)= 0

-Abhilash

悻福寶寶
2楼-- · 2020-09-22 18:53

嗨Abhilash,

感谢您的帮助。 在您的帮助之后,year是动态显示的,但是页面导航时又遇到了另一个问题。 屏幕截图如下:

非常感谢您提供任何提示,非常感谢。

最好的问候

bbpeas
3楼-- · 2020-09-22 18:51

嗨阿比拉什

感谢您的帮助。 页面导航时出现另一个问题。 屏幕截图如下:

非常感谢您提供任何提示,非常感谢。

最好的问候

一周热门 更多>