iFix如何制作EXCEL报表

iFix如何制作EXCEL报表
iFix如何制作EXCEL报表

iFix如何制作EXCEL报表

在VBA中引用Microsoft Excel 11.0 Object Library和Microsoft ADO 6.0 Library。在画面中添加个按钮。复制以下代码:

‘----------开始复制(不包括此行)--------------

[hide]

Option Explicit

Dim rsADO As ADODB.Recordset

Dim cnADO As ADODB.Connection

Private Sub Command1_Click()

Dim StrDir As String

StrDir = "E:\"

Dim i As Long

Dim Sql As String

Sql = "SELECT * FROM THISNODE"

Set cnADO = New ADODB.Connection

Set rsADO = New ADODB.Recordset

cnADO.ConnectionString = "Provider = Microsoft OLE DB Provider for ODBC Driv ers;DSN=FIX Dynamics Real Time Data;UID=;PWD="

cnADO.Open

rsADO.CursorLocation = adUseClient

rsADO.Open Sql, cnADO, adOpenDynamic, adLockUnspecified, -1

If rsADO.RecordCount <= 0 Then

MsgBox "无数据!", vbOKOnly + vbInformation, "信息..."

Set cnADO = Nothing

Set rsADO = Nothing

Exit Sub

End If

Dim xlApp As Object

Dim xlBook As Object

Dim xlSheet As Object

Set xlApp = New Excel.Application

xlApp.DisplayAlerts = False

xlApp.Visible = False

Set xlBook = xlApp.Workbooks.Open(StrDir & "\报表.xls")'需要文件(E:\报表.xls)

Set xlSheet = xlBook.Worksheets(1)

For i = 1 To rsADO.RecordCount

xlSheet.Cells(i, 1) = rsADO.Fields(1).Value & ""

xlSheet.Cells(i, 2) = rsADO.Fields(2).Value & ""

xlSheet.Cells(i, 3) = rsADO.Fields(3).Value & ""

xlSheet.Cells(i, 4) = rsADO.Fields(4).Value & ""

Next i

xlApp.Visible = True

xlApp.DisplayAlerts = False

Set xlSheet = Nothing

Set xlBook = Nothing

Set xlApp = Nothing

Set cnADO = Nothing

Set rsADO = Nothing

End Sub

[/hide]

‘----------结束复制(不包括次行)--------------

注意:1.iFix历史数据库只支持读90天的数据,在SQL语句中限定时间即可。

2.也可以读取其他数据源的数据,如ACCESS、SQL SERVER等,只要改一下Con nectionString。

VB设计报告

南京工程学院 课程设计说明书(论文)题目打字练习 课程名称VB语言课程设计 院(系、部、中心) 专业 班级 学生姓名 学号 设计地点图书馆基础教学机房 指导教师 设计起止时间:201x年x月x日至201x年x月x日 目录

一、设计任务 (3) 二、方法原理 (3) 三、总体设计思路 (3) 四、程序调试和解决问题 (4) 五、完善及存在的问题 (4) 六、收获体会 (4) 七、意见建议 (4) 八、示例截图 (5) 九、附录1(代码) (6) 十、附录2(主要参考资料) (10) 一、设计任务 1.题目介绍

在计算机及其他数码产品日益普及的今天,人们使用键盘应像用笔写字一样熟练。进行打字练习时熟悉键盘并提高打字速度的好方法。本体要求编制一个打字练习游戏程序,使用户在游戏过程中进行打字练习。 2.功能要求 (1)启动界面如图1 (2)选择难度和速度后,单击“开始”按钮,界面如图1。若选择简单,则落下字母;若选择复杂,单击开始后出现对话框,如图 2.单击确定,开始练习,落下单词。 (2)若用户在字符落到屏幕底部之前敲击了相应的键盘键,则该字符被“击中”然后消失。根据程序速度和难度的设置自动进行积分,实时分数时间正确率掉落个数显示在窗体的上部。 积分规则:正确击中一个字母或一个单词,加一分;反之,不得分,亦不扣分。(4)当游戏者单击“暂停”按钮时,程序停止运行,在单击“开始”按钮,程序继续运行;当单击“退出”按钮时,则弹出对话框(如截图示例3),单击“取消”按钮,程序继续运行,单击“确定”按钮,则弹出对话框(如截图4),此时对话框显示分数,单击“确定”按钮,退出程序。 (5)为了增加视觉效果,每个掉落的字符的颜色随机产生。 二、方法原理 根据题目要求,使用控件数组,用标签标题表示字符,键盘事件的处理判断打字正确与否,随机值的产生方法随机产生字符,用Timer控件属性反映时间、控制字符下落速度。 三、总体设计思路 首先在窗体上画出三个按钮标题分别为开始、暂停、退出。画六个标签分别表示已落字母个数、已花时间、得分与正确率。 画出一个含有五个元素的标签控制数组用以显示字符。 画出两个时间控件,一个用来返回已用时间,一个控制字符下落。 最后编写相关代码

iFix中采用ODBC制作报表

