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

Stack OverFlow~~~

尚未結案
ric
一般會員


發表:1
回覆:2
積分:0
註冊:2003-10-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-30 10:43:19 IP:61.222.xxx.xxx 未訂閱
請問各位大大, 我有一隻報表程式,當初寫的時候是在Delphi3的環境中寫的,現在程式要改到Delphi7來寫,但是卻會出現Stack Overflow的錯誤訊息~~~ 我目前可以確定的是沒有無窮迴圈,沒有SQL指令錯誤的問題,這些我都確定過了,程式是在show報表的時候出現錯誤訊息~~~ 我的報表是用一個Query物件,下SQL指令做SELECT,報表中用了三個Group群組,總頁數會跑到1800多頁,請問各位大大是否能幫幫我(>___<),或是提供我幾個方向,讓我做檢查,大恩大德感激不盡~~~
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-30 11:52:52 IP:61.231.xxx.xxx 未訂閱
能有程式碼可看嗎? 沒有實際操作的程序想像空間是很大的? 作業系統? 元件相容性? 硬体相容性? 程式語法相容? 電腦病毒? XX
ric
一般會員


發表:1
回覆:2
積分:0
註冊:2003-10-30

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-30 13:59:44 IP:61.222.xxx.xxx 未訂閱
感謝這位大哥的回應~~ 作業系統是2000,資料庫是Oracle 8.1.7,元件我只用Delphi3裡面的Quick Report2.0k升級到Delphi7裡的Quick Report3.0.9,用了三組QRGroup GroupFooter,沒有用什麼特殊的東西,硬體方面P3800 512RAM,沒有中毒~~~ 程式碼方面我只有將SQL指令下到Query裡,然後再Preview出來而已,SQL指令如下,我有找到BDE執行過,是ok的 select e.*,nvl(e.saleqty,0)*nvl(e.avgcost,0) esalecost, nvl(e.adjqty,0)*nvl(e.avgcost,0) eadjamt, l.endqty lendqty,l.endcost lendcost,l.endcont lendcont, p.brand,p.orgpno,p.espec,p.cspec,p.unit,p.espec spec,p.ptype,k.pdesc pkdesc, (decode(nvl(e.endcost,0),0,0,(nvl(e.saleqty,0)*nvl(e.avgcost,0))/e.endcost)*100) rrate, (1-decode(nvl(e.saleamt,0),0,1,((nvl(e.saleqty,0)*nvl(e.avgcost,0))/e.saleamt)))*100 mrate, (decode((nvl(e.saleqty,0)*nvl(e.avgcost,0)),0,0,(nvl(e.inamt,0)/(nvl(e.saleqty,0)*nvl(e.avgcost,0))))*100) israte, (decode((nvl(e.saleqty,0)*nvl(e.avgcost,0)),0,0,(nvl(e.endcost,0)/(nvl(e.saleqty,0)*nvl(e.avgcost,0))))*365) stkday from endcost e,endcost l,mproduct p,mpkind k where e.comp='E' and e.yymm=9209 and l.comp( )=e.comp and l.orgid( )=e.orgid and l.yymm( )=9208 and l.pno( )=e.pno and p.comp( )=e.comp and p.orgid( )=e.orgid and p.pno( )=e.pno and p.comp=k.comp( ) and p.ptype=k.ptype( ) order by e.orgid,p.brand,p.orgpno,e.pno
japhenchen
高階會員


發表:51
回覆:444
積分:184
註冊:2003-07-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-11-03 15:34:18 IP:211.96.xxx.xxx 未訂閱
可否試著改用ADO而別用BDE?BORLAND的說法,BDE已經處於維護版本,不再繼續更新,我以前用BDE,在每個QUERY使用時,都要PREPARE跟UNPREPARE,不但拖慢速度,忘了做好還會耗盡系統資源,且電腦都要安裝BDE,建立一堆ALIAS來連結ODBC、SQL....既麻煩又不方便.....看看是不是因為BDE不良導至STACK OVERFLOW吧............. 我不懂,不懂,不懂....所以我才來ktop學工夫
ric
一般會員


發表:1
回覆:2
積分:0
註冊:2003-10-30

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-11-05 17:02:44 IP:61.222.xxx.xxx 未訂閱
感謝大哥的指教,但是由於我是做版本更新~~ 要解決的問題是報表列印的問題,所以首先要確定的是舊程式要先能RUN~~ 之後再談DB元件的更新,所以沒錯法同時進行這麼多作業! 還是很感謝大哥的建議~~~
babyfish4
一般會員


發表:2
回覆:40
積分:18
註冊:2003-08-04

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-11-07 16:00:26 IP:61.63.xxx.xxx 未訂閱
ric您好: 一.建議您更新QuickReport Standard 3.51 For Delphi 7.0 可至以下網址免費下載 http://www.qusoft.com/ 二.看了一下你的SQL語法 建議您檢查一下所有除號右邊的欄位 e.endcost,e.sqleamt,e.saleqty是否有NULL值 因為你用了NVL把NULL值轉成0,基本上寫程式盡量避免有除於0的狀況發生 祝好運
系統時間:2024-05-16 14:33:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!