Rave報表的打印問題,急!(200分)

  • 主题发起人 主题发起人 胡圖崇
  • 开始时间 开始时间

胡圖崇

Unregistered / Unconfirmed
GUEST, unregistred user!
我的報表里面有個打印單號(Print_id),我現在要實現﹕如果打印了就使Print_id+1﹐如果只是預覽或者選擇打印又取消了﹐Print_id就不變﹗
如何才能獲取打印狀態呢﹖
 
问题不明确
 
是這樣的﹐如果打印了報表的話,打印單號print_id:=print_id+1并返回﹐下次打印時打印單號調用這個print_id
 
在AfterPrint事件中处理
 
我是在Afterprint事件中寫﹐但是無論是預覽還是打印都執行﹐郁悶
 
呵呵,之前理解有点小问题。
楼主的意思是想在预览和打印的时候把某个要打印的DataText连接的数据表Print_id值加一
打印和预览之后数据表中的Print_id不变?
如果这样的话好办,直接在rave设计器中选择显示Print_id的DataText
->Event Editor->添加OnGetText事件
{ Event for xmmcDataText.OnGetText }
function xmmcDataText_OnGetText(Self: TRaveDataText;
var Value: string);
var i:integer;
begin
i := StrToInt(Value) + 1;
Value := IntToStr(i);

end OnGetText;
注意添加的这个事件好像不完全是pascal的语法,反正感觉很怪
比如for i:=0 to 10do

end for;
好像VB和pascal的混合体的感觉。
这样处理应该满足楼主的要求了,除非我理解你的意思错误。
 
呵呵﹐是我表達不清楚吧﹗
我是想在打印的时候把某个要打印的DataText连接的数据表Print_id值加一﹐并把加一后的值返回表中的Print_id。
如果是下面兩種情況﹐表中print_id的值就不變﹗
一﹕用戶只是選擇預覽﹔
二﹕用戶選擇了打印﹐但是他取消了﹐或者停電了等等﹐實際上沒打印﹗
 
哎呀,又理解错误!
用我上面个方法实现你现在的要求也可以的呀!
只要在最后确定完成打印的时候update一下数据表的Print_id就OK
你在OnPrint里加,应该没问题的。
 
嚴重感謝一下﹗我44先﹗
 
后退
顶部