- 最新动态
- 产品介绍
- 用户指南
- 最佳实践
-
API参考
- 使用前必读
- 如何调用API
- API列表
-
错误码参考
-
错误码
-
公共错误码
- IoTA.99000001 Demo用户无操作权限
- IoTA.99000002 子用户无操作权限
- IoTA.99000003 未授权
- IoTA.99000004 帐号受限
- IoTA.99000005 帐号冻结
- IoTA.99000006 SDR用户无操作权限
- IoTA.99000007 未开通数据分析服务
- IoTA.99000008 数据分析服务被冻结
- IoTA.99000009 无该项目访问权限
- IoTA.99000010 请求参数不正确
- IoTA.99000011 系统繁忙
- IoTA.99000012 许可证已过期
- IoTA.99000013 超过许可资源使用量
- IoTA.99999998 网关服务内部错误
- IoTA.99999999 服务内部错误
-
业务面错误码
- 数据源相关错误码
-
数据管道相关错误码
- IoTA.03011001 作业定义错误
- IoTA.03011002 作业名称错误
- IoTA.03011003 作业描述错误
- IoTA.03011006 作业名已存在
- IoTA.03011007 作业数量超出限制
- IoTA.03011011 作业配置无法正常解析,请检查是否为JSON格式
- IoTA.03011012 作业不存在
- IoTA.03011013 数据源不存在
- IoTA.03011014 获取数据源失败
- IoTA.03011015 作业状态不允许当前操作
- IoTA.03011016 RTU个数不正确
- IoTA.03011018 作业未运行
- IoTA.03011019 作业启动失败
- IoTA.03011020 作业停止失败
- IoTA.03011022 作业无可用保存点
- IoTA.03011023 不允许触发savepoint
-
存储管理相关错误码
- IoTA.02010102 存储组名称重复
- IoTA.02010103 默认存储组名称禁止修改
- IoTA.02010104 老化时间非法
- IoTA.02010105 存储组类型错误
- IoTA.02010106 存储组数量超过单个项目的限制
- IoTA.02010107 存储组中包含存储,无法删除
- IoTA.02010108 指定的存储组不存在
- IoTA.02010201 此存储或存储组正在操作中,请稍后重试
- IoTA.02010202 存储名称重复
- IoTA.02010203 存储实例被数据管道使用中,无法删除
- IoTA.02010204 指定的存储不存在
- IoTA.02010205 存储数量已超过限制
- IoTA.02010206 不允许修改属性的数据类型
- IoTA.02010207 属性的类型应为 string、double、integer、object 其中之一
- IoTA.02010208 此标签或属性名称包含非法字符
- IoTA.02010209 此标签或属性名称已存在
- IoTA.02010210 标签数量超过限制
- IoTA.02010211 属性数量超过限制
-
资产建模相关错误码
- IoTA.01010012 不允许同时操作同一资产树下的资产
- IoTA.01010021 资产模型名称已存在
- IoTA.01010022 不能删除已有资产的资产模型
- IoTA.01010023 资产模型不存在
- IoTA.01010024 属性个数超过限制
- IoTA.01010025 分析任务个数超过限制
- IoTA.01010026 资产模型个数超过配额限制
- IoTA.01010027 资产模型存在循环依赖
- IoTA.01010028 资产个数超过配额限制
- IoTA.01010029 根资产个数超过配额限制
- IoTA.01010030 资产正在发布中
- IoTA.01010032 存在异常资产
- IoTA.01010033 模型已被其他模型引用
- IoTA.01010034 不能修改数据类型
- IoTA.01010035 子资产个数超过配额限制
- IoTA.01010036 属性引用深度超过配额限制
- IoTA.01010037 属性被引用数超过配额限制
- IoTA.01010038 实时分析作业类型不匹配或者作业不存在
- IoTA.01010039 实时分析作业状态不可用
- IoTA.01010040 属性已被引用
- IoTA.01010041 公式错误
- IoTA.01010042 属性名重复
- IoTA.01010043 输入参数名重复
- IoTA.01010045 分析任务名重复
- IoTA.01010046 聚合计算不能直接或间接引用聚合计算
- IoTA.01010047 文件大小超过30MB
- IoTA.01010048 资产总属性数超过配额限制
- IoTA.01010049 资产总分析任务数超过配额限制
- IoTA.01010050 资产正在导入中
- IoTA.01010051 导入资产任务不存在
- IoTA.01010052 文件不存在
- IoTA.01010053 当前状态下不能停止任务
- IoTA.01010054 资产正在导出中
- IoTA.01010055 导出资产任务不存在
- IoTA.01010056 引用的资产属性数超过限制
- IoTA.01010201 父资产不存在
- IoTA.01010202 资产不存在
- IoTA.01010203 资产名称已存在
- IoTA.01010204 资产树深度超过配额限制
- IoTA.01010307 查询的指标数超过限制
- IoTA.01010308 查询的属性数超过限制
- IoTA.01010309 属性不存在
- IoTA.01020301 公式语法错误
- IoTA.01020302 公式引用的函数不支持
- IoTA.01020303 分析任务不支持该类型函数
- IoTA.01020304 分析任务输出的属性在模型中不存在
- IoTA.01020305 “子资产”类型参数实际上引用不到子资产
- IoTA.01020306 分析任务中未配置具体引用的资产ID
- IoTA.01020307 “测量数据”类型属性未配置设备ID
- IoTA.01020308 “静态配置”类型属性未配置属性值
- IoTA.01020309 聚合计算不能直接或间接引用聚合计算
- IoTA.01020101 当前根资产正在操作中
-
实时分析相关错误码
- IoTA.03011001 作业定义错误
- IoTA.03011002 作业名称错误
- IoTA.03011003 作业描述错误
- IoTA.03011004 作业类型错误
- IoTA.03011006 作业名已存在
- IoTA.03011007 作业数量超出限制
- IoTA.03011009 该实时作业正在被资产模型使用,无法进行当前操作
- IoTA.03011010 从资产模型获取作业使用信息失败
- IoTA.03011011 作业配置无法正常解析,请检查是否为JSON格式
- IoTA.03011012 作业不存在
- IoTA.03011015 作业状态不允许当前操作
- IoTA.03011016 RTU个数不正确
- IoTA.03011018 作业未运行
- IoTA.03011019 作业启动失败
- IoTA.03011020 作业停止失败
- IoTA.03011021 作业监控失败
- IoTA.03011022 作业无可用保存点
- IoTA.03011023 不允许触发savepoint
-
公共错误码
-
错误码
- 常见问题
- 文档下载
- 通用参考
展开导读
链接复制成功!
函数
当前系统内置了如下函数。
函数名称 |
函数分类 |
函数功能 |
举例 |
---|---|---|---|
Sum([...]) |
数学 |
求数组的总和值 |
Sum([1,2,3]),结果为6 |
Avg([...]) |
数学 |
求数组的平均值 |
Avg([1,2,3]),结果为2 |
Min([...]) |
数学 |
求数组的最小值 |
Min([1,2,3]),结果为1 |
Max([...]) |
数学 |
求数组的最大值 |
Max([1,2,3]),结果为3 |
Len([...]) |
通用 |
求数组的长度 |
Len([1,2,3,4]),结果为4 |
Get(json, key) |
通用 |
获取Json内容里面key对应的值 |
Get('{"age":30, "name":"ironman"}', "name"),结果为"ironman" |
If(condition, ifTrue, ifFalse) |
通用 |
用于分支判断 当condition为true时,返回ifTrue的值,否则返回ifFalse的值 |
If(1<2, 'good', 'bad'),结果为'good' If(a>b, 'yes', 'no'),则当a>b时返回 'yes', 否则返回'no' If可以嵌套使用。如If(a>b, If(a-b>2, a-b, a+b), If(a<=b, a*b, a/b)) |
Exit() |
通用 |
退出分析任务,一般和If结合使用 |
If(a<0,exit(),'ok') |
UUID() |
通用 |
生成一个UUID |
UUID() |
EventTime() |
通用 |
获取触发分析任务的时间,入参变化的时间或者定时任务时间,非运行分析任务的系统时间 |
EventTime() |
GetAssetId(modelName,staticPropertyName,staticPropertyValue) |
通用 |
获取资产ID,根据模型名称、静态属性名称、静态属性值获取资产ID,只能获取分析任务所在资产树以内的资产ID |
GetAssetId('modelName','staticPropertyA','staticValue') |
GetLastValue(assetId,propertyName,default) |
通用 |
获取资产属性在分析任务触发之前的上一次值。注意,由于上一次的值可能还未入库,不建议应用在非常频繁变化的属性上 |
GetLastValue('assetId1','propertyA') |
GetLastValueEq(assetId,tagPropertyName,tagPropertyValue,targetPropertyName,default) |
通用 |
获取资产属性在分析任务触发之前的上一次值,并且会根据标签属性和标签属性值对同时刻的目标属性进行过滤。注意,由于上一次的值可能还未入库,不建议应用在变化非常频繁的属性上 |
GetLastValueEq('assetId1','tagPropertyA','tagPropertyAValue','propertyB') |
GetValues(assetId,targetPropertyName,tags,default,from,to,limit) |
通用 |
获取资产属性的多个历史值,返回值数组,支持标签过滤,支持返回默认值,支持设置开始和结束时间,支持限定条数。参数: assetId:string类型,目标资产ID,必填 targetPropertyName:string类型,目标属性名称,必填 tags:object类型,过滤的标签,最多支持3个,如果无则填写为{},多个标签之间是与的关系,必填 default:object类型,默认值,必填 from:long|string类型,开始时间,可以填写为long类型的毫秒,也可以填写为string类型的时间,格式为yyyy-MM-dd'T'HH:mm:ss.SSS'Z',支持填写为""表示不指定开始时间,必填 to:long|string类型,结束时间,可以填写为long类型的毫秒,也可以填写为string类型的时间,格式为yyyy-MM-dd'T'HH:mm:ss.SSS'Z',支持填写为""表示分析任务触发时间,必填 limit:integer类型,返回条数,范围为(0,20],必填 |
GetValues('assetId1','propertyA',{'tagPropertyB':123},-1,EventTime()-3600000,EventTime(),5) |
GetByIndex(json,index) |
通用 |
根据数组下标获取数组元素 |
GetByIndex(["a","b"],1) |
StateTime(property, state) |
时序聚合 |
求周期内状态的持续时长,单位为毫秒 |
StateTime(status, 'on'),结果为周期内status的值为on的总持续时间 |
TS_Sum(property) |
时序聚合 |
求周期内某个属性的总和值 |
TS_Sum(qps),结果为周期内的总qps值。 |
sin |
数学 |
求弧度的sin值 |
sin(3.14/2) = 0.9999996829318346 |
cos |
数学 |
求弧度的cos值 |
cos(3.14) = -0.9999987317275395 |
tan |
数学 |
求弧度的tan值 |
tan(3.14/4) = 0.9992039901050427 |
asin |
数学 |
求输入值的asin值 |
asin(1) = 1.5707963267948966 |
acos |
数学 |
求输入值的acos值 |
acos(-1) = 3.141592653589793 |
atan |
数学 |
求输入值的atan值 |
atan(1) = 0.7853981633974483 |
sqrt |
数学 |
求输入值的平方根 |
sqrt(2) = 1.4142135623730951,sqrt(4) = 2.0 |
ceil |
数学 |
求大于等于输入值的最小整数 |
ceil(3.8) = 4.0,ceil(-1.2) = -1.0,ceil(0) = 0.0 |
floor |
数学 |
求小于等于输入值的最大整数 |
floor(3.8)=3, floor(-1.2)=-2,floor(0) = 0.0 |
abs |
数学 |
求输入值的绝对值 |
abs(1.23) = 1.23, abs(-1.23) = 1.23 |
log |
数学 |
求输入值的自然对数值 |
log(2.718) = 0.999896315728952 |
log10 |
数学 |
求输入值以10为底的对数值 |
log(100) = 2.0 |
说明
- 只有当分析任务类型为”聚合计算“时,计算公式中才能使用“时序聚合”类函数