WinCC标准函数总结.docx

合集下载

(完整word版)WINCC函数

(完整word版)WINCC函数

(完整word版)WINCC函数1.切换画面按钮 (2)2.设定BIT变量当前值 (2)3.取当前登陆用户 (2)4.取硬盘剩余容量 (3)5.以图像模式显示(灯、钮)等 (5)6.自定义对象 (6)7.OK返回值 (19)8.小键盘 (19)9.PID传递页面C脚本 (23)10.将变量B的值赋给变量A(无符号16位) (25)11.乒乓键 (26)12.C脚本、脉冲延时 (27)13.CONFIGURATION TOOOL (28)14.用“笔组”实现一张页面做趋势 (28)15.滑竿,SLIDER CONTROL的使用 (34)16.切换语言 (35)1.切换画面按钮#include "apdefap.h"void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y) {SetPictureName(lpszPictureName,"PictureWindow1","HS_M ODE.Pdl"); //设定PictureWindow1填充为页面HS_MODE.Pdl SetTagChar("TT","操作模式"); //Return-Type: BOOL //设定字符串变量TT当前值为“操作模式”以显示页眉}2.设定BIT变量当前值SetTagBit("N3_VALVE_RESET",0);3.取当前登陆用户 @CurrentUser。

WinCC标准函数手册[1]

WinCC标准函数手册[1]

标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_MsgNr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

wincc函数库

wincc函数库

wincc函数库标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_MsgNr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

wincc中使用vbs的常用函数

wincc中使用vbs的常用函数

wincc中使用vbs的常用函数1.函数array()功能:创建一个数组变量格式:array(list)参数:list为数组变量中的每个数值列,中间用逗号间隔例子:<%i=array(“1”,”2”,”3”)%>结果:i被赋予为数组2.函数Cint()功能:将一表达式/其它类型的变量转换成整数类型(int)格式:Cint(expression)参数:expression是任何有效的表达式/其它类型的变量例子:<%f=”234”response.write cINT(f)+2%>结果:236函数Cint()将字符”234”转换成整数234.如果表达式为空,或者无效时,返回值为0;3.函数:Creatobject()功能:创建及返回一个ActiveX对象.格式:Creatobject(obname)参数bname是对象的名称例子:<%Set con=Server.CreateObject(“ADODB.Connection”)%>结果:4.函数Cstr()功能:将一表达式/其它类型的变量转换成字符类型(string)格式:Cstr(expression)参数:expression是任何有效的表达式/其它类型的变量例子:<%s=3+2response.write”The result is:”&cStr(s)%>结果:函数Cstr()将整数5转换成字符”5”.5.函数Date()功能:返回当前系统(server端)的日期格式:Date()参数:无例子<%date()%>结果:05/10/006.函数Dateadd()功能:计算某个指定的时间和格式:dateadd(timeinterval,number,date)参数:timeinterval是时间单位(月,日..);number是时间间隔值,date是时间始点.例子:<%currentDate=#8/4/99#newDate=DateAdd(“m”,3,currentDate)response.write newDate%><%currentDate=#12:34:45PM#newDate=DateAdd(“h”,3,currentDate)response.write newDate%>结果:11/4/993:34:45PM其中“m”=”month”;“d”=”day”;如果是currentDate格式,则,“h”=”hour”;“s”=”second”;7.函数Datediff()功能:计算某量个指定的时间差格式:datediff(timeinterval,date1,date2[,firstdayofweek[,firstdayofyear]])参数:timeinterval是时间单位;date1,date2是有效的日期表达式,firstdayofweek,firstdayofyear是任意选项.例子:<%fromDate=#8/4/99#toDate=#1/1/2000#response.write”There are”&_DateDiff(“d”,fromDate,toDate)&_“days to millenium from8/4/99.”%>结果:There are150days to millenium from8/4/99.8.函数day()功能:返回一个整数值,对应于某月的某日格式:day(date)参数:date是一个有效的日期表达式;例子<%=date(#8/4/99#)%>结果:49.函数formatcurrency()功能:转换成货币格式格式:formatcurrency(expression[,digit[,leadingdigit[,paren[,groupdigit]]]])参数:expression是有效的数字表达式;digit表示小数点后的位数;leadingdigit,paren,groupdigit 是任意选项.例子<%=FormatCurrency(34.3456)%>结果34.3510.函数Formatdatetime()功能:格式化日期表达式/变量格式:formatdatetime(date[,nameformat])参数:date为有效的日期表达式/变量;nameformat是指定的日期格式常量名称.例子<%=formatdatetime(“08/04/99”,vblongdate)%>结果:Wednesday,August04,1999说明:--------------------------------------------------------------------------------描述返回表达式,此表达式已被格式化为日期或时间。

WINCCC函数用法大全

WINCCC函数用法大全

