熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL語言 >> 正文

在PB中實現分段打印功能

2013-11-13 12:42:51  來源: SQL語言 

  在使用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

  利用以上代碼我們就可以實現按特定的格式進行分段打印的功能了


From:http://tw.wingwit.com/Article/program/SQL/201311/16435.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.