在iFix中采用ODBC制作历史报表 具体步骤如下: Step 1: 打开SCU中的Task Configuration,增加HTC.EXE和WSQLODC.EXE两个任务,并将它们设置成为后台运行状态; Step 2: 启动iFix,点击工具栏上的按钮打开Historical Assign,添加所需监控的数据点,并设置历史数据的采样速度。 Step 3: 打开任务控制,查看是否已经启动HTC。

Step 4: 在Globals\User 下面添加三个字符型(vtString )变量,分别命名为strStartTime, strEndTime 和 Interval 。新建一幅画面,如图如示,在画面上布置3个DATALINK 分别指向strStartTime, strEndTime 和 Interval ,并设置成In place (即允许修改)。 Step 5: 为画面上的各个按钮写代码,最好先将各按钮注册——即将鼠标移到按钮上方, 按右键弹出菜单,选择Edit Script 。在VB Editor 的工具菜单中的Reference(引用) 中选中Microsoft Excel 9.0 Object Library 和Microsoft ActiveX Data Objects ,如下 图所示。然后在各按钮的处理程序中添加相应代码。内容如下(可将下列代码直 接COPY 到你的VB 编辑器中,覆盖因为注册产生的空代码):

‘运行状态画面初始化 Private Sub CFixPicture_Initialize() CommandButton1_Click CommandButton2_Click user.Interval.CurrentValue = "00:00:30" End Sub ‘组态状态画面初始化 Private Sub CFixPicture_InitializeConfigure() user.strEndTime.CurrentV alue = "报表结束时间" user.strStartTime.CurrentValue = "报表开始时间" End Sub '设当前时间为报表开始时间 Private Sub CommandButton1_Click() Dim curTime As String curTime = Now Dim curmonth, curday, curhour, curminute, cursecond As String curmonth = IIf(Month(curTime) < 10, "0" & Month(curTime), Month(curTime)) curday = IIf(Day(curTime) < 10, "0" & Day(curTime), Day(curTime)) curhour = IIf(Hour(curTime) < 10, "0" & Hour(curTime), Hour(curTime)) curminute = IIf(Minute(curTime) < 10, "0" & Minute(curTime), Minute(curTime)) cursecond = IIf(Second(curTime) < 10, "0" & Second(curTime), Second(curTime)) user.strStartTime.CurrentValue = Year(curTime) & "-" & curmonth & "-" & curday _ & " " & curhour & ":" & curminute & ":" & cursecond End Sub

基于VB实现复杂报表设计

基于VB实现复杂报表设计 xx [摘要] 本文介绍了报表设计的几种方法和以往报表设计所存在的问题,并以实例介绍自动生成复杂报表的方法。实例基于VB软件开发,并以word为模板,通过调用access数据库数据自动生成复杂报表。 [关键词]VB;数据库;Word; 复杂报表 The Design Of Complex Reports Based VB [Abstract] This paper reports detailed description of several common methods, previous reports of the existence of the problem, and makes use of example to achieve a complex reporting by using of software. The example based on VB software and used word template, to achieve the common complex reporting software through reallocating database. [Key words] VB; Database; Word; Complex Statements

1引言 报表是人们在日常生活中对某类相关信息进行集中处理的重要手段,是企业信息化不可缺少的部分。报表在各行各业中应用广泛,是信息浏览、分析和打印的有力工具。传统报表系统均以国外简单报表模型为基础设计,不能适应复杂报表的开发。特别是在处理复杂数据源报表时,常常需要编写代码准备数据或进行子报表拼接才能实现。 1.1传统报表系统存在的问题 目前,国内外的报表系统种类繁多,功能界面各具特色,对这些报表系统的比较研究,有助于我们设计出更好的报表系统。国外的报表系统的技术都比较成熟,适合制作样式简单的报表,但一般都为高端产品,价格不菲,并且在处理具有强烈中国特色的报表时,国外产品不仅报表处理能力相当不适应,甚至某些技术也略显落后,例如部分产品不能稳定地在UNIX上部署,只能支持IE浏览器,统计图输出仍采用原始的CGl方式等。国内的传统报表系统更适合制作复杂的中国式报表,在报表设计和价格等方面国内报表系统也具有一些优势,但国内的报表系统在服务质量和产品本身的品质等方面还存在着一些不足和缺陷,有待进一步的改进和完善。无论是国外的高端报表系统,还是国内的传统报表系统,每一种报表系统都有各自的优点和缺点,都有各自擅长的领域,在实际工作中应该根据需要选择合适的报表系统。面对日益复杂的报表开发需求,尤其是复杂的中国式报表,这些报表系统或多或少都有些力不从心,其主要问题表现在以下三个方面: (1) 复杂数据源的处理能力不足。报表需要从复杂的数据源或者多个不同类型的数据源中获得数据,获得的数据还可能需要统计,格式转换或其他处理,这些需求都是传统报表系统难于实现的。 (2) 报表的可维护性差。传统的报表系统生成报表的种类固定,使用方便,但很多软件系统无论在实施还是在维护阶段,报表都会进行频繁的新增和修改,而传统的报表系统缺乏无编码定制能力,系统扩展网难。一旦用户对报表样式的需求发生改变,就会给软件维护带来许多不必要的麻烦。 (3) 报表保存格式的通用性较差。报表保存格式不统一,保存格式理解困难,各种报表工具各自为政,报表模板无法兼容,行业也没有形成统一的标准,一旦用户选定了某一报表工具就意味着要一直使用。如果不幸选择失误,已经做的工作都要重新再来。 总之,利用传统的报表系统制作报表维护量相当大,一个需求对应一个报表文件,不同的组合要求制作大量的报表文件,使得开发过程变得极为繁琐,难以实现用户的需求。在设计复杂数据源的报表时,或者需要人工转换数据格式,或者要编写大量代码将多个数据源运算成为一个数据源再使用,或者使用拼接子报表的方式来实现,但都没有从根本上解决问题,严重影响报表的设计和使用效率。因此如何快速制作符合多层结构特点的复杂数据源报表,减轻开发工作量,已经成为报表系统开发的重要问题。