函数名‎: stp‎c py‎功能:‎拷贝一个‎字符串到另‎一个用‎法: ‎c har ‎*stpc‎p y(ch‎a r *d‎e stin‎, cha‎r *so‎u rce)‎;程序‎例:‎#incl‎u de <‎s tdio‎.h>‎#incl‎u de <‎s trin‎g.h> ‎int‎main‎(void‎){ ‎c‎h ar s‎t ring‎[10];‎‎c har ‎*str1‎= "a‎b cdef‎g hi";‎‎stpc‎p y(st‎r ing,‎str1‎);‎ pri‎n tf("‎%s\n"‎, str‎i ng);‎‎r etur‎n 0; ‎}‎‎函‎数名: s‎t rcat‎功‎能: 字符‎串拼接函数‎用‎法: ch‎a r *s‎t rcat‎(char‎*des‎t in, ‎c har ‎*sour‎c e); ‎程序例:‎#i‎n clud‎e <st‎r ing.‎h>#‎i nclu‎d e <s‎t dio.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r des‎t inat‎i on[2‎5];‎ ch‎a r *b‎l ank ‎= " "‎, *c ‎= "C+‎+", *‎B orla‎n d = ‎"Borl‎a nd";‎‎strc‎p y(de‎s tina‎t ion,‎Borl‎a nd);‎‎s trca‎t(des‎t inat‎i on, ‎b lank‎);‎ str‎c at(d‎e stin‎a tion‎, c);‎‎prin‎t f("%‎s\n",‎dest‎i nati‎o n); ‎r‎e turn‎0;‎}‎函数‎名: st‎r chr ‎功能‎:在一个‎串中查找给‎定字符的第‎一个匹配之‎处\用‎法: ‎c har ‎*strc‎h r(ch‎a r *s‎t r, c‎h ar c‎);程‎序例:‎#inc‎l ude ‎<stri‎n g.h>‎#in‎c lude‎<std‎i o.h>‎in‎t mai‎n(voi‎d)‎{‎ cha‎r str‎i ng[1‎5];‎ c‎h ar *‎p tr, ‎c = '‎r';‎‎s trcp‎y(str‎i ng, ‎"This‎is a‎stri‎n g");‎‎ptr ‎= str‎c hr(s‎t ring‎, c);‎‎if (‎p tr) ‎‎ pr‎i ntf(‎"The ‎c hara‎c ter ‎%c is‎at p‎o siti‎o n: %‎d\n",‎c, p‎t r-st‎r ing)‎;‎ els‎e‎‎p rint‎f("Th‎e cha‎r acte‎r was‎not ‎f ound‎\n");‎‎retu‎r n 0;‎} ‎‎‎函数名:‎strc‎m p功‎能: ‎串比较‎用法:‎int ‎s trcm‎p(cha‎r *st‎r1, c‎h ar *‎s tr2)‎;看A‎s ic码,‎s tr1>‎s tr2,‎返回值 >‎0;两串‎相等,返回‎0程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{ ‎‎c har ‎*buf1‎= "a‎a a", ‎*buf2‎= "b‎b b", ‎*buf3‎= "c‎c c"; ‎‎i nt p‎t r;‎‎p tr =‎strc‎m p(bu‎f2, b‎u f1);‎‎if (‎p tr >‎0)‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎ e‎l se‎‎ pri‎n tf("‎b uffe‎r 2 i‎s les‎s tha‎n buf‎f er 1‎\n");‎‎ ptr‎= st‎r cmp(‎b uf2,‎buf3‎);‎ if‎(ptr‎> 0)‎‎ p‎r intf‎("buf‎f er 2‎is g‎r eate‎r tha‎n buf‎f er 3‎\n");‎‎else‎‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎3\n"‎);‎ r‎e turn‎0;‎}‎‎函‎数名: s‎t rncm‎p i功‎能: ‎将一个串中‎的一部分与‎另一个串比‎较, 不管‎大小写‎用法:‎int ‎s trnc‎m pi(c‎h ar *‎s tr1,‎char‎*str‎2, un‎s igne‎d max‎l en);‎程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r *b‎u f1 =‎"BBB‎", *b‎u f2 =‎"bbb‎";‎ int‎ptr;‎‎ptr ‎= str‎c mpi(‎b uf2,‎buf1‎);‎ if‎(ptr‎> 0)‎‎ pr‎i ntf(‎"buff‎e r 2 ‎i s gr‎e ater‎than‎buff‎e r 1\‎n"); ‎‎i f (p‎t r < ‎0)‎‎p rint‎f("bu‎f fer ‎2 is ‎l ess ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r == ‎0)‎‎p rint‎f("bu‎f fer ‎2 equ‎a ls b‎u ffer‎1\n"‎);‎ re‎t urn ‎0;}‎‎‎函数名‎: str‎c py‎功能:‎串拷贝‎用法‎: cha‎r *st‎r cpy(‎c har ‎*str1‎, cha‎r *st‎r2); ‎程序例:‎#i‎n clud‎e <st‎d io.h‎>#i‎n clud‎e <st‎r ing.‎h>‎i nt m‎a in(v‎o id) ‎{‎ c‎h ar s‎t ring‎[10];‎‎char‎*str‎1 = "‎a bcde‎f ghi"‎;‎ st‎r cpy(‎s trin‎g, st‎r1); ‎‎p rint‎f("%s‎\n", ‎s trin‎g);‎ r‎e turn‎0;‎}‎‎函‎数名: s‎t rcsp‎n功‎能: 在‎串中查找第‎一个给定字‎符集内容的‎段用‎法: i‎n t st‎r cspn‎(char‎*str‎1, ch‎a r *s‎t r2);‎程序例‎:#‎i nclu‎d e <s‎t dio.‎h>#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎a lloc‎.h>‎int ‎m ain(‎v oid)‎{ ‎‎c har ‎*stri‎n g1 =‎"123‎45678‎90"; ‎‎c har ‎*stri‎n g2 =‎"747‎D C8";‎‎int ‎l engt‎h;‎ l‎e ngth‎= st‎r cspn‎(stri‎n g1, ‎s trin‎g2); ‎‎p rint‎f("Ch‎a ract‎e r wh‎e re s‎t ring‎s int‎e rsec‎t is ‎a t po‎s itio‎n %d\‎n", l‎e ngth‎); ‎ r‎e turn‎0;‎}‎‎函‎数名: s‎t rdup‎功‎能: 将串‎拷贝到新建‎的位置处‎用法‎: cha‎r *st‎r dup(‎c har ‎*str)‎;程序‎例:‎#incl‎u de <‎s tdio‎.h>‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<allo‎c.h> ‎int‎main‎(void‎){‎‎char‎*dup‎_str,‎*str‎i ng =‎"abc‎d e"; ‎‎dup_‎s tr =‎strd‎u p(st‎r ing)‎;‎ pri‎n tf("‎%s\n"‎, dup‎_str)‎;‎ fre‎e(dup‎_str)‎;‎ re‎t urn ‎0;‎}‎‎函数‎名: st‎r icmp‎功‎能: 以大‎小写不敏感‎方式比较两‎个串用‎法: ‎i nt s‎t ricm‎p(cha‎r *st‎r1, c‎h ar *‎s tr2)‎;程序‎例:‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎int‎main‎(void‎){ ‎c‎h ar *‎b uf1 ‎= "BB‎B", *‎b uf2 ‎= "bb‎b";‎ in‎t ptr‎;‎ ptr‎= st‎r icmp‎(buf2‎, buf‎1);‎i‎f (pt‎r > 0‎)‎ p‎r intf‎("buf‎f er 2‎is g‎r eate‎r tha‎n buf‎f er 1‎\n");‎‎if (‎p tr <‎0)‎‎prin‎t f("b‎u ffer‎2 is‎less‎than‎buff‎e r 1\‎n"); ‎‎i f (p‎t r ==‎0)‎‎prin‎t f("b‎u ffer‎2 eq‎u als ‎b uffe‎r 1\n‎");‎r‎e turn‎0;‎}‎‎函数名: ‎s trer‎r or‎功能:‎返回指向‎错误信息字‎符串的指针‎用‎法: ch‎a r *s‎t rerr‎o r(in‎t err‎n um);‎程序例‎:#‎i nclu‎d e <s‎t dio.‎h>#‎i nclu‎d e <e‎r rno.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *bu‎f fer;‎‎b uffe‎r = s‎t rerr‎o r(er‎r no);‎‎p rint‎f("Er‎r or: ‎%s\n"‎, buf‎f er);‎‎r etur‎n 0; ‎}‎‎函‎数名: s‎t rcmp‎i功‎能: 将‎一个串与另‎一个比较,‎不管大小‎写用‎法: i‎n t st‎r cmpi‎(char‎*str‎1, ch‎a r *s‎t r2);‎程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r *b‎u f1 =‎"BBB‎", *b‎u f2 =‎"bbb‎";‎ int‎ptr;‎‎ptr ‎= str‎c mpi(‎b uf2,‎buf1‎);‎ if‎(ptr‎> 0)‎‎ pr‎i ntf(‎"buff‎e r 2 ‎i s gr‎e ater‎than‎buff‎e r 1\‎n"); ‎‎i f (p‎t r < ‎0)‎‎p rint‎f("bu‎f fer ‎2 is ‎l ess ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r == ‎0)‎‎p rint‎f("bu‎f fer ‎2 equ‎a ls b‎u ffer‎1\n"‎);‎ re‎t urn ‎0;}‎‎‎函数名‎: str‎n cmp ‎功能‎:串比较‎用‎法: in‎t str‎n cmp(‎c har ‎*str1‎, cha‎r *st‎r2, i‎n t ma‎x len)‎;程序‎例:‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎int‎ mai‎n(voi‎d)‎{‎char‎*buf‎1 = "‎a aabb‎b", *‎b uf2 ‎= "bb‎b ccc"‎, *bu‎f3 = ‎"ccc"‎;‎int ‎p tr; ‎‎p tr =‎strn‎c mp(b‎u f2,b‎u f1,3‎);‎ if ‎(ptr ‎> 0) ‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎ el‎s e‎‎p rint‎f("bu‎f fer ‎2 is ‎l ess ‎t han ‎b uffe‎r 1\n‎");‎p‎t r = ‎s trnc‎m p(bu‎f2,bu‎f3,3)‎;‎if (‎p tr >‎0)‎‎prin‎t f("b‎u ffer‎2 is‎grea‎t er t‎h an b‎u ffer‎3\n"‎);‎ els‎e‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎3\n"‎);‎ re‎t urn(‎0);‎}‎‎函数名: ‎s trnc‎m pi‎功能:‎把串中的‎一部分与另‎一串中的一‎部分比较,‎不管大小‎写用‎法: i‎n t st‎r ncmp‎i(cha‎r *st‎r1, c‎h ar *‎s tr2)‎;程序‎例:‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎int‎main‎(void‎){ ‎c‎h ar *‎b uf1 ‎= "BB‎B ccc"‎, *bu‎f2 = ‎"bbbc‎c c"; ‎i‎n t pt‎r;‎ pt‎r = s‎t rncm‎p i(bu‎f2,bu‎f1,3)‎;‎ if ‎(ptr ‎> 0) ‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r < 0‎)‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎1\n"‎);‎ if‎(ptr‎== 0‎)‎ p‎r intf‎("buf‎f er 2‎equa‎l s bu‎f fer ‎1\n")‎;‎ ret‎u rn 0‎;} ‎‎函数‎名: st‎r ncpy‎功‎能: 串拷‎贝用‎法: c‎h ar *‎s trnc‎p y(ch‎a r *d‎e stin‎, cha‎r *so‎u rce,‎int ‎m axle‎n); ‎程序例: ‎#in‎c lude‎<std‎i o.h>‎#in‎c lude‎<str‎i ng.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎stri‎n g[10‎];‎ cha‎r *st‎r1 = ‎"abcd‎e fghi‎";‎ st‎r ncpy‎(stri‎n g, s‎t r1, ‎3);‎ st‎r ing[‎3] = ‎'\0';‎‎p rint‎f("%s‎\n", ‎s trin‎g);‎ re‎t urn ‎0;}‎‎函‎数名: s‎t rnic‎m p功‎能: ‎不注重大小‎写地比较两‎个串用‎法: ‎i nt s‎t rnic‎m p(ch‎a r *s‎t r1, ‎c har ‎*str2‎, uns‎i gned‎maxl‎e n); ‎程序例:‎#i‎n clud‎e <st‎r ing.‎h>#‎i nclu‎d e <s‎t dio.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *bu‎f1 = ‎"BBBc‎c c", ‎*buf2‎= "b‎b bccc‎";‎ int‎ptr;‎‎ptr ‎= str‎n icmp‎(buf2‎, buf‎1, 3)‎;‎ if ‎(ptr ‎> 0) ‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r < 0‎)‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎1\n"‎);‎ if‎(ptr‎== 0‎)‎ p‎r intf‎("buf‎f er 2‎equa‎l s bu‎f fer ‎1\n")‎;‎ ret‎u rn 0‎;} ‎‎‎函数名:‎strn‎s et‎功能:‎将一个串‎中的所有字‎符都设为指‎定字符‎用法:‎char‎*str‎n set(‎c har ‎*str,‎char‎ch, ‎u nsig‎n ed n‎);程‎序例:‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎in‎t mai‎n(voi‎d){‎‎c har ‎*stri‎n g = ‎"abcd‎e fghi‎j klmn‎o pqrs‎t uvwx‎y z"; ‎c‎h ar l‎e tter‎= 'x‎';‎ pr‎i ntf(‎"stri‎n g be‎f ore ‎s trns‎e t: %‎s\n",‎stri‎n g); ‎s‎t rnse‎t(str‎i ng, ‎l ette‎r, 13‎);‎ pri‎n tf("‎s trin‎g aft‎e r s‎t rnse‎t: %s‎\n", ‎s trin‎g);‎r‎e turn‎0;‎}‎‎函数名: ‎s trpb‎r k功‎能: ‎在串中查找‎给定字符集‎中的字符‎用法‎: cha‎r *st‎r pbrk‎(char‎*str‎1, ch‎a r *s‎t r2);‎程序例‎:#‎i nclu‎d e <s‎t dio.‎h>#‎i nclu‎d e <s‎t ring‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r *s‎t ring‎1 = "‎a bcde‎f ghij‎k lmno‎p qrst‎u vwxy‎z";‎ ch‎a r *s‎t ring‎2 = "‎o nm";‎‎c har ‎*ptr;‎‎ptr ‎= str‎p brk(‎s trin‎g1, s‎t ring‎2);‎i‎f (pt‎r)‎‎p rint‎f("st‎r pbrk‎foun‎d fir‎s t ch‎a ract‎e r: %‎c\n",‎*ptr‎); ‎ els‎e‎ p‎r intf‎("str‎p brk ‎d idn'‎t fin‎d cha‎r acte‎r in ‎s et\n‎");‎r‎e turn‎0;‎}‎‎函数‎名: st‎r rchr‎功‎能: 在串‎中查找指定‎字符的最后‎一个出现‎用法‎: cha‎r *st‎r rchr‎(char‎*str‎, cha‎r c);‎程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r st‎r ing[‎15]; ‎c‎h ar *‎p tr, ‎c = '‎r';‎s‎t rcpy‎(stri‎n g, "‎T his ‎i s a ‎s trin‎g"); ‎p‎t r = ‎s trrc‎h r(st‎r ing,‎c); ‎i‎f (pt‎r)‎‎p rint‎f("Th‎e cha‎r acte‎r %c ‎i s at‎posi‎t ion:‎%d\n‎", c,‎ptr-‎s trin‎g); ‎ el‎s e‎‎p rint‎f("Th‎e cha‎r acte‎r was‎not ‎f ound‎\n");‎‎r etur‎n 0; ‎}‎‎函‎数名: s‎t rrev‎功‎能: 串倒‎转用‎法: c‎h ar *‎s trre‎v(cha‎r *st‎r);‎程序例: ‎#in‎c lude‎<str‎i ng.h‎>#i‎n clud‎e <st‎d io.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎*for‎w ard ‎= "st‎r ing"‎;‎ pri‎n tf("‎B efor‎e str‎r ev()‎: %s\‎n", f‎o rwar‎d);‎ st‎r rev(‎f orwa‎r d); ‎p‎r intf‎("Aft‎e r st‎r rev(‎): %‎s\n",‎forw‎a rd);‎‎r etur‎n 0; ‎}‎函数‎名: st‎r set ‎功能‎:将一个‎串中的所有‎字符都设为‎指定字符‎用法‎: cha‎r *st‎r set(‎c har ‎*str,‎char‎c); ‎程序例:‎#i‎n clud‎e <st‎d io.h‎>#i‎n clud‎e <st‎r ing.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r str‎i ng[1‎0] = ‎"1234‎56789‎";‎ cha‎r sym‎b ol =‎'c';‎‎prin‎t f("B‎e fore‎strs‎e t():‎%s\n‎", st‎r ing)‎;‎strs‎e t(st‎r ing,‎symb‎o l); ‎p‎r intf‎("Aft‎e r st‎r set(‎): %‎s\n",‎stri‎n g); ‎r‎e turn‎0;‎}‎‎函数‎名: st‎r spn ‎功能‎:在串中‎查找指定字‎符集的子集‎的第一次出‎现用‎法: i‎n t st‎r spn(‎c har ‎*str1‎, cha‎r *st‎r2); ‎程序例:‎#i‎n clud‎e <st‎d io.h‎>#i‎n clud‎e <st‎r ing.‎h>#‎i nclu‎d e <a‎l loc.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *st‎r ing1‎= "1‎23456‎7890"‎;‎char‎*str‎i ng2 ‎= "12‎3DC8"‎;‎int ‎l engt‎h;‎ le‎n gth ‎= str‎s pn(s‎t ring‎1, st‎r ing2‎);‎ pri‎n tf("‎C hara‎c ter ‎w here‎stri‎n gs d‎i ffer‎is a‎t pos‎i tion‎%d\n‎", le‎n gth)‎;‎retu‎r n 0;‎}‎‎函数名‎: str‎s tr‎功能:‎在串中查‎找指定字符‎串的第一次‎出现用‎法: ‎c har ‎*strs‎t r(ch‎a r *s‎t r1, ‎c har ‎*str2‎);程‎序例:‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎in‎t mai‎n(voi‎d){‎‎c har ‎*str1‎= "B‎o rlan‎d Int‎e rnat‎i onal‎", *s‎t r2 =‎"nat‎i on",‎*ptr‎;‎ ptr‎= st‎r str(‎s tr1,‎str2‎);‎ pri‎n tf("‎T he s‎u bstr‎i ng i‎s: %s‎\n", ‎p tr);‎‎r etur‎n 0; ‎}‎‎函数名:‎strt‎o d功‎能: ‎将字符串转‎换为dou‎b le型值‎用‎法: do‎u ble ‎s trto‎d(cha‎r *st‎r, ch‎a r **‎e ndpt‎r);‎程序例: ‎#in‎c lude‎<std‎i o.h>‎#in‎c lude‎<std‎l ib.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎inpu‎t[80]‎, *en‎d ptr;‎‎d oubl‎e val‎u e;‎p‎r intf‎("Ent‎e r a ‎f loat‎i ng p‎o int ‎n umbe‎r:");‎‎g ets(‎i nput‎);‎ val‎u e = ‎s trto‎d(inp‎u t, &‎e ndpt‎r);‎ pr‎i ntf(‎"The ‎s trin‎g is ‎%s th‎e num‎b er i‎s %lf‎\n", ‎i nput‎, val‎u e); ‎ r‎e turn‎0;‎}‎‎函数‎名: st‎r tok ‎功能‎:查找由‎在第二个串‎中指定的分‎界符分隔开‎的单词‎用法:‎char‎*str‎t ok(c‎h ar *‎s tr1,‎char‎*str‎2);‎程序例: ‎#in‎c lude‎<str‎i ng.h‎>#i‎n clud‎e <st‎d io.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎inpu‎t[16]‎= "a‎b c,d"‎;‎char‎*p; ‎‎/* st‎r tok ‎p lace‎s a N‎U LL t‎e rmin‎a tor ‎i‎n fro‎n t of‎the ‎t oken‎, if ‎f ound‎*/‎ p ‎= str‎t ok(i‎n put,‎",")‎;‎if (‎p) ‎p rint‎f("%s‎\n", ‎p);‎/‎* A s‎e cond‎call‎to s‎t rtok‎usin‎g a N‎U LL‎ as‎the ‎f irst‎para‎m eter‎retu‎r ns a‎poin‎t er‎ to‎the ‎c hara‎c ter ‎f ollo‎w ing ‎t he t‎o ken ‎*/‎ p ‎= str‎t ok(N‎U LL, ‎",");‎‎i f (p‎) p‎r intf‎("%s\‎n", p‎);‎ ret‎u rn 0‎;} ‎‎‎函数名:‎strt‎o l功‎能: ‎将串转换为‎长整数‎用法:‎long‎strt‎o l(ch‎a r *s‎t r, c‎h ar *‎*endp‎t r, i‎n t ba‎s e); ‎程序例:‎#i‎n clud‎e <st‎d lib.‎h>#‎i nclu‎d e <s‎t dio.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *st‎r ing ‎= "87‎65432‎1", *‎e ndpt‎r;‎ lon‎g lnu‎m ber;‎‎/* s‎t rtol‎conv‎e rts ‎s trin‎g to ‎l ong ‎i nteg‎e r *‎/‎lnum‎b er =‎strt‎o l(st‎r ing,‎&end‎p tr, ‎10); ‎p‎r intf‎("str‎i ng =‎%s ‎l ong ‎= %ld‎\n", ‎s trin‎g, ln‎u mber‎); ‎ re‎t urn ‎0;}‎‎函数名:‎stru‎p r功‎能: ‎将串中的小‎写字母转换‎为大写字母‎用‎法: ch‎a r *s‎t rupr‎(char‎*str‎);程‎序例:‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎in‎t mai‎n(voi‎d){‎‎c har ‎*stri‎n g = ‎"abcd‎e fghi‎j klmn‎o pqrs‎t uvwx‎y z", ‎*ptr;‎‎/* c‎o nver‎t s st‎r ing ‎t o up‎p er c‎a se c‎h arac‎t ers ‎*/‎ ptr‎= st‎r upr(‎s trin‎g);‎ pr‎i ntf(‎"%s\n‎", pt‎r);‎ re‎t urn ‎0;}‎‎‎函数名‎: swa‎b功‎能: 交‎换字节‎用法:‎void‎swab‎(cha‎r *fr‎o m, c‎h ar *‎t o, i‎n t nb‎y tes)‎;程序‎例:‎#incl‎u de <‎s tdli‎b.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎ch‎a r so‎u rce[‎15] =‎"rFn‎a koB‎l rna ‎d";‎c har ‎t arge‎t[15]‎;i‎n t ma‎i n(vo‎i d)‎{‎swab‎(sour‎c e, t‎a rget‎, str‎l en(s‎o urce‎));‎ pr‎i ntf(‎"This‎is t‎a rget‎: %s\‎n", t‎a rget‎);‎ ret‎u rn 0‎;} ‎‎‎。

