已阅读1页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用组态王报表实现显示设备启动、停止时间和运行时长的方法在对设备的状态进行监控中,往往要取得一些参数来记录和分析设备的运行状况。这其中就包括设备的启动时间、停止时间和运行的时长。当然,组态软件不会有这样的功能,让我们轻易实现。不过,通过组态软件的报表功能,再通过二次开发,写一些脚本语言。实现起来倒也不难。以下,以组态王为例,是对操作过程的描述,希望能够对需要的人有一些帮助。总体思路:以一个项目为例。在这个工程中,有21台设备的运行状态需要记录,他们的运行状态依次记录在报表中。报表中的每一行都表示,此设备的一个运行周期。由于设备状态在报表中依次排列,因此需要相应的变量来保存该设备状态所在的行数。这样,当停止该设备时,才能将“停止时间”和“运行时长”填充到正确的位置。这样,就需要建立21个内存整形变量。由于报表中的记录依次排列,因此还需要一个变量来保存报表中最后一条记录的行数,这样才能顺序填充记录。1、新建报表,并命名为“报表1”。2、创建内存整形变量。21个内存变量分别保存21个设备状态所在的行数。1个内存变量保存报表中最后一条记录的行数。3、编写自定义函数,好处是减少代码量,修改方便。脚本内容具体如下/var是变量的名称,name是要显示在报表中的字符串,varRow是保存记录的行数/用年月日,时分秒,系统变量来组合形成日期。/不用日期变量,因为其格式长度不确定,在后来的分解中会很麻烦。string strY=StrFromInt( 本站点$年, 10 );string strM=StrFromInt( 本站点$月, 10 );string strD=StrFromInt( 本站点$日, 10 );string strH=StrFromInt( 本站点$时, 10 );string strMi=StrFromInt( 本站点$分, 10 );string strS=StrFromInt( 本站点$秒, 10 );/确定日期的格式,并使长度和位置固定if(本站点$月10)strM=0+strM;if(本站点$日10)strD=0+strD;if(本站点$时10)strH=0+strH;if(本站点$分10)strMi=0+strMi;if(本站点$秒10)strS=0+strS;/组合,定义格式string str=strY+-+strM+-+strD+ +strH+:+strMi+:+strS;/启动设备时,将“序号”、“名称”、“启动时间”填充到报表中if(var=1)long num=报表当前行-1;string id=StrFromInt( num, 10 );ReportSetCellString(报表1, 报表当前行, 1, id);/序号ReportSetCellString(报表1, 报表当前行, 2, name);/名称ReportSetCellString(报表1, 报表当前行, 3, str);/开始时间varRow=报表当前行;/所在行=报表当前行报表当前行=报表当前行+1;/停止设备时elsestring startStr=ReportGetCellString(报表1, varRow, 3);/从报表中取得开始时间/开始时间转换秒2011-05-06 12:23:34string midY=StrMid( startStr, 1, 4 );string midM=StrMid( startStr, 6, 2 );string midD=StrMid( startStr, 9, 2 );string midH=StrMid( startStr, 12, 2 );string midMi=StrMid( startStr, 15, 2 );string midS=StrMid( startStr, 18, 2 );long lY=StrToInt( midY);long lM=StrToInt( midM);long lD=StrToInt( midD);long lH=StrToInt( midH);long lMi=StrToInt( midMi);long lS=StrToInt( midS);long startTime= HTConvertTime(lY,lM,lD,lH,lMi,lS);long endTime= HTConvertTime(本站点$年,本站点$月,本站点$日,本站点$时,本站点$分,本站点$秒);/结束时间转换秒/计算时间差long timeLength=endTime-startTime;/单位秒/秒转换为小时/timeLength=timeLength/3600;string endStr=StrFromInt( timeLength, 10 )+秒;/将“停止时间”和“运行时长”填充到报表中ReportSetCellString(报表1, varRow, 4, str);/结束时间ReportSetCellString(报表1, varRow,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生产混合芳烃技术项目可行性研究报告
- 2026年国家高新区高质量发展评价指标体系题库
- 2026年不同段位制武艺考察要点解析
- 2026年四川单招语文古代诗歌分层试卷含答案适配不同水平
- 2026年青年文明号创建与管理实务题库
- 坚持传统文化的演讲稿
- 批生产记录的培训
- 少儿舞蹈教师培训
- 生命安全健康卫生演讲稿
- 2026年园区重点产品质量安全总监职责知识测试题
- 行政固定资产管理登记表模板
- 事业单位公开招聘考察工作方案
- 神经刺激治疗患者知情同意书模板
- 2025国家义务教育质量监测试题(含答案)
- 【《Orbal氧化沟处理城市污水的工艺设计》12000字(论文)】
- 夜航船全书讲解
- 2025-2030中国钢绞线行业产销状况与投资效益预测报告
- 药店星级员工管理制度
- 急性缺血性脑卒中急救护理
- 研究生学位论文匿名评审规定
- 2024-2025学年上海市闵行区七年级(下)期中数学试卷(含详解)
评论
0/150
提交评论