iFix中如何实现EXCEL报表

?iFix中如何实现EXCEL报表 ? 2007-01-31 16:59:58 作者:ifixonline来源: ?文字大小:【大】【中】【小】评分等级:3 在VBA中引用Microsoft Excel 11.0 Object Library和 Microsoft ADO 6.0 Library。在画面中添加个按钮。复制以下代码: ‘----------开始复制(不包括此行)--------------Option Explicit Dim rsADO As ADODB.Recordset Dim cnADO As ADODB.Connection Private Sub Command1_Click() Dim StrDir As String StrDir = "E:\" Dim i As Long Dim Sql As String Sql = "SELECT * FROM THISNODE" Set cnADO = New ADODB.Connection Set rsADO = New ADODB.Recordset cnADO.ConnectionString = "Provider = Microsoft OLE DB Provide r for ODBC Drivers;DSN=FIX Dynamics Real Time Data;UID=;PWD =" cnADO.Open rsADO.CursorLocation = adUseClient rsADO.Open Sql, cnADO, adOpenDynamic, adLockUnspecified, -1 If rsADO.RecordCount <= 0 Then MsgBox "无数据!", vbOKOnly + vbInformation, "信息..." Set cnADO = Nothing Set rsADO = Nothing Exit Sub End If Dim xlApp As Object Dim xlBook As Object Dim xlSheet As Object Set xlApp = New Excel.Application xlApp.DisplayAlerts = False xlApp.Visible = False Set xlBook = xlApp.Workbooks.Open(StrDir & "\报表.xls")'需要文件(E:\报表.xls) Set xlSheet = xlBook.Worksheets(1)

IFIX报表

IFIX报表 IFIX报表常规的做法是采用IFIX内嵌的VBA语言,借助于OFFICE自带的ACCESS 和EXCEL 来做的。 例如我们要在IFIX画面上通过点击一按钮来察看某一天的数据,假如这有三个模拟量如tag1,tag2,tag3,数据间隔一小时归一次档,它主要分为四步: 一、创建一个ACCESS数据库如ReportDataBase.mdb,用来存放报表所需的数据。然 后就在这个数据库中建立一个表如ReporData,这样IFIX 就能以一定的时间间隔将数据写入此数据库刚才创建的表中。 ReportData的结构如下: 字段名类型 日期日期/时间 tag1 数值 tag2 数值 tag3 数值 二、创建ODBC数据源,用于IFIX与上步已建立的数据库和表进行联系。方法:控制面 板->管理工具->ODBC数据源,打开ODBC数据源管理器,建立一个“系统DSN”,点击“添加”,双击“Microsoft Access Drivers (*.mdb)”,出现“ODBC Microsoft Access 安装”对话框。 数据源名:MyReport 注:此名是任意的字符组合,但不能与数据库重名。 数据库:ReportDataBase.mdb,点击‘选择‘按钮选择第一步创建的Access数据库。 点击“完成”,退出控制面板

三、在IFIX 中创建一个“基于时间的调度”,如图 名称:任意合法的字符组合 触发信息:连续 间隔:1小时 详细代码如下: 点击“VB编辑器“进入VB编辑器 在“工具”菜单-〉引用“Microsoft ActiveX Data Objects x.x Library” Private Sub FixTimer3_OnTimeOut(ByVal lTimerId As Long) Dim cn As ADODB.Connection Dim res As ADODB.Recordset Dim StrSQL As String

基于ADO的IFIX历史数据报表