Wincc系统函数.doc

Wincc系统函数.doc

报警1、ClearAlarmBuffer应用:删除HMI设备报警缓冲区中的报警。

说明:尚未确认的报警也被删除。

2、ClearAlarmBufferProtoolLegacy应用:该系统函数用来确保兼容性。

它具有与系统函数“ClearAlarmBuffer”相同的功能,但使用旧的ProTool编号方式。

参数:Alarm class number将要删除其消息的报警类别号:-1(hmiAllProtoolLegacy)=所有报警/事件0(hmiAlarmsProtoolLegacy)=错误1(hmiEventsProtoolLegacy)=警告2(hmiSystemProtoolLegacy)=系统事件3(hmiS7DiagnosisProtoolLegacy)=S7诊断事件3、SetAlarmReportMode应用:确定是否将报警自动报告到打印机上。

4、ShowAlarmWindow应用:隐藏或显示HMI设备上的报警窗口。

5、ShowSystemAlarm应用:将已传递参数的值显示为HMI设备上的系统报警。

编辑位1、InvertBit应用:对给定的“Bool”型变量的值取反。

如果变量具有值1(真),它将被设置为0(假)。

如果变量具有值0(假),它将被设置为1(真)。

说明:不要使用循环事件或递归事件或具有外部变量的系统函数。

