针对WINCC的报表,我们目前有2款控件,一款是固定样式。 HwLib, wincc报表控件,支持嵌入到wincc画面,无需一行脚本即可实现数据查询和导出等功能。 视频号 另一款支持用Excel自定义模板。 HwLib, 全新的WINCC报表控件,更高的性能、更好的用户体验,更精细的参数控制! 视频号 但是它们依然在某些场景下不适用,比如下面这个报表。 一些非标行业的报表样式比较特殊,往往通用的报表控件难以满足,如果每次都定制模板那么成本会比较高。针对这种情况我们推出了WinCC报表开发SDK(CCArchiveSDK),它对WinCC归档数据库的访问进行了封装,使其更加容易使用。另外同时提供了一个可视化工具。一种类似Excel的界面样式表格工具,用于加载报表模板、展示数据并提供预览、打印和导出功能。通过简单的几行VBS脚本即可完成一个复杂报表。 下面我们以上图的报表样式为例来介绍如何使用我们的CCArchiveSDK来快速实现。首先安装我们的SDK包,它的默认安装路径是“D:\Program Files\HWLIB”。然后我们将客户提供的报表样式复制到它的Report文件夹下面。 再将控件导入到画面,并设置它的默认模板名称。 ![]() 接下来我们要往表格中填充数据,这些数据来自WinCC的归档数据库。大家都知道,虽然SIEMENS提供了归档数据库访问接口,但是使用起来还是挺麻烦的,我们对这些接口进行了封装,可以更加方便的读取归档数据。 首先我们添加一个日期选择器,用于给操作员选择日期时间。这里我们为月和日使用了类似下拉列表框这样的控件,便于直接选择,不用再输入。 ![]() 由于大多数是查询当天数据,所以我们在画面加载时将日期选择器的时间初始化为本日,脚本如下。 最后我们在按钮“生成报表”的点击事件中输入下面脚本。 ![]() 上图中内部变量bDT是根据日期选择器生成日期时间,然后将它作为参数传递到SDK提供的函数GetArchiveData中,用于查询该时间段的数据。为了节省时间,上图中我们只使用了一个变量,然后时间也都是取的同一时间段。 再通过控件函数WriteCell将返回值写到表格中形成报表。最后生成的报表是这样的。 ![]() 上面我们演示了通过很简单的脚本就可以生成一个复杂的报表。并且控件提供了导出和打印功能,直接点击上图中左上角按钮就可以将报表打印出来或者导出为Excel。 CCArchiveSDK目前有三个版本,分别是特惠版、经济版和专业版,它们的功能是一样的。其中特惠版和经济版只能用于一台电脑,专业版不限制电脑数量。特惠版数量有限,先到先得。 ![]() 来源:公众号HwLib慧兰博 |
/1
|手机版|免责声明|本站介绍|工控课堂
( 沪ICP备20008691号-1 )
GMT+8, 2025-12-23 06:40 , Processed in 0.123670 second(s), 23 queries .
Powered by Discuz! X3.5
© 2001-2025 Discuz! Team.