基于ADO的IFIX历史数据报表 黄重庆 (福建工程学院电子信息与电气工程系福州) 摘要:本次所使用的报表是基于ADO的IFIX历史数据报表,上位机采用组态软件iFix4.5,通过Visual Basic 6.0作为开发工具,运用模块化的方式,采集“智能仓储系统”和“冷却系统”所产生的数据,对各数据进行实时的监控和有效管理,同时可通过对不同信号的读取,采用本文介绍的方法设计的报表应用程序具有普遍性,通过简单修改可移植到其它工程中。 关键词:ADO;IFIX; 历史报表;VBA Based on the historical data report IFIX ADO HuangChongQing (FuJian University of Technology,Electronic information and electrical engineering,fuzhou) Abstract:This time uses the report form is based on the ADO IFIX historical data report form, the superior machine uses configuration software iFix4.5, 6.0 takes the development kit through Visual Basic, the utilization modulation way, the data which gathering “the intelligence warehousing system”and “the cooling system”produces, carries on the real-time monitoring and the effective management to various data, simultaneously may through to the different signal read, use the methods design report form application procedure which this article introduced to have the universality, may transplant through the simple revision to other projects. Key words:ADO;IFIX; HIM ;VBA

IFIX报表

Private Sub CFixPicture_Initialize() dtpTime.Value = Now End Sub Private Sub CFixPicture_KeyDown(ByVal KeyCode As Long, ByVal Shift As Long, ContinueProcessing As Boolean) End Sub Private Sub CommandButton1_Click() Dim strDate As String Dim strMonth As String strDate = Format(dtpTime, "yyyy-MM-dd") strMonth = Format(dtpTime, "yyyy-MM") '日报 If Me.optMonth.Value = False Then If Me.optDay.Value = True Then WebReport.Navigate "D:\REPORT\日报表\日报表" & strDate & ".htm" '显示 Else WebReport.Navigate "D:\REPORT\日报表\空白报表" & strDate & ".htm" '显示 End If End If '月报 If Me.optDay.Value = False Then If Me.optMonth.Value = True Then WebReport.Navigate "D:\REPORT\月报表\月报表" & strMonth & ".htm" '显示 Else WebReport.Navigate "D:\REPORT\月报表\空白报表" & strMonth & ".htm" '显示 End If End If End Sub

在VB中用数据报表设计器创建报表

在VB中用数据报表设计器创建报表 数据环境设计器(Data Environment designer)与数据报表设计器(Data Report designer)均是Visual Basic 6.0的新增功能,它们的出现大大增强了Visual Basic处理数据的能力。在以往的Visual Basic版本中,制作报表都是通过第三方产品来完成并通过ActiveX控件输出的。这两种设计器的出现,使得Visual Basic程序员再也不用考虑选择一个什么样的第三方工具设计报表了,所有的设计全部在Visual Basic内部完成,再加上Visual Basic 6.0新增的开发IIS应用程序和开发DHTML应用程序功能,使得Visual Basic 6.0是一个名副其实的装备齐全的集成开发环境了。下面我们以一个比较简单的报表为例,详细阐述如何使用数据环境设计器和数据报表设计器来设计一个数据报表。 一、数据环境设计器与数据报表设计器 数据环境设计器提供了一个交互式的设计环境。通过设置Connection对象和Command 对象的属性,可以快速完成到一个数据源的连接。对于设置好的数据环境设计器,可以将它的对象拖放到表单上或是报表上,它会自动创建并完成数据绑定控件的设置。 数据报表设计器是一个极为灵活的设计报表的工具。它以数据环境设计器作为数据源,能创建有层次的、汇总若干个关系型数据表数据的复杂报表。除了像传统的报表设计工具那样能将报表通过打印机输出以外,数据报表设计器还能以HTML或文本文件的格式输出报表。 二、数据环境对象 数据环境设计器包含以下几个对象: 1. 数据连接(Connection)对象:连接对象表示到一个作为数据源的远端数据库或本地数据库的连接。在数据环境中必须至少包含一个连接对象,要使用数据环境存取数据,必须首先创建连接对象。 2. 数据命令(Command)对象:命令对象定义了从数据库连接中将取回什么数据的详细信息。命令对象可基于任何一个数据库对象(表、视图、存储过程或同义字)或是一个SQL 查询。 三、数据报表对象 数据报表设计器包括以下几个对象: 1. 数据报表(Data Report)对象:类似于Visual Basic表单,它包含一个可视化设计器和一个代码模块。设计器用来创建报表的布局,也可以往设计器的代码模块里添加代码,用程序对包含在设计器里的控件或区域进行控制。 2. 区域(Section)对象:数据报表设计器的每一个区域均由一个区域集对象中的一个区域对象来表示。在设计阶段,每一个区域都有一个标题,若要选择区域,只需用鼠标选择标题即可,并且在区域内可布置控件。在报表建立之前,使用区域对象及其属性调整报表。使用过报表的人都知道,报表可分为报头、报脚、页头、页脚、组头、组脚和细节等部分,在区域内也是一样的。

vb报表设计

