Technology Blog Posts by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 
LinnaZhang
Product and Topic Expert
Product and Topic Expert
545

SAP 分析云提供了强大且丰富的图表样式和交互方式来满足用户对于数据可视化以及企业计划的需求。 在实际应用中,我们的用户对图表的交互有时会有更定制化的需求,比如希望创建隐藏和显示图标的按钮。因此,SAP 分析云提供了脚本功能来进一步提高图表和交互的定制程度。 本系列文章将分享在 SAP 分析云中通过简单的脚本代码实现增强故事功能的实践经验,旨在帮助没有深厚编程背景的用户学习SAP分析云故事中的脚本编写。

 

一、前言 

 

本文通过 SAP分析云 的最新功能(如优化设计体验和脚本支持),从现有的故事入手,逐步添加小代码段来提升用户体验。我们分享了两个实用技巧: 

  1. 如何通过按钮在图表和表格之间切换显示 
  1. 如何让用户在查看模式下动态添加或修改表格的维度和度量。 

这些简洁的代码解决方案既高效又实用,为提升 SAP分析云 故事的交互性提供了良好的示范。 

LinnaZhang_1-1734404861798.gif

 

二、利用脚本显示和隐藏内容 

 

SAC 故事中,如果你想简单地显示一个元素并隐藏另一个,可以利用新的优化设计体验(Optimised Story)中的脚本快速简单地实现这个功能。 

在优化故事中,每个添加到页面的元素都会自动分配一个默认名称。如果你查看 故事大纲,就会看到你在故事中添加的所有对象。 

以下是一个简单的示例:一个包含 1 个页面(Page_1)和两个对象(Chart_1 Table_1)的故事。我们可以看到一个简单的柱状图和一个表格,默认情况下 SAC 会自动给这些对象分配名字。为了更高效地利用空间,我希望可以在图表和表格之间切换显示,而不是同时显示两者。 

LinnaZhang_2-1734404892268.png

 

这是一个简单的需求,所需代码也很简单。下面是实现这一功能的逻辑(非具体代码): 

 

// 以下是伪代码实现: 
    IF Chart is visible,  
            Hide Chart &  
            Show Table  
    Otherwise  
            Show Chart &  
            Hide Table 
    The End

 

 

代码说明: 

  • 如果图表可见,则隐藏它并显示表格。 
  • 如果图表不可见,则隐藏表格并显示图表。 

我们将在一个按钮的 onClick() 脚本中实现上述逻辑。可以通过故事大纲中或右键单击按钮选择 onClick()脚本来访问按钮脚本界面,并在脚本中编写具体的代码。 

以下是具体的代码示例: 

 

if (Chart_1.isVisible()) { 
    Chart_1.setVisible(false); 
    Table_1.setVisible(true); 
} else { 
    Chart_1.setVisible(true); 
    Table_1.setVisible(false); 
} 

 

 

LinnaZhang_3-1734404892270.png

保存、关闭并查看故事后,点击按钮1”后可以在图表和表格之间切换。一个简单的需求,通过一些简单的代码即可实现简单的解决方案。 

 

三、动态添加/删除 SAC 表格的列或行 

 

接下来的技巧是所有故事中都比较实用的功能。它允许故事在查看状态下可以添加、修改或删除表格中的维度和度量,而不需要授予故事的编辑权限。这意味着我可以让用户与故事互动,但无需为整个用户群体授予编辑权限。 

我们将在前面的示例中添加一个新按钮,命名为按钮2”。打开该按钮的 onClick() 脚本,并添加以下代码: 

 

// 打开导航面板以允许用户在运行时添加维度 
Table_1.openNavigationPanel({expanded: true}); 

 

 

代码说明: 

  • openNavigationPanel() 方法用于打开面板。 
  • 参数 expanded: true 表示展开可用项目面板和生成器面板。如果将其改为 expanded: false,则只会打开右侧生成器面板。 

这行代码的作用是打开导航面板,允许用户对指定的表格进行修改。脚本编写完成后,保存、关闭并查看故事,当你点击按钮2”时,右侧的可用项目面板将会打开,供用户选择和修改表格内容。 

expanded: false时,只打开生成器面板 

LinnaZhang_4-1734404892271.png

expanded: true时,打开可用项目和生成器两个面板,此时可以通过可用项目来为编辑表格展示的内容。 

LinnaZhang_5-1734404892273.png

如果你在使用按钮时不习惯使用文本文字对按钮进行描述,可以选择上传对应含义的图标,并且可以通过工具提示来解释按钮的功能。 

LinnaZhang_6-1734404892274.png

 

四、总结 

 

在本系列的开篇中,我们学习了如何通过几行代码来控制对象的可见性,以及通过一行代码让用户能够动态修改表格结构。这些简单的代码片段为可用性带来了显著提升。在接下来的系列文章中将继续分享更多类似的小技巧,展示如何通过简单的技术实现更优的用户体验,敬请期待。 

祝编码愉快! 

 

原作者:Daniel_Davis  

原文链接:Start Your scripting Journey The Easy Way With SAP Analytics Cloud | Part One