全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1702
推到 Plurk!
推到 Facebook!

有關QR的Error

答題得分者是:T.J.B
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-09-17 23:00:49 IP:218.163.xxx.xxx 未訂閱
各位Delphi高手、先進:     目前小弟正開發一進銷存軟體,使用QR發生下列問題: 當進銷存軟體一啟動,若馬上開啟報表則會產生如下錯誤 但是若是先開啟表單再開啟報表則不會產生任何錯誤。 小弟呼叫報表是用以下語法: QuickRep1.Prepare; QRTotalPage.Caption := IntToStr(QuickRep1.QRPrinter.PageCount); QuickRep1.PreviewModal 煩請各位Delphi高手、先進解惑!感激不盡!
------
~小弟淺見,參考看看~
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-09-18 07:34:35 IP:211.22.xxx.xxx 未訂閱
看不到錯誤訊息的圖啦! -- Everything I say is a lie.
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-09-19 00:53:49 IP:218.163.xxx.xxx 未訂閱
Sorry! 錯誤訊息如下: Project Iron.exe raised exception class Ewin32Error with message “Win32Error. Code: 1400.相互驗證失敗。在網域控制站的伺服器密碼已過期。”.Process stopped. Use Step or Run to continue.
------
~小弟淺見,參考看看~
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-02-18 22:37:12 IP:218.163.xxx.xxx 未訂閱
引言: Project Iron.exe raised exception class Ewin32Error with message “Win32Error. Code: 1400.相互驗證失敗。在網域控制站的伺服器密碼已過期。”.Process stopped. Use Step or Run to continue.
我找到原因,是我使用了以下的語法: QuickRep1.Prepare; QRLabel1.Caption := QuickRep1.QRPrinter.PageCount; QuickRep1.PreviewModal; 也就取得PageCount在搞怪,若純粹只是QuickRep1.PreviewModal;則不會有任何錯誤,一加上QuickRep1.Prepare;QRLabel1.Caption := QuickRep1.QRPrinter.PageCount;就會有不預期的產生錯誤,不知道K.Top的各位前輩、先進們是否有遇過相同的問題,麻煩指點一二,感激不盡!!
------
~小弟淺見,參考看看~
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-02-19 09:15:35 IP:211.21.xxx.xxx 未訂閱
引言: Prepare盡量不要用...之前Try過會有問題... 一般我開報表都是這樣做的 Form2.Query1.Open;/QuickRep1的DataSet Form2.Query1.First; if not Form2.Query1.Eof then begin Form2.QuickRep1.Preview; Form2.QuickRep1.QRPrinter.Free; Form2.QuickRep1.QRPrinter := nil; end else SHOWMESSAGE('無資料!!!'); TRY TRY SEE
chih兄: 為了符合客戶的要求,若一定要在每頁報表顯示"頁次/總頁次"除了使用QuickRep1.Prepare; QRTotalPage.Caption := IntToStr(QuickRep1.QRPrinter.PageCount); 還有其他的方法嗎?麻煩指點一二,感激不盡!!
------
~小弟淺見,參考看看~
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-02-19 11:05:19 IP:211.21.xxx.xxx 未訂閱
引言: QRTotalPage.Caption := inttostr(xPage) '/'IntToStr(QuickRep1.QRPrinter.PageCount); 至於總頁次就可以用PageCount取得吧..
chih兄: 這樣做的話,勢必要加上QuickRep1.Prepare才有辦法取得QuickRep1.QRPrinter.PageCount。根據chih兄之前的回覆"Prepare盡量不要用...之前Try過會有問題...",所以我的問題是,不要透過QuickRep1.QRPrinter.PageCount來取得總頁次,應該如何做?麻煩指點一二,感激不盡!! 發表人 - channel 於 2003/02/19 11:06:53
------
~小弟淺見,參考看看~
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-02-19 12:03:50 IP:211.74.xxx.xxx 未訂閱
剛Try了一下 總頁數要使用QuickRep1.Prepare; 本頁是第幾頁可以用QRSysData,Data指定為qrsPageNumber就可以... 以前用的方法一下子找不到...我找一下再mail跟你說總頁數的取得..
T.J.B
版主


發表:29
回覆:532
積分:497
註冊:2002-08-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-02-19 17:47:38 IP:61.220.xxx.xxx 未訂閱
引言: 各位Delphi高手、先進: 目前小弟正開發一進銷存軟體,使用QR發生下列問題: 當進銷存軟體一啟動,若馬上開啟報表則會產生如下錯誤 但是若是先開啟表單再開啟報表則不會產生任何錯誤。 小弟呼叫報表是用以下語法: QuickRep1.Prepare; QRTotalPage.Caption := IntToStr(QuickRep1.QRPrinter.PageCount); QuickRep1.PreviewModal 煩請各位Delphi高手、先進解惑!感激不盡!
QuickRep1.Prepare; show; <---加這行 QRTotalPage.Caption := IntToStr(QuickRep1.QRPrinter.PageCount); QuickRep1.PreviewModal 如此即可 天行健 君子當自強不息~~@.@
------
天行健
君子當自強不息~~@.@
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-02-19 18:21:02 IP:211.21.xxx.xxx 未訂閱
引言: QuickRep1.Prepare; show; <---加這行 QRTotalPage.Caption := IntToStr(QuickRep1.QRPrinter.PageCount); QuickRep1.PreviewModal
T.J.B版主:加Show是何用意?麻煩指點一二,感激不盡!!
------
~小弟淺見,參考看看~
T.J.B
版主


發表:29
回覆:532
積分:497
註冊:2002-08-14

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-02-20 10:36:27 IP:61.220.xxx.xxx 未訂閱
參考一下
    frmR0AllowType := TfrmR0AllowType.Create(Application);
    frmR0AllowType.QuickRep1.Prepare ;
    frmR0AllowType.Show;
    TotPages := frmR0AllowType.QuickRep1.QRPrinter.PageCount ;
    frmR0AllowType.QuickRep1.Preview ;
    frmR0AllowType.Release ;    
我在寫報表時 都是用上面的程式 都沒問題的 它是由frmR1AllowType 去 呼叫出 QuickRep1 的 owner (frmR0AllowType) 但是此段程式是寫在frmR1AllowType 的地方 要加frmR0AllowType.Show;的原因是 當frmR0AllowType一開始create出來時 只是把記憶體分配給frmR0AllowType 但是實體尚未建立 而你就去做 QRTotalPage.Caption := IntToStr(QuickRep1.QRPrinter.PageCount); 的動作 但是QuickRep1的owner (frmR0AllowType) 還未產生實體出來 所以當然QuickRep1.QRPrinter.PageCount 會有問題 你不是說 當進銷存軟體一啟動,若馬上開啟報表則會產生如下錯誤 但是若是先開啟表單再開啟報表則不會產生任何錯誤 就是這個問題 不過 只有當你是跟我一樣的做法 (由form1 去呼叫 QuickRep1所在的form2) 才會是這個問題 我是假設你的做法跟我一樣而且也是有用 with..do的做法(把form2提出來) 故只要加show就可以了 ㄏㄏㄏ 說的亂七八糟的 不知道你懂不懂 有問題再討論吧 天行健 君子當自強不息~~@.@
------
天行健
君子當自強不息~~@.@
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-02-20 12:03:45 IP:211.72.xxx.xxx 未訂閱
T.J.B版主: 感謝您的解答。 我昨天試了一下,真的不會有錯誤,今天又看您的說明,讓我更了解,事實上這個問題因擾我很久了,如今豁然開朗,再一次感謝您了。
------
~小弟淺見,參考看看~
系統時間:2024-05-03 20:14:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!