多个FPM图表选择/取消选择

2020-09-19 18:02发布

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

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


嗨!

我们在同一FPM组件中有2个图表,当从另一个数据中选择数据时,我们希望清除第一个图表的选择。

我们正在尝试在应用控制器馈送器上使用图表方法,例如IF_FPM_CHART_TABLE_SELECTION〜SET_SELECTION_BY_INDICES或CL_FPM_CHART_TABLE_MODEL-> reset_selection

但是,当使用其中任何一个时,都会触发事件" FPM_CHART_SELECTION",因此我们无法从手动选择还是自动取消选择中得知它。

我的意思是,如果我们从图表A中选择一些数据,则将其突出显示。 然后,我们选择图表B中的数据,并希望取消选择图表A中的数据。

我们能够使用上述方法从图表A中取消选择数据,但是它们都触发了带有图表A信息的新事件" FPM_CHART_SELECTION"。 我们不知道它是来自手动选择A图表(应重置图表B的选择)还是来自自动事件触发的选择图表B(不应重置图表B的选择)

有什么建议吗?

非常感谢

K,

奥古斯丁。

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

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


嗨!

我们在同一FPM组件中有2个图表,当从另一个数据中选择数据时,我们希望清除第一个图表的选择。

我们正在尝试在应用控制器馈送器上使用图表方法,例如IF_FPM_CHART_TABLE_SELECTION〜SET_SELECTION_BY_INDICES或CL_FPM_CHART_TABLE_MODEL-> reset_selection

但是,当使用其中任何一个时,都会触发事件" FPM_CHART_SELECTION",因此我们无法从手动选择还是自动取消选择中得知它。

我的意思是,如果我们从图表A中选择一些数据,则将其突出显示。 然后,我们选择图表B中的数据,并希望取消选择图表A中的数据。

我们能够使用上述方法从图表A中取消选择数据,但是它们都触发了带有图表A信息的新事件" FPM_CHART_SELECTION"。 我们不知道它是来自手动选择A图表(应重置图表B的选择)还是来自自动事件触发的选择图表B(不应重置图表B的选择)

有什么建议吗?

非常感谢

K,

奥古斯丁。

付费偷看设置
发送
4条回答
小灯塔
1楼-- · 2020-09-19 18:54

你好奥古斯丁,

供料器方法GET_DATA和PROCESS_EVENT中存在标志IV_RAISED_BY_OWN_UI,仅当事件是从分配了供料器实例的UIBB触发时才设置的。

此外,您还可以在事件参数(如PARENT_UIBB)中找到事件的源UIBB。

这些信息应足以区分不同的CHART_SELECTION事件。

最诚挚的问候,

基督徒

黑丝骑士
2楼-- · 2020-09-19 18:53

嗨,基督徒,

我们已经尝试过使用这些选项,问题在于选择第二张图表时,如果使用上述任何方法,其操作与再次选择第一张图表相同。

我的意思是:

选择图表1。

选择图表2。(未取消选择自己的图表,因为我们知道选择事件是由自己的ui引发的)。 取消选择图表1,因为在图表2中进行了选择。此取消选择引发了图表1中的另一个事件。因此,第二个图表不会由自己的图表引发,因此,图表2也将被取消选择。

很抱歉,如果您不直接在系统上尝试,会很困难。

非常感谢

K,

阿古斯丁

歪着头看世界
3楼-- · 2020-09-19 18:49

你好阿古斯丁

我仍然不确定我是否理解该问题-让我尝试重新措辞:

您有2个图表A和B。现在,用户在A中选择了某项。然后,他在B中选择了某项。现在,您将按代码取消选择ChartA。 这会导致图表A中出现"回声"取消选择事件。

您的问题是,您现在不知道echo事件不是由用户交互触发的。 因为没有办法决定。

您只想对用户交互做出反应。

问题不是,您不知道哪个图表引发了该事件,而是问题,您不知道该事件是如何触发的。

不幸的是,没有简单的解决方案。

您可以做的是将代码设置的选择与echo事件提供的选择进行比较。 如果没有区别,请忽略该事件!

另一种解决方案是升级到SAP_UI 7.52,并使用新的Vizframe UIBB 此UIBB可以消除回声事件。

最诚挚的问候,

基督徒

空代码
4楼-- · 2020-09-19 18:39

嗨,克里斯蒂安

那正是问题所在。 我们通过在应用程序控制器上使用自定义事件+属性来解决此问题。

选择完成后,使用这种方法,我们可以确定选择是手动完成还是通过编码完成。

非常感谢!

K,

奥古斯丁。

一周热门 更多>