MCGS嵌入版运行环境操作函数Word格式.docx
《MCGS嵌入版运行环境操作函数Word格式.docx》由会员分享,可在线阅读,更多相关《MCGS嵌入版运行环境操作函数Word格式.docx(68页珍藏版)》请在冰豆网上搜索。
子窗口的名字。
CloseSubWnd(窗口1),关闭子窗口“窗口1”。
EnableStgy(StgyName,n)
打开或关闭某个策略,如报警策略或循环策略等。
SstgyName,策略名;
n,数值型,为1时表示打开此策略,为0时表示关闭此策略。
EnableStgy(报警策略,1),打开报警策略;
EnableStgy(报警策略,0),关闭报警策略,使报警策略无效。
GetDeviceName(Index)
按设备顺序取到设备的名字。
字符型。
调用成功返回设备名,调用失败时返回空字符串。
Index,数值型。
GetDeviceName(0),取0号设备构件的名称。
GetDeviceState(DevName)
按设备名查询设备的状态。
=-1调用不正常。
=1设备处于正常的工作状态。
=2设备正在工作,但设备不正常。
=3设备处于停止工作状态,且设备正常。
=4设备处于停止状态,且设备有错。
DevName,设备名,字符型。
GetDeviceState(OmronPLC),读取设备构件“OmronPLC”的当前工作状态。
注意:
设备名称是在设备构件差不多属性页中设置的。
GetLastMouseActionTime()
猎取最后一次鼠标的动作发生的时刻。
开关型。
返回为time_t类型的时刻值,能够在时刻操作脚本函数中使用。
无。
在画面,系统对话框上的鼠标事件中添加!
GetLastMouseActionTime(),猎取鼠标最后动作时刻。
GetStgyName(Index)
按运行策略的顺序获得各策略块的名字。
GetStgyName(0),取0号运行策略的名称。
GetWindowName(Index)
按用户窗口的顺序获得用户窗口的名字。
Index,数值型。
GetWindowName(0),读取0号用户窗口的名称。
GetWindowState(WndName)
按照名字取得用户窗口的状态。
返回0:
用户窗口处于关闭状态。
返回1:
用户窗口处于打开状态。
返回2:
用户窗口处于隐藏状态。
WndName,用户窗口名称,字符型。
GetWindowState(工况图),获得用户窗口“工况图”的状态。
OpenSubWnd(参数1,参数2,参数3,参数4,参数5,参数6)
显示子窗口。
字符型,如成功就返回子窗口n,n表示打开的第n个子窗口。
参数1:
要打开的子窗口名。
参数2:
整型,打开子窗口有关于本窗口的X坐标。
参数3:
整型,打开子窗口有关于本窗口的Y坐标。
参数4:
整型,打开子窗口的宽度。
参数5:
整型,打开子窗口的高度。
参数6:
整型,打开子窗口的类型。
0位:
是否模式打开,使用此功能,必须在此窗口中使用CloseSubWnd来关闭本子窗口,子窗口外不的构件对鼠标操作不响应
1位:
是否菜单模式,使用此功能,一旦在子窗口之外按下按钮,则子窗口关闭。
2位:
是否显示水平滚动条,使用此功能,能够显示水平滚动条
3位:
是否垂直显示滚动条,使用此功能,能够显示垂直滚动条
4位:
是否显示边框,选择此功能,在子窗口周围显示细黑线边框
5位:
是否自动跟踪显示子窗口,选择此功能,在当前鼠标位置上显示子窗口。
此功能用于鼠标打开的子窗口,选用此功能则忽略iLeft,iTop的值,如果现在鼠标位于窗口之外,则在窗口对中显示子窗口
6位:
是否自动调整子窗口的宽度和高度为缺省值,使用此功能则忽略iWidth和iHeight的值。
子窗口的关闭方法:
使用关闭窗口直截了当关闭,则把整个系统中使用到的此子窗口完全关闭
使用指定窗口的CloseSubWnd关闭,能够使用OpenSubWnd返回的控件名,也能够直截了当指定子窗口关闭,现在只能关闭此窗口下的子窗口。
SetActiveX()
函数讲明:
此函数在嵌入版中无效,考虑兼容性咨询题,故保留。
CallBackSvr()
SetDevice(DevName,DevOp,CmdStr)
按照设备名字对设备进行操作。
DevName,设备名,字符型;
DevOp,设备操作码,数值型;
CmdStr,设备命令字符串,只有当DevOp=6时CmdStr才有意义。
DevOp取值范畴及相应含义:
1:
启动设备开始工作。
2:
停止设备的工作使其处于停止状态。
3:
测试设备的工作状态。
4:
启动设备工作一次。
5:
改变设备的工作周期,CmdStr中包含新的工作周期,单位为ms。
6:
执行指定的设备命令,CmdStr中包含指定命令的格式。
SetDevice(OmronPLC,1,"
),启动设备构件“OmronPLC”开始工作。
SetMousePace(开关型)
设置鼠标灵敏度。
开关型参数为每次按键消息需要设置的鼠标移动间隔,一样情形下请输入正整数,如果输入0值表示禁止该功能
SetMousePace
(1);
默认情形下该功能为关闭状态,鼠标灵敏度为0,如果想启用该功能在启动策略中调用!
SetMousePace脚本函数指定步长值。
SetNumPanelSize(Type,Size)
按照需要和显示屏的大小调整软键盘的大小。
修改成功。
新设置将在下一次打开输入键盘时生效。
返回值=1:
修改失败,参数错误。
(可能是没有匹配的type,或者size参数超出范畴)。
Type,键盘类型,数值型;
代表修改数值输入键盘。
代表修改字符输入键盘;
。
代表修改用户登录对话框。
Size,键盘大小,数值型;
数值范畴:
200像素~1024像素;
SetNumPanelSize(1,500),将数值输入键盘改为500*500大小,该正方形有关于屏幕居中。
所有修改将在下一次打开输入框时生效,运行环境退出后,将自动保留上次输入框的大小。
注意事项:
键盘放大缩小功能在重新下载工程时没有删除配置文件,换工程后设置仍旧有效,除非重新进行了设置。
如果要去掉原先的设置则需要手工删除panelSize.ini文件,该文件位于\harddisk\mcgsbin名目下。
SetStgy(StgyName)
执行StgyName指定的运行策略。
StgyName,策略名,字符型。
SetStgy(阀门关闭),执行一次运行策略“阀门关闭”。
SetWindow(WndName,Op)
按照名字操作用户窗口,如打开、关闭、打印。
WndName,用户窗口名,字符型。
Op:
操作用户窗口的方法,数值型。
Op=1:
打开窗口并使其可见。
Op=2:
打开窗口并使其不可见。
Op=3:
关闭窗口。
Op=4:
打印窗口。
Op=5:
刷新窗口。
SetWindow(工况图,1),打开用户窗口“工况图”,并使其可见。
SysWindow()
执行该函数后,打开用户窗口治理窗口,在治理窗口中能够选择打开或关闭指定的用户窗口。
调用成功;
调用失败。
SysWindow()。
SetStyMode(StgyName)
通过脚本函数(位于系统函数-运行环境类)实现函数调用方式的策略调用。
返回值:
开关型,返回值恒为0。
SetStgyMode(阀门关闭),执行一次运行策略“阀门关闭”,“阀门关闭”策略执行完毕后,才返回调用者,调用者连续执行以下程序。
GetCurrentLanguageIndex()
用于猎取当前使用的语言的索引值。
返回值为语言项索引值。
索引值按照组态下拉框依次排序0,1,2…
无。
N=!
GetCurrentLanguageIndex(),其中N为开关型变量。
SetCurrentLanguageIndex(开关型)
通过索引项设定当前语言环境
返回值为0表示执行成功,否则表示失败。
语言索引值。
如果索引参数值超出当前选择语言范畴,那么函数不生效。
SetCurrentLanguageIndex
(1),表示设置当前语言为英文(选择语言为CH,EN)。
GetLocalLanguageStr(开关型)
获得指定自定义ID对应的当前语言的内容。
自定义ID索引值。
如果无当前ID对应自定义文本,则返回空值。
GetLocalLanguageStr
(2),前提是有ID为2的自定义文本内容,如果当前语言为英文,则返回ID为2的自定义文本记录的英文内容。
GetLanguageNameByIndex(开关型)
按照语言索引值返回语言名称,返回值为字符型。
字符型,当前语言的名称。
语言的索引值。
如果当前索引值无对应语言,则返回空值。
GetLanguageNameByIndex
(1),如果当前语言为中文、英文,则返回值为English。
数据对象操作函数
AnswerAlm(DatName)
应答数据对象DatName所产生的报警。
如对应的数据对象没有报警产生或差不多应答,则本函数无效。
数值型,=0为操作成功,<
0为操作失败。
参
数:
DatName,数据对象名。
实
例:
AnswerAlm(电机温度),应答数据对象“电机温度”所产生的报警。
ChangeDataSave(Datname,n)
改变数据对象Datname存盘的周期。
Datname,数据对象名;
n,数值型,以秒表示的存盘间隔时刻。
例:
ChangeDataSave(温度,5),温度的存盘间隔时刻为5秒。
ChangeSaveData(DatName,Num1,Num2)
该函数在通用版中能够使用,在嵌入版中不能使用!
改变数据对象DatName所对应存盘数据的存盘间隔,把Num1小时往常的存盘数据(以当前时刻为0点)的存盘间隔改为Num2秒。
本操作只对组对象有效,对单个的数据对象无效。
当DataName=空字符,或Num1=0或Num2=0时,本操作无效。
数值型,返回值=0:
DatName:
数据对象名。
Num1:
数值型时刻量,单位:
小时。
本函数用Num1<
0的一些数值来表示一些专门意义的操作:
=-1改变当天对应数据对象所有存盘数据的存盘间隔;
=-2改变昨天对应数据对象所有存盘数据的存盘间隔;
=-3改变本星期对应数据对象所有存盘数据的存盘间隔;
=-4改变上星期对应数据对象所有存盘数据的存盘间隔;
=-5改变本月对应数据对象所有存盘数据的存盘间隔;
=-6改变上个月对应数据对象所有存盘数据的存盘间隔;
Num2:
数值型时刻量,新的存盘间隔,单位:
秒。
ChangeSaveData(电机1,-2,5),把组对象“电机1”对应的存盘数据中昨天的存盘数据的存盘间隔改为5秒钟。
FlushDataInitValueToDisk()
把所有数据对象的初始值写入磁盘。
CopySaveDat()
DelSaveDat(DatName,Num)
删除组对象DatName对应的存盘数据中最早Num小时内的存盘数据,如果Num<
=0,那么确实是删除该组对象全部的存盘数据。
如果Num>
0,就删除以当前时刻为基点Num个小时之前的内容,删除时是按文件删除的,如果数据不足一个存盘文件,是可不能被删除的。
DatName,组对象名。
Num,参数名。
DelSaveDat(电机温度,12),删除组对象“电机温度”对应的存盘数据中以当前时刻为基点倒推12个小时之前的数据。
但从当前时刻至倒推的12个小时之内的内容会被储存。
注
意:
该函数只对组对象操作有效。
DelAllSaveDat()
删除组对象DataName对应的所有存盘数据。
注意,此函数不能用来删除组对象所对应的报警存盘数据。
组对象名;
DelAllSaveDat(电机温度),删除组对象“电机温度”对应的所有存盘数据
EnableDataSave(name,n)
打开/关闭数据对象的定时存盘功能。
name,数据对象名;
n,数值型,1表示打开定时存盘,0表示关闭定时存盘。
EnableDataSave(温度,1),打开温度的定时存盘。
ExportHisDataToCSV(文件名,组对象名,字段名,开始时刻,终止时刻,最大记录数,导出模式,导出参数,进度指示数据对象名,取消操纵数据对象名)
1.导出指定组对象存盘数据,导出的条件包括:
开始时刻-终止时刻,最大导出总条数;
2.导出字段列表,组对象为MCGS_ALARM则表示导出报警历史数据;
3.可指定导出文件名和路径,要紧是U盘导出,能够追加方式也可覆盖方式导出;
4.可显示导出过程进度情形;
5.可取消和中止长时刻的导出过程;
6.导出格式为csv文件,导出的第一行为字段名字。
返回1
指定组对象错误,可能组对象没有储存历史数据或者没有该组对象
返回2
指定的时刻格式错误
返回3
指定的无效的数据对象名
返回4
无效的导出模式
返回5
同时只能支持一个csv导出
文件名:
字符型,指定导出的文件绝对路径名,指定的第一级名目不能创建,其子名目如果不存在则能够创建。
如此幸免U盘不存在时创建U盘名目。
注意:
第一级名目不能自动创建用户必须保证其存在;
组对象名:
导出的组对象名字。
字段名:
字符型,用逗号分隔的要导出的字段名,不需要指定时刻字段,默认第一二个字段就为记录时刻字段。
如果为空字符串则导出所有字段。
开始时刻,终止时刻:
用表示的时刻字符串“YYYY-MM-DDHH:
MM:
SS”;
最大记录数:
期望导出的最大记录数,超过该记录数就返回,停止导出;
导出模式:
“1”表示覆盖现有文件,“2”表示追加到文件最后;
导出参数:
临时为空,保留以后使用;
进度指示数据对象名:
开关型数据对象,导出过程中该对象值反映出当前已导出记录条数,如果导出过程中其他专门终止则通过该对象返回同函数返回错误码;
进度指示错误码:
返回-1------文件不能打开
返回-2------没有可导出的数据
返回-4------文件操作显现错误
操纵数据对象名:
指定一个开关型数据对象,该对象操纵导出执行,启动导出时会自动设置该变量为0,用户在导出过程中想取消导出则能够设置该值为<
0的任何值,导出函数运行终止后会自动设置对象值为1;
返回0------导出成功
返回-1-----导出路径不存在
返回1------指定组对象错误,可能组对象没有储存历史数据或者没有该组对象
返回2------指定的时刻格式错误
返回3------指定的无效的数据对象名
返回4------无效的导出模式
返回5------同时只能支持一个csv导出
例:
ret=!
ExportHisDataToCSV("
\usbharddisk\yang.csv"
"
group"
data1,data4"
2007/1/10:
0:
0"
2009/1/10:
20000,1,"
"
进度,操纵)
GetAlmValue(DatName,Value,Flag)
读取数据对象DatName报警限值,只有在数据对象DatName的“承诺进行报警处理”属性选项被选中后,本函数的操作才有意义。
对组对象、字符型数据对象、事件型数据对象本函数无效。
对数值型数据对象,用Flag来标识读取何种报警限值。
Value:
DataName的当前的报警限值,数值型。
Flag:
数值型,标志要读取何种限值,具体意义如下:
=1下下限报警值;
=2下限报警值;
=3上限报警值;
=4上上限报警值;
=5下偏差报警限值;
=6上偏差报警限值;
=7偏差报警基准值;
GetAlmValue(电机温度,Value,3),读取数据对象“电机温度”的报警上限值,放入数值型数据对象Value中。
GetEventDT()
GetEventP()
GetEventT()
MoveSaveDat()
SaveData(DatName)
把数据对象DataName对应的当前值存入存盘数据库中。
本函数的操作使对应的数据对象的值存盘一次。
此数据对象必须具有存盘属性,且存盘时刻需设为0秒。
否则会操作失败。
SaveData(电机1),把组对象“电机1”的所有成员对应的当前值存盘一次。
SaveDataInit()
本操作把设置有“退出时自动储存数据对象的当前值作为初始值”属性的数据对象的当前值存入组态结果数据中作为初始值,防止突然断电而无法储存,以便MCGS嵌入版下次启动时这些数据对象能自动复原其值。
SaveDataInit()。
此函数单独使用不起作用,需要和函数!
Flushdatainitvaluetodisk()一起使用。
SaveDataOnTime(Time,TimeMS,DataName)
使用指定时刻储存数据。
本函数通常用于指定时刻来储存数据,实现与通常机制不一样的存盘方法。
Time,数值型,使用时刻函数转换出的时刻量。
时刻精度到秒。
TimeMS,数值型,指定存盘时刻的毫秒数。
t=!
TimeStr2I("
2001年2月21日3时2分3秒"
);
SaveDataOnTime(t,0,DataGroup),按照指定时刻储存数据对象。
SaveSingleDataInit(Name)
本操作把数据对象的当前值设置为初始值(不管该对象是否设置有“退出时自动储存数据对象的当前值作为初始值”属性),防止突然断电而无法储存,以便MCGS嵌入版下次启动时这些数据对象能自动复原其值。
Name,数据对象名。
SaveSingleDataInit(温度),把温度的当前值设置成初始值。
SetAlmValue(DatName,Value,Flag)
设置数据对象DatName对应的报警限值,只有在数