序: 多年来负责昆仑通态HMI售前售后服务工作,碰到过各种行业的客户提出的各类型问题,整理筛选了一下,挑选一些比较常用的或者较为奇葩的问题解决过程,近期内跟大家多分享一下,也希望大家能在昆仑通态MCGS人机界面上,实现更多想要的功能。
一, 问题描述 实现操作日志功能,记录关键操作的当前操作人员以及对应操作内容和时间。
二, 构思过程 昆仑通态HMI支持触发存盘功能,并且支持字符串等各类型变量的储存,对应在各关键操作按钮内设置好操作内容文本,将操作内容及当前用户储存下来即可,储存记录内默认自带时间戳。
三, 实现过程 当前客户有这样一个工程:每次启动之后,用户登录之后才能对应进入操作界面;长时间不操作之后,会自动返回到启动窗口,后续用户想操作前,需登录之后才能重新进入操作界面。
1.在原有工程基础上,进入实时数据库,添加三个变量,对应设置属性: 变量1:当前用户 --字符型 变量2:操作内容 --字符型 变量3:操作日志组 --组对象

双击打开“操作日志组”组对象属性,对应设置参数


2.对应设置操作储存内容

对应在需要储存操作日志的按钮或输入框内,设置日志内容和触发储存指令。 ① 按钮操作A

对应在按钮的抬起脚本编辑框内,输入以下指令后确认保存:当前用户=UserName操作内容="操作A"!SaveData(操作日志组)注释:



右键点击输入框,打开输入框change事件编辑对话框,对应设置指令 当前用户=$UserName 操作内容="参数A设置为"+!str(参数A) !SaveData(操作日志组) 注释:!str(参数A)内的 参数A为输入框原有的操作变量,为当前操作输入的实际数值。!str指令可将数值型内容转换为字符串,多组字符串可直接使用加号相加串起来。 ③ 对应在其他按钮或者输入框,按照上述方法设置日志内容即可
四, 实际效果 按照历史记录浏览的方法,添加构件,查看日志,并可使用U盘导出功能,导出日志表格。

五, 功能总结 利用昆仑通态触摸屏灵活的触发存盘机制,可实现多种历史记录功能。 例如:1.配合高速循环策略实现短时间内ms级高频记录 2.配合事件策略数据点变化记录 3.可变时循环定时记录等, 希望能抛砖引玉,让大家开发出更多种记录方式,实现自己想要做到的效果。