一种应用于PLC、DCS设备数据的报表开发方法与流程

文档序号:12362879阅读:1504来源:国知局
一种应用于PLC、DCS设备数据的报表开发方法与流程

本发明涉及一种应用于PLC、DCS设备数据的报表开发方法,应用在将从PLC/DCS设备采集的数据进行处理,转化为用户所需要的报表。



背景技术:

一般针对PLC/DCS设备的组态软件,只能对PLC/DCS设备进行写入一些设备的参数和采集设备数据并记录到数据库中的操作,但并不能将将所采集到的数据很好的展现给生产车间的设备使用者查看,通常需要另外开发软件功能用于将数据以报表形式呈现给用户以便使用,对于不同的设备报表的形式不同之外,开发报表的人员可能也是多人,每个人都有自己的开发习惯,每次客户提出需要报表来查询这些数据时,都需要重新编码调试,再交由用户使用,在使用过程中经常会遇到用户对报表的需求变更,开发人员需要对报表的代码进行调整和测试,这样的情况下,不仅开发耗时较长,也缺乏统一性和完整性,且要求后期维护的人员需要习惯不同人的开发习惯,对于后期维护的人员来说也是非常头疼的一件事情。另外,开发报表的工作需要现场人员具备软件开发的功底,然而对于PLC/DCS工程师来说,软件开发对于他们来说可能并不是那么擅长。

同时随着企业信息与自动化的不断融合,工业4。0革命的到来,企业车间的用户会更加注重设备的管理,对设备中需要记录的信息也越来越多,需要展现的报表格式也越来越复杂, 大大开发的报表难度,增加了工程师的开发报表的工作量,因此,为了节约工程师的时间,降低报表的开发难度,需要有一个统一的报表平台,能嫁接到任何组态软件的数据库之上,又可以快速配置报表的报表平台,同时应对用户的需求变更又能快速响应。

由于用户现场存在很多报表功能,由不同人员开发,从管理和维护的角度来说难度比较大,如用户想调整下原报表的显示方式,就必须修改测试原程序,比较费时费力,另外还要求维护人员对开发软件的计算机语言比较熟悉,如缺乏这方面的知识的话,根本无法完成后期的修改维护工作。为了方便管理维护报表,也为了方面现场人员缩短报表的开发时间,让现场用户能在一个统一的平台查询自己想要查看的报表,同时对报表的权限也可以做限制。



技术实现要素:

本发明的目的在提供一种应用于PLC、DCS设备数据的报表开发方法,解决现有产品存在的不足之处,满足了现场用户的报表管理需求,同时可以让现场工程师从用计算机语言开发报表测试报表的繁琐工作中解脱出来,节约了工程师的时间。

本发明目的通过以下技术方案实现:

一种应用于PLC、DCS设备数据的报表开发方法,其特征是,包括PLC/DCS设备、数据库和带用户交互界面的报表系统,数据库采集PLC/DCS设备的数据,用户操作报表系统生成需求报表,步骤如下:

1)报表制作前准备工作,采集数据,确定用户权限和需求数据;

2)报表的制作过程:首先用户登录进入报表系统进行操作,将步骤1)采集的数据在报表数据库建立报表视图,后数据库根据所需创建的报表类型建立报表界面数据;其中报表系统建立报表对应的报表类型,后报表系统中菜单管理中创建菜单;依据上述步骤,将报表权限绑定报表界面的控件,数据库建立报表的查询以及显示字段,最终形成报表,并导出。

作为优选,步骤2)中形成报表的过程:用户触发报表菜单按键后,报表系统根据报表类型ID完成以下操作:去数据库获取控件数据信息、在数据库中找到查询SQL语句和在数据库中找到报表显示字段,其中,去数据库获取控件数据信息后,数据库获取控件信息后根据控件数据进一步判断是否有子控件若有则进一步获取信息,若无则进一步生成动态生成控件,将控件添加到界面中,后结合在数据库中找到查询SQL语句和在数据库中找到报表显示字段,最后生成显示报表内容。

作为优选,步骤1)中的报表制作前准备工作包括以下步骤:首先,整理客户需要的报表;后确认报表所需内容是否PLC设备中都有提供;再确认把PLC设备中的数据获取到数据库对应的表中,同时将表结构与PLC地址的关系整理形成需求文档,如果数据库不存在对应表结构,则需建表;最后根据需求文档中所述的报表数据需求,完成 SQL语句,并在本报表系统的数据库中建立界面视图。

作为优选,所述的需求文档为EXCEL文档。

作为优选,步骤2)中的用户操作前需要先创建角色,然后分配角色,后创建报表权限,并分配给角色。

作为优选,最后导出的报表为EXCEL文件。

作为优选,带用户交互界面的报表系统界面上包含:用户管理,负责创建删除用户;权限管理,负责管理报表系统功能的权限分配;角色管理,负责创建删除角色,用于绑定权限后将角色分配给用户;报表管理,该目录下为用户所需要的报表;菜单管理,主要用于创建和修改删除系统的菜单目录;单据类型管理,主要用于标记和区分不同的报表的,作为报表的唯一标识符用;枚举类型管理;枚举值管理。

作为优选,报表系统的操作功能包括:导出,将当前查询结果导出为EXCEL文件;刷新,刷新当前查询报表的结果,主要用于查询实时要求比较高的报表;退出,关闭当前报表;以及查询和高级查询功能。

