重新加载物联网设备数据

2020-09-16 10:17发布

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

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


大家好,

我正在尝试为通过SAP IoT Cloud添加的IoT设备创建仪表板。 从SAP Gateway Edge Tool到SAP IoT Cloud,Thing Modeler以及从我的Web IDE到某个目标的所有过程,我都做到了。 我使用了IoT模板之一,并添加了IoT ThingList,MeasuredValues表,图表和地图。 目前,一切正常,位置显示在地图上,图表中的超出值显示在MeasuredValues表格中。 但是因为我们是物联网设备,所以每隔几秒钟发送一次新数据。 我的仪表板应该始终显示最新的位置和数据,但是只有在重新加载网站后才会刷新。

我注意到图表 MeasuredValues 允许执行重新加载操作。 我尝试过的是每3秒调用一次函数的循环

 test:function(){
 this.byId(" __ values0")。doReload();
 this.byId(" __ tchart0")。doReload();
 },


 buttonPressed:function(){
 setInterval(
 (功能(自我){
 return function(){
 自我测试();
 }
 })(这个),
 3000
 );
 }
 

如果我理解正确,我已经将想要刷新的内容提供给功能了。 但是不幸的是,我不知道如何获取或创建Thing的对象来填充doReload函数。 因为它以这种形式运行时没有错误,但是却无能为力。

第二个挑战是地图。 没有重装动作或类似的动作。 我以为我可以切换到Google地图并使用动态地图。 在这种情况下,我遵循了该教程:链接。 当前,该地图也是静态的,因此没有比SAP的地图好。 有没有实现实时地图的方法?

是否有解决方案来使用新的实时数据更新仪表板?

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

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


大家好,

我正在尝试为通过SAP IoT Cloud添加的IoT设备创建仪表板。 从SAP Gateway Edge Tool到SAP IoT Cloud,Thing Modeler以及从我的Web IDE到某个目标的所有过程,我都做到了。 我使用了IoT模板之一,并添加了IoT ThingList,MeasuredValues表,图表和地图。 目前,一切正常,位置显示在地图上,图表中的超出值显示在MeasuredValues表格中。 但是因为我们是物联网设备,所以每隔几秒钟发送一次新数据。 我的仪表板应该始终显示最新的位置和数据,但是只有在重新加载网站后才会刷新。

我注意到图表 MeasuredValues 允许执行重新加载操作。 我尝试过的是每3秒调用一次函数的循环

 test:function(){
 this.byId(" __ values0")。doReload();
 this.byId(" __ tchart0")。doReload();
 },


 buttonPressed:function(){
 setInterval(
 (功能(自我){
 return function(){
 自我测试();
 }
 })(这个),
 3000
 );
 }
 

如果我理解正确,我已经将想要刷新的内容提供给功能了。 但是不幸的是,我不知道如何获取或创建Thing的对象来填充doReload函数。 因为它以这种形式运行时没有错误,但是却无能为力。

第二个挑战是地图。 没有重装动作或类似的动作。 我以为我可以切换到Google地图并使用动态地图。 在这种情况下,我遵循了该教程:链接。 当前,该地图也是静态的,因此没有比SAP的地图好。 有没有实现实时地图的方法?

是否有解决方案来使用新的实时数据更新仪表板?

付费偷看设置
发送
1条回答
小熊yu生菜
1楼-- · 2020-09-16 10:52

安德烈,

到目前为止,仅在IoTThingList,IoTEventList,IoTMap和MeasuredValue控件上才可能进行实时更新。 到目前为止,我们不支持IoTChart的实时更新。 但是,我们已经计划好了,一旦可用,它将在我们的文档中正式发布。

我将向您解释如何更新其他物联网控件

1。 您如何更新IoTMeasuredValue?

-您只需要调用IoTMeasuredValue控件的_extractModelForThingIdReloaded方法。

有关如何操作,请参见以下示例。

 updateMeasuredValuesRealTime:function(){
 this.refreshInterval = setInterval(function(){
 var mvList = this.byId(" <测量值控件的ID>");
 mvList._extractModelForThingIdReloaded(mvList);
 } .bind(this),2000); //以毫秒为单位的时间
 },

2。 我们如何更新IoTThingList,IoTMap或IoTEventList

-在这里,您只需要查询oData模型。 为此,您需要阅读模型并在必要时传递扩展条目

有关如何操作,请参见以下示例。


 updateRealTime:function(){
 var oModel = this.getView()。getModel();
 setInterval(function(){
 oModel.read("/img/Things",{//使用/Events加载eventList控件
 urlParameters:{
 " $ expand":" <传递您的扩展条目>"
 }
 });
 } .bind(this),10000);
 oModel.refresh();
 },

 

请注意,对IoTAE服务进行过多的轮询可能会导致高额收费,也可能会阻碍UI的性能。

如果您需要帮助,请告诉我

感谢和问候

Indrajith

一周热门 更多>