请教WINCC运行事件记录问题

我用报警记录实现的,现在遇到一个问题,如何只显示从某个时刻开始的记录?其他时间的记录不必显示.

问题补充:
wincc flexible报警视图属性-"显示"中有一个显示区的控制变量输入,我输入了一个时间变量,不知为何不能实现从该时间开始显示记录.

最佳答案

找WinCC的DemoV6来看看,里面有相应的例子。
 例子里面是用户在画面上的I/O域中输入希望的起止日期、时间,然后点击按钮,则报警控件按照输入的时间范围进行显示。按钮的脚本如下:
 // WINCC:TAGNAME_SECTION_START
 // syntax: #define TagNameInAction "DMTagName"
 #define APCMsgFilterSQL "MsgFilterSQL"
 #define APCday_begin "day_begin"
 #define APCmonth_begin "month_begin"
 #define APCyear_begin "year_begin"
 #define APChour_begin "hour_begin"
 #define APCminute_begin "minute_begin"
 #define APCday_end "day_end"
 #define APCmonth_end "month_end"
 #define APCyear_end "year_end"
 #define APChour_end "hour_end"
 #define APCminute_end "minute_end"
 // next TagID : 12
 // WINCC:TAGNAME_SECTION_END

 // WINCC:PICNAME_SECTION_START
 // syntax: #define PicNameInAction "PictureName"
 // next PicID : 1
 // WINCC:PICNAME_SECTION_END

 WORD day_b,month_b,year_b,hour_b,minute_b;
 WORD day_e,month_e,year_e,hour_e,minute_e;
 char  SQLcmd[120];

 day_b=GetTagWord(APCday_begin);
 month_b=GetTagWord(APCmonth_begin); 
 year_b=GetTagWord(APCyear_begin);
 hour_b=GetTagWord(APChour_begin);
 minute_b=GetTagWord(APCminute_begin);

 day_e=GetTagWord(APCday_end);
 month_e=GetTagWord(APCmonth_end); 
 year_e=GetTagWord(APCyear_end);
 hour_e=GetTagWord(APChour_end);
 minute_e=GetTagWord(APCminute_end);

 
 sprintf(SQLcmd,"DATETIME >=  ''%d-%02d-%02d %02d:%02d:00.000000000'' AND DATETIME <=  ''%d-%02d-%02d %02d:%02d:00.000000000''",year_b,month_b,day_b,hour_b,minute_b,year_e,month_e,day_e,hour_e,minute_e); //Rückgabe-Typ :BOOL 
 //printf("SQL: DATETIME >=  ''%d-%02d-%02d %02d:%02d:00.000000000'' AND DATETIME <=  ''%d-%02d-%02d %02d:%02d:00.000000000''",year_b,month_b,day_b,hour_b,minute_b,year_e,month_e,day_e,hour_e,minute_e); //Rückgabe-Typ :BOOL 

 SetTagChar(APCMsgFilterSQL,SQLcmd);

 例子的核心部分是在报警控件的“MsgFilterSQL”属性由一个内部文本变量“MsgFilterSQL”控制,而控制可以通过脚本或其它方式构建一个筛选的字符串给MsgFilterSQL这个变量。

提问者对于答案的评价:
问题已解决,谢谢!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc278319.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐

  • 怎样使用wincc v7为每个变量单独组态一个报警记录画面,谢谢?

    怎样使用wincc v7将图一中的5个报警变量用5个图二中的报警记录画面单独显示,即图二中每个报警记录画面只能显示一个报警变量,怎样才能实现,谢谢 图片说明: &nbsp…

    2017年6月12日
  • 区域指针主要是什么用途啊?

    区域指针主要是什么用途啊? 最佳答案 区域指针是什么,有什么作用——    可以用来设定、读取CPU的时间,可以用于配方等等,具体可以风自带…

    SIMATIC WinCC 2019年6月11日
  • 在选择报警记录运行系统时出错

    WINCC系统在运行时勾选“报警记录运行系统”出现以下错误:<?xml version="1.0" encoding="UT…

    SIMATIC WinCC 2019年6月11日
  • VBA组态

    我想改变图形编辑器中的部分矩形的颜色,在下面的程序中怎么修改?Sub 机台颜色设置()Dim colSearchResults As HMI…

    SIMATIC WinCC 2017年10月31日
  • wincc 在线表格

    我用WINCC在线表格做报表打印,为什么打印日期时间只能显示一半???? 有没有解决的办法???? 问题补充:wincc v6.0 SP1中文版,s7…

    SIMATIC WinCC 2019年6月11日
  • PC-ACCESS兼容WIN7

    系统购买的电脑安装win7系统,打算用PC-ACCESS实现winccc 7.0 sp3和装有CP241卡的S7-200系列PLC(两套)通信,想问,现在有支持…

    SIMATIC WinCC 2018年12月5日
  • Wincc报警记录,查询不到历史记录

    wincc报警记录,使用时间过滤,没有以前的报警记录 最佳答案 你要多久以前的记录?默认是一周,如果要更久以前的你需要设置记录备份。 提问者对于答案的评价:哦,这样啊,报警设置不是…

    SIMATIC WinCC 2021年7月5日
  • TP270-10触屏备份出来的文件能改写吗?

    我现在有Wincc2008B版的 但是只读hmi格式  触屏传出来的文件是psd格式  从触屏传出来的psd格式文件怎么改写然后在…

    SIMATIC WinCC 2017年12月1日
  • 大家帮帮忙

    BATCH_7.0_SP1_CHS,这是个什么软件?干嘛用的?? 最佳答案 参考:https://support.industry.siemens.com/cs/document/…

    SIMATIC WinCC 2021年7月5日
  • WinCC 用户名归档

    小弟现在有个项目想把用户名归档,想在数据库中记录哪个时间由哪个用户在进行操作,请问高人如何解决。小弟万分感激。 补充:本来想在变量记录中记录current us…

    SIMATIC WinCC 2019年6月11日