利用DDE技术实现PB与EXCEL的数据通讯

来源 :硅谷 | 被引量 : 0次 | 上传用户:greatbear1
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]介绍windows环境下DDE技术的原理,以及DDE在PB和EXCEL中的应用,并通过实例-利用DDE在EXCEL中输出PB数据并同步打印来说明PB与EXCEL的数据通讯。
  [关键词]DDE 应用程序名 主题名 项目名
  中图分类号:TN92文献标识码:A文章编号:1671-7597(2009)0310031-01
  
  一、引言
  
  PowerBuilder是一种强有力的企业级数据库应用系统开发工具,利用它可以方便地开发出数据库系统的前台应用软件。但由于用PB所开发的报表具有一定的局限性:报表的表头、列宽以及单元格的背景颜色和字体等都不能在应用程序中由用户来进行调整。而Excel是Microsoft公司的专业的表格处理软件。我们可以利用DDE技术,通过按钮响应来实现在PB中把数据库中的数据传送到Excel中,以便由用户在Excel中调整打印报表。
  
  二、正文
  
  (一)DDE技术简介
  DDE英文全称是DynamicDataExchange,中文叫动态数据交换,它是微软公司为在应用程序之间传递数据所制定的第一个标准。DDE用于在Windows平台上的两个正在运行的应用程序之间动态交换数据,它是一种在Windows操作系统中基于消息的协议。动态数据交换总是发生在两个正在运行的程序之间,在这两个应用程序之间相互发送和接收命令及数据。这两个正在运行的程序分别称为客户程序和服务器程序。
  (二)DDE技术在PB和EXCEL中的应用
  Powbuilder支持DDE技术,它既可以是用来提供数据和功能的DDE服务器,也可以是用来请求和显示数据的DDE客户端。它的内部提供了一系列的PowerSript函数,通过调用内置函数和处理事件来实现相互之间的通信。当命令或数据从客户传向服务器或从服务器传向客户端时,将会出发生DDE事件。同样,EXCEL也是一个支持DDE的应用程序,它一般用来作为DDE的服务器端。
  由于通常一个应用程序可以和多个服务器进行数据通信,为了使DDE客户程序能够唯一标志一个DDE服务器应用程序,DDE使用一种约定的命名方法来标志服务器应用程序,这种命名方法包括了:应用程序名、主题名和项目名。应用程序名用于指出特定的DDE服务器应用程序名,如Excel代表Microsoft Excel,而主题名则进一步确定当前应用程序与DDE服务器会话的主题内容,例如对EXCEL程序来说,它的主题名是指一个具体的工作表文档名。而项目名则是为了进一步确定预制通信的内容,对EXCEL程序是指工作表中的具体单元格名。
  (三)PowerBuilder与Excel利用DDE技术传递数据实例
  在这个实例中PB作为通信的客户端,而Excel作为通信的服务器端。在PB窗口中放一个数据控件用来存放数据窗口中的数据。并放置五个按钮,前三个按钮标题是插入、删除和更新,是对数据的操纵。第四个按钮标题是打开预设文件,第五个按钮标题是“保存数据到预设文件并打印”,在这两个按钮上加单击事件脚本来实现DDE技术。其次,我们还需建立一个EXCEL文件取名为chengji.xls,并在此文件中设置好表头和单元格样式以及求和和求平均公式。
  在两个应用程序进行数据传递之前,首先要使两个应用程序都启动才行。PB应用程序显然已启动,启动excel文件的程序如下,如run("c:\program files\Microsoft office\office\Excel.exe+chengji.
  xls",minimized!)。然后开始在PB中和excel中建立DDE连接以便进行动态数据交换。DDE客户端与服务器端的连接共有三种:冷连接、暖连接和热连接。根据三种连接的优劣性进行比较选用了暖连接。程序如下:
  handle=OpenChannel("Excel","chengji.xls")
  for I= 1 to n
  SetRemote("r"+string(I+1)+"c1",string(dw_1.getitemnumber(I,1)),handle)
  SetRemote("r"+string(I+1)+"c2",dw_1.getitemstring(I,2),handle)
  SetRemote("r"+string(I+1)+"c3",string(dw_1.getitemnumber(I,3)),handle)
  SetRemote("r"+string(I+1)+"c4",string(dw_1.getitemnumber(I,4)),handle)
  SetRemote("r"+string(I+1)+"c5",string(dw_1.getitemnumber(I,5)),handle)
  SetRemote("r"+string(I+1)+"c6",string(dw_1.getitemnumber(I,6)),handle)
  SetRemote("r"+string(I+1)+"c7",string(dw_1.getitemnumber(I,7)),handle)
  next
  在应用程序之间除了可以动态交换数据外,还可以执行远程DDE命令实用函数ExecRemote。如下:
  ExecRemote("[print()]",handle)
  ExecRemote("[close(true)]",handle)
  ExecRemote("[quit()]","Excel","system")
  最后是关闭dde连接的程序:CloseChannel(handle)。
  
  三、总结
  
  虽然DDE技术并不是一种新技术,而且它在逐渐被OLE技术所代替,DDE其实是OLE技术的前身,而且DDE的语法很好理解,程序的运行速度也比较快,是一种方便且简单易学的技术。
  
  参考文献:
  [1]王晟,PowerBuilder数据库开发经典案例解析[M].清华大学出版社,2005(04).
  [2]沈良忠,PowerBuilder数据库开发教程[M].电子工业出版社,2008(03).
其他文献
[摘要]阐述翻版制造铝电解电容器生产专用设备200型全自动卷绕机的目的,详细介绍从测绘准备到制造加工最后到装配调试的过程,同时提出了几处改进措施,应用后取得良好效果。  [关键词]电容器 卷绕 设备 机械 制造  中图分类号:TP2文献标识码:A文章编号:1671-7597(2009)0320097-02    一、引言  铝电解电容器是一种具有能储存电量,进行元器件充、放电,允许通过交流电而阻断
期刊
[摘要]GPS在公路交通过程中的快速测量方法被越来越多的国家掌握和使用,主要介绍道路工程中采用GPS快速测量方法的基本测量模式,并阐述GPS卫星基本测试的主要应用内容。  [关键词]GPS 快速测量 道路工程  中图分类号:TB2文献标识码:A文章编号:1671-7597(2009)0320107-01    一、交通道路GPS快速测量的基本测量模式  为实现差分测量,交通道路GPS快速测量是利用
期刊
中图分类号:TN4文献标识码:A文章编号:1671-7597(2009)0320007-01    一、引言  积分电路可将矩形脉冲波电转换为锯齿波或三角波,还可将锯齿波转换为抛物波。其电路原理都是基于电容的冲放电原理。这里重要提出的是电路的时间常数RC,积分电路的特性是由电路的时间常数和输入信号占空间的相对大小关系确定的。  二、RC积分电路的结构和原理  (一)电路组成  图1是RC积分电路的
期刊
[摘要]在计算机运用相当广泛的今天,必须要让孩子们接触网络,学习网络知识。在孩子们接触网络的初始,能够正确地引导孩子们向着健康科学的方向发展,至关重要。  [关键词]小学生 网络 引导工作  中图分类号:G62文献标识码:A文章编号:1671-7597(2009)0320163-01    在网络普及的今天,如何引导小学生在接触网络初期,能以平常的心态看待网络,以正确的姿态应用网络,不要长久沉迷于
期刊
中图分类号:C92文献标识码:A文章编号:1671-7597(2009)0320185-01    自上个世纪八十年代中国计划生育协会成立以来,协会数量迅速增加,而三分之二以上的协会是基层协会。在解决一些群众性的问题 ,诸如防止偏远地区尤其是农村计划外生育、提高女性生殖保健的质量、预防艾滋病等问题,基层计生协是最切实有效的组织。如何切实发挥基层计生协的作用,使之有“为”、有“位”显而易见是毋庸质疑
期刊
[摘要]中国企业的会计信息化进程已经持续20余年。通过分析ERP在中外会计模块设计的差异,指出ERP系统的不足,并对其实施本土化提出建议。  [关键词]ERP软件 会计模块  中图分类号:F23文献标识码:A文章编号:1671-7597(2009)0320179-01    ERP是一种企业流程再造的解决方法,是以信息科技为辅助手段,作业流程重新加以规划,整合了企业的多元资源,通过信息系统的最佳规
期刊
[摘要]介绍上海轨道交通6号线TETRA数字集群专用无线通信系统的构成、主要设备,最后结合在上海轨道交通6号线中的施工经验,总结TETRA系统应用的特点。  [关键词]TETRA 城市轨道 应用 特点  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0310006-01    地铁是城市运送大量乘客的地下电气化轨道交通系统,是现代城市基础设施建设的重要项目,地铁的运营离不
期刊
中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0310010-01    我国为地质灾害多发、易发地区,每年因地质灾害造成的损失巨大,而其中大多数都是人为引发的地质灾害。地质灾害危险性评估对规范和约束人类工程活动,从源头上控制和减少地质灾害具有十分重要的现实意义。随着近年来对地质灾害危险性评估工作的重视,大部分地图数据来源于各设计院、勘察院的测绘部门,由于传统测绘行业大都
期刊
中图分类号:J6文献标识码:A文章编号:1671-7597(2009)0320181-01    1849年,在巴黎,不满四十岁流亡异乡的伟大民族音乐家、钢琴诗人肖邦与世长辞了。肖邦是他那个时代最先进的思想的代表和喉舌,他的音乐同波兰民族解放运动紧相联系,发挥着富于革命性的作用,因此被舒曼誉为“藏在花丛中的一尊大炮”。  肖邦的音乐,表现了自己的创作特色,并独创性的加入了波兰民间音乐的动机成分。作
期刊
[摘要]针对配电变压器监控系统对数据传输可靠性和实时性的要求,探讨一种无线通信的配电变压器监控系统的设计与实现,提出基于GPRS网络的配电变压器远程监控的解决方案。  [关键词]GPRS 配电变压器 远程监控  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0310013-02    一、引言    随着科技的发展,实现中低压配电网的自动化监控已成为可能。中低压配电网作为
期刊