客戶要求,要顯示列印了幾次,但是不知道在哪里知道按了那個確定列印,預覽的不算
uj5u.com熱心網友回復:
i=i+1messagebox(i)
列印一次,變數自動加1
uj5u.com熱心網友回復:
在列印報表時,如何知道用戶是真的列印了,還是點擊了取消按鈕而沒有列印?*----------------------------------------------------------------
這里說的列印是指點擊了軟體中的列印按鈕,如果是列印機故障或未加電造成沒有列印成功是無法從這里得到的。
1、報表中添加一個報表變數
設計報表時,點擊選單上的‘報表’->‘變數...’,出現對話框后,在報表變數
中添加一個報表變數,如‘PrnTF’,其中‘要存盤的值’、‘初始的值’、
‘重置’及‘計算’不用修改,用默認值。然后選中‘報表輸出后釋放’。
最后點擊‘確定’。
****************************************************
(英文版)
設計報表時,點擊選單上的‘Report’->‘Variables...’,出現對話框后,在報表變數
中添加一個報表變數,如‘PrnTF’,其中‘Value To store’、‘Initial’、
‘Reset Value based on’及‘Calculation type’不用修改,用默認值。
然后選中‘Release After report’。
最后點擊‘確定’。
****************************************************
2、列印時:
Report Form 報表名 To Printer Prompt
*!*---此句運行后,報表變數PrnTF被定義全域變數。
*!*---如果點擊了列印按鈕,進行了報表輸出,報表變數就被釋放了。
*!*---如果點擊了取消按鈕而不列印,報表變數并沒有被釋放。
*!*---所以通過檢測是否存在此變數來判斷是否列印了就可以了。
If Vartype(PrnTF)='U'
Messagebox('已列印!',64,'資訊提示')
Else
Messagebox('未列印!',64,'資訊提示')
Endif
------------------------------------
VFP7.0及以上可以用SYS(2040)-檢測報表狀態 來做到。
如寫一個函式 myFunc,可放到主程式最后或 set proc to ... 指向的程序檔案中
myFunc 函式完成你的 測驗報表是否列印來執行某些任務,最后回傳一個空字串
在報表中加一個域控制元件,運算式填 =myFunc(),并設定它的 Print When 條件為 sys(2040)='2'
如果希望用戶按下列印按鈕即執行 append 操作,則將它放在報表的 title 帶區中
如果希望列印完成才執行,則放到 Summary 帶區中
uj5u.com熱心網友回復:
可以了,萬分感謝uj5u.com熱心網友回復:
由學習了!!!!uj5u.com熱心網友回復:
我的系統是帶列印次數記錄的,但是記錄的是點擊列印按鈕的次數,預覽也算。如果要記錄真正列印的次數,一是很難實作二是沒有意義。列印機卡紙、色帶不好列印不清楚等等原因怎么算?列印一半停電怎么辦?綜合這些因素,沒辦法得到真正的結果。所以:只要點擊了就算數uj5u.com熱心網友回復:
預覽不算的話,必須把預覽中的工具條禁用。預覽中也有【列印】按鈕。轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/115345.html
標籤:VFP
上一篇:提供程式無法確定 Double 值。例如,該行剛剛創建,未提供 Double 列的默認值,并且使用者尚未設定新 Double 值