第六节报表设计 对一个完整的数据库应用程序来说,制作并打印报表是不可缺少的环节。6.0 提供了对象作为数据报表设计器(),对象除了具有强大的功能外,还提供了简单易操作的界面。 对象可以从任何数据源包括数据环境创建报表,数据报表设计器可以联机查看、打印格式化报表或将其导出到正文或页中。 一、报表设计器 数据报表设计器由对象、对象和控件组成。 1对象 对象与的窗体相似,同时具有一个可视的设计器和一个代码模块,可以使用设计器创建报表的布局,也可以在代码模块中添加代码。 在“工程”菜单上,单击“添加”命令,将数据报表设计器添加到工程中,则出现如图5-6-1所示的1对象,由“报表标头”、“页标头”、“细节”、“页注脚”和“报表注脚”组成。 图5-6-1 ·报表标头:指显示在一个报表开始处的文本,例如用来显示报表标题、作者或数据库名。 ·页标头:指在每一页顶部出现的信息,例如用来显示每页的报表标题。

·分组标头、注脚:指数据报表中的“重复”部分。每一个分组标头与一个分组注脚相匹配,用于分组。 ·细节:指报表的最内部的“重复”部分(记录),与数据环境中最低层的子对象相关联。 ·页注脚:指在每一页底部出现的信息,例如,用来显示页码。 ·报表注脚:指报表结束处出现的文本,例如,用来显示摘要信息或一个地址或联系人姓名。报表注脚出现在最后一个页注脚之前。 2对象 数据报表设计器的每一个部分由对象表示,如图5-6-1中的1~5。设计时,每一个由一个窗格表示,可以单击窗格以选择页标头,编程改变其外观和行为,也可以在窗格中放置和定位控件,对对象及其属性进行动态重新配置,更改每一个对象的布局来设计报表。 3控件 当一个新的数据报表设计器被添加到工程时,在窗体上控件箱出现“数据报表”和“”(通用)选项卡,如图5-6-2所示。但在数据报表设计器上不能使用的控件,即内部控件或控件。数据报表选项卡中的控件仅包含可在数据报表设计器上工作的特殊控件。 图5-6-2 数据报表选项卡有下列控件: ·控件():文本框用于在报表上设置规定文本格式,或指定一个。 ·控件():用于在报表上放置标签、标识字段或。

IFIX连接SQL读写数据和制作excel报表图文教程

IFIX连接SQL读写数据和制作excel报表图文教程IFIX连接SQL数据库、制作excel报表详细教程 一、 IFIX连接SQL数据库读写数据 IFIX连接SQL数据库有多种方法,其中最为方便的两种方法是: (1)使用IFIX本身为SQL数据库提供的接口SQT和SQD; (2)VB+ADO。 下面分别介绍着两种方法的实现步骤。 1、使用SQT和SQD读写SQL数据库 1.1 安装SQL2008 (只列出关键步骤,其余直接点击“下一步”或“安装”) 打开SQL安装中心,点击“安装”; SQL2008简体中文版安装包下载链接: 点击“全新SQL Server独立安装或向现有安装添加功能”; 点击“输入产品密匙”,点击“下一步”:(根据版本选择) sql server2008密钥 Developer: PTTFM-X467G-P7RH2-3Q6CG-4DMYB Enterprise: JD8Y6-HQG69-P9H84-XDTPG-34MBB Microsoft SQL Server 2008 R2序列号密钥 开发版32位:MC46H-JQR3C-2JRHY-XYRKY-QWPVM 开发版64位:FTMGC-B2J97-PJ4QG-V84YB-MTXX8 工组版:XQ4CB-VK9P3-4WYYH-4HQX3-K2R6Q WEB版:FP4P7-YKG22-WGRVK-MKGMX-V9MTM 数据中心版32位:PTTFM-X467G-P7RH2-3Q6CG-4DMYB

数据中心版64位:DDT3B-8W62X-P9JD6-8MX7M-HWK38 企业版32位:R88PF-GMCFT-KM2KR-4R7GB-43K4B 企业版64位:GYF3T-H2V88-GRPPH-HWRJP-QRTYB 标准版32位:CXTFT-74V4Y-9D48T-2DMFW-TX7CY 标准版64位:B68Q6-KK2R7-89WGB-6Q9KR-QHFDW 功能选择界面,选择安装全部功能,点击“下一步”; 进入实例配置界面,选择默认实例,点击“下一步”; 进入服务器配置界面,启动类型均选为“自动”;点击“对所有SQL Server服务使用相同的账户”,在弹出的界面中选择第一个账户,密码不用填;返回服务器配置界面点击下一步; 进入数据库引擎配置界面,选择混合模式,输入自己设定的密码,点击“添加当前用户”,点击下一步,直至安装完成,关闭安装中心。 1.2 进入SQL server新建SQL登录名和数据库 打开SQL,以Windows身份验证登录; 连接完后,点击“安全性”-“登录名”,右击选择“新建登录名”: 在弹出的界面中,点击左上角的“常规” ,输入登录名、密码,不要勾选强制密码过期,之后点 击左上角“服务器角色”; 在弹出的界面中,根据需要勾选所需权限,这里全部勾选,再点击“用户映射”; 在弹出的界面中,“映射到此登录名的用户”内勾选所有数据库,并在每个数据库的“数据库角色成员身份”中勾选db_owner和public,而后点击“确定”,完成新建登录名。

有关iFIX软件报表生成的说明

