技术文章

当前页面: 首页 >技术文章 >力控与excel间的DDE通讯

力控与excel间的DDE通讯

供稿:北京力控元通科技有限公司 2002/6/4 8:14:00

0 人气:6222

力控的实时数据库是数据处理的核心平台,它支持DDE标准,可以和其他支持DDE标准的应用程序(如:EXCEL)进行数据交换。
一方面,力控数据库可以作为DDE服务器,其他DDE客户程序可以从力控数据库中访问数据;另一方面,力控数据库也可以作为DDE客户程序,从其他DDE服务程序中访问数据。

一、力控数据库作为DDE服务器

我们以EXCEL为例,说明第三方DDE客户程序如何将力控数据库作为DDE服务器进行数据交换。
1、 在力控数据库中创建一个模拟I/O点TAG1。
2、启动力控数据库。
3、用EXCEL程序打开一个工作薄,在工作单的2个单元格内分别输入以下内容:
“=DB|DB!TAG1.PV”和“=DB|DB!TAG1.DESC”
其中“DB”是力控数据库作为DDE服务器时的服务(SERVICE)名称,同时“DB”(即“|DB!”部分中的“DB”)也是话题(TOPIC)名称。“TAG1.PV”和“TAG1.DESC”是数据库中的点参数名,也就是DDE项目(ITEM)名称。

二、力控数据库作为DDE客户程序

当力控数据库作为客户端访问DDE服务器程序时,是将DDE服务器程序当作一个I/O设备。数据库中的点参数通过I/O数据连接与DDE服务器程序进行数据交换。
首先在数据库中创建一个模拟I/O点FI101,FI101的PV参数为实型,FI101的DESC参数为字符型。FI101.PV和FI101.DESC通过DDE方式分别连接到EXCEL工作薄BOOK1.XLS的工作单的R1C1和R1C2单元,即EXCEL工作单第一行的左起第一个和第二个单元格(CELL)。
1、在Draw导航器中展开项目“I/O设备驱动”,然后依次展开设备类型“DDE”、厂商“Microsoft”,选择驱动程序“DDE”,双击驱动程序名称“DDE”或用鼠标右键单击后在右键菜单中选择“添加设备驱动”,如下图所示:




这时出现“DDE通信定义”对话框:



2、“设备名称”中输入“EXCEL”(设备名称是一个人为定义的名称,可以为任意名字)。“服务名”中输入“EXCEL”(不要键入程序名的扩展名部分“.EXE”)。在“话题名”中输入book1.xls(电子表格的名称)。
注意:当用DDE方式连接到一个EXCEL文件时,主题名指定为EXCEL文件的名称,但由于操作系统和EXCEL版本的不同,EXCEL文件名称是否指定扩展名(比如:是“BOOK1.XLS”还是“BOOK1”)可能会有所不同。一个简单的方法是:以EXCEL在打开文件时应用程序标题为准。
最后的对话框形式如下:



3、单击确认按钮返回,在导航器驱动程序“DDE”下面增加了“EXCEL”一项。我们现在可以使用新定义的I/O设备“EXCEL”来创建数据连接了。
4、在Draw导航器中双击“数据库组态”以启动DBManager程序,然后在DBManager中双击FI101点,选择“数据连接”使其展开,选择“I/O设备”下面的“EXCEL”项,如下图所示:



5、选择“PV”参数,点击“增加”按钮,出现下图对话框,输入DDE的项名“R1C1”:



单击“确定”按钮,该点的PV“连接项列表”中增加了一项数据连接:



6、用同样的方法为FI101点的DESC参数创建一个数据连接,连接的单元地址为“R1C2”。

上面实例中,FI101.PV和FI101.DESC与I/O设备“EXCEL”之间建立了数据连接,它们将从名为BOOK1.XLS的EXCEL电子表格中的R1C1和R1C2单元格接收数据。FI101.PV可以接收实型数值,而FI101.DESC可以接收字符型数值。

注意:在实际运行时要保证首先启动EXCEL程序(然后再启动力控),并打开EXCEL文件“BOOK1.XLS”。另外要保证“BOOK1.XLS”中至少有一个被打开的工作单(如:SHEET1、SHEET2……)。

这样,你就完成了DDE方式读取EXCEL数据组态过程。接下来你可以启动DB程序观察相应数据,检查DDE通讯效果。

三维力控
www.sunwayland.com.cn


更多内容请访问 北京力控元通科技有限公司(http://c.gongkong.com/?cid=36523)

手机扫描二维码分享本页

工控网APP下载安装

工控速派APP下载安装

 

我来评价

评价:
一般