怎样实现wincc报表输出
最佳答案
请参考:
什么选项用于输出一个消息顺序报表?
组态注意事项:
使用消息顺序报表可以将所有信息按时间顺序输出到打印机。该条目比较了用于生成消息顺序报表的几个不同选项。
注意:
在 WinCC 中 WinCC 报表编辑器 默认会创建一个消息顺序报表。为此还有一个系统打印作业“ @Report Alarm Logging RT Message sequence ”。您可以选择将消息一行一行或者一页一页的输出。关于该主题的详尽信息可参见 WinCC 在线帮助:
“ WinCC 信息系统 > 使用 WinCC > 组态数据和运行系统数据的文档 > 运行系统文档 > 记录运行期间的消息 > 使用消息顺序报表输出在线数据”。
“ WinCC 信息系统 > 使用 WinCC > 组态数据和运行系统数据的文档 > 运行系统文档 > 记录运行期间的消息 > 创建自定义的消息顺序报表”。
您也可以在 WinCC 客户端组态消息顺序报表。为了输出多个服务器上的消息到消息顺序报表,您需要导入所关心的服务器的数据包并且为消息顺序报表打印作业选择相应消息。
No. 组态选项
1 报表编辑器:消息顺序报表行布局
行布局用于当一条消息发生时将其输出到打印机。
消息顺序报表行布局有以下特性:
所关联的打印机必须支持行打印输出。点阵式或者喷墨打印机通常都支持行打印输出而不像激光打印机。
行式打印机必须连接至报表计算机本地(并口)。不可以使用网络打印机。
产生的消息按 ASCII 码字符一行一行的输出至打印机。该打印只需占用很少的系统资源(计算机 CPU 负荷)。但是,不能打印标准的图形对象(例如线条,多边形,折线,或者图形文件)。
您可以为打印输出组态两个可替换的打印机以避免一个打印机发生故障。但是如果当一个消息在运行期间发生时却无法找到打印机的话,将会生成一条操作系统消息。且打印作业不会输出到文件。
2 报表编辑器:消息顺序报表页面布局
如果组态了消息顺序报表页布局,在缺省情况下,只有当消息数达到组态好的每一页中的信息条目数时才会输出到打印机。条目号 24182772 中说明了如何使用 C 函数“ MSRTPrintMProt() ”来打印当消息条目数尚未达到组态好的每一页中的信息条目数时的页面布局。
消息顺序报表页面布局有以下特性:
页面打印机不必连接到报表计算机本地。因此可以使用网络打印机。
消息按页输出到打印机。在这种情况下消息页将生成为图形对象然后再输出到打印机。可以混合输出标准图形对象到打印输出中(例如线条,多边形,折线,或者图形文件)。
打印需要占用较多的系统资源( CPU 负荷)用于处理图形对象及并发的打印输出。可能会发生当处理图形对象时其他动作(像画面切换)将被延迟。
您可以为打印输出组态两个可替换的打印机以避免一个打印机发生故障。如果当打印输出时无法找到相应的打印机,则打印作业将会自动输出为一个 EMF 图形文件。更多关于输出打印作业至文件的信息可参看条目号 24178015 。
3 C 全局脚本:消息输出为 ASCII 码格式
您可以选择当一个消息发生时触发一个动作。
如果消息属性组态对话框的“参数”选项单中的“触发一个动作”选项被标记,那么当消息发生时 C 函数“ GMSGFunction() ”将被执行。该函数在“ SIEMENS\WinCC\aplib\Alarm ”安装目录。缺省情况下,该函数提供消息相关的信息(消息号,状态,时间戳,用户文本块信息以及相关过程值)在“全局脚本诊断”窗口或者“ APDIAG ”输出窗口中。您可以修改该函数以适应您的要求并且将其输出到一个文本文件。
注意:
您可以使用 C 函数“ fprintf() ”将一个消息输出到一个文本文件。
当输出到文本文件时请确认有足够的硬盘空间。
缺省情况下,一个消息的用户文本块为文本条目( TEXT_ID )在 GMSGFunction() 中。WinCC Open Development Kit (ODK) 提供了详尽信息关于您可以如何按语言要求从文本条目中获得相关消息文本。关于 ODK 的相关信息可参照条目号9652128 。
注意:
条目号 22578952 提供了更多选项用于访问归档消息。
条目号:24543977 日期:2007-03-09
http://support.automation.siemens.com/CN/llisapi.dll?func=cslib.csinfo&lang=zh&siteid=cseus&objid=24543977
如何将顺序消息报表输出到文件?
说明:
页面布局中的顺序消息报表可以输出到文件。行布局中的顺序消息报表不能输出到文件。如果激活了顺序消息报表输出到文件,则顺序消息报表的每一页将被保存为单个的EMF格式(增强型Meta文件)的图像文件。
该主题的信息可参见WinCC在线帮助,如下:
“WinCC信息系统 > 使用WinCC > 组态数据和运行系统数据的文档 > WinCC中的打印任务 > 定义打印机”。
“WinCC信息系统 > 使用WinCC > 组态数据和运行系统数据的文档 > 项目文档 > 创建新的打印作业”。
下面介绍一些关于顺序消息报表保存的存储路径及文件名称的附加信息。
顺序消息报表在两种情况下会输出到文件:
No. 描述
1 已配置了输出到文件
按照如下步骤配置将顺序消息报表打印输出到文件:
在WinCC项目管理器的导航窗口中选择“报表编辑器 > 打印作业”,双击打开“Report Alarm Logging RT Message sequence”的顺序消息报表系统打印作业
在“打印作业属性”对话框的“常规”表单中必须取消选择“行式打印机布局”选项并且选择一个有效的页面布局。
在“打印机设置”表单中选择“文件(*.emf)”选项。
注意:
图像文件输出到WinCC项目路径下的“PRT_OUT”目录中。WinCC运行系统启动以后,当第一次打印时,将会生成一个“PRT_OUT”的文件夹,这个文件夹将是顺序消息报表图像文件的存储路径。 该目录名称中将包含本地计算机的当前日期及时间。 顺序消息报表的每一页将会在该目录中保存为一个EMF图像文件。 这些图像文件将按“PAGE<NNNNN>”.EMF格式命名,其中“<NNNNN>”为顺序消息报表的实际页数的连续页码。无论什么时候WinCC运行系统一旦启动,将会生成一个新的目录来存储从“00001”开始的连续页码的图像文件。
在“路径”输入域中可以输入字符串,该字符串将会添加到存储这些图像文件目录的名称当中。也可以不填写。
( 32 KB )
图. 01
警告
不能将“打印输出到打印机”及“打印输出到文件”两个选项同时勾选。
如果同时勾选了“打印输出到打印机”及“打印输出到文件”这两个选项,那么如果在运行期间打印机出现问题(如打印机缺纸)时也不会将报表打印输出到文件。而且也不会输出到替换文件中(参看2中的描述)。
2 打印机访问错误
如果页面布局中的顺序消息报表将要被打印输出到打印机而打印机不可用(例如打印机故障,无纸等)时,那么顺序消息报表将被打印输出到EMF图像文件中,则相应的打印作业将被删除。
出现故障后打印到的文件将会存储到WinCC项目路径中的“PRT_OUT”目录中。WinCC运行系统启动后当出现第一次替换打印到文件被执行后将会在“PRT_OUT”中生成一个目录,将会在该目录中保存顺序消息报表。该目录的名称结构为:“$$_Report Alarm Logging RT Message sequence_<YYYYMMDDHHMMSSMS>”,其中“<YYYYMMDDHHMMSSMS>”为运行系统启动后第一次打印机故障的本地计算机时间(日期及时间)。之后,所有无法打印输出到打印机的顺序消息报表将都会被保存到该目录的EMF图像文件中。这些文件的文件名都按如下格式生成:“PAGE<NNNNN>.EMF”,其中“<NNNNN>”为顺序消息报表的相应页码。
警告
在以下情况下,当打印机故障(如无纸)时不会打印输出到图像文件:
如果选择使用了顺序消息报表的行布局。
选择了打印输出到文件(参看1中的描述)。
条目号:24178015 日期:2006-11-28
http://support.automation.siemens.com/CN/llisapi.dll?func=cslib.csinfo&lang=zh&siteid=cseus&objid=24178015
提问者对于答案的评价:
未能及时采纳,谅解
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc272600.html