有关iFIX软件报表生成的说明 iFIX软件可以通过内置的VBA借助EXCEL,ACCESS,Crystal Roport等软件生成报表。本文通过 VBA+ADO+EXCEL 做一个具体的介绍。 1.V BA(Visual Basic for Application) VBA是iFIX完全内置的一个强有力的编程工具,可以使用户快速方便的生成自动的操作任务和过程自动化的解决方案。 IFIX的VBA工具包括以下特性: 可操作所有列出的iFIX对象的属性,方法和事件 支持多种数据源,包括iFIX过程数据库,任何OPC服务器,任何对象的属性和SQL数据库 ODBC支持 ActiveX控件支持 VBA脚本生成向导及IFIX命令可以帮助你为常用任务自动生成程序代码 第三方控件的安全容器 下面的程序代码就是在iFIX中建立一个新的EXCEL应用程序 并打开报表模版。 Dim msexcel As Excel.Application Set msexcel = CreateObject("Excel.Application") With msexcel .Visible = True .Workbooks.Open "e:\histdemo\FixReports.xls", , False

.ActiveWorkbook.ActiveSheet.Select .DisplayAlerts = False .Wait (Now() + 0.00002) End With 2.A DO (ActiveX Data Object) ADO 是微软推出的最新的数据库访问方式。它综合了微软早期推出的DAO及RDO的特性并取代了DAO及RDO。ADO可以访问更多类型的数据库,并且可以通过ODBC(Open DataBase Connectivity)访问数据,但它的结构是建立在OLE DB Providers上。 IFIX软件安装完毕以后,在控制面板的ODBC数据源中会增加两个系统DSN: FIX Dynamics Historical Data iFIX历史数据源 FIX Dynamics Real Time Data iFIX实时数据源 ADO可以通过访问这两个数据源来直接操作iFIX历史数据库和实时数据库。 ADO类介绍: Connection 创建和维护到数据库或其他数据库的连接,管理数 据传输,其OPEN方法建立实际的连接。 Recordset 提供存取表或其他记录集的能力,一个记录集对象 在某一时刻只能查看一条记录。提供移动记录的方 法,本类中的OPEN方法通过指定的表名,SQL语法, 命令以及连接对象获得存取的记录。

报表控件应用-iFix

第一部分数据存储 [1] 运行iFix演示程序,添加数字量输出块(DO)DataLogTrig、DataLogEnable。 [2] 工作台开发环境中新建画面DataLog,右键点击选择编辑脚本添加程序:Fix32.Fix.DataLogEnabled.F_CV = 1 [3] 菜单中选择插入〉OLE对象,对象类型列表中选择hmiReportDataLog.CtrlX插入到换面中,点击控件右键菜单中选择动画〉配置〉杂项,将控件的属性DataLogEnabled链接数据块 DATALOGENABLED ,属性DataLogTrig 链接数据块 DATALOGTRIG,数据转换选择”对象”。可将控件参数TagValue001- TagValue120链接模拟量数据块的实时值(Fix32.FIX.IFIX1_BATCH_BULKFLOW.F_CV)作为采样点,控件参数TagDesc001- TagDesc120链接模拟量数据块的描述信息(Fix32.FIX.IFIX1_BATCH_BULKFLOW.A_DESC),数据块的描述信息不能为空,不能以数字开头,不能包含运算符号。

[4] 点击控件右键菜单中选择属性,将控件属性DataLogInterval设为1-7的整数值将控制控件的采样周期为5秒钟至1小时,设为8时停止自动采样。画面中添加一个按钮[触发手动存储]按钮,按下时将数据块DATALOGTRIG 置1,释放时置0。 [5] 保存画面并切换至运行状态,选中[显示数据]可见设置的数据点名称和iFix传入的变量数据,按控件中[创建数据表]按钮,再按[存储数据]按钮,可在数据库中建立一个名为hmiDataLog的数据表并存储一行数据。 自动状态下控件按照选定的采样周期存储数据。画面中按[触发手动存储]按钮触发一次数据存储,可实现由外部状态控制数据存储。 [6] 报表软件程序组中打开“数据检索”工具,选择数据表名hmiDataLog,可选字段中选择时标字段TSTAMP 和其它的数据点字段,按[数据检索]按钮可从数据库查询出已存入的历史数据。在数据检索界面中可对历史数据进行修改、删除等操作,检索出的数据可导出为CSV文件。

VB程序设计课程设计报告

《VB程序设计》 课程设计报告 (2016 —2017 学年第1学期) 题目:______________ 排序演示_____________________________ 学院: _______ 经济与管理学院_________________ 班级: __________ 物流管理1502 __________________ 学号: ____________________________________ 姓名:_________________________________ 指导教师: __________ 阮冰_______________________ 时间:起2017年1月3日止1月6日

