当前位置:自动化网>智慧工厂门户>应用案例>按月更新行数的组态王月报表实现方法

按月更新行数的组态王月报表实现方法

发布时间:2019-09-24 15:42   类型:基础知识   人浏览
摘要:本文利用组态王“报表系统”的报表向导工具建立的月报表,针对该月报表不能根据月份变化其行数的问题,提出了一种利用脚本命令语言来处理该问题的方法,使得月报表能根据不同的大小月份及是否闰年等情况呈现相应的行数。 关键字:组态王   月报表   命令语言 Abstract: In this paper, a monthly report, based on the Report Wizard of the Kingview, is set up. In view of the problem that the monthly report can not vary it's rows according to the different months, a method of using the script command language to deal with the problem is proposed so that the monthly report can show corresponding rows according to the different months and whether or not a leap year. Keywords: Kingview   Monthly Report   Command Language 1 引言 组态王自带的“报表向导”工具,可以方便的生成日报表、月报表等,但其自带的报表向导建立的月报表存在当利用按钮切换不同月份时,其报表行数不跟随月份的大、小月(天数不同)变化的问题,比如选择查询起始时间为某年的3月,则为31天,应有31行数据,若换为2月或者4月等小于31天的月份,该表并不能自动变化月报表行数,以至于更改月份后的月报表末尾几行仍旧是3月份的内容。 基于此,本论文提出了一种利用脚本命令语言通过对月报表的月份以及年份进行脚本编程处理来解决该问题的方法,使月报表可以根据月份的大小及是否闰年改变相应行数以适应月份的变化。 2 改良前月报表组态及运行 首先,利用“报表向导”组态报表画面[1],观察利用本文所述方式改良前的月报表在切换不同月份时的运行结果。 组态过程为:工具箱选择“报表窗口”元件,在画面中绘制报表,点击报表灰色空白处,弹出报表设计对话框,可设计报表控件名以及表格的行数及列数。点击报表,在弹出的“报表工具箱”中点击向右箭头“->”,打开“报表向导”,第一步是添加变量,本文项目暂不添加变量,点击下一步,弹出“报表属性”对话框,设置如下图1,类型为“月报表”,时间间隔默认为1天。   图1 报表属性设置 画面中组态一个“报表起始时间设置按钮”,编辑其弹起时的命令语言为:ReportSetStartTime("Report0");[2]利用该按钮设置日期时间。注意:月报表从每月的1号开始记录,所以日期应选择每个月的1号。 运行调试,首先选择一个大月份,比如3月,然后再选择一个小月份比如4月,最后选择2月,观察运行情况,需要把表格拖到底观察如图2所示。   3月   4月   2月 图2 改良前月报表运行结果 通过上述实验结果看到,当选择3月份,数据行数到3月31日;当改变为4月份后,该月天数为30天,观察到3月31日的那一行数据还在;当改变为2月份后,该月天数为28天,观察到多余的三行数保留了4月和3月选择过后的数据,这样的结果不利于报表的保存及查看,本文将对此给出相应的解决方案。 3 解决方案 3.1  技术路线 当通过“报表起始时间设置按钮”选择了起始时间为某个月的第一天后,该设置值在报表中呈现的方式是一个包含年月日时分秒的字符型数据,每天一行数据填写在报表中,从而生成月报表。解决方案将利用日期时间的第一行数据(即每个月1号的数据),通过脚本编程处理,实现月报表行数的随月变化。

成为会员,继续阅读。
       

本文地址:http://www.ca800.com/apply/d_1o1a0ocpq17d1_1.html

拷贝地址

版权声明:版权归中国自动化网所有,转载请注明出处!

留言反馈
  • 评价:

  • 关于:

  • 联系人:

  • 联系电话:

  • 联系邮箱:

  • 需求意向:

  • 验证码:

    看不清楚?

  • 在线咨询