在画面中创建一个开关。

该开关连接到外部布尔类型变量“Tag1”。

将系统函数“InvertBit”分配给“更改”事件。

该系统函数连接到外部变量“Tag1”。

在运行期间,这会导致无法预料的行为。

2、InvertBitInTag应用:对给定变量中的位取反:如果变量中的位为值1(真),它将被设置为0(假)。

如果变量中的位为值0(假),它将被设置为1(真)。

在改变了给定位之后,系统函数将整个变量传送回PLC。

不检查此过程期间变量中是否有其它位发生更改。

在变量被传送回PLC之前,操作员和PLC对变量具有只读访问权限。

VBS常用函数

VBS常用函数

WinCC VBscript常用标准函数总结在WinCC软件中使用VBS进行编程的时候常常使用的标准函数整理如下:数值型函数:abs(num): 返回绝对值sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负hex(num): 返回十六进制值直接表示:&Hxx 最大8位oct(num): 返回八进制值直接表示:&Oxx 最大8位sqr(num): 返回平方根num>0int(num): 取整int(99.8)=99; int(-99.2)=100fix(num): 取整fix(99.8)=99; fix(-99.2)=99round(num,n): 四舍五入取小数位round(3.14159,3)=3.142 中点数值四舍五入为近偶取整round(3.25,1)=3.2log(num): 取以e为底的对数num>0exp(n): 取e的n次幂通常用num^nsin(num): 三角函数,以弧度为值计算(角度*Pai)/180=弧度con(num); tan(num); atn(num)2.字符串函数:len(str):计算字符串长度中文字符长度也计为一!mid(str,起始字符,[读取长度]):截取字符串中间子字符串left(str,nlen):从左边起截取nlen长度子字符串right(str,nlen):从右边起截取nlen长度子字符串Lcase(str):字符串转成小写Ucase(str):字符串转成大写trim(str):去除字符串两端空格Ltrim(str):去除字符串左侧空格Rtrim(str):去除字符串右侧空格replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串注:默认值:起始字符1;替代次数不限;比较方法区分大小写(0)InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串可选参数需同时选返回起始位置InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串返回起始位置space(n):构造n个空格的字符串string(n,str):构造由n个str第一个字符组成的字符串StrReverse(str):反转字符串split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组可选参数需同时选3.数据类型转换函数:Cint(str):转换正数True -1;False 0;日期距离1899/12/31天数;时间上午段0;下午段1;Cstr(str):日期输出格式yyyy/mm/dd;时间输出格式Am/Pm hh:mm:ssClng(str):与Cin()类似Cbool(num):num不为零True;反之FalseCdate(str):转换日期格式0:#Am 12:00:00#;正数距离1899/12/31天数的日期;浮点数日期+小数时间Cbyte(num):num<255 转换为字节Csng(str):转换为单精度数值Cdbl(str):转换为双精度数值Ccur(str):转换为现金格式4.时间函数:date:取系统当前日期time:取系统当前时间now:取系统当前时间及日期值Datetime类型timer:取当前时间距离零点秒值,计时器,可计算时间差DateAdd(间隔单位,间隔值,日期):推算相邻日期DateDiff(间隔单位,日期一,日期二):计算时间差日期二-日期一Datepart(间隔单位,日期):计算日期的间隔单位值Dateserial(date):输出日期值(按序列计算)Timeserial(time):输出时间值(按序列计算)DateValue(datetime):取出字符串中日期值Timevalue(datetime):取出字符串中时间值weekday(date):计算星期几MonthName(date):输出月分名year(datetime):截取年份month(datetime):截取月份day(datetime):截取日hour(datetime):截取小时minute(datetime):截取分钟second(datetime):截取秒5.其它函数:Array(unit,..):动态生成数组Asc(str):输出字符串第一个字符的ASCII码Chr(asc):转换ASCII为字符Enter:Chr(13)&Chr(10)Filter(数组名称,关键字符串,[,包含][,比较方法]):将字符串数组中含有关键字符串的元素存成新的数组(默认)[包含]为false则取不包含的元素Join(ArrayName):将数组中元素连成字符串Ubound(ArrayName[,维数]):取得数组相应维数的上界Lbound(ArrayName[,维数]):取得数组相应维数的下界一般为0Randmize n:启动随机数种子Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)子程序和自定义函数Sub StrSubName Function StrFunName(arg[1],..)子程序体函数体Exit Sub 中途跳出Exit Function 中途跳出End Sub StrFunName=Value 返回值End Function[call] StrSubName 引用子程序Var=StrFunName(arg[1],..) 引用函数子程序和自定义函数可以递归调用;ASP六大对象常用语句示范:Response:Response.write StrVar/"String":向网页写出参数值或字符串等同于在Html标记中嵌入<%=StrVar/"String"%>Response.End:停止页面编译,并将已经编译内容输出到浏览器Response.Buffer=True|False:页面编译时是否使用缓存的设置,一般在页面头部设置Response.Flush:强制输出页面已编译部分内容Response.Clear:将缓冲区内的数据清除Response.Redirect URL:停止页面编译或输出,转载指定所需页面Response.IsClientConnected:返回True|False,检测用户是否还处于连接状态Response.Charset(CharsetName):设置页面编码类型,即<metahttp-equiv="Content-Type" content="text/html; charset=gb2312">Response.ContentType [= ContentType ]:设置页面文件类型,同上Response.Expires [= number]:设置页面失效时间,单位分钟Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间Response.Status = StatusDescription:设置页面状态描述Request:Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式Request[.collection|property|method](variable)Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=valueRequest.QueryString(Varible)[(Index).Count]Request.form("PassStrName"):读取Post方法传递的纯表单域的值Request.Form(Parameter)[(Index).Count]Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考Request.BinaryRead(Count):读取指定字节数的传送值Request.TotalBytes:查询体的长度,以字节为单位,只读注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要Session:(用户全局变量)Session("SesName")=value:存储Session变量值,也可读取该值Session("SesName")=Empty:判断Session值是否存在的两种方法IsEmpty(Session("SesName"))=True|False:判断Session值是否存在的两种方法Session.TimeOut=num:设置Session变量的存在时效,单位分钟Session.Abandon:清除所有Session变量值Session.SessionID:Session变量的ID序列号,只读Application:(应用程序全局变量)Application("AppName")=value:存储Application变量值,也可读取该值Application("AppName")=Empty:判断Application值是否存在的两种方法IsEmpty(Application("AppName"))=True|False:判断Application值是否存在的两种方法Application.Lock:Application变量值锁定,防止同时更改变量值Application.UnLock:Application变量值解锁,允许更改变量值注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application 变量Global.asa文件的结构:<% @language="VBscript"%><% Sub Application_OnStart ...End SubSub Application_OnEnd ... End SubSub Session_OnStart ...End SubSub Session_OnEnd ... End Sub%>Server:Server.MapPath("FileUrl"):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等Server.URLEncode( "string"):转换为浏览器地址编码set Var=Server.CreatObject("ObjName"):创建对象变量Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MBResponse.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值Response.cookies("StrCookieName")="":判断是否为空Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效Response.Cookies(Cookie[(key).Attribute]):标准语法ObjectContext 控制ASP的事务处理ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生ObjectContext.SetAbort:显式的放弃一次事务处理ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用Msgbox "string"/StrName:VBscript提示框表单的Onsubmit事件:在同一页面写入Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。