与现有技术相比,本产品的优点在于:

1、拥有完整的用户权限管理,菜单管理等功能,易于管理。

2、可在报表平台上配置开发多种报表,节约开发时间。

3、对于在本报表平台上开发报表,对于开发报表的人员来说难度降低,不需要实际编写代码,只须在数据库配置好报表的相关信息。

4、后期维护修改报表比较方便,不需要更改源代码。

附图说明

图1是本发明实施例的系统架构图。

图2是本实施例报表的制作流程图。

图3是本实施例报表界面生成的步骤图。

具体实施方式

以下结合具体实施例来说明本发明,下列实施例仅用于说明本发明的技术方案,并不限定本发明的保护范围。

实施例:

如图1所示,本产品的系统架构包括PLC/DCS设备、数据库和带用户交互界面的报表系统,数据库采集PLC/DCS设备的数据,用户操作报表系统生成需求报表。

报表制作的一些必备条件以及制作的步骤:

1、报表制作的必备条件:

1.1操作系统的要求:windows2003或则windows XP SP3版本以上,需安装

1.2数据库版本的要求:sql2000版本或以上

1.3其他组件要求: 需安装framework3。5版本或以上

2、报表制作前准备工作:

2.1 整理客户需要的报表,形成EXCEL文档(需求文档)。

2.2 确认报表所需内容是否PLC中都有提供。

2.3 确认把PLC中的数据获取到数据库对应的表中(如通过Intouch软件脚本语言),同时将表结构与PLC地址的关系整理形成EXCEL文档(数据库表结构说明与PLC地址映射),如果数据库不存在对应表结构,则需建表。

2.4 根据EXCEL文档(需求文档)中所述的报表数据需求,完成 SQL语句,并在本报表平台的数据库中建立视图。

3、报表的制作流程,如图2所示:

3.1 数据库主要表结构介绍:

T_CTR_INFO:主要包含了报表界面上的控件信息.

T_CTR_MENU:系统菜单信息.

T_billtype:报表类型信息.

TM_SelectBill:查询报表数据的sql语句保存的表.

TM_SelectBillEntry:显示查询结果字段的表.

TM_Filter, TM_FilterEntry:用于高级查询是存放查询条件.

T_PM_PERM:权限信息表

T_PM_ROLE:角色信息表

T_PM_ROLEPERM:角色所拥有的权限信息表

T_PM_USER:用户信息表

T_PM_USERROLE:用户所拥有的角色信息表

3.2 报表制作流程说明:

3.2.1 在报表平台中建立报表类型

3.2.2 根据报表类型,在数据库表T_CTR_INFO(报表控件信息表)中添加当前用户需要使用的报表的一些基本控件,如报表的常用查询条件,查询按钮等.

3.2.3 在表TM_SelectBill中添加查询用的SQL语句.

3.2.4 在表TM_SelectBillEntry添加报表需要显示的字段.

3.2.5 在报表平台上的菜单管理中增加报表对应的菜单项.

3.2.6 在报表平台上的用户权限管理中增加权限,用户,角色等,并分配好权限角色。

完成以上操作后,可重新登陆系统,点击报表菜单,即可获得想要的报表,同时可以将报表到处为excel文件打印。

3.3 报表界面生成原理,如图3所示:

当用户按下报表菜单时,利用Microsoft Visual Studio 2012软件中的VB.net语言,通过本人所编写好的递归动态生成控件程序,从数据库表T_CTR_INFO中检索出当前所选择的报表对应的报表类型ID所对应的控件的信息,并在报表界面上一个一个动态生成控件,在完成界面之后,当用户填写完报表条件,按下查询按钮时,调用已完成的通用方法,调用事先已配置好的表TM_SelectBill中用于查询的sql语句,将查询结果与表TM_SelectBillEntry中的显示字段对应的显示在报表界面上。

本实施例的报表平台主要包含: 1、用户管理:负责创建删除用户;2、权限管理:负责管理报表的功能的权限分配;3、角色管理:负责创建删除角色,用于绑定权限后将角色分配给用户;4、报表管理:该目录下为用户所需要的报表;5、菜单管理:主要用于创建和修改删除系统的菜单目录;6、单据类型管理:主要用于标记和区分不同的报表的,作为报表的唯一标识符用;7、枚举类型管理:其他用途;8、枚举值管理:其他用途。

本实施例所开发的报表包括以下基本内容以及功能: 1、导出:可将当前查询结果导出为EXCEL文件;2、刷新:刷新当前查询报表的结果,主要用于查询实时要求比较高的报表,功能等同于查询或则高级查询;3、退出:关闭当前报表;4、报表的标题;5、报表的一般查询条件;6、查询功能;7、高级查询功能;8、报表的主体内容。

本实施例的关键点有以下几点:

1、由于报表界面上的控件信息统一存在在数据库中,因此可在系统运行过程中动态生成关闭窗体或则控件,可随时改变报表的组成内容。

2、报表的查询sql语句以及显示的字段都可在报表平台的数据库中进行调整。

此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同,本说明书中所描述的以上内容仅仅是对本发明结构所作的举例说明。凡依据本发明专利构思所述的构造、特征及原理所做的等效变化或者简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1