一、课程设计基本信息 课程代码: 课程名称:计算机基础课程设计 课程英文名称:Computer-based Course Design 课程所属单位(院(系)、教研室):数学与计算机学院计算机基础课程群 课程面向专业:生物科学类、制药工程、制药工程(生物制药卜药物制剂、物流管理 课程类型:必修课 先修课程:大学计算机基础通识选修课程、Visual Basic程序设计课程 学分:1 总学时:16 二、课程设计目标 掌握所学语言程序设计的方法,熟悉所学语言的开发环境及调试过程,熟悉所学语言中 的数据类型,数据结构、语句结构、运算方法,巩固和加深对理论课中知识的理解,提高学生对所学知识的综合运用能力。通过综合设计要求达到下列基本技能: 1 ?培养查阅参考资料、手册的自学能力,通过独立思考深入钻研问题,学会自己分析、解决问题。 2 ?通过对所选题目方案分析比较,确立方案,编制与调试程序,初步掌握程序设计的方法,能熟练调试程序。 3?系统设计编程简练,可用,功能全面,并有一定的容错能力。用户界面良好,有较好的输出功能。在完成课题基本要求后,具有创新型设计,具有一定的实用价值。 4 ?根据个人的设计调试过程,撰写设计报告。 三、课程设计内容 利用已掌握的VB程序设计语言基础,以及面向对象的程序设计方法、事件驱动的编程方式,进行应用程序和系统的开发设计。在强化巩固已有编程知识基础之上,训练新的设计 与编程思路,通过综合应用所学知识设计、编制、调试实用的Visual Basic程序。 四、课程设计要求 1. 要求每个同学都要认真对待,积极参与。 2. 课程设计结束时,提交完成的所有源程序、相关文件和可执行文件。同时填写并完成《课程设计报 告册》。 3. 不符合要求的程序、设计报告、抄袭的设计报告或源程序代码、在设计中完全未参 与的将作不及格处理。 五、考核方式 指导老师负责验收程序的运行结果,并结合学生的工作态度、实际动手能力、创新精神 和设计报告等进行综合考评,百分制计算,具体考核标准主要包含以下几个部分: 1. 程序运行情况20分 2. 程序功能的完善程度10分 3. 程序结构的合理性10分 4. 对问题的答辩情况20分

VB中报表的使用方法

Option Explicit Private Sub DataReport_Initialize() Dim cnn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim str As String Dim strsql As String str = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source= " & App.Path & "\db1.mdb " cnn.Open str rs.CursorLocation = adUseClient strsql = "select * from table1 " rs.Open strsql, cnn, adOpenDynamic, adLockOptimistic Set DataReport1.DataSource = rs DataReport1.Sections(1).Controls( "Text1 ").Caption = rs.Fields(1) DataReport1.Sections(2).Controls( "Text2 ").Caption = rs.Fields(2) DataReport1.Sections(3).Controls( "Text3 ").Caption = rs.Fields(3) DataReport1.Sections(4).Controls( "Text4 ").Caption = rs.Fields(4) End Sub 在报表中定义可四个RptTextBox控件.而且与都与数据库绑定了。运行看不到结果。老说下标越界 DataReport1.Sections(1).Controls(1).Caption = rs.Fields(1) controls(1);1表示你在报表上画它时的顺序.

iFIX使用脚本生成EXCEL报表

作者: lostCity 复制收藏 iFIX使用脚本生成EXCEL报表2006-07-23 重新修改过的报表脚本注意中文单引号要换成英文的(因为网页支持有问题,故替换处理)附录文件为时间调度报表代码:下载附件另存为.rar文件 ‘注释: 1。该程序需要安装ADO 2.0目标库并在本机注册 ‘2。Microsoft ActiveX Data Objects 2.1 Library 必须被引用(Office 2000) ‘3。Microsoft Excel 9.0 object libraries 必须被引用(Office 2000) ‘4。划===处可根据具体报表修改 Dim strQueryAvg As String Dim c As Integer Dim r As Integer Dim Intyexcel As Excel.Application Dim MyDate, MyMonth, MyDay, MyHour, MyMinute, MySecond Dim StartTime, EndTime, Duration, DisplayDay, DisplayMonth As String ‘++===================================================================‘报表中的TAG Dim Tag1, Tag2, Tag3, Tag4, Tag5, Tag6, Tag7, Tag8 As String Dim Items As Integer Tag1 = "LV001" Tag2 = " " Tag3 = " " Tag4 = " " Tag5 = " " Tag6 = " " Tag7 = " " Tag8 = " " ‘从历史库中取得域项,2 - DATA TIME, V ALUE, TAG 共三项 Items = 2 ‘--==================================================================== MyDate = Now()

VB通用数据表格输出程序的设计.

VB通用数据表格输出程序的设计 做为一种简捷、系统的Windows应用程序开发工具,Visual Basic具有强大的数据处理能力,提供了多种数据访问方法,可以方便地存取Microsoft SQL Server、Oracle、XBase等多种数据库,被广泛应用于建立各种信息管理系统。但是,VB缺乏足够的、符合中文习惯的数据表格输出功能。虽然使用Crystal Report控件及Crystal Reports程序可以输出报表,但操作很麻烦,中文处理能力也不理想,特别是不能够用来制作不确定内容的表格。笔者在用VB开发淮北市医疗保险信息管理系统时,需要对任意的查询结果进行表格输出,为此,编制了一个通用的数据表格输出控件,能够根据查询的结果自动生成二维中文表格,并打印输出,在此介绍给大家,共同探讨。 一.VB中的结果集 VB提供的数据访问方法有数据询问对象(DAO)、Data控件、远程数据对象(RDO)、RemoteData控件(RDC)、ODBC API、VB SQL等,其中ODBC API比较复杂,开发、调试和支持非常困难;VB SQL是针对Microsoft SQL Server的,这两种方法使用的比较少,这里不做讨论。比较常用的方法是DAO、Data控件、RDO、RDC,其中DAO和Data控件使用的结果集(又叫纪录集) 包含在Recordset 对象中,RDO和RDC使用的结果集包含在rdoResultset对象中。通用表格输出的实现方法就是根据任意的Recordset对象或rdoResultset对象自动生成表格并输出。 二.表格的自动生成 1. Recordset对象 下面以Data控件为例,介绍Recordset对象的表格自动生成方法。 假设有Data控件名称为MyData,首先说明相关的内容及用法: (1) Data控件的结果集包含在它的Recordset对象中,引用方法为: MyData.Recordset。 (2) Recordset 对象的RecordCount属性为结果集的行数,它决定了表格的长度,该属性引用方法为: MyData.Recordset.RecordCount。 (3) Recordset 对象包含一个Fields集合,通过Fields集合的Count属性可以得到结果集中字段的个数,用做表格的列数,该属性引用方法为: MyData.Recordset.Fields.Count。 (4) Fields集合包括结果集合全部Field对象,这些Field对象引用方法为:MyData.Recordset.Fields(i),其中i是该Field对象在中的位置序号,从0开始计数。 (5) Field 对象的Name属性是该字段的名称,用做表格对应列的名称,引用方法为:MyData.Recordset.Fields(i).Name。 (6) Field 对象的Size属性是该字段数据的最大尺寸,引用方法为:MyData.Recordset.Fields(i).Size。 (7) Field 对象的Type属性是该字段数据的类型,引用方法为:MyData.Recordset.Fields(i).Type。 用Field 对象的Size和Type属性可以计算出表格对应列的宽度。 (8) Field 对象的Value属性是该字段的值,这是表格对应列的内容,引用方法为:MyData.Recordset.Fields(i).Value。

ifix报表制作文档

Ifix报表的实现 本文档主要介绍Ifix 通过调度将报表数据按照一定要求存储到Access数据库中,并根据要求从其中提取数据,结合EXCELL的制表功能实现报表。 数据存入 1.数据库的建立和数据关联 方法:(1)直接在Microsoft office中建立Access文件。 (2)在控制面板里ODBC数据源管理器里关联数据库时创建Access数据库。 1.1数据库的建立 (1)打开新建的Access文件,点击。 (2)创建一个,名字为ReportData的表。在表名处右键鼠标点击,将字段名称,数据类型,字段属性更改为下图所示: Ifix时间调度触 发调度中的VB 脚本 Access 数据库 报表显示 创建表 设计视图

1.2数据库的关联 用关联定义画面如下图。 在其中选择点击 择Microsoft Access Driver[*.mdb]

在其中的数据源名(N)后的输入区中填写一个名字, DSN(数据源名)名,不使用数据名。 2.时间调度的建立 2.1在ifix里新建基于时间的调度,在Schedules新建一个调度文件,在Time Based Entries中创建一个调度,具体设置如下图: 注意:iFIX 不支持使用与本地节点名相同名称的调度。因此,不能创建与本地节点名相同的调度。

触发信息设置为continuous,间隔为1个小时,启动时间为第2分钟。点击Vb Editor 将以下脚本写入 Private Sub RW2REPORT_OnTimeOut(ByVal lTimerId As Long) Dim cn As ADODB.Connection '定义一个ADO方式的数据库连接 Dim res As ADODB.Recordset '定义一个ADO方式的数据库记录集 Dim StrSQL As String Set cn = New ADODB.Connection '定义cn为新的ADO数据库连接 为新的ADO数据库连接集 'On Error Resume Next 定义cn的连接数据源为ReportSource 即ODBC中建立的ACCESS的数据源名 cn.Open StrSQL = "select * from ReportData Where 日期=#" & Date & "#" '使用SQL语句查找ReportData表中日期为Date的数据 res.Open StrSQL, cn, adOpenKeyset, adLockOptimistic res.AddNew '添加一个新的记录 res.Fields(0) = Date '在0列加入日期 res.Fields(1) = Hour(Time) '在1列加入时间 res.Fields(2) = Fix32.RW2.RW_Y0GBN11AP001_ZS.f_cv '在2列加入标签1 res.Fields(3) = Fix32.RW2.RW_Y0GBN11AP002_ZS.f_cv '在3列加入标签2 res.Update '保存记录Update(当Edit或AddNew方法完成后保存记录集) res.Close '关闭记录集 cn.Close Set res = Nothing Set cn = Nothing End Sub

相关文档
最新文档