力控组态软件ForceControl V7.0的变量操作函数1
DisableOperate
语法DisableOperate (flag)
说明禁止用户对变量的操作。
参数flag:禁止标志。取值含义:0:允许操作;1:表示禁止操作;2:除了禁止
用户操作外,还将禁止任何脚本中向数据库设置数据请求。
示例DisableOperate (1);//禁止操作
DisableOperate (0);//允许操作
GetHisData
语法GetHisData(Var,Year,Month,Day,Hour,Minute,Second)
说明点在指定时刻的历史值
参数Var:欲存取的变量,必须为DB变量,且不能在””中。
Year:整型,表示年,范围1999~2037 。0表示当年。
Month :整型,表示月,范围1~12。0表示当月。
Day :整型,表示日,范围1~31。0表示当天。
负值表示前多少天,如-1 表示前1天…。
Hour :整型,表示小时,范围0~23。
负值表示前多少小时,如-1 表示前1小时…。
Minute:整型,表示分,范围0~59。
负值表示前多少分钟,如-1 表示前1分钟…。
Second:整型,表示秒,范围0~59。
负值表示前多少秒,如-1 表示前1秒…。
示例1)val = GetHisData(FI101.PV,2000,12,21,10,0,0);//取点FI101.PV在2000年
12月21日10时0分0秒的历史数据。
2)val = GetHisData(FI101.PV,0,0,-1,10,0,0);//取点FI101.PV在本年本月昨
日10时00分00秒的历史数据。
GetHisDataEx
语法Double GetHisDataEx(Var,Year, Month, Day, Hour,Minute,Second,MilliSec)
说明点在指定时刻的历史值,返回值为实型。
参数Var :欲存取的变量,该变量必须是数据库变量,该参数不能包含在””中。
Year :整型,表示年,范围1999~2037 。0表示当年。
Month: 整型,表示月, 范围1~12。0表示当月。
Day: 整型,表示日, 范围1~31。0表示当天,负值表示前多少天,如-1表
示前1天,-2 表示前2天…。
Hour: 整型,表示时, 范围0~23。负值表示前多少小时,如-1 表示前1
小时,-2 表示前2小时…。
Minute: 整型, 表示分, 范围0~59。负值表示前多少分钟,如-1 表示前1
分钟,-2 表示前2分钟…。
Second:表示秒, 范围0~59。负值表示前多少秒,如-1 表示前1秒,-2 表
示前2秒…。
MilliSec :表示毫秒, 范围0~999。
示例1)val = GetHisDataEx(FI101.PV,2000,12,21,10,0,0,100);//取数据库中的
点FI101.PV在2000年12月21日10时00分00秒100毫秒时的历史数据。
2)val = GetHisDataEx(FI101.PV,0,0,-1,10,0,500);//取数据库中的点
FI101.PV在本年本月昨日10时00分00秒500毫秒时的的历史数据。
GetStatisData
语法double GetStatisData(Var,Year, Month, Day, Hour,TimeSpan,Type,Time)
说明获取统计数据
参数Year, Month, Day, Hour指定的是开始时间,TimeSpan指定的是时间长度。
Var:欲存取的变量,该变量必须是数据库变量,该参数不能包含在””中。
Year :整型,表示年,范围1999~2037。0表示当年。
Month: 整型,表示月, 范围1~12。0表示当月。
Day: 整型,表示日, 范围1~31。0表示当天,负值表示前多少天,如-1 表
示前1天,-2 表示前2天…。
Hour: 整型,表示时, 范围0~23。负值表示前多少小时,如-1 表示前1
小时,-2 表示前2小时…。
TimeSpan:整型,为时间范围,单位为小时。前多少小时内的统计数据。如
果Hour为8,TimeSpan为1,表示7点~8点的统计数据(注意:对
应于表中8点的数据,即后一个小时的统计数据);TimeSpan为2,
表示6点~8点的统计数据。
Flag: 表示取何种统计数据。0:表示平均值; 1: 最大值2: 最小值。
Time: 字符型变量,为达到最大/最小值的时间。
返回值实型,该点在指定时间段的统计值。
示例1)val = GetStatisData (FI101.PV,2000,12,21,10, 1,0,strTime);
取数据库中的点FI101.PV在2000年12月21日10~11时的平均值。
2)val = GetStatisData (FI101.PV,0,0,-1,10,2,1,strTime);
取数据库中的点FI101.PV在本年本月昨日8~10时的最大值。
3)val = GetStatisData (FI101.PV,0,0,-1,18,2,2,strTime);
取数据库中的点FI101.PV在本年本月昨日16~18时的最小值。