您现在的位置是:主页 > 云存储 >

全站加速_数据库备份与恢复_是什么

2021-09-28 14:27云存储 人已围观

简介亲爱的各位, 我最近使用SDK完成了我的第一个BO设计工作室组件,它利用了Google地图及其API v3以及带有传单的OpenStreetMap。作为名为SPoT-U的仪表板项目的一部分,我希望以直观的方式显...

亲爱的各位,

我最近使用SDK完成了我的第一个BO设计工作室组件,它利用了Google地图及其API v3以及带有传单的OpenStreetMap。作为名为SPoT-U的仪表板项目的一部分,我希望以直观的方式显示来自SAP业务仓库的地理可引用数据。上述技术显然是一个开始的选择。在我回顾"战争故事"之前,我想对组件特性做一个简短的介绍。

扩展特性和上下文

我的地图组件作为一个进入仪表板的入口,让用户对当前的分析状态有一个大致的了解,并回答如下问题:

图1: 集成在仪表板中的OpenStreetMap(单击图像放大)

标记组根据缩放级别、视口和选定的关键图形进行动态聚类,以增强即席分析和模拟BW功能来聚合数据。目前支持两个独立的关键数字数据集,因为sapdesignstudio限制最多10000个数据单元可以传输到SDK组件。要显示的数字可以是整数,也可以是浮点。

可以单击上面显示的标记,或者更准确地说是簇,以触发事件,地图扩展反过来会暴露给Design Studio和仪表板的其他组件。通过使用我们的mapsapi实现,其他组件可以通过designstudio的脚本语言学习单击集群的属性。这样,我们就能够在运行时以动态方式相应地调整数据源和图表过滤器,甚至简单的基于文本的关键数字显示。在运行时也可以通过数据源操作修改映射或集群状态。组件总是反映当前的数据源状态。

图2:OpenStreetMap属性视图(单击图像放大)

这些特性使maps组件能够作为一个很好的整体视图,什么叫云服务,进入可以使用地理参考数据的分析应用程序。

在这一点上,正如所承诺的,我想与大家分享我在开发一个丰富的Design Studio地图扩展这一冒险任务中获得的一些见解。

应用程序生命周期

首先,SAP提供的Google地图示例SDK项目只是一个概念证明,在Design Studio中使用地图是可能的,但仅此而已。要真正将其用于生产目的,物联网智库,您需要了解designstudio组件的生命周期,并相应地编写应用程序。例如,对组件的每次数据更新(数据源过滤、映射侦听器等)都将触发afterUpdate函数。因此,大数据前景怎么样,此时需要分离应用程序中的函数流。至少,您希望避免多次执行初始化代码。不幸的是,如果您需要从应用程序外部输入属性,则无法将所有初始化移到init方法,只有在Design Studio框架调用afterUpdate时才可用。

属性getter/setter函数中的编码也是如此。每次执行firePropertiesChanged事件时,它们都被称为无序和批量。所以这可能会导致奇怪的应用程序行为。以下链接在这件事上对我帮助很大:。

jQuery的地图渲染问题

一旦您在gridlayout和change tabs这样的容器中使用地图组件,您会注意到您的地图画布是这样做的(注意地图剩余,左上角):

图3:渲染问题调整大小(单击图像放大)

这是因为更改选项卡会导致隐藏当前不活动的子组件并暂时失去它们的边界。要解决这个问题,您需要重置边界并在再次更改制表符时触发重绘。关于这个问题的更多信息可以在这里找到,例如:

解析结果集

这让我特别头疼。您可能注意到在上面的mapsproperties视图中,我为字段Runtime JSON数据输入了"{}",这将导致数据项及其维度完全传输到组件。到目前为止还不错,但棘手的部分是再次匹配扩展级别上的相应信息,因为所有维度数据都在不同的数组中传输。您可能认为数据看起来与初始视图或交叉表中的数据相同。不幸的是,它没有。请查看SAP Design Studio developer guide SDK1.3以供参考(第35页以后)。让我们考虑这个例子:

图4:数据源视图(点击图片放大)

下图将显示数据提交到SDK组件时的结构。这些截图是在调用afterUpdate之前,Design Studio框架更新了我的runtimedata属性之后,从浏览器开发人员工具中截取的。

图5:browser devel tools中的组件属性视图(单击图像放大)

对象"dimensions"包含与您可以在中看到的所有列相关的元数据图3。我上面的截图显示了一个名为"Kennzahlen"的列的非折叠树视图(导航"dimensions[0].members[0]")。然而,"数据"这个对象包含了我们真正感兴趣的数据,我们的关键人物。我们来看看。正如您在右侧看到的,它只是一个普通数组,包含数据源中的所有关键数字(将数组大小与实时预览数据单元格进行比较)。这意味着我们需要一个索引来告诉我们在数据数组中的哪个位置寻找对应的条目。现在对象"tuples"起作用了。对于数据源视图中的每一行和每个关键图形,都有一个元组数组,其中包含维度数组的所有索引。

图6:browser-devel tools中的组件元组视图(单击图像放大)

Tags: 全站  恢复  是什么  数据库  加速  备份 

站点信息

  • 文章统计97841篇文章