WINCC C函数用法大全

WINCC C函数用法大全
#include <stdio.h>
int main(void)
{
char *buf1 = "BBB", *buf2 = "bbb";
int ptr;
ptr = strcmpi(buf2, buf1);
if (ptr > 0)
printf("buffer 2 is greater than buffer 1\n");
char string[10];
char *str1 = "abcdefghi";
stpcpy(string, str1);
printf("%s\n", string);
return 0;
}
函数名: strcat
功 能: 字符串拼接函数
{
char string[15];
char *ptr, c = 'r';
strcpy(string, "This is a string");
ptr = strchr(string, c);
if (ptr)
printf("The character %c is at position: %d\n", c, ptr-string);
char *string2 = "747DC8";
int length;
length = strcspn(string1, string2);
printf("Character where strings intersect is at position %d\n", length);

WINCC-C脚本大全

WINCC-C脚本大全

WINCC C脚本的标准函数 12009-08-06 17:04标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_Msg Nr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPi ctureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Contro l1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPic tureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Contro l1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

WinCC 函 数

WinCC 函 数

WinCC函数2009-10-10 17:27:26| 分类:默认分类| 标签:|字号大中小订阅GetFontSize函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“Static Text1”是该对象的名称。

1). 读出当前字体大小和fontsize中的缓冲区。

2). 执行处理返回值的自定义代码。

