社区
DataWindow
帖子详情
关于信封打印问题!望大家都进来看一看!
sxychee
2004-03-20 10:13:34
http://www.yc-it.net/print.txt
关于信封打印的问题,一页腊纸打印九个信封,每个信封上又要从数据库里取多条记录。
...全文
48
6
打赏
收藏
关于信封打印问题!望大家都进来看一看!
http://www.yc-it.net/print.txt 关于信封打印的问题,一页腊纸打印九个信封,每个信封上又要从数据库里取多条记录。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mittee
2004-03-20
打赏
举报
回复
先用一个grid型的分组,然后传id到label类型或freedom的数据窗口打印
zhangdatou
2004-03-20
打赏
举报
回复
.引言
----自PowerBuild4.0问世以来,以其简洁高效的集成开发环境、强大的数据窗口技术、(几乎)无所不能的数据库访问能力,越来越受到编程人员的青睐。据Sybase自己
的统计, 目前全 球有60万 程序员 和系统 分析人 员在使 用他们 的Powerbuilder和S-designer,进行各种类型的应用程序开发。最新发布的PowerBuilder6.0族系列开发工具,直接支持ActiveX技术、ServerPush技术,对分布式计算模型的定义更加明确,实现更为简便,并可以利用数据窗口直接生成HTML格式
文件,等 等。所以,PowerBuilder 已成为C/S模式应用和基于InterNet 模式应 用的主 要开发 工具之 一。
----数据窗口(DataWindow)是PowerBuilder的专利,也是PowerBuilder应用程序的核心和精华所在.PowerBuilder通过丰富的属性和函数来控制数据窗口的显示和数据操纵,但对数据窗口的打印支持似乎过于简单,只有一个Print()
窗口函 数和一 个PrintDataWindowPowerScript函 数,并且 这两个 函数的 功能几 乎都是 一样,都 只简单 地将选 定数据 窗口原
样送入 打印队 列,本身 不具备 页面控 制功能。 为此很 多程序 员抱怨 这是PowerBuilder的一个缺陷,其实,PowerBuilder对打印功能的支持一样十分周到全面,只不过应用场合不同,需要用户自行加以选择。
----以下是对PowerBuilder打印控制功能的详尽分析,并介绍一个实用的数据窗口页面控制程序。
2.Powerbuilder实现动态页面控制的途径
----PowerBuilder数据窗口有一对函数Describe 和Modify,用于动态描述和修改数据窗口结构,与其它相关函数结合可以完成动态生成数据窗口、任意改变数据窗口显示方式、修改打印属性等。这两个函数是控制与修改数据窗口的核心函数,其使用方法如下:
----1)Describe获取数据窗口特定属性值
----语法:dwcontrol.Describe(propertylist)
----参数:dwcontrol数据窗口(或datastore)控 件名。
----propertylist用字符串表示的数据窗口属性。
----返回值:返回一个表示属性的字符串。
----数据窗口属性值也可以用dwcontrol.object.Datawindow.property来完成直接取得。
----2)Modify修改数据窗口特定属性
----语法:dwcontrol.Modify(modstring)
----参数:dwcontroldwcontrol数据窗口(或datastore)控 件名。
----modstring用字符串表示的数据窗口属性。
----返回值:如果函数执行成功返回“1”。
----与Describe类似, 修改数 据窗口 属性可 以用:
----dwcontrol.object.Datawindow.property=value直 接赋值。
----3)与打 印有关 的数据 窗口属 性
----数据窗口属性中与打印有关的有24个,其中实现打印页面控制的几个属性是:
----Copies:打印份数。
----Filename:如果不为空,表示输出到文件的文件名。
----Orientation:打印方向1=横向,2=纵 向
----Page.Range:输出页范围,要打印1,2,和5到10 页,输入: "1,2,5-10"。Page.RangeInclude:本
次打印范围,0=全部,1= 偶数页,2= 奇数页。Paper.Size:纸张大小。
----Scale:打 印比例。
----程序中利用Modify函数 设置好 这些属 性后,即 可实现 动态修 改数据 窗口的 目的,再
调用datawindow.print()函数,完成最后的打印输出。
一个通 用Datawindow打印控制程序
----将数据窗口中的报表在打印机上输出是PowerBuilder应用程序开发过程中必不可少的功能,作为例子,这里提供一个使用上述方法研制的通用打印控制窗口,用以替代Prompt属性
所提供 的Print窗口,实现汉化界面,并且可被自行修改扩充。为了书写简单,程序中采用直接赋值的方式修改属性。
实例 变量:
datawindowdw_print
stringprintername,name,port
窗口open 事件脚 本:
dw_print=Message.PowerObjectParm
printername=dw_print.Object.Datawindow.Printer
name=left(printername,pos(printername,"on")-1)
port=right(printername,len(printername)-pos(printername,"on")-1)
plb_printername.additem(name,1)
st_portname.text=port
“设置” 按钮clicked事件脚本
Integercode
Code=printSetup()
Ifcode=1then
printername=dw_print.Object.Datawindow.Printer
name=left(printername,pos(printername,"on")-1)
port=right(printername,len(printername)-pos(printername,"on")-1)
plb_printername.additem(name,1)
st_portname.text=port
endif
打印 范围组 中“全部” 选择钮clicked事件 脚本
dw_print.object.DataWindow.Print.Range=''
sle_1.enabled=false
sle_2.enabled=false
sle_3.enabled=false
“页数” 栏后sle_2单行文本编辑框Modified事件 脚本
dw_print.object.DataWindow.Print.Page.Range=sle_1.text
+"-"+sle_2.text
“自定 义”栏后sle_3单行文 本编辑 框Modified事件脚本
dw_print.object.DataWindow.Print.Page.Range=sle_3.text
打印 份数组 中份数 单行文 本编辑 框Modified事件脚本
dw_print.Object.DataWindow.Print.Copies=integer(this.text)
“全部” 选择钮Cliecked事件 脚本
dw_print.Object.DataWindow.Print.Page.Rangeinclude
=0
“奇数” 选择钮Cliecked事件 脚本
dw_print.Object.DataWindow.Print.Page.Rangeinclude
=1
“偶数” 选择钮Cliecked事件 脚本
dw_print.Object.DataWindow.Print.Page.Rangeinclude
=2
“确认” 命令按 钮Clicked事件脚本
longjob
ifIsValid(dw_print)then
job=PrintOpen()
PrintDataWindow(job,dw_print)
PrintClose(job)
close(parent)
endif
“取消” 命令按 钮Clicked事件脚本
close(parent)
----窗口调用方法:在其它带有数 据窗口的窗口中,使用OpenWithParm(w_print_set,dwname)
即可,其 中w_print_set为本窗口名,dwname为要 打印的数 据窗口。 该程序 是一个 通用打 印控制 程序,可 在任何 版本的PowerBuilder
应用中使用。
sxychee
2004-03-20
打赏
举报
回复
feixianzhi(函数) 兄,怎么实现呢,我用label类型的数据窗口了,可不能加上分组呀!我每一个信封并不是单一的一条记录,要按地址,联系人分组的呀!
feixianzhi
2004-03-20
打赏
举报
回复
用label类型的数据窗口,可以轻松实现的想要的!!
sxychee
2004-03-20
打赏
举报
回复
唉,郁闷呀,加上前几天的,这个问题发了四个了,还有别的论坛,不下七八个了,不行,还得靠自己呀!
xyzliuin
2004-03-20
打赏
举报
回复
你不到一天的时间发了三个帖子
帮你up
严重关注!!!
2012年考研大纲词汇方便
打印
版(免费分享)
a art.一(个);每一(个);(同类事物中)任一个 abandon vt.离弃,丢弃;遗弃,抛弃;放弃 abdomen n.腹,下腹(胸部到腿部的部分) abide vi.(abode,abided)(by)遵守;坚持 ability n.能力;本领;才能,才干;专门技能,
干了十多年SAP顾问,聊聊从SAP最佳业务实践看企业管理
干了十多年SAP顾问,聊聊从SAP最佳业务实践看企业管理 干了十多年的SAP实施顾问,经历了各种行业(机械、电力、石油、化工、制造、消费品等等)、各种企业(国企、外企、民营),也来聊聊SAP,大家有什么要问的? 去年,我找个先生给我算了一卦,我问先生我啥时候能发财呀?老先生左算右算说了一句话:你…你想发财啊! 那得等猴年.. 吧! 终于等到了这一年,真特么不容易啊 ! 大部分的人...
自己编辑的英语stem课程
Lesson 1 Excuse me! 对不起! Listen to the tape then answer this question. Whose handbag is it? 听录音,然后回答
问题
,这是谁的手袋? Excuse me! Yes? Is this your handbag? Pardon? Is this your handbag? ...
《那些年啊,那些事——一个程序员的奋斗史》十
91 在段伏枥等待台湾资料的期间,冯总的4.3'机器就交出去了。设备上的应用程序倒是五花八门,因为时间比较短,小黑弄了个主界面,周波改了下播放器,其它的用的都是telechips的demo程序。这玩意一看就是拼凑货,用来演示一下还可以,如果真作为产品开卖,还真不知有哪个傻子会上当。何况还有时不时电量检测有误从而导致关机的这颗在,更让人觉得这玩意还不够完善。 这些
问题
,段伏枥是告诉过武总的,...
[风云人物]三年挣850万,你也可以复制!
转载:http://www.tianya.cn/publicforum/content/enterprise/1/303920.shtml 1994年,北京城。我化工大学毕业,满怀希望冲进人才市场,放眼一望,茫茫然,学子们挤满了招聘现场,却发现针对我的专业只聘一人!班里还有百八十人在嗷嗷待哺呢,咱专业学问和心气都拼不过他们,得,赶紧转行要紧。从此,我踏上了曲折的应聘之路。虽然某些客观条件让咱屡战...
DataWindow
609
社区成员
20,469
社区内容
发帖
与我相关
我的任务
DataWindow
PowerBuilder DataWindow
复制链接
扫一扫
分享
社区描述
PowerBuilder DataWindow
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章