资源描述:
《Intouch报表-EXCEL报表制作.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、用EXCEL打印报表1.原理首先根据报表要求,用INTOUCH的附件HISTDATA软件形成一个有规定数据的.CSV文件(逗号分隔文件,可用EXCEL打开)。这个.CSV文件是英文的,不符合一般报表的要求,只能提供数据。所以需要另设计一个空的EXCEL报表模版,再将.CSV文件的数据复制到报表中,形成完整的报表。通过INTOUCH可以自动产生.CSV,再通过EXCEL的宏程序打印报表,可以完成招呼打印和定时自动打印。如果有多个报表,需要形成多个.CSV文件和设计多个EXCEL报表。大致步骤如下:设计报表,确定一个报表的开始时间、时间总长度、个数据之间
2、数据采样间隔,报表参数所对应得的标记名等(如日报表的开始时间为0点,时间长度为24小时,数据采样间隔时间为小时)在InTouch中,按报表的需要,用脚本给一组专用的标记名赋值(如HDWSTARTTIME规定日报表的开始时间,HDWDBDIR规定历史纪录文件的目录,HDWTAGS规定报表内涵的标记名在InTouch脚本中,用HDWWRITEFILE=1形成一个.CSV文件用EXCEL设计报表的模版。在EXCEL中,用记录宏程序,将形成的.CSV文件中的数据导入EXCEL报表模版的数据区,然后打印。最后在EXCEL中将该宏程序设置为自动执行宏程序在生成.
3、CSV文件的InTouch脚本中,加入StartApp函数,启动EXCEL印报表1.生成.CSV文件Step1:自动生成需要的标记名在INTOUCH开发环境中,将向导库中趋势历史趋势向导(HistData)放入窗口。这将自动形成若干标记名(Tag)。有关标记名以HDW开头加上它们的DDE的ITEM命名。这些标记名说明如下:HDWDATADIR消息型历史数据文件的目录的路径名,可用函数赋值例如HDWDataDir=HTGetLogDirectory();HDWDBDIR消息型InTouch标记名字典的目录的路径名,可用函数赋值例如HDWDBDir=
4、InfoInTouchAppDir();HDWSTARTDATE消息型与$DateString相同格式的数据采样开始日期HDWSTARTTIME消息型使用24小时时钟的HH:MM:SS格式的数据采样开始时间HDWDURATION消息型数据时间长度(报表时间总长度)可以用星期,天时,分,秒,等来表示下面是有效的字符:w星期,d天,h小时,m分,s秒。允许使用小数值例如扩.5s表示500毫秒若只需一个样本请将DURATION设为0零HDWINTERVAL消息型采样间隔的时间长度可以用星期日小时分和秒来表示例如1W表示一星期允许使用小数值例如用.25d来表
5、示6小时有效字符与HDDURATION相同注意DURATION和INTERVAL允许的最大时间长度均为6周这适用于所有请求类型日秒等例如如果使用日则最大值为42,7天x6周=42HDWTAGS消息型历史数据的标记名列表(报表中需要的标记名)以TagA,TagB,TagZ格式输入,此外采样日期和或时间可以通过使用内部系统标记名$Date和$Time来请求例如"$Date,TagA,TagB"或"$Time,TagA,TagB"或"$Date,$Time,TagA,TagB"HDWTAGS1,TAGS2,....消息型HDWTAGS字符串在WindowV
6、iewer中的长度可以为131个字符在Excel中的长度可以为255个字符字符串,可以通过迭加标记名项目Tags1Tags2等来延长以适应更长字符串的要求,如果标记名需附加额外的标记名文本请在字符串末输入一个加号(+)例如,TAGS="$Date,ProdLevel,ProdTemp,+"TAGS1="ReactLevel,Temp,GasLevel,+"TAGS2="MotorStatus"注意不允许使用重复标记名,每个标记字符串的最大长度为512字节HDWFILENAME消息型规定生成的.CSV文件的路径和名称例如,C:INTOUCHHDFI
7、LE.CSVHDWWRITEFILE整型当设置为1时HistData会将请求数据写入由FILENAME项目名指定的文件,当文件更新完成后WRITEFILE会自动重置为0零STATUS离散型显示最后一次操作的状态1表示成功,0零表示出错ERROR消息型包含上次错误说明的字符串,如STATUS为1则显示无,如STATUS为0零则显示错误消息字符串前9个TAG规定数据的内容,HDWWRITEFILE=1是写.CSV文件的命令,最后两个用于检查状态和错误。写脚本时应注意:lHDWDBDir、HDWDataDir这两个标记名是规定路径的,可以用函数赋值。可以写
8、在应用程序脚本内。lHDWFilename这个标记名是规定.CSV文件的路径和文件名。如果只打一种报表,也可