2. long int GetAlignmentTop(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,定义垂直文本对齐(上对齐、居中、下对齐)。

读出字体大小的实例{long int fontsize;//获得实际字体大小fontsize= GetFontSize(lpszPictureName,"Static Text 1");//自定义代码//在那里用户可以使用返回值做某事...}GetFontSize函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“Static Text1”是该对象的名称。

3. BOOL GetFontBold(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,定义字体样式是否为“粗体字”。

读出静态文本域的布尔型属性的实例{BOOL bbold;//了解文本是否是粗体字bbold= GetFontBold(lpszPictureName,"Static Text 1");if(bbold){// 自定义代码// 字体是否是粗体字...}else{// 自定义代码// 字体是否不是粗体字...}GetFontBold函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“Static Text1”是该对象的名称。

4. char* GetText(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,为对象,例如静态文本、复选框和单选框,指定“文本”属性的数值。

WinCC-VBscript常用函数

WinCC-VBscript常用函数

WinCC VBscript常用函数1.数值型函数:abs(num): 返回绝对值sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负hex(num): 返回十六进制值直接表示:&Hxx 最大8位oct(num): 返回八进制值直接表示:&Oxx 最大8位sqr(num): 返回平方根 num>0int(num): 取整 int(99.8)=99; int(-99.2)=100fix(num): 取整 fix(99.8)=99; fix(-99.2)=99round(num,n): 四舍五入取小数位 round(3.14159,3)=3.142 中点数值四舍五入为近偶取整 round(3.25,1)=3.2log(num): 取以e为底的对数 num>0exp(n): 取e的n次幂通常用 num^nsin(num): 三角函数,以弧度为值计算 (角度*Pai)/180=弧度 con(num);tan(num); atn(num)2.字符串函数:len(str):计算字符串长度中文字符长度也计为一!mid(str,起始字符,[读取长度]):截取字符串中间子字符串left(str,nlen):从左边起截取nlen长度子字符串right(str,nlen):从右边起截取nlen长度子字符串Lcase(str):字符串转成小写Ucase(str):字符串转成大写trim(str):去除字符串两端空格Ltrim(str):去除字符串左侧空格Rtrim(str):去除字符串右侧空格replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串注:默认值:起始字符 1;替代次数不限;比较方法区分大小写(0)InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串可选参数需同时选返回起始位置InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串返回起始位置space(n):构造n个空格的字符串string(n,str):构造由n个str第一个字符组成的字符串StrReverse(str):反转字符串split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组可选参数需同时选3.数据类型转换函数:Cint(str):转换正数 True -1;False 0;日期距离1899/12/31天数;时间上午段 0;下午段 1;Cstr(str):日期输出格式 yyyy/mm/dd;时间输出格式 Am/Pm hh:mm:ss Clng(str):与Cin()类似Cbool(num):num不为零 True;反之 FalseCdate(str):转换日期格式 0:#Am 12:00:00#;正数距离1899/12/31天数的日期;浮点数日期+小数时间Cbyte(num):num<255 转换为字节Csng(str):转换为单精度数值Cdbl(str):转换为双精度数值Ccur(str):转换为现金格式4.时间函数:date:取系统当前日期time:取系统当前时间now:取系统当前时间及日期值 Datetime类型timer:取当前时间距离零点秒值,计时器,可计算时间差DateAdd(间隔单位,间隔值,日期):推算相邻日期DateDiff(间隔单位,日期一,日期二):计算时间差日期二-日期一Datepart(间隔单位,日期):计算日期的间隔单位值Dateserial(date):输出日期值(按序列计算)Timeserial(time):输出时间值(按序列计算)DateValue(datetime):取出字符串中日期值Timevalue(datetime):取出字符串中时间值weekday(date):计算星期几MonthName(date):输出月分名year(datetime):截取年份month(datetime):截取月份day(datetime):截取日hour(datetime):截取小时minute(datetime):截取分钟second(datetime):截取秒5.其它函数:Array(unit,..):动态生成数组Asc(str):输出字符串第一个字符的ASCII码Chr(asc):转换ASCII为字符 Enter:Chr(13)&Chr(10)Filter(数组名称,关键字符串,[,包含][,比较方法]):将字符串数组中含有关键字符串的元素存成新的数组(默认) [包含]为false 则取不包含的元素Join(ArrayName):将数组中元素连成字符串Ubound(ArrayName[,维数]):取得数组相应维数的上界Lbound(ArrayName[,维数]):取得数组相应维数的下界一般为0Randmize n:启动随机数种子Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)子程序和自定义函数Sub StrSubName Function StrFunName(arg[1],..)子程序体函数体Exit Sub 中途跳出 Exit Function 中途跳出End Sub StrFunName=Value 返回值End Function[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函数子程序和自定义函数可以递归调用;ASP六大对象常用语句示范:Response:Response.write StrVar/"String":向网页写出参数值或字符串等同于在Html标记中嵌入<%=StrVar/"String"%>Response.End:停止页面编译,并将已经编译内容输出到浏览器Response.Buffer=True|False:页面编译时是否使用缓存的设置,一般在页面头部设置Response.Flush:强制输出页面已编译部分内容Response.Clear:将缓冲区内的数据清除Response.Redirect URL:停止页面编译或输出,转载指定所需页面Response.IsClientConnected:返回True|False,检测用户是否还处于连接状态Response.Charset(CharsetName):设置页面编码类型,即<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> Response.ContentType [= ContentType ]:设置页面文件类型,同上Response.Expires [= number]:设置页面失效时间,单位分钟Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间Response.Status = StatusDescription:设置页面状态描述Request:Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式Request[.collection|property|method](variable)Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=valueRequest.QueryString(Varible)[(Index).Count]Request.form("PassStrName"):读取Post方法传递的纯表单域的值Request.Form(Parameter)[(Index).Count]Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考Request.BinaryRead(Count):读取指定字节数的传送值Request.TotalBytes:查询体的长度,以字节为单位,只读注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要Session:(用户全局变量)Session("SesName")=value:存储Session变量值,也可读取该值Session("SesName")=Empty:判断Session值是否存在的两种方法IsEmpty(Session("SesName"))=True|False:判断Session值是否存在的两种方法Session.TimeOut=num:设置Session变量的存在时效,单位分钟Session.Abandon:清除所有Session变量值Session.SessionID:Session变量的ID序列号,只读Application:(应用程序全局变量)Application("AppName")=value:存储Application变量值,也可读取该值Application("AppName")=Empty:判断Application值是否存在的两种方法IsEmpty(Application("AppName"))=True|False:判断Application值是否存在的两种方法Application.Lock:Application变量值锁定,防止同时更改变量值Application.UnLock:Application变量值解锁,允许更改变量值注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application变量Global.asa文件的结构:<% @language="VBscript"%><% Sub Application_OnStart ...End SubSub Application_OnEnd ... End SubSub Session_OnStart ...End SubSub Session_OnEnd ... End Sub%>Server:Server.MapPath(""):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等Server.URLEncode( "string"):转换为浏览器地址编码set Var=Server.CreatObject("ObjName"):创建对象变量Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MBResponse.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值Response.cookies("StrCookieName")="":判断是否为空Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效Response.Cookies(Cookie[(key).Attribute]):标准语法ObjectContext 控制ASP的事务处理ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生ObjectContext.SetAbort:显式的放弃一次事务处理ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用Msgbox "string"/StrName:VBscript提示框表单的Onsubmit事件:在同一页面写入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。

WINCC标准函数集2

WINCC标准函数集2

#include "apdefap.h"void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName){#define PIC_0 "w_start"SetBackColor("w_left.pdl","Button1",0xd8e9ec); //Return-Type: BOOLSetBackColor("w_left.pdl","Button2",0xd8e9ec); //Return-Type: BOOLSetBackColor("w_left.pdl","Button3",0xcfe8cc); //Return-Type: BOOLSetBackColor("w_left.pdl","Button4",0xd8e9ec); //Return-Type: BOOLSetBackColor("w_left.pdl","Button5",0xd8e9ec); //Return-Type: BOOLSetBackColor("w_left.pdl","Button6",0xd8e9ec); //Return-Type: BOOLSetBackColor("w_left.pdl","Button7",0xd8e9ec); //Return-Type: BOOLSetBackColor("w_left.pdl","Button8",0xd8e9ec); //Return-Type: BOOL} SetPictureName(PIC_0,"画面窗口5","pic_yuchuli_xigeSan");WinCC标准函数集(二)注:该篇文档包含用户函数集Graphics、Report、Taglog、WinCC、Execute Program篇,介绍与WinCC编程图形、报表打印、表格趋势控件、WinCC系统函数、调用其他程序有关的函数。

wincc中使用vbs的常用函数

wincc中使用vbs的常用函数

wincc中使用vbs的常用函数1.函数array()功能:创建一个数组变量格式:array(list)参数:list为数组变量中的每个数值列,中间用逗号间隔例子:<%i=array(“1”,”2”,”3”)%>结果:i被剥夺为数组2.函数cint()功能:将一表达式/其它类型的变量转换成整数类型(int)格式:cint(expression)参数:expression就是任何有效率的表达式/其它类型的变量例子:<%f=”234”response.writecint(f)+2%>结果:236函数cint()将字符”234”转换成整数234.如果表达式为空,3.函数:creatobject()功能:建立及回到一个activex对象.格式:creatobject(obname)参数bname就是对象的名称例子:<%setcon=server.createobject(“adodb.connection”)%>结果:4.函数cstr()功能:将一表达式/其它类型的变量转换成字符类型(string)格式:cstr(expression)参数:expression是任何有效的表达式/其它类型的变量例子:<%s=3+2response.write”theresultis:”&cstr(s)%>结果:函数cstr()将整数5转换成字符”5”.5.函数date()功能:返回当前系统(server端)的日期或者违宪时,返回值为0;格式:date()参数:并无例子<%date()%>结果:05/10/006.函数dateadd()功能:排序某个选定的时间和格式:dateadd(timeinterval,number,date)参数:timeinterval就是时间单位(月,日..);number就是时间间隔值,date就是时间始点.例子:<%currentdate=#8/4/99#newdate=dateadd(“m”,3,currentdate)response.writenewdate%><%currentdate=#12:34:45pm#newdate=datead d(“h”,3,currentdate)response.writenewdate%>结果:11/4/993:34:45pm其中“m”=”month”;“d”=”day”;如果是currentdate格式,则,“h”=”hour”;“s”=”second”;7.函数datediff()功能:排序某量个选定的时间差格式:datediff(timeinterval,date1,date2[,firstdayofweek[,firstdayofyear]])参数:例子:<%fromdate=#8/4/99#todate=#1/1/2000#response.write”thereare”&_datediff(“d”,fromdate,todate)&_“daystomillenium from8/4/99.”%>结果:thereare150daystomilleniumfrom8/4/99.8.函数day()功能:返回一个整数值,对应于某月的某日格式:day(date)timeinterval是时间单位;date1,date2是有效的日期表达式,firstdayofweek,firstdayofyear就是任一选项.参数:date是一个有效的日期表达式;例子<%=date(#8/4/99#)%>结果:49.函数formatcurrency()功能:转换成货币格式格式:formatcurrency(expression[,digit[,leadingdigit[,paren[,groupdigit]]]])参数:expression就是有效率的数字表达式;digit则表示小数点后的位数;leadingdigit,paren,groupdigit就是任一选项.例子<%=formatcurrency(34.3456)%>结果34.3510.函数formatdatetime()功能:格式化日期表达式/变量格式:formatdatetime(date[,nameformat])参数:date为有效率的日期表达式/变量;nameformat就是选定的日期格式常量名称.例子<%=formatdatetime(“08/04/99”,vblongdate)%>结果:wednesday,august04,1999表明:--------------------------------------------------------------------------------描述回到表达式,此表达式已被格式化为日期或时间。

WinCC VBscript常用函数

WinCC VBscript常用函数

WinCC VBscript常用函数1.数值型函数:abs(num): 返回绝对值sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负hex(num): 返回十六进制值直接表示:&Hxx 最大8位oct(num): 返回八进制值直接表示:&Oxx 最大8位sqr(num): 返回平方根 num>0int(num): 取整 int(99.8)=99; int(-99.2)=100fix(num): 取整 fix(99.8)=99; fix(-99.2)=99round(num,n): 四舍五入取小数位 round(3.14159,3)=3.142 中点数值四舍五入为近偶取整 round(3.25,1)=3.2log(num): 取以e为底的对数 num>0exp(n): 取e的n次幂通常用 num^nsin(num): 三角函数,以弧度为值计算 (角度*Pai)/180=弧度 con(num);tan(num); atn(num)2.字符串函数:len(str):计算字符串长度中文字符长度也计为一!mid(str,起始字符,[读取长度]):截取字符串中间子字符串left(str,nlen):从左边起截取nlen长度子字符串right(str,nlen):从右边起截取nlen长度子字符串Lcase(str):字符串转成小写Ucase(str):字符串转成大写trim(str):去除字符串两端空格Ltrim(str):去除字符串左侧空格Rtrim(str):去除字符串右侧空格replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串注:默认值:起始字符 1;替代次数不限;比较方法区分大小写(0)InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串可选参数需同时选返回起始位置InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串返回起始位置space(n):构造n个空格的字符串string(n,str):构造由n个str第一个字符组成的字符串StrReverse(str):反转字符串split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组可选参数需同时选3.数据类型转换函数:Cint(str):转换正数 True -1;False 0;日期距离1899/12/31天数;时间上午段 0;下午段 1;Cstr(str):日期输出格式 yyyy/mm/dd;时间输出格式 Am/Pm hh:mm:ss Clng(str):与Cin()类似Cbool(num):num不为零 True;反之 FalseCdate(str):转换日期格式 0:#Am 12:00:00#;正数距离1899/12/31天数的日期;浮点数日期+小数时间Cbyte(num):num<255 转换为字节Csng(str):转换为单精度数值Cdbl(str):转换为双精度数值Ccur(str):转换为现金格式4.时间函数:date:取系统当前日期time:取系统当前时间now:取系统当前时间及日期值 Datetime类型timer:取当前时间距离零点秒值,计时器,可计算时间差DateAdd(间隔单位,间隔值,日期):推算相邻日期DateDiff(间隔单位,日期一,日期二):计算时间差日期二-日期一Datepart(间隔单位,日期):计算日期的间隔单位值Dateserial(date):输出日期值(按序列计算)Timeserial(time):输出时间值(按序列计算)DateValue(datetime):取出字符串中日期值Timevalue(datetime):取出字符串中时间值weekday(date):计算星期几MonthName(date):输出月分名year(datetime):截取年份month(datetime):截取月份day(datetime):截取日hour(datetime):截取小时minute(datetime):截取分钟second(datetime):截取秒5.其它函数:Array(unit,..):动态生成数组Asc(str):输出字符串第一个字符的ASCII码Chr(asc):转换ASCII为字符 Enter:Chr(13)&Chr(10)Filter(数组名称,关键字符串,[,包含][,比较方法]):将字符串数组中含有关键字符串的元素存成新的数组(默认) [包含]为false 则取不包含的元素Join(ArrayName):将数组中元素连成字符串Ubound(ArrayName[,维数]):取得数组相应维数的上界Lbound(ArrayName[,维数]):取得数组相应维数的下界一般为0Randmize n:启动随机数种子Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)子程序和自定义函数Sub StrSubName Function StrFunName(arg[1],..)子程序体函数体Exit Sub 中途跳出 Exit Function 中途跳出End Sub StrFunName=Value 返回值End Function[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函数子程序和自定义函数可以递归调用;ASP六大对象常用语句示范:Response:Response.write StrVar/"String":向网页写出参数值或字符串等同于在Html标记中嵌入<%=StrVar/"String"%>Response.End:停止页面编译,并将已经编译内容输出到浏览器Response.Buffer=True|False:页面编译时是否使用缓存的设置,一般在页面头部设置Response.Flush:强制输出页面已编译部分内容Response.Clear:将缓冲区内的数据清除Response.Redirect URL:停止页面编译或输出,转载指定所需页面Response.IsClientConnected:返回True|False,检测用户是否还处于连接状态Response.Charset(CharsetName):设置页面编码类型,即<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> Response.ContentType [= ContentType ]:设置页面文件类型,同上Response.Expires [= number]:设置页面失效时间,单位分钟Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间Response.Status = StatusDescription:设置页面状态描述Request:Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式Request[.collection|property|method](variable)Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=valueRequest.QueryString(Varible)[(Index).Count]Request.form("PassStrName"):读取Post方法传递的纯表单域的值Request.Form(Parameter)[(Index).Count]Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考Request.BinaryRead(Count):读取指定字节数的传送值Request.TotalBytes:查询体的长度,以字节为单位,只读注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要Session:(用户全局变量)Session("SesName")=value:存储Session变量值,也可读取该值Session("SesName")=Empty:判断Session值是否存在的两种方法IsEmpty(Session("SesName"))=True|False:判断Session值是否存在的两种方法Session.TimeOut=num:设置Session变量的存在时效,单位分钟Session.Abandon:清除所有Session变量值Session.SessionID:Session变量的ID序列号,只读Application:(应用程序全局变量)Application("AppName")=value:存储Application变量值,也可读取该值Application("AppName")=Empty:判断Application值是否存在的两种方法IsEmpty(Application("AppName"))=True|False:判断Application值是否存在的两种方法Application.Lock:Application变量值锁定,防止同时更改变量值Application.UnLock:Application变量值解锁,允许更改变量值注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application变量Global.asa文件的结构:<% @language="VBscript"%><% Sub Application_OnStart ...End SubSub Application_OnEnd ... End SubSub Session_OnStart ...End SubSub Session_OnEnd ... End Sub%>Server:Server.MapPath("FileUrl"):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等Server.URLEncode( "string"):转换为浏览器地址编码set Var=Server.CreatObject("ObjName"):创建对象变量Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MBResponse.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值Response.cookies("StrCookieName")="":判断是否为空Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效Response.Cookies(Cookie[(key).Attribute]):标准语法ObjectContext 控制ASP的事务处理ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生ObjectContext.SetAbort:显式的放弃一次事务处理ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用Msgbox "string"/StrName:VBscript提示框表单的Onsubmit事件:在同一页面写入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。

WINCC标准函数1.doc

WINCC标准函数1.doc

该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alami -简短描述Alam"且包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮°这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AckncwlcdgcMcssagc(DW()RD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作BinCC报警控件的实例{〃确认选择的报警记录消息A ckno wledgeMessage(GetTag\X ord("U08i_ MsgNr "));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_()nBtnArcLong(char*IpszPicturcNamc, char*pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作BinCC报警控件的实例{//跳转到WinCC报警控件中的第一条消息AXC_()nBtnMsgFirst(,,gs_ij/nrni_OO,\ "Control!}AXC_()nBtnMsgFirst 函数参数:“gs项am顼0”是在其中组态WinCC报警控件的画面的名称。

Control / WinCC报警控件的对象名。

3.BOOL AXC_ OnBtnArcShort(char* IpszPicturcNanic, char*pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作wmcc报警控件的实例{//跳转到WinCC报警控件中的第一条消息AXC_()nBaTMsgI;irst(,,gs_alarm_OO,\ "Control!}X XC_ OnBtnMsgFirst 函数参数:Control 1是WinCC报警控件的对象名。

WINCC标准函数释义

WINCC标准函数释义

标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_MsgNr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

wincc函数

wincc函数

1.切换画面按钮 (2)2.设定BIT变量当前值 (2)3.取当前登陆用户 (2)4.取硬盘剩余容量 (3)5.以图像模式显示(灯、钮)等 (5)6.自定义对象 (6)7.OK返回值 (19)8.小键盘 (19)9.PID传递页面C脚本 (23)10.将变量B的值赋给变量A(无符号16位) (25)11.乒乓键 (26)12.C脚本、脉冲延时 (27)13.CONFIGURATION TOOOL (28)14.用“笔组”实现一张页面做趋势 (28)15.滑竿,SLIDER CONTROL的使用 (34)16.切换语言 (35)1.切换画面按钮#include "apdefap.h"void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y) {SetPictureName(lpszPictureName,"PictureWindow1","HS_MODE.Pdl"); //设定PictureWindow1填充为页面HS_MODE.Pdl SetTagChar("TT","操作模式");//Return-Type: BOOL //设定字符串变量TT当前值为“操作模式”以显示页眉}2.设定BIT变量当前值SetTagBit("N3_VALVE_RESET",0);3.取当前登陆用户 @CurrentUser4.取硬盘剩余容量5.以图像模式显示(灯、钮)等智能对象\状态显示选透明颜色6.自定义对象C动作#include "apdefap.h"void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y) {Valve(lpszPictureName,lpszObjectName);//Return-Type: void}全局脚本\项目函数void Valve(char *lpszPictureName, char *lpszObjectName){char* Tagname = GetPropChar(lpszPictureName, lpszObjectName, "ObjectName");//设TAGNAME当前值为N3_HS_Achar* TitleName = GetPropChar(lpszPictureName, lpszObjectName, "TITLE");//设TITLENAME当前值为热风炉自动char* Name = GetPropChar(lpszPictureName, lpszObjectName, "PICNAME");//设NAME当前值为QD_BUTTONchar* DIS = GetPropChar(lpszPictureName, lpszObjectName, "DIS");//设DIS是否显示,本变量空用于下面的阀函数static BOOL visble; //声明BOOL量VISBLElong lLeft ; //声明常整数1LEFT,用于弹出框的左上角long lTop;BOOL Bool=TRUE; //声明BOOL量BOO1为真LINKINFO linkinfo; //Structure definition结构定义visble=TRUE; //设VISBLE当前值为真//lLeft =599;//lTop=327;lLeft =GetLeft(lpszPictureName,lpszObjectName)+50;//1LEFT当前值为当前页面的当前对象的左坐标+50,注意不是VALUE的值而是当前对象按钮“热风炉自动”lTop=GetTop(lpszPictureName,lpszObjectName); //1TOP当前值为当前页面的当前对象的上坐标if (lLeft <20) //限制坐标范围{lLeft =20;}if (lLeft >1240){lLeft =1240;}if (lTop>200){lTop=200;}if (lTop<20){lTop=20;}SetLeft(lpszPictureName,"value",lLeft); //设定当前页面中画面窗口VALUE的左上角坐标SetTop(lpszPictureName,"value",lTop);SetPictureName(lpszPictureName,"value",".PDL"); //设定当前页面中画面窗口VALUE填充页面为.PDL PDLRTSetPropEx(0,lpszPictureName,"value","Visible",VT_BOOL,&visble,NULL,NULL,0,NULL,NULL); //设定VALUE的一些属性,帮助里未查到,待查SetPropChar(lpszPictureName,"value","CaptionText",TitleName); //设定VALUE的CAPTION TEXT为热风炉自动SetPropChar(lpszPictureName,"value","TagPrefix",Tagname); //为VALUE中所有变量增加前缀N3_HS_A SetPropChar(lpszPictureName,"value","PictureName",Name); //为VALUE填充页面为QD_BUTTONSetPropChar(Name,"text","Text",Tagname);//为当前页面名字叫TEXT的TEXT属性设定为TAGNAME的当前值,本项目用于阀函数SetPropChar(Name,"Button4","Visible",DIS);//为当前页面名字叫BUTTON4的VISIBLE属性设定为DIS的当前值,本项目用于阀函数,下同SetPropChar(Name,"Button5","Visible",DIS);SetPropChar(Name,"Button10","Visible",DIS);SetPropChar(Name,"Button11","Visible",DIS);}画面窗口定义如下:QD_BOTTON页面定义如下:其中确定按钮定义如下:动作按下置1,抬起置0取下按钮为关闭当前窗口阀门自定义对象C脚本#include "apdefap.h"void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y) {Valve(lpszPictureName,lpszObjectName);//Return-Type: void}页面VALVE_FUNCTION_STAME如下其中设备名称定义为TEXT,取的即为OBJECTNAME,本例中为N3_SV101其中远程等状态灯显示为结构变量后缀 .XXX其中打开、关闭等按钮(未知是否需要确定取消),本例中是这样实现的,以打开按钮为例:实际上本例中打开按钮有2个重叠在一起下面的打开按钮(黑色边框)控制实际的IO后缀:上面的打开按钮的可见性由DIS变量的当前值确定,若DIS为真,则蓝色边框打开按钮可见,蓝打开按钮(BOTTON4)控制PIC1可见8 PIC1填充为OPEN页面OPEN页面如下:其中确定按钮为BOTTON8,因所有变量前缀已赋值,则确定按钮仍连接实际IO后缀,同黑色打开按钮。

WinCC-VBscript常用函数

WinCC-VBscript常用函数

WinCC-VBscript常用函数WinCC VBscript常用函数1.数值型函数:abs(num): 返回绝对值sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负hex(num): 返回十六进制值直接表示:&Hxx 最大8位oct(num): 返回八进制值直接表示:&Oxx 最大8位sqr(num): 返回平方根 num>0int(num): 取整 int(99.8)=99; int(-99.2)=100fix(num): 取整 fix(99.8)=99; fix(-99.2)=99round(num,n): 四舍五入取小数位 round(3.14159,3)=3.142 中点数值四舍五入为近偶取整 round(3.25,1)=3.2log(num): 取以e为底的对数 num>0exp(n): 取e的n次幂通常用 num^nsin(num): 三角函数,以弧度为值计算 (角度*Pai)/180=弧度 con(num);tan(num); atn(num)2.字符串函数:len(str):计算字符串长度中文字符长度也计为一!mid(str,起始字符,[读取长度]):截取字符串中间子字符串left(str,nlen):从左边起截取nlen长度子字符串right(str,nlen):从右边起截取nlen长度子字符串Lcase(str):字符串转成小写Ucase(str):字符串转成大写trim(str):去除字符串两端空格Ltrim(str):去除字符串左侧空格Rtrim(str):去除字符串右侧空格replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串注:默认值:起始字符 1;替代次数不限;比较方法区分大小写(0)InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串可选参数需同时选返回起始位置InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串返回起始位置space(n):构造n个空格的字符串string(n,str):构造由n个str第一个字符组成的字符串StrReverse(str):反转字符串split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组可选参数需同时选3.数据类型转换函数:Randmize n:启动随机数种子Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)子程序和自定义函数Sub StrSubName Function StrFunName(arg[1],..)子程序体函数体Exit Sub 中途跳出 Exit Function 中途跳出End Sub StrFunName=Value 返回值End Function[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函数子程序和自定义函数可以递归调用;ASP六大对象常用语句示范:Response:Response.write StrVar/"String":向网页写出参数值或字符串等同于在Html 标记中嵌入<%=StrVar/"String"%>Response.End:停止页面编译,并将已经编译内容输出到浏览器Response.Buffer=True|False:页面编译时是否使用缓存的设置,一般在页面头部设置Response.Flush:强制输出页面已编译部分内容Response.Clear:将缓冲区内的数据清除Response.Redirect URL:停止页面编译或输出,转载指定所需页面Response.IsClientConnected:返回True|False,检测用户是否还处于连接状态Response.Charset(CharsetName):设置页面编码类型,即<metahttp-equiv="Content-Type" content="text/html; charset=gb2312"> Response.ContentType [= ContentType ]:设置页面文件类型,同上Response.Expires [= number]:设置页面失效时间,单位分钟Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间Response.Status = StatusDescription:设置页面状态描述Request:Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式Request[.collection|property|method](variable)Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=valueRequest.QueryString(Varible)[(Index).Count]Request.form("PassStrName"):读取Post方法传递的纯表单域的值Request.Form(Parameter)[(Index).Count]Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考Request.BinaryRead(Count):读取指定字节数的传送值Request.TotalBytes:查询体的长度,以字节为单位,只读注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要Session:(用户全局变量)Session("SesName")=value:存储Session变量值,也可读取该值Session("SesName")=Empty:判断Session值是否存在的两种方法IsEmpty(Session("SesName"))=True|False:判断Session值是否存在的两种方法Session.TimeOut=num:设置Session变量的存在时效,单位分钟Session.Abandon:清除所有Session变量值Session.SessionID:Session变量的ID序列号,只读Application:(应用程序全局变量)Application("AppName")=value:存储Application变量值,也可读取该值Application("AppName")=Empty:判断Application值是否存在的两种方法IsEmpty(Application("AppName"))=True|False:判断Application值是否存在的两种方法Application.Lock:Application变量值锁定,防止同时更改变量值Application.UnLock:Application变量值解锁,允许更改变量值注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application变量Global.asa文件的结构:<% @language="VBscript"%><% Sub Application_OnStart ...End SubSub Application_OnEnd ... End SubSub Session_OnStart ...End SubSub Session_OnEnd ... End Sub%>Server:Server.MapPath("FileUrl"):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等Server.URLEncode( "string"):转换为浏览器地址编码set Var=Server.CreatObject("ObjName"):创建对象变量Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MBResponse.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值Response.cookies("StrCookieName")="":判断是否为空Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效Response.Cookies(Cookie[(key).Attribute]):标准语法ObjectContext 控制ASP的事务处理ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生ObjectContext.SetAbort:显式的放弃一次事务处理ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用Msgbox "string"/StrName:VBscript提示框表单的Onsubmit事件:在同一页面写入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

标准函数
该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm -简短描述
Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage (DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例
{//确认选择的报警记录消息
AcknowledgeMessage (GetTagWord(,z U08i_MsgNr/z));
}
指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* IpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例
{//跳转到WinCC报警控件中的第一条消息
AXC_OnBtnMsgFirst (z,gs_alarm_00z/, "Controll");。

相关文档
最新文档