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

力控组态软件ForceControl V7.0的变量操作函数3

SetVar
语法int SetVar(strVarName,dValue)
说明给指定数据库变量的参数赋值。
返回值int 赋值是否成功,0失败,1成功。
参数string:指定数据库变量需要赋值的参数名称。
Float:给参数要赋的数值。
示例int bRet=SetVar(“Tag0.PV”,88.3);
给变量Tag0的PV参数,赋值88.3,
操作的结果返回给bRet。

SetVarStr
语法int SetVarStr(strVarName,strValue)
说明给指定数据库变量的参数赋值。
返回值int 赋值是否成功,0失败,1成功。
参数string:指定数据库变量需要赋值的参数名称。
String:给参数要赋的字符串。
示例int bRet=SetVarStr(“Tag0.DESC”,”abcd”);
给变量Tag0的DESC参数,赋值”abcd”字符串,
操作的结果返回给bRet。

VarRedir
语法VarRedir(var, NewTagPar)
说明数据库变量重定向。用于将数据库变量或间接变量重定向,对于数据库变
量改变变量的数据库参数名称,使其指向其他数据库参数;而对于间接变
量则改变其变量指向,使其指向名字为NewTagPar的变量,该变量在
DRAW中一定要存在。通常可用于历史报表,趋势中变量动态替换。
参数var: 重定向变量,该变量必须为数据库变量或间接变量。
NewTagPar:字符串类型,新数据库参数或变量名称名称。
示例dbvar1为已定义的数据库变量。
VarRedir(dbvar1, “a1.pv”);dbvar1将指向数据库参数a1.pv
VarRedir(dbvar1, “a2.pv”);dbvar1将指向数据库参数a2.pv
VarRedir(var, “var1″);var为间接变量,var1为要转向的变量名称。

ValInputAni
语法ValInputAni(VarName,strPrompt,bPassword,bPrompt)
说明模拟量输入,调用该函数将出现一模拟输入框,通过该输入框可以修改
模拟量的值。
参数VarName:为一数值变量,输入框确认后变量的值将被修改。
strPrompt:为字符串常量或字符串表达式,bPrompt为1时.该提示信息将
被显示在输入框中。
bPassword:为一数值常量.1表示不显示输入信息,否则显示输入信息.
bPrompt:为一数值常量,表示是否出现提示信息.0表示不显示提示信
息,否则显示提示信息
示例ValInputAna(var1,”Please Input A Value”,0,1);该函数调用后将出现一模拟
输入框,提示信息为Please Input A Value.

ValInputDis
语法ValInputDis(VarName,Prompt, ONPrompt,OFFPrompt)
说明调用该函数将出现一开关选择框,通过该选择框可以修改开关量的值。
参数VarName:为一数值变量,输入框确认后改变量的值将被修改。
Prompt:为字符串常量或字符串表达式,prompt为1时.该提示信息将被显
示在输入框中。
ONPrompt:为字符串常量或字符串表达式,该提示信息将被显示在选择框状
态为真的按钮上。
OFFPrompt:为字符串常量或字符串表达式,该提示信息将被显示在选择框
状态为假的按钮上。
示例ValInputDis(var1,”Please Set Switch Status”,”ON”,”OFF”);//该函数调用后将
出现一开关选择框输入框. 信息为Please Set Switch Status,"真"提示信息
为ON;"假"提示信息为OFF。Prom8 为数值7的提示信息,该项将被显
示在选择框中的第8项中。

ValInputStr
语法ValInputStr(VarName,Prompt,password,prompt)
说明调用该函数将出现一字符输入框,通过该输入框可以修改变量的值。
参数VarName:为一字符变量,输入框确认后改变量的值将被修改。
Prompt:为字符串常量或字符串表达式。prompt为1时,该提示信息将被显
示在输入框中。
Password:为一数值常量,0表示不显示输入信息,否则显示输入信息。
Prompt:为一数值常量,表示是否出现提示信息。0表示不显示提示信息,
否则显示提示信息。
示例ValInputStr(var1,”Please Input A Value”,0,1);//该函数调用后将出现一字符输
入框,提示信息为Please Input A Value。

 

 

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

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

GetTagKind
语法int GetTagKind(“TagName”,nDataSource)
说明获取点类型,即得到点在实时数据库中的类型号
参数TagName: 点名称,字符串变量或常量。
nDataSource : 整型,数据源序号,数据源序号以0开始,注意该序号会因
数据源的删减而变动。
返回值点类型号,整型
示例KIND = GetTagKind(“FI1001”,0);

GetVar
语法float GetVar(strVarName)
说明返回指定数据库变量参数的值。
返回值float 返回数据库变量数值型参数的值。
参数string:指定数据库变量需要取值的参数名称。
示例float dVar=GetVar(“Tag0.PV”);
/ /返回Tag0的PV值,并赋给变量名为dVar的浮点型变量。

GetVarStr
语法string GetVarStr(strVarName)
说明返回指定数据库变量参数的值。
返回值string 返回数据库变量字符型型参数的值。
参数string:指定数据库变量需要取值的参数名称。
示例string strVar=GetVarStr(“Tag0.DESC”);
//返回Tag0的DESC值,并赋给变量名为strVar的字符型变量。

InsertHisData
语法sertHisData (Var, Data, Year,Month,Day,Hour,Minute,Second,Millisec)
说明向数据库中插入历史数据
参数Var: 该参数不能包含在””中。数据库变量,该变量的数据源指明了向哪个
数据库插入数据,而其数据库参数指明了是数据库的哪点参数。必须为数
值型变量。注意:要插入的值不是Var变量的当前值,而是下一个参数Data。
Data:要插入的数值,为数值型变量,常量或表达式。
参数Year,Month,Day,Hour,Minute,Second, Millisec用于指定将要插入的历史
数据发生时刻。即历史数据时间插入点。
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秒…。
示例1)InsertHisData(FI101.PV,50.5,2000,12,21,10,0,0,0);//向数据库中插入的点
为FI101.PV,数值为50.5,时间为2000年12月21日10时0分0秒0毫秒。
2) InsertHisData (FI101.PV, 75.0, 0,0,-1,10,0,0,100);//向数据库中插入的点
为FI101.PV,数值为75.00, 时间为在本年本月昨日10时00分00秒100毫秒。

SetHisDataState
语法SetHisDataState(state type)
说明设置取历史数据函数的错误返回值的状态值。当调用GetHisData时如果取
值时间为不存在的值时,按照此函数的设置值返回不同的结果。
参数StateType:状态类型。
0 : 调用GetHisData时如果取值时间为不存在的值时,返回最后的有效值
1 : 调用GetHisData时如果取值时间为不存在的值时,返回-9999.0
2 : 调用GetHisData时如果取值时间为不存在的值时,返回0值
备注此函数设置一次,整个运行期间的工程起作用。工程的默认值为0,如果想
修改GetHisData的返回值状态最好在每次调用前使用或者在工程启动时设
置一次。

力控组态软件的变量操作函数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时的最小值。