力控组态软件的变量操作函数1

力控组态软件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时的最小值。

 

 

力控组态软件的文件操作函数2

力控组态软件ForceControl V7.0的文件操作函数2

FileRead
语法FileRead(FileName,VarName,Offset,Num)
说明从指定的文件中回读数据
参数FileName:文件名。
Offset: 偏置。从该偏置开始读。偏置以0为基准。
Num:要读取的数据个数。
VarName:从该变量开始写,按照变量的顺序号依次访问。
备注假如第一个变量为VAR01.pv,则其后的变量为VAR02.pv……
示例FileRead(“dat01”, var01.pv,0,10)//从文件dat01中读取10个数据,结果
放入var01.pv开始的变量中,后面的变量依次为var02.pv、var03.pv……

FileReadFields
语法FileReadFields(FileName,VarName,Offset,Num)
说明从指定的逗号分割文件中回读一条记录数据
参数FileName:文件名。
Offset: 偏置记录数。从该偏置记录开始读。偏置以0为基准。
Num:要读取的数据个数。
VarName: 从该变量开始写,按照变量的名称中的数字顺序依次访问。
备注如变量为var01.pv,其后变量依次为var02.pv,var03.pv…
示例FileReadFields(“dat01”, var01.pv,0,10)//从文件dat01中读取10个数据,结果放
入var01.pv开始的变量中,后面的变量依次为var02.pv、var03.pv……

FileWrite
语法FileWrite(FileName,VarName,Offset ,Num)
说明向指定的文件中写数据
参数FileName:文件名。
VarName:从该变量开始写,按照变量的顺序号依次访问。
如变量为var1.pv,其后变量依次为var2.pv,var3.pv…。
Num:要写的数据个数。
备注内部存储顺序请参见FileRead
示例FileWrite(“dat01”, var1.pv,0,10);//从var1.pv开始依次向文件dat01写入10个数
据。

FileWriteFields
语法FileWriteFields(FileName,VarName,Offset ,Num)
说明向指定的逗号分割文件中写入数据,每次记录一行。
参数FileName:文件名。
VarName:从该变量开始写,按照变量的名称中的顺序号依次访问。
Num:要写的数据个数。
Offset:指定写此文件的起始位置。若Offset 为1,此函数将写到文件末
尾。若为-1,则写到开头,其他的数字表示记录数。
示例FileWriteFields(“dat01”, var01.pv,0,10);//从var01.pv开始依次向文件
dat01写入10个数据。

力控组态软件的文件操作函数1

力控组态软件ForceControl V7.0的文件操作函数

FileAppend
语法FileAppend(FileName, VarName, Num)
说明往指定的文件中追加数据,即从文件尾开始写数据。
参数FileName:文件名。
VarName:从该变量开始写,按照变量的名称中的数字顺序依次访问。
如变量为var01,其后变量依次为var02,var03…。
Num:要写的数据个数。
示例FileAppend(“dat01”,var01,10)//从var01开始依次向文件附加dat01,data02…,
到dat10,共写入10个数据。

FileCopy
语法FileCopy(SourFileName,DestFileName , Overwrite)
说明文件复制。复制已有文件(由文件名SourFileName指定)到一新文件(由
文件名DestFileName指定)
参数SourFileName:字符串常量,或字符串表达式,为源文件名(完整的路径),
即已存在文件。
DestFileName:字符串常量,或字符串表达式,为新文件名(完整的路径)。
Overwrite:整型量,覆盖标志。该值如果为0,如果同名文件已经存在,
那么复制失败;非0将覆盖已有文件。
返回值为1成功;为0失败。
示例FileCopy(“c:\abc\text1.txt”, c:\text2.txt, 0); //将c:盘下abc目录下的text1.txt文
件,复制到根目录,并命名为text2.txt。如果text2.txt存在,复制失败。

FileDataCount
语法FileDataCount(FileName)
说明取得文件中的数据个数,即得到文件中的数据项数。
参数FileName:文件名。
返回值文件中的数据个数。
示例count = FileDataCount(“dat01”);//count为文件中的数据个数

FileDelete
语法FileDelete(FileName)
说明删除指定的文件。
参数FileName:文件名。
示例FileDelete(“dat01”)//删除文件

FileInfo
语法FileInfo(FileName, InfoType)
说明获取文件信息。如不指定绝对路径,则使用力控工程路径。
参数FileName:字符串,文件名称或者文件夹名称,支持使用通配符。
Infotype:整型:
1 指定文件是否存在,存在返回1,反之返回0
2 指定文件夹是否存在,存在返回1,反之返回0
3 指定文件大小,文件不存在返回-1,存在返回文件大小,如为负值表明
文件超过0x10000000
4 文件最后修改日期,返回为整数型时间
5 搜索到的文件数,用户使用指定文件名(可使用通配符*?搜索到的所有
文件个数。
示例bFile = FileInfo(“test.ini”, 1);//查找工程目录下是否存在test.ini文件

FileMove
语法FileMove(SourFileName,DestFileName )
说明文件/目录改名或移动。将已有文件/目录(由文件名SourFileName指定或
目录)改名,或移动到一新的位置(由文件名DestFileName指定)。
参数SourFileName:字符串常量,或字符串表达式,为源文件名或目录名(完整
的路径),即已存在文件或目录。
DestFileName:字符串常量,或字符串表达式,为新文件名或目录名(完
整的路径)。
返回值为1成功;为0失败。
备注如果移动到不同的驱动器上,将进行文件、目录复制。
示例1)FileMove(“c:\abc\text1.txt”,”c:\abc\text2.txt”); //将文件text1.txt改名为text2.txt
2)FileMove(“c:\doc1\text1.txt”, “c:\doc2\text1.txt”);//将c:盘下doc1目录下
的ext1.txt文件,移动到到目录doc2下。
3)FileMove(“c:\doc1”, “c:\doc2”);//将c:盘下目录doc1改名为doc2。