数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

在PB中实现分段打印功能


发布日期:2022年07月27日
 
在PB中实现分段打印功能

在使用Powerbuilder进行应用程序的开发过程中可使用Powerbuilder提供的函数Print()对数据窗口进行打印但是在实际应用中Print()函数提供的功能远不能满足用户的需要本文将介绍如何在Powerbuilder中实现分段打印的技巧从而满足应用程序特定功能的要求

有时我们需要把数据窗口显示的数据按照一定的格式进行分页打印而每页显示的数据是随机的每页又需要分别汇总所以每页的总和也不相等我们可以用RowsDiscard()和RowsCopy()函数与Print()函数联合使用

例如对于某一数据窗口我们需要按照每页打印不足行补空行每页合计为当页总数这时我们首先把显示的数据窗口命名为dw_接着另建一个隐含的数据窗口格式和dw_完全相同并命名为dw_最后计算需要打印几页具体程序如下

int nmm

//每页打印mm行

mm = long(em_text)

n = int(dw_rowcount()/mm) +

//如果不足mm行直接打印

if dw_rowcount() < mm then

dw_print()

return

end if

//用FOR循环语句循环n

int m =

for m = to n

dw_reset()

dw_rowsdiscard(dw_rowcount()Primary!)

//删除dw_中的数据

//从数据窗口的主缓沖区拷贝mm行到dw_

dw_RowsCopy(mmm+ (m+)mm Primary! dw_ Primary!)

//不足mm行补空行

if dw_rowcount() > and dw_rowcount() < mm then

int iijj

jj = dw_rowcount()

for ii = to mm jj

dw_InsertRow()

dw_ScrollToRow(dw_RowCount())

next

end if

//循环打印dw_窗口

dw_print()

next

利用以上代码我们就可以实现按特定的格式进行分段打印的功能了

上一篇:SQL实战新手入门:第十章小结

下一篇:PB中实现可监控的数据备份