创建服务(命名:getPropertiesHistory),调用getPropertiesHistory()服务,获取“催化裂化一车间”对象的“重质馏分油_进”最近5分钟内的历史值,每一分钟取一个值,开始时间和结束时间需要调用时间格式化功能集合进行格式化;
// 开始时间和结束时间获取的代码:var endTime = new Date();//获取当前时间作为结束时间var beginTime = new Date(endTime.valueOf()-5*60*1000); //用当前时间减去(1000毫秒*60秒*5=分钟)就能获取到开始时间// 将beginTime 、endTime调用功能集合的DataFormat方法对时间进行格式转换
点击实例下服务—新建,输入服务相关信息,返回string类型
点击脚本,点击对象选择器,选择车间模板下的实例chlh01,选择内置服务getPropertiesHistory,快速生成代码
脚本代码如下:
var dtime = new Date();//获取当前时间作为结束时间
var beginTime = new Date(dtime.valueOf()-5*60*1000); //用当前时间减去(1000毫秒*60秒*5=分钟)就能获取到开始时间
//将beginTime 、endTime调用功能集合的DataFormat方法对时间进行格式化
var inputs = {
dt:beginTime, //String
type:'utc' //String
};
var instance = templates['guoqin_guoqin.testM'].instances('guoqin');
var sj = instance.executeService('guoqin_guoqin.DateFormat',inputs);
var input1 = {
dt:dtime, //String
type:'utc' //String
};
var jssj = instance.executeService('guoqin_guoqin.DateFormat',input1);
var input2 = {
"fill": {
"strategy": "previous"
},
"groupBy": {
"time": "60s"
},
"limit": 5,
"offset": 0,
"select": [
"first(\"gq_carbytrcc.workshop.chlh01.gq_carbytrcc.zzy\")"
],
"where": {
"and": {
"timestamp": {
"ge": "",
"gt":sj,
"le": "",
"lt":jssj
}
}
}
}
var param = {
"inputs": JSON.stringify(input2)
}
var propValue = objects.chlh01.getPropertiesHistory(param)
propValue["results"]