2020-09-03 13:34发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
亲爱的SAP大师,
我正在寻找一种方法来过滤webIDE中的测量值。 我相信我们只能过滤时间范围,而不能过滤SAP IoT Leonardo支持中的值。
是否有解决方法?
亲切的问候, Nitin
你好
这是可能的。 您可以过滤测量值,但还需要传递要过滤的时间范围。
例如:
事物("您的事物ID")/事物类型/属性设置?时间范围= 1M&$ filter = 您想要的密钥 过滤eq值
因此,实际上,您只是在时间范围之后才通过过滤器。
您还可以查看SAP IoT API文档以获取更多信息:
https://help.sap.com/查看器/350cb3262cb8496b9f5e9e8b039b52db/1.24.0.0/zh-CN/f458d75d904f4686857e1ff1172079b4.html
希望这会有所帮助。
亲切的问候,
干
嗨@vvdries
我试图这样做:
timerange = 2019-08-19T07:29:42.817Z-2019-08-20T07:29:42.817Z&$ filter =湿度%20eq%20%2766%27
我得到这个答复:
我认为我确实放入了正确的过滤器?
Nitin
你好,
您确定财产湿度是在Thing Modeler中设置的财产中的财产吗?
这是区分大小写的。 同样,如果您的属性是例如整数,则不必将单引号放在值66周围。
嗨@vvdries,
是的,我有多个属性,我还尝试过滤温度和光线。
您有一个可行的例子吗?
Hi Nitin,
例如,这是有关如何在Postman中使用它的示例调用。 我的赌注。
如果要在UI5应用程序中执行此调用,则需要实现一些功能。
1。 确保配置了以下目标:
名称:IOTAS-ANALYTICS-THING_ODATA
URL: https://analytics-thing-sap .cfapps.eu10.hana.ondemand.com
当然是必需的身份验证OAuth2SAMLBearerAssertion
2。 在您的Manifest.json文件中添加以下内容:
将以下占位符替换为您的值:
在数据源下
如果您从模板生成物联网应用程序,您将看到这些uri的构建方式。
" AnalyticsService":{ " uri":"/img/IOTAS-ANALYTICS-THING-ODATA/您的租户。您的套餐:您的属性集", " type":" OData", "设置":{ " odataVersion":" 2.0", " localUri":" localService/Thing_Metadata2/metadata.xml" } }
在模型下添加:
" analyticsModel":{ " dataSource":" AnalyticsService", " preload":是的, "设置":{ " useBatch":否, " defaultCountMode":"内联" } }
3。 在您的Neo-app.json
添加以下内容
{ " path":"/img/IOTAS-ANALYTICS-THING-ODATA", "目标":{ " type":"目的地", "名称":" IOTAS-ANALYTICS-THING-ODATA" }, " description":" IOTAS-ANALYTICS-THING-ODATA" },
4。 在您的控制器中
添加以下内容以对ID,时间和值进行过滤以检索数据。 用您的thingid更改thingid,并用您要过滤的属性名更改属性名。 在您的情况下,值135-> 66。
filterMeasurements:函数(){ var oModel = this.getView()。getModel(" analyticsModel"); var startDate = new Date(); startDate.setMonth(startDate.getMonth()-1); var endDate = new Date(); var aFilters = [ 新的过滤器({ 过滤器:[ //要过滤的属性 新的过滤器({ 路径:"属性名称", 运算符:FilterOperator.EQ, 值1:135 }), //thingid 新的过滤器({ 路径:" id", 运算符:FilterOperator.EQ, 值1:" THING-ID" }), 新的过滤器({ 路径:"时间", 运算子:FilterOperator.GE, 值1:startDate }), 新的过滤器({ 路径:"时间", 运算子:FilterOperator.LT, 值1:endDate }) ], 和:正确 }) ]; oModel.read("/img/measurements",{ 过滤器:aFilters, 成功:函数(oRetrievedResult){ console.log(oRetrievedResult) }, 错误:函数(oError){ } }); },
这样,您可以根据所需的值过滤数据。 事物ID和值是可选的,时间是必需的。
您好N。 范Nieuwenhoven ,
这是正常现象,您可以继续执行下一步。
如果您正确设置了目标位置,然后执行以下步骤,则应该能够检索到所需的数据。
(我的目的地检查返回相同的消息)
最多设置5个标签!
你好
这是可能的。 您可以过滤测量值,但还需要传递要过滤的时间范围。
例如:
事物("您的事物ID")/事物类型/属性设置?时间范围= 1M&$ filter = 您想要的密钥 过滤eq值
因此,实际上,您只是在时间范围之后才通过过滤器。
您还可以查看SAP IoT API文档以获取更多信息:
https://help.sap.com/查看器/350cb3262cb8496b9f5e9e8b039b52db/1.24.0.0/zh-CN/f458d75d904f4686857e1ff1172079b4.html
希望这会有所帮助。
亲切的问候,
干
嗨@vvdries
我试图这样做:
我得到这个答复:
我认为我确实放入了正确的过滤器?
Nitin
你好,
您确定财产湿度是在Thing Modeler中设置的财产中的财产吗?
这是区分大小写的。 同样,如果您的属性是例如整数,则不必将单引号放在值66周围。
亲切的问候,
干
嗨@vvdries,
是的,我有多个属性,我还尝试过滤温度和光线。
您有一个可行的例子吗?
Nitin
Hi Nitin,
例如,这是有关如何在Postman中使用它的示例调用。 我的赌注。
如果要在UI5应用程序中执行此调用,则需要实现一些功能。
1。 确保配置了以下目标:
名称:IOTAS-ANALYTICS-THING_ODATA
URL: https://analytics-thing-sap .cfapps.eu10.hana.ondemand.com
当然是必需的身份验证OAuth2SAMLBearerAssertion
2。 在您的Manifest.json文件中添加以下内容:
将以下占位符替换为您的值:
在数据源下
如果您从模板生成物联网应用程序,您将看到这些uri的构建方式。
在模型下添加:
3。 在您的Neo-app.json
中添加以下内容
4。 在您的控制器中
添加以下内容以对ID,时间和值进行过滤以检索数据。 用您的thingid更改thingid,并用您要过滤的属性名更改属性名。 在您的情况下,值135-> 66。
这样,您可以根据所需的值过滤数据。 事物ID和值是可选的,时间是必需的。
希望这会有所帮助。
亲切的问候,
干
您好N。 范Nieuwenhoven ,
这是正常现象,您可以继续执行下一步。
如果您正确设置了目标位置,然后执行以下步骤,则应该能够检索到所需的数据。
(我的目的地检查返回相同的消息)
一周热门 更多>