首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心计算机论文计算机理论
   PowerBuilder的精确套打技术研究      ★★★ 【字体: 】  
PowerBuilder的精确套打技术研究
收集整理:佚名    来源:本站整理  时间:2009-01-10 12:07:39   点击数:[]    

[本篇论文由上帝论文网为您收集整理,上帝论文网http://paper.5var.com将为您整理更多优秀的免费论文,谢谢您的支持]

摘    要:针对固定表格进行套打时数据难以实现精确定位的这一实际情况,提出了利用动态数据窗口技术实现的一种解决方案,并详细地介绍了具体实现步骤。

关键词:PowerBuilder;套打;动态数据窗口

在进行MIS设计时,具体到对固定表格进行套打的设计中,由于固定表格在印刷,设计过程中,常常会出现以下问题:(1)表格的整体位置发生偏移。(2)表格的内容保持不变,但由于具体需要,对其中的某些数据的位置进行了调整。由此,会造成了打印时数据产生错位、偏移等现象。使得打印的整体效果不甚美观,大大的影响了整个程序的性能。这一点上,在车票、学员证件等打印过程中体现地尤为明显。
若每次进行调整后,均需修改源程序,并重新进行编译,这显然会给使用者的工作中带来许多不必要的麻烦。同样的,对于开发者来说,这并不是功能完善的软件系统。所幸的是PowerBuilder中提供了强大的动态数据窗口技术,用户可以通过创建数据窗口对象,动态地生成数据窗口,并且在应用程序运行的时候,再将其和一个数据窗口控件进行关联。用户也可以在程序运行过程中,通过程序脚本获取或重新设置数据窗口对象中所有实体的属性。例如,我们可以在程序运行过程中修改DataWindow中任何对象,比如列、计算域、图表等的高度、宽度、所在位置等属性值,或者重新定义数据源来实现特殊查询。
实现固定表格精确套打的关键在于两点:其一:表格内数据(即数据窗口中的对象,主要是列或计算域)的移动。其二:数据窗口对象打印格式的保存及恢复。
根据动态数据窗口的技术特点,我们可以在程序中动态地实现固定表格中精确定位打印。PowerBuilder中实现精确套打主要涉及到以下几个函数:
1)      Dwcontrol.Describe ( propertylist )     
获取数据窗口对象或数据窗口对象中某一元素的当前属性值。同样的,也可以使用圆点操作符来获取。
数据窗口中列的横坐标的获取
<DW Control Name>.Describe("<Columnname>.X")
<DW Control Name>.Object.<Columnname>.X
2)      Dwcontrol.Modify ( modstring )
用户可以在modstring中使用下列三种语句类型来修改Datawindow对象。
1:Create object - 在数据窗口对象中增加对象,比如列、绘图对象和计算域等。
2:Destroy object - 从数据窗口中删除对象。
3:Property assignments - 动态设置数据窗口对象或数据窗口对象中某一元素的属性值。比如背景、颜色、字体大小等。同样的,也可以使用圆点操作符来进行设置。
设置数据窗口中列的横坐标
<DW Control Name>.Modify("<Columnname>.X='<an integer>'")
<DW Control Name>.Object.<Columnname>.X='<an integer>'
3)      LibraryExport ( libraryname, objectname, objecttype )
通过调用LibraryExport函数,可以卸出一个窗口对象的源代码,把它存储在一个字符串变量中,然后在Create函数中利用此源代码(或做了某些改变的源代码)创建一个数据窗口对象。
String ls_dwsyn, ls_errors
ls_dwsyn = LibraryExport("c:/pb/dwTemp.pbl", "d_emp", ExportDataWindow!)

4)      Dwcontrol.Create ( syntax {, errorbuffer } )
利用数据窗口源代码创建数据窗口对象,并将之与数据窗口控件相关联。在调用Create( )时,函数的Syntax参数可以通过以下三种方法进行定义:(1)调用SyntaxFromsql函数 (2)调用LibraryExport函数 (3)用户可以自己创建Syntax。
dw_1.Create(ls_dwsyn, ls_errors)
dw_1.Settransobject(sqlca)
dw_1.Retrieve( )

5)      LibraryImport ( libraryname, objectname, objecttype, syntax, errors {, comments } )
将当前的数据窗口对象导入到PBL库中。用以保存当前数据窗口设置。
string dwsyntax, ErrorBuffer
integer rtncode
dwsyntax = dw_1.Describe("DataWindow.Syntax")
rtncode = LibraryImport("c:/pb/dwTemp.pbl", "d_emp", ImportDataWindow!, dwsyntax, ErrorBuffer )

具体实现:
1)      新建一PBL库,Print_report.pbl,用以存放需要保存的数据窗口对象。
2)      在程序运行中,数据窗口初始化期间,利用LibraryExport( )函数,导入保存在Print_report.pbl中地数据窗口对象。
3)      在Create( )函数中利用上一步所导入的源代码创建数据窗口对象。
4)      如有需要对数据窗口中的对象进行调整,则对数据窗口中的具体对象的位置利用DataWindowname.Modify( )进行左右,上下调整。
5)      最后,将调整后的数据窗口设置保存到Print_report.pbl库中。
6)      另外,可设置缺省设置,当对数据窗口的对象调整不满意时使用。
至此,完成了一个固定表格精确套打的程序。

参考文献
【1】William B.Heys. Powerbuilder 6开发指南【M】,北京:电子工业出版社,1998。
【2】刘红岩。数据窗口技术详解 【M】,北京:电子工业出版社,1999。
【3】王蓉。应用开发技术详解 【M】,北京:电子工业出版社,1999。


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:如何快速地从网页中获得Email地址

  • 下一篇文章:自然辩证法和计算机语言发展
  • 返回上一页】【打 印】【关闭窗口
    中查找“PowerBuilder的精确套打技术研究”更多相关内容 5VAR论文频道
    中查找“PowerBuilder的精确套打技术研究”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››中小企业办公自动化系统的设计与实...
  • ››未雨绸缪:关于我国电子商务税收对...
  • ››网上书店为钱做秀 行业走势两极分...
  • ››Win2000索引服务的WEB应用
  • ››宽带化――电信发展的必由之路务
  • ››电子商务中x种错误思路和做法
  • ››网络营销与传统营销相比有何优势
  • ››Internet的下一个热点 从内容走向服...
  • ››基于CNAPS的流水号管理方法
  • ››网络时代的财务与会计:管理集成与...
  • ››POWER气化炉故障分析及处理程序
  • ››PowerPC和Dallas的时钟芯片接口设计...
  • ››PowerBuilder的精确套打技术研究
  • ››PowerBuilder中实现数据窗口列不可...
  • ››PowerBuilder高级调试技术与技巧
  • ››PowerBuilder的分布式计算技术及其...
  • ››PowerBuilder数据窗口